1. 程式人生 > >關於MTU、IP MTU、TCP MSS探討與分析

關於MTU、IP MTU、TCP MSS探討與分析

由前面的敘述可知:MTU是一個二層的概念,乙太網最大的mtu就是1500(它是不包含二層頭部的,加上頭部應該為1518 bytes),當然這裡說的是很常規的情況,也有些server,比如server 2008,出來的就是jumbo frame了,我們在這裡討論常規情況。IP MTU是一個三層概念,它包含了三層頭部及所有載荷,根據下層為上層服務的,上層基於下層才能做進一步的擴充套件的原則,儘管IP MTU的變化範圍很大(68-65535),但也不得不照顧乙太網MTU的限制,說白了就是ip對乙太網的妥協。MSSTCP裡面的一個概念,它是TCP資料包每次能夠傳輸的最大資料分段,不包含包頭部分,它與IP MTU
滿足如下關係:IP MTU=MSS+20bytesIP包頭)+20bytesTCP包頭)。當然,如果傳輸的時候還承載有其他協議,還要加些包頭在前面,簡言之,mtu就是總的最後發出去的報文大小,MSS就是需要發出去的資料大小,比如PPPoE,就是在乙太網上承載PPP協議(點到點連線協議),它包括6bytesPPPoE頭部和2bytesPPP協議ID號,此時,由於乙太網的MTU值為1500,所以上層PPP負載資料不能超過1492位元組,也就是相當於在PPPOE環境下的MTU1492位元組,MSS1452位元組。