IP資料報格式

2021-09-01 11:45:29 字數 1901 閱讀 4250

ip協議提供不可靠無連線的資料報傳輸服務,ip層提供的服務是通過ip層對資料報的封裝與拆封來實現的。ip資料報的格式分為報頭區和資料區兩大部分,其中報頭區是為了正確傳輸高層資料而加的各種控制資訊,資料區包括高層協議需要傳輸的資料。

ip資料報的格式如下:

注意,上圖表示的資料,最高位在左邊,記為0位;最低位在右邊,記為31位。在網路中傳輸資料時,先傳輸0~7位,其次是8~15位,然後傳輸16~23位,最後傳輸24~31位。由於tcp/ip協議頭部中所有的二進位制數在網路中傳輸時都要求以這種順序進行,因此把它稱為網路位元組順序。在實際程式設計中,以其他形式儲存的二進位制數必須在傳輸資料前使用網路程式設計api相應的函式把頭部轉換成網路位元組順序。

ip資料報各字段功能如下:

1)版本號:占用4位二進位制數,表示該ip資料報使用的ip協議版本。目前internet中使用的主要是tcp/ip協議族中版本號為4的ip協議。

2)頭長度:占用4位二進位制位,此域指出整個報頭的長度(包括選項),該長度是以32位二進位制數為乙個計數單位的,接收端通過此域可以計算出報頭在何處結束及從何處開始讀資料。普通ip資料報(沒有任何選項)該字段的值是5(即20個位元組的長度)。

3)服務型別(tos、type of service):占用8位二進位制位,用於規定本資料報的處理方式。服務型別欄位的8位分成了5個子域:

(1)—優先權(0-7)數越大,表示該資料報優先權越高。網路中路由器可以使用優先權進行擁塞控制,如當網路發生擁塞時可以根據資料報的優先權來決定資料報的取捨。

(2)—短延遲位d(delay):該位置1時,資料報請求以短延遲通道傳輸,0表示正常延時。

(3)—高吞吐量位t(throughput):該位置1時,資料報請求以高吞吐量通道傳輸,0表示普通。

(4)—高可靠位r(reliability):該位置1時,資料報請求以高可靠性通道傳輸,0表示普通。

(5)—保留位。

目前在internet中使用的tcp/ip協議大多數情況下網路並未對tos進行處理,但在實際程式設計時,有專門的函式來設定該字段的各域。一些重要的網際應用協議中都設定了建議使用的tos值:

從上表可以看出,對於與使用者直接互動的應用,一般使用短延時;對於有大量資料需要進行傳輸的應用,一般選用高吞吐量;對於資料報要傳輸控制資訊的應用,一般選用高可靠性。在資料報的生存期內不支援tos的,tos欄位就設定為0x00。

4)總長度:占用16位二進位制位,總長度欄位是指整個ip資料報的長度(報頭區+資料區),以位元組為單位。利用頭部長度欄位和總長度欄位就可以計算出ip資料報中資料內容的起始位置和長度。由於該字段長度為16位二進位制數,因此理論上ip資料報最長可達65536個位元組(事實上受物理網路的限制,要比這個數值小很多)。

5)生存時間(ttl,time to live):占用8位二進位制位,它指定了資料報可以在網路中傳輸的最長時間。實際應用中把生存時間字段設定成了資料報可以經過的最大路由器數。ttl的初始值由源主機設定(通常為32、64、128或256),一旦經過乙個處理它的路由器,它的值就減1。當該字段為0時,資料報就丟棄,並傳送icmp報文通知源主機,因此可以防止進入乙個迴圈迴路時,資料報無休止地傳輸下去。

6)上層協議標識:占用8位二進位制位,ip協議可以承載各種上層協議,目標端根據協議標識就可以把收到的ip資料報送到tcp或udp等處理此報文的上層協議了。icmp,igmp

常用網際協議編號:

7)校驗和:占用16位二進位制數,用於協議頭資料有效性的校驗,可以保證ip報頭區在傳輸時的正確性和完整性。頭部檢驗和字段是根據ip協議頭計算出的檢驗和,它不對頭部後面的資料進行計算。

原理:傳送端首先將檢驗和字段置0,然後對頭部中每16位二進位制數進行反碼求和的運算,並將結果存在校驗和字段中。 由於接收方在計算過程中包含了傳送方放在頭部的校驗和,因此,如果頭部在傳輸過程中沒有發生任何差錯,那麼接收方計算的結果應該是全1。

IP資料報格式

版本字段長度為4,用來表明建立資料報的ip版本,目前的ip版本是ipv4,ipv6正在發展中。ipv4的字段為0100 首部長度 報頭長度 指的是首部佔32 bit字的數目,包括任何選項。由於它是乙個4位元字段,因此首部最長為60個位元組。15x32 8 60位元組.ip首部始終是32 bit的整數...

IP資料報格式

ip資料報格式 tcp ip協議定義了乙個在網際網路上傳輸的包,稱為ip資料報 ip datagram 這是乙個與硬體無關的虛擬包,由首部和資料兩部分組成.首部的前一部分是固定長度,共 20 位元組,是所有ip資料報必須具有的.在首部的固定部分的後面是一些可選字段,其長度是可變的.版本 佔4位,指i...

IP資料報格式

tcp ip協議定義了乙個在網際網路上傳輸的包,稱為ip資料報 ip datagram 這是乙個與硬體無關的虛擬包,由首部和資料兩部分組成.首部的前一部分是固定長度,共 20 位元組,是所有ip資料報必須具有的.在首部的固定部分的後面是一些可選字段,其長度是可變的.版本 佔4位,指ip協議的版本.通...