摘要:通信工程師考試傳輸與接入IP分組格式:IP分組由分組頭和數(shù)據(jù)區(qū)兩部分組成。其中,分組頭部分用來存放IP協(xié)議的具體控制信息,而數(shù)據(jù)區(qū)則包含了上層協(xié)議(如TCP)提交給IP協(xié)議傳送的數(shù)據(jù)。IP分組的格式如圖10.14所示。
10.4 IP 協(xié) 議
10.4.1 IP分組格式
IP分組由分組頭和數(shù)據(jù)區(qū)兩部分組成。其中,分組頭部分用來存放IP協(xié)議的具體控制信息,而數(shù)據(jù)區(qū)則包含了上層協(xié)議(如TCP)提交給IP協(xié)議傳送的數(shù)據(jù)。IP分組的格式如圖10.14所示。
IP分組頭由以下字段組成:
(1) 版本:長度為4 bit,表示與IP分組對應(yīng)的IP協(xié)議版本號。在處理IP分組前,IP軟件都要檢查IP分組的版本字段,以保證分組格式與軟件期待的一致。目前的協(xié)議版本號是4,因此IP有時也稱作IPv4。
(2) 分組頭長度:長度為4 bit,用于指明IP分組頭的長度,其單位是4個字節(jié)(32 bit),即分組頭部是4個字節(jié)整數(shù)倍的數(shù)目。由于IP分組頭的長度是可變的,因此,該字段是必不可少的。
(3) 服務(wù)類型(TOS):長度為8 bit,用于指明IP分組所希望得到的有關(guān)優(yōu)先級、可靠性、吞吐量、時延等方面的服務(wù)質(zhì)量要求, 如圖10.15所示。它包括一個3 bit的優(yōu)先級子字段,優(yōu)先級取值范圍0~7;D、T、R各占1 bit,表示該分組所期望的服務(wù)類型。D為最小時延,T為最大吞吐量, R為較高可靠性。如果所有比特位均為0, 那么就意味著該服務(wù)為普遍服務(wù)。
(4) 總長度:長度為16個比特,用于指名整個IP數(shù)據(jù)報的長度,以字節(jié)為單位。它包括分組頭和數(shù)據(jù)區(qū)的長度,利用分組頭部長度字段和總長度字段,我們就可以知道IP分組中數(shù)據(jù)內(nèi)容的起始位置和長度。由于該字段長16 bit,所以IP分組最長可達(dá)65 535字節(jié)。當(dāng)數(shù)據(jù)報被分片時,該字段的值也隨著變化。
總長度字段是IP分組頭中必要的內(nèi)容,因為一些數(shù)據(jù)鏈路(如以太網(wǎng))需要填充一些數(shù)據(jù)以達(dá)到最小長度。例如,以太網(wǎng)的最小幀長為46字節(jié),但是IP分組可能會更短。如果沒有總長度字段,那么IP層就不知道46字節(jié)中有多少是IP數(shù)據(jù)報的內(nèi)容。
(5) 標(biāo)識符:長度為16個bit,和源地址、目的地址、用戶協(xié)議一起惟一地標(biāo)識主機(jī)發(fā)送的每一個分組。通常每發(fā)送一個分組它的值就會加1。我們在10.5節(jié)介紹分片和重組時再詳細(xì)討論它。同樣,在討論分片時我們再來分析標(biāo)志字段和片偏移字段。
(6) 標(biāo)志:長度為3 bit,在3 bit中1位保留,另兩位DF和MF分別用于指明IP分組不分片和分片。
(7) 分片偏移量:長度為13 bit,以8字節(jié)為1單位,用于指明當(dāng)前分組片在原始分組中的位置,這是分段和重組所必需的。
(8) 生存時間TTL(Time-To-Live):長度為8 bit,用于指明IP分組可在網(wǎng)絡(luò)中傳輸?shù)淖铋L時間,TTL的初始值由源主機(jī)設(shè)置(通常為32位或64位),一旦經(jīng)過一個處理它的路由器,它的值就減去1。當(dāng)該字段的值減為0時,該分組被丟棄,并發(fā)送ICMP消息通知源主機(jī)。這個字段用于保證IP分組不會在網(wǎng)絡(luò)出錯時無休止地傳輸。
(9) 協(xié)議:長度為8 bit,用于指明調(diào)用IP協(xié)議進(jìn)行傳輸?shù)母邔訁f(xié)議,高層協(xié)議的號碼由TCP/IP管理機(jī)構(gòu)統(tǒng)一分配。例如,ICMP的值為1,TCP的值為6,UDP的值為17。
(10) 分組頭校驗和:長度為16 bit,用于保證IP分組頭的完整性。只對IP分組頭部(不對分組頭部后面的數(shù)據(jù)區(qū))計算的檢驗和。其算法為:該字段初始值為0,然后對IP分組頭以每16位為單位進(jìn)行求異或,并將結(jié)果求反,便得到校驗和。
(11) 源IP地址:長度為32 bit,用于指明發(fā)送IP分組的源主機(jī)IP地址。
(12) 目的地址:長度為32 bit,用于指明接收IP分組的目標(biāo)主機(jī)IP地址。
(13) 任選項:長度可變,該字段允許在以后版本中包括在當(dāng)前設(shè)計的分組頭中未出現(xiàn)的信息,其使用有一些特殊的規(guī)定。目前,這些任選項定義如下:
安全和處理限制(用于軍事領(lǐng)域,詳細(xì)內(nèi)容參見RFC 1108);
記錄路徑(讓每個路由器都記下它的IP地址,見7.3節(jié));
時間戳(讓每個路由器都記下它的IP地址和時間,見7.4節(jié));
寬松的源站選路(為分組指定一系列必須經(jīng)過的IP地址);
嚴(yán)格的源站選路(與寬松的源站選路類似,但是它要求只能經(jīng)過指定的這些地址,不能經(jīng)過其他的地址)。
這些選項很少被使用,并非所有的主機(jī)和路由器都支持這些選項。
(14) 填充:長度不定,由于IP分組頭必須是4字節(jié)的整數(shù)倍(這是分組頭長度字段所要求的),因此,當(dāng)使用任選項的IP分組頭長度不足4字節(jié)的整數(shù)倍時,必須用0填入填充字段來滿足這一要求。
返回目錄:
通信工程師備考資料免費領(lǐng)取
去領(lǐng)取