分組
首先我們來了解下分組的概念。所謂分組,就是將一個數據包分成一個個更小的數據包。例如對于一個10GB的數據包,總不可以一次性發(fā)送過去吧,而是把它分成若干個小的數據包發(fā)送過去。每個分組數據塊的結構圖:
文件頭一般是一些說明性數據,例如源地址和目標地址,數據類型等。數據部分就是真正要傳達給對象的內容
電路交換
所謂交換,指的就是服務器與服務器之間的數據交換。數據傳輸交換的方式有幾種,而電路交換便是其中的一種。
假如A和B之間要進行通信,我們就假設A要和E打個電話吧。當A輸入E的電話號碼,開始撥號之后,那么服務器要做的第一件事就是根據E的電話號碼找到E在哪里,由于A通往E的路徑有多條,會根據某種算法找到E之后,建立一條通路,然后進行數據的傳輸。
我們假設選的路徑是A→D-→E
找到一條通往E的路徑并建立會話的過程中,我們稱之為電路交換的第一階段—-建立連接。之后A和E在通話的過程中會始終霸占著這條路徑,數據傳輸的過程稱為電路交換的第二階段—-數據傳輸。
電路交換的第三階段,也就是最后一個階段—-釋放連接。A和B只要有一方掛了電話,那便了開始釋放連接。
傳輸例題圖:
在這個過程中,新建連接需要花銷一定的額外時間(想象你打電話的時候是不是出現(xiàn)正在撥號的字眼),釋放連接也會花銷一些額外的時間。
那么,電話交換的過程中,數據需要分組來傳送嗎?
答是不用的,因為電話交換的過程中,A和B兩個人始終霸占著一條通信電路,他們每說一句話,都會實時被對方獲取,因此數據是不用分組的。
從這也可以看出,電路交換的方式,在數據的傳輸上是比較高效、實時的,只要A一發(fā)出數據,E立馬就能收到了,這也是為什么我們的電話通信使用的是電路交換的方式。
但由于一直霸占著這條路徑,假如霸占的過程中A與E都在沉默不說話,那么將是對這條路徑的極大浪費。因此,電路連接的方式資源的利用率是比較低的。
而且,如果你通話的時間超級短,可能花在新建連接的時間比通話的時間還要長,這就更加難受了。
稍微總結一下
電路連接的三個階段:
1、建立連接。
2、數據傳輸。
3、釋放連接。
優(yōu)點:
1、傳輸速度快、高效。
2、實時。
缺點:
1、資源利用率低。
2、新建連接需要占據一定的時間,甚至比通話的時間還長。
分組交換
從名字分組字眼,我們就可以知道,這種方式數據包是分組成更小的數據包進行傳輸的。分組交換的數據傳輸過程和電路交換不一樣,分組交換采取存儲轉發(fā)傳輸的機制。我們下面還是以A給E傳輸數據作為例子來講解。
假如A要給E發(fā)送一個數據包P,但這個數據包有點大,需要分成三組,例如分成p1,p2,p3三個更小的數據包。
這時A給E傳輸數據不需要新建連接這個過程,即不需要尋找一個通往E的路徑。而且A直接把小的數據包丟給附近的路由器,然后A就不管了,例如A把p1丟給了B,這個時候A就不在去管p1的,當B收到p1這個完整的小數據包之后,B再丟給E。
但是A不一定都會把剩下的數據包都丟給B,有可能會把其他的數據包p2丟給C,之后再把p3丟給D,然后C和D在轉發(fā)丟給E。這些都是不確定的,會根據某種算法的選擇路由器。
這里有一個關鍵詞存儲,就是說,B必須收到完整的p1數據包后才能進行轉發(fā),這也不難理解,因為p1數據包包含E的地址,如果不是完整的數據包,B也不知道該發(fā)給誰啊。
示例圖:
從電路交換的機制我們可以看出如下的一些問題:
由于A把數據包丟給B之后就不管了,B什么時候會把p1轉發(fā)出去,誰也不知道,而且可能B會繞幾個圈子再發(fā)給E也是有可能的。因為,電路交換的機制在數據傳輸方面不具有實時性。
而且,很有可能會有很多路由器把數據包丟給B,這個時候就會造成通信阻塞,這時可能p1只能排隊等待B來發(fā)送。
由于B路由器的容量是有限的,如果有太多的數據包丟給它,它可能會容納不下,這時候就可能會出現(xiàn)丟包的情況。
再者,由于p1,p2,p3數據包都有文件頭,里面都包含了A和E的一些信息,當然還有其他的信息??梢哉f這些文件頭有很多重復的數據,因此分組交換發(fā)送的數據具有很多的重復無用數據。
當然,分組交換還包括時延的缺點,因為B必須收到一個完整的p1才能把p1轉發(fā)出去,因為這個接受存儲的過程中存在時延,這種時延也成為傳輸時延,當然還存在傳播時延和處理時延等。所謂處理時延就是每次都得檢查這個數據包的文件頭和決定將該數據包傳輸給誰。
說了電路交換的這么多缺點,那總得有優(yōu)點吧?
實際上,上面的那些缺點,其實都不是什么大問題的。電路交換最主要的優(yōu)點就是設計簡單,資源利用率高了。
總結下分組交換
分組交換采用把一個個小的數據包存儲轉發(fā)傳輸的機制。
主要的一些缺點:
1、不具有實時性。
2、存在延時。
3、會造成通信阻塞。
4、存在無用的重復數據。
5、會出現(xiàn)丟包的情況。
致命的優(yōu)點:
1、設計簡單。
2、資源利用率很高。
生活中的通信選擇
兩種交換傳輸的特點決定了我們平時的電話通信使用的是電路交換,像互聯(lián)網中的微信等這種不要求實時的通信用分組交換。
這也就是為什么急事的時候會打電話,因為比較實時嘛。像微信這些,有時你發(fā)個信息,可能網絡不好的話,或者太多人在同時使用的話,可能你的信息要過一陣子對方才能收到。
這里可能有些人會說,分組交換為何要把數據包分成一小個來存儲轉發(fā)呢?一個大的數據包發(fā)過去不好嗎?
假如你的一個數據包100GB,那B這個路由器就得能存100GB的容量,可是發(fā)100GB的概率是極少數的,那把路由器設計成100GB不是很浪費?這也是為什么要分組成小數據包的原因之一。
當然,還有一種報文交換的方式,就是一整個數據包存儲轉發(fā)的,不過這種方式使用的比較少,再此就不詳細展開了。
來一張三種交換傳輸的圖:
編輯:hfy
-
服務器
+關注
關注
12文章
9253瀏覽量
85742 -
電路交換
+關注
關注
0文章
15瀏覽量
9377 -
分組交換
+關注
關注
0文章
9瀏覽量
2304
發(fā)布評論請先 登錄
相關推薦
評論