鏈路層的簡介和MTU


鏈路層雜談(憑個人理解瞎說的,歡迎拍磚)

    鏈路層,說白了就是把網絡層的IP數據處理一下,加點東西,放到物理層上去。
    加的東西:源、目的地址和CRC校驗值,有的還有類型這個字段,用來區分協議。
    處理的部分:就是數據,就是把IP數據報,用指定的方法打個包;


打包的方法有以下幾種:
    尾部封裝:把變長字段都放到最后(CRC之前),主要是為了前面的512整字節的數據整體直接復制到內核中而減小復制次數。
    SLIP協議:串行線路IP,就是用END字符作為分隔符,分割數據報。為了防止干擾,數據報的開頭也一定保證有一個END標識符。
    壓縮的SLIP:也就是CSLIP,相對於SLIP,只存儲修改的控制信息。就是為了防止發送一個字節也要加40個字節頭的情況。
    PPP:點對點協議,增加了“協議”這個字段,可以支持更多的協議,更多的業務。

 

MTU(最大傳輸單元)

定義:各種為網絡對數據幀都有一個大小限制,這個值就是MTU。

一般的我們常用的是以太網和IEEE 802.3的限制分別為1500和1492字節。如下圖:

路徑MTU
從A到B可能經過不同的網絡,其中最小的MTU就是路徑MTU;
另外,從A到B,與B到A的尋路結果可能不同,所以它們的路徑MTU也有可能不同。

MTU的吞吐量
如果線路速率是9600 b/s,一字節等於8bit,加上開始停止兩個bit,那么線路的速率就是960B/s,傳輸一個1024B的分節需要1066ms。
從一般的經驗上看,一個交互應用,在本機有另一個應用發送1024B數據到網絡的情況下,它大約要等待一般的時間533ms。這個時間對於交互應用來說體驗很不好。
SLIP用減小MTU值的方法解決:MTU=256,那么傳輸需要266ms,它的一半就是133ms。但是這樣減小了帶寬的利用率(因為數據報占用的比例小了)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM