ip資料報由報頭和資料兩部分組成。報頭部分包含了目的位址和源位址,資料的型別等資訊。ip報頭格式如圖1.2所示。
圖1.2 ip報頭格式
下面解釋各字段的含義:
(1) 版本字段:記錄資料報文符合協議的哪乙個版本協議。版本號表示傳送者、接收者和路由器對該資料的處理都要按所示的版本進行。現在的版本號是4。
(2) 首部長度:指明報頭的長度。
(3) 服務型別:一共8個位元,前3個位元表示優先順序,第4個位元表示要求有更低的時延,第5個位元表示要求有更高的吞吐量,第6個位元表示要求更高的可靠性,第7個位元表示選擇**更低廉的路由,最後乙個位元未用。
(4) 總長度包括報頭長度和資料長度,最大長度=216 = 65536位元組。
(5) 識別符號:用於資料分段,乙個資料報在傳輸過程中可能分成若干段,識別符號可以區分某分段屬於某報文,乙個資料報的所有分段具有相同的識別符號。
(6) df:該位置1時表示不分段,置0時允許分段。
(7) mf:表示後面還有一分段,除了最後乙個分段,所有分段的mf置為1。
(8) 段偏移:指明此分段在當前資料報中的位置。
(9) 生存週期:限定分段生存期的計數器,當它為0時該分段被拋棄,時間單位為秒。
(10) 協議:指明此資料報屬於哪一種傳送過程,如tcp、udp等。
(11) 報頭校驗和:
(13) 可選字段:用於協商設定服務引數。
IP資料報格式
版本字段長度為4,用來表明建立資料報的ip版本,目前的ip版本是ipv4,ipv6正在發展中。ipv4的字段為0100 首部長度 報頭長度 指的是首部佔32 bit字的數目,包括任何選項。由於它是乙個4位元字段,因此首部最長為60個位元組。15x32 8 60位元組.ip首部始終是32 bit的整數...
解析IP資料報
include stdafx.h include winsock2.h include ws2tcpip.h include iostream.h include stdio.h typedef struct ip header byte servicetype 服務型別 word totallen...
IP資料報格式
ip資料報格式 tcp ip協議定義了乙個在網際網路上傳輸的包,稱為ip資料報 ip datagram 這是乙個與硬體無關的虛擬包,由首部和資料兩部分組成.首部的前一部分是固定長度,共 20 位元組,是所有ip資料報必須具有的.在首部的固定部分的後面是一些可選字段,其長度是可變的.版本 佔4位,指i...