MTU與MSS關係

MTUMSS的關係

1MTU:   Maximum Transmission Unit  最大傳輸單元

    首先看一下Ethernet幀的結構示意圖:

 

       Ethernet幀的結構由6字節目標地址(48 bit)段、6字節的原地址段、2字節的type段、46-1500字節的數據段以及4字節幀尾CRC校驗部分(FCS)。這裏說明一下前導符是是在物理層添加上去的,並不是正式幀的一部分。

      從上圖可見,一個以太網幀最小64 Bytes(6+6+2+46+4) 最大1518 Bytes(6+6+2+1500+4),對於小於或者大於這個大小範圍的以太網幀,一般的以太網轉發設備都會丟棄這些數據幀。由於以太網Ethernet最大的數據幀長是1518 Bytes這樣,刨去以太網幀的幀頭(目標、源、類型共計14字節)14 Bytes和幀尾CRC校驗部分FCS 4 Bytes,那麼承載上層協議的Data域最大就只能有1500 Bytes。而這個值就是我們稱之爲MTU

      MTU,即最大傳輸單元,這是一個數據鏈路層的概念,限定的是鏈路層數據幀長度。概念上是這樣講,但實際上MTU限制的並非數據鏈路層數據幀的長度,而是數據鏈路層的載荷部分(數據域)的長度。以上圖所示Ethernet幀的結構可見,數據載荷部分的最大長度爲1500 Bytes

 

2MSS: Management Support System  最大報文長度

    最大報文段長度MSS選項是TCP協議定義的一個選項(TCP協議裏面的一個概念)MSS選項用於在TCP連接建立時,收發雙方協商通信時每一個報文段所能承載的最大數據長度(MSS是發送方與接收方通過TCP握手協商得出的)

    MSS就是TCP數據包每次能夠傳輸的最大數據分段。爲了達到最佳的傳輸效能TCP協議在建立連接的時候通常要協商雙方的MSS值,這個值TCP協議在實現的時候往往用MTU值代替(需要減去IP數據包包頭的大小20 BytesTCP數據段的包頭20 Bytes)所以往往MSS1460。通訊雙方會根據雙方提供的MSS值得最小值確定爲這次連接的最大MSS值。

3關係:

網上有文章這樣描述:大家可以參考理解
    MSS指的是TCP中的一個概念。MTU是一個沒有固定到特定OSI層的概念,不受其他特定協議限制。也就是說第二層會有MTU,第三層會有MTU,像MPLS這樣的第2.5層協議,也有自己的MTU值。並且不同層之間存在關聯關係。
    舉個例子:如果你要搬家,需要把東西打包,用車運走。這樣的情況下,車的大小受路的寬度限制;箱子的大小受車限制;能夠搬運的東西的大小受箱子的限制。這時可以將路的寬度理解成第二層的MTU,車的大小理解成第三層的MTU,箱子的大小理解成第四層的MTU,搬運的東西理解成MSS

MTUMSS的關係可以簡單理解爲:

MTU= MSS+TCP層頭部長度+IP層頭部長度 (MSS是指應用層在一個數據包內最大能傳輸的字節數,MTU是指IP層在一個數據包內最大能傳輸的字節數

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章