網(wǎng)絡(luò)層(二)IP數(shù)據(jù)報和IP分片

  1. ICMP協(xié)議
    網(wǎng)絡(luò)層設(shè)備在轉(zhuǎn)發(fā)分組過程中,可能會有一些錯誤,有時候需要將這些信息反饋給其他設(shè)備,發(fā)送這些信息遵循ICMP協(xié)議(互聯(lián)網(wǎng)控制協(xié)議),ICMP協(xié)議在一定程度上可以看作是IP協(xié)議的伴隨協(xié)議。

2.IP數(shù)據(jù)報的格式

IP數(shù)據(jù)報的格式
  • 版本號:4 bit,如4表示ipv4,6表示ipv6
  • 首部長度:4 bit,單位是4B(一行),也就是首部最多15行,60B
  • 服務(wù)類型:指示期望獲得哪種類型的服務(wù),比如期望該IP數(shù)據(jù)報優(yōu)先轉(zhuǎn)發(fā)、延后轉(zhuǎn)發(fā)等。1998年,這個字段改名叫“區(qū)分服務(wù)”,只有當(dāng)網(wǎng)絡(luò)提供區(qū)分服務(wù)時才有用,目前ipv4下的大多數(shù)網(wǎng)絡(luò)并不提供此服務(wù)。
  • 總長度:整個IP數(shù)據(jù)報的長度,最大值是65535,單位是B。除去典型的頭部長度20B,因此一個IP數(shù)據(jù)報的數(shù)據(jù)部分最大是65515B
  • 標(biāo)識、標(biāo)志位、片偏移是用來分片的,后面介紹
  • 生存時間:IP分組在網(wǎng)絡(luò)中可以通過的路由器數(shù)(跳步數(shù))。一個IP分組在創(chuàng)建的時候就設(shè)置了一個TTL。路由器在轉(zhuǎn)發(fā)IP分組時,需要修改該值,將它-1。當(dāng)路由器將該值-1后等于0,路由器就把這個分組扔掉。同時向源主機(jī)發(fā)送一個ICMP報文。
  • 協(xié)議:IP分組封裝的是哪個協(xié)議的數(shù)據(jù),如TCP/UDP/SMP
  • 首部校驗和:只對首部進(jìn)行校驗,和UDP的校驗和是同一種方法生成的。檢驗時這個校驗和參與運(yùn)算,重新生成校驗和,如果得到的值全是1,表示未發(fā)生錯誤。因為TTL每次轉(zhuǎn)發(fā)都會被修改,所以校驗和每次轉(zhuǎn)發(fā)也應(yīng)該修改。

3.IP數(shù)據(jù)包分片
鏈路層封裝的數(shù)據(jù)幀大小是有上限的,允許的最大傳輸單元稱MTU。不同鏈路的MTU不同。當(dāng)IP數(shù)據(jù)包大小超限時,就需要一分為多,這就是分片。
從鏈路1到鏈路2,假如MTU降低的話,很可能就要分片,分片后中間結(jié)點就不再組裝,以免后面又要再次分。最終由目的主機(jī)完成組裝。

  • 標(biāo)識:16 bit,標(biāo)識一個分組。分片繼承原分組的標(biāo)識號
  • 標(biāo)志位:3 bit
  • 片偏移:13 bit,一個ip分組分片,來描述相對原分組的偏移量。也就是當(dāng)前分片的第一個首字節(jié)是在原分組中的位置,但是因為只有13 bit,因此單位是8字節(jié)。
標(biāo)志位

分片過程:

分片過程
分片過程
分片過程
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容