全部課程
發(fā)布時(shí)間: 2018-10-21 15:52:46
概念
網(wǎng)絡(luò)之間互連的協(xié)議(IP)是Internet Protocol的外語縮寫,[1] 中文縮寫為“網(wǎng)協(xié)”。
IP 是建立TCP /IP 網(wǎng)絡(luò)的基本協(xié)議, 因?yàn)樗蚱渌\(yùn)行在網(wǎng)際層中或網(wǎng)際層之上的協(xié)議提供了數(shù)據(jù)傳送服務(wù)。TCP /IP 網(wǎng)絡(luò)中的IP 就如同郵政服務(wù)中的“ 標(biāo)準(zhǔn)信封”, 在這個(gè)基本的、有效的傳送機(jī)制中, 任何種類的數(shù)據(jù)都能插入到該“ 標(biāo)準(zhǔn)信封”中, 如圖1 所示。
圖1 IP 數(shù)據(jù)報(bào)傳送上傳來的數(shù)據(jù)
因?yàn)镮P 需要用于傳送大量不同類型的數(shù)據(jù), 所以在設(shè)計(jì)中, IP 只向上層提供所需的最小服務(wù), 而把諸如分組確認(rèn)、流量控制之類的實(shí)現(xiàn)留給了TCP 之類的上層協(xié)議。形象地說,IP 是個(gè)廉價(jià)的初級(jí)郵件服務(wù), 在此基礎(chǔ)上如果需要提供特殊的保障, 可以再在IP 頭中增加附加選項(xiàng), 就像寄一個(gè)掛號(hào)郵件或其他特殊郵件一樣。
為了更好地了解IP協(xié)議功能,有必要先了解下IP數(shù)據(jù)報(bào)的數(shù)據(jù)結(jié)構(gòu)。
IP報(bào)數(shù)據(jù)字段格式
數(shù)據(jù)報(bào)格式各個(gè)字段所定義的功能如下:
( 1 ) 版本
長(zhǎng)度4 位, 用來指明所使用的IP 的版本號(hào)。IP 當(dāng)前使用的版本號(hào)為4, 因此換成二進(jìn)
制就是0100 。
( 2 ) IHL
長(zhǎng)度4 位, IHL 字段指定IP 報(bào)頭的長(zhǎng)度( 以32 位為單位) , 這是由于“ 任選項(xiàng)+ 填充”字段是可變的, 因此IP 報(bào)頭的總長(zhǎng)度是可變的。但因?yàn)镮HL 字段只有4 位, 意味著IP 報(bào)頭的較大長(zhǎng)度只能是15 個(gè)32 位長(zhǎng)的字( 即60 個(gè)字節(jié)) 。其中報(bào)頭中固定長(zhǎng)度的部分有20 個(gè)字節(jié)。所以“ 任選項(xiàng)+ 填充”字段較大長(zhǎng)度只能是40 個(gè)字節(jié)。注意IHL 與總體長(zhǎng)度的區(qū)別。
( 3 ) 服務(wù)類型TOS
長(zhǎng)度8 位, 服務(wù)類型通知IP 協(xié)議如何處理IP 報(bào)。其中3 位表示優(yōu)先級(jí)( 現(xiàn)已被忽略) ,4 位表示服務(wù)類型TOS ( Type Of Service) , 1 位未用但必須置0。4 位的服務(wù)類型TOS 分別代表: 最小時(shí)延、較大吞吐量、最高可靠性和最小費(fèi)用參數(shù)。4 位中只能置其中1 位為1, 一旦某位被設(shè)置為1, 則意味著要求數(shù)據(jù)報(bào)的傳輸應(yīng)滿足相應(yīng)的要求。如果所有4 位均為0,則意味著是一般服務(wù)。表8-1 給出了對(duì)于不同應(yīng)用建議的TOS 值。
( 4 ) 總體長(zhǎng)度
長(zhǎng)度16 位, 指定了IP 數(shù)據(jù)報(bào)的總長(zhǎng)( 以字節(jié)為單位) , 包括報(bào)頭和有效負(fù)載??傞L(zhǎng)度字段是指整個(gè)IP 數(shù)據(jù)報(bào)的長(zhǎng)度, 以字節(jié)為單位。利用報(bào)頭長(zhǎng)度字段和總長(zhǎng)度字段, 就可以知道IP 數(shù)據(jù)報(bào)中數(shù)據(jù)內(nèi)容的起始位置和長(zhǎng)度。由于該字段長(zhǎng)16 位, 所以IP 數(shù)據(jù)報(bào)最長(zhǎng)可達(dá)65535 字節(jié)。當(dāng)數(shù)據(jù)報(bào)被分片時(shí), 該字段的值也隨著變化。盡管可以傳送一個(gè)長(zhǎng)達(dá)65535 字節(jié)的IP 數(shù)據(jù)報(bào), 但是大多數(shù)的鏈路層都會(huì)對(duì)它進(jìn)行分片, 而且主機(jī)也要求不能接收超過576 字節(jié)的數(shù)據(jù)報(bào)。由于TCP 把用戶數(shù)據(jù)分成若干片,因此一般來說這個(gè)限制不會(huì)影響TCP。在后面的章節(jié)中將遇到大量使用UDP 的應(yīng)用( RIP,DNS 以及SNMP) , 它們都限制用戶數(shù)據(jù)報(bào)長(zhǎng)度為512 字節(jié), 小于576 字節(jié)。但是, 事實(shí)上現(xiàn)在大多數(shù)的實(shí)現(xiàn)( 特別是那些支持網(wǎng)絡(luò)文件系統(tǒng), NFS 的實(shí)現(xiàn)) 允許超過8192 字節(jié)的IP 數(shù)據(jù)報(bào)。
表1 TOS 字段推薦值
總長(zhǎng)度字段是IP 報(bào)頭中必要的內(nèi)容, 因?yàn)橐恍?shù)據(jù)鏈路( 如以太網(wǎng)) 需要填充一些數(shù)據(jù)以達(dá)到最小長(zhǎng)度。盡管以太網(wǎng)的最小幀長(zhǎng)為46 字節(jié), 但是IP 數(shù)據(jù)可能會(huì)更短。如果沒有總長(zhǎng)度字段, 那么IP 層就不知道46 字節(jié)中有多少是IP 數(shù)據(jù)報(bào)的內(nèi)容。
至此,我們解讀到總體長(zhǎng)度字段,后續(xù)字段解讀,見軟文,淺談IP數(shù)據(jù)報(bào)字段含義_2內(nèi)容。