版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第4章互聯(lián)網(wǎng)協(xié)議IP4.1引言用IP(Internet
Protocol)屏蔽底層物理網(wǎng)絡(luò)協(xié)議差異,實現(xiàn)異構(gòu)網(wǎng)絡(luò)互聯(lián)。提供了一種無連接的投遞機(jī)制。不保證數(shù)據(jù)報傳輸?shù)目煽啃?。提供了盡最大努力的投遞機(jī)制。4.2
IP數(shù)據(jù)報格式首部+數(shù)據(jù)版本:4比特,“4”表示IPv4。首部長度:4比特,給出了以4字節(jié)為單位計數(shù)的首部長度。4.2
IP數(shù)據(jù)報格式首部+數(shù)據(jù)總長度:2字節(jié),描述整個數(shù)據(jù)報的長度(最大64KB)。服務(wù)類型(ToS,Type
of
Service):1字節(jié),規(guī)定了對數(shù)據(jù)報的處理方式。4.2
IP數(shù)據(jù)報格式4.服務(wù)類型1)優(yōu)先級:3比特,指示路由器對數(shù)據(jù)報進(jìn)行處理的優(yōu)先次序,優(yōu)先級的值從‘0’(普通優(yōu)先級)到‘7’(網(wǎng)絡(luò)控制)。D比特(Delay):設(shè)置為1時表示低時延要求。T比特(Throughput):設(shè)置為1時表示高吞吐量要求。
R比特(Reliability):設(shè)置為1時表示高可靠性要求。
M比特(Monetary
cost):設(shè)置為1時表示低費用要求。4.2
IP數(shù)據(jù)報格式4.服務(wù)類型:IANA建議將DTRM設(shè)置為0001。協(xié)議ToS值協(xié)議ToS值Telnet1000TFTP1000FTP控制協(xié)議1000FTP數(shù)據(jù)協(xié)議0100SMTP命令階段1000SMTP數(shù)據(jù)階段0100DNS
UDP請求1000DNS
TCP請求0000DNS區(qū)域傳輸0100NNTP0001ICMP錯誤0000ICMP請求/應(yīng)答0000IGP0010EGP0000SNMP0010BOOTP00004.2
IP數(shù)據(jù)報格式4.服務(wù)類型->區(qū)分服務(wù)碼點(DSCP,Differentiated
Service
Code
Point)。組碼點使用方式1XXXXX0由標(biāo)準(zhǔn)組織使用2XXXX11由本地使用或用于實驗性目的3XXXX01目前的本地應(yīng)用或用于實驗?zāi)康?XXX000與ToS原來的定義向后兼容拓寬了服務(wù)定義的范圍。與ToS向后兼容時與原來的8個優(yōu)先級遵循同樣的指導(dǎo)原則。4.2
IP數(shù)據(jù)報格式首部+數(shù)據(jù)5.標(biāo)識:2字節(jié),用于數(shù)據(jù)報分片及重組;分片:IP數(shù)據(jù)報最大長度為64K,但很多物理網(wǎng)絡(luò)的最大幀長度小于這個尺寸。在這種情況下,有必要將數(shù)據(jù)報分成若干小塊,這就是“分片”。4.2
IP數(shù)據(jù)報格式6.標(biāo)志+片偏移量分片重組:標(biāo)識、標(biāo)志、片偏移量。4.2
IP數(shù)據(jù)報格式首部+數(shù)據(jù)7.壽命(TTL,Time
To
Live):1字節(jié),用以限制數(shù)據(jù)報在互聯(lián)網(wǎng)中的存活時間;最初規(guī)定:秒計,每經(jīng)過一個路由器用當(dāng)前TTL減去當(dāng)前路由器處理時間,如果小于0,則數(shù)據(jù)報被丟棄;后發(fā)展:TTL設(shè)置為數(shù)據(jù)報經(jīng)過的路由器個數(shù)(跳數(shù)限制)4.2
IP數(shù)據(jù)報格式首部+數(shù)據(jù)8.協(xié)議:2字節(jié),指明了所封裝數(shù)據(jù)的類型;數(shù)據(jù):對應(yīng)于“數(shù)據(jù)”字段所指明數(shù)據(jù)類型的具體數(shù)據(jù)。4.2
IP數(shù)據(jù)報格式首部+數(shù)據(jù)10.源IP地址和目的IP地址:描述了數(shù)據(jù)報最初發(fā)送方和最終接收方的IP地址,這兩個字段始終不變。4.3
IP數(shù)據(jù)報的分片和重組原則:當(dāng)數(shù)據(jù)報尺寸超過網(wǎng)絡(luò)的MTU時,必須進(jìn)行分片,并且分片可能多次進(jìn)行。當(dāng)一個數(shù)據(jù)報的各分片到達(dá)
目的主機(jī)后,IP模塊要將其中的數(shù)據(jù)重組成一個大數(shù)據(jù)塊,還原成原始數(shù)據(jù)報,然后交給上層協(xié)議,而不是
將每個分片中的數(shù)據(jù)單獨向上層遞交。4.3.1分片控制問題:如何標(biāo)識同一個數(shù)據(jù)報的各個分片?如何標(biāo)識同一個數(shù)據(jù)報各分片的順序?如何標(biāo)識同一個數(shù)據(jù)報分片的結(jié)束?解答:數(shù)據(jù)報各分片使用與原數(shù)據(jù)報相同的標(biāo)識值。使用片偏移量來指示各分片中的數(shù)據(jù)在原數(shù)據(jù)報中的起始位置。IP數(shù)據(jù)報首部中包含了3個比特的標(biāo)志字段。比特位含義0保留未用,必須置為01DF(Don’t
Fragment)位,指示是否可以對數(shù)據(jù)報進(jìn)行分片?!硎究梢苑制?,
‘表示不能分片2MF(More
Fragment)位,指示本分片是否為最后一個分片?!f明是最后一個分片,‘說明不是最后一個分片(還有更多的分片)4.3.1分片控制4.3.2分片重組重組功能承擔(dān)者:目的主機(jī),中間路由器不對任何被分片的數(shù)據(jù)報進(jìn)行重組;優(yōu)勢:簡化了路由軟件的操作,可以避免重復(fù)分片,增強(qiáng)了通信的靈活性;缺陷:可能會浪費網(wǎng)絡(luò)帶寬,增加了數(shù)據(jù)報丟失的可能性;重組過程:分片的逆過程,將若干個分片重新組合還原為原來的數(shù)據(jù)報。1.當(dāng)目的主機(jī)收到一個數(shù)據(jù)報時,可以根據(jù)其片偏移量和MF位來判斷它是否是一個分片:若MF位是0,并且分片偏移量為0,則表明它是一個完整的數(shù)據(jù)報;如果片偏移量不為0,或者M(jìn)F標(biāo)志位為1,則表明它是一個分片,此時目的主機(jī)需要進(jìn)行分片重組;根據(jù)數(shù)據(jù)報首部“標(biāo)識”字段的值,可判斷哪些分片屬于同一個原始數(shù)據(jù)報;片偏移量則用來確定分片在原始數(shù)據(jù)報中的位置;設(shè)置定時器防止由于分片丟失造成重組過程無限延長。4.3.2分片重組FreeBSD分片重組算法:3個緩沖區(qū):(1)存儲第一個分片報頭的緩沖區(qū);(3)存儲IP數(shù)據(jù)報數(shù)據(jù)部分的緩沖區(qū)。
1個定時器:重組超時時間間隔定時器;1個變量域:數(shù)據(jù)總長度;(2)重組表;1個報頭:第一個分片的報頭將被作為重組后數(shù)據(jù)報的報頭,與(3)一起構(gòu)成了最終的數(shù)據(jù)報;1個計算數(shù)據(jù)總長度的辦法:收到MF位設(shè)置為‘0’的分片后,可根據(jù)其長度和片偏移量計算數(shù)據(jù)總長度;2個數(shù)據(jù)結(jié)構(gòu)(構(gòu)成重組表):ipq和ipasfrag。4.3.2分片重組FreeBSD分片重組算法:4.3.2分片重組FreeBSD分片重組算法:4.3.2分片重組FreeBSD分片重組算法:思想1.每收到一個IP數(shù)據(jù)報,算法首先檢查其MF位及偏移量的值:如果二者至少有一個不為0,說明這是一個需要重組的分片;2.檢查其ID:如果未出現(xiàn)在已有的ipq鏈表中,則說明是一個新的數(shù)據(jù)報,此時重組算法會分配一個新的ipq和ipasfrag結(jié)構(gòu);如果不是新的數(shù)據(jù)報,則重組算法根據(jù)其源IP地址、目的IP地址、協(xié)議、ID及偏移量字段將其插入鏈表適當(dāng)?shù)奈恢茫?.每次插入一個新的分片,重組算法都會重新計算已經(jīng)收到的數(shù)據(jù)長度,并與總長度對比:(1)如果已經(jīng)達(dá)到了總長度,說明所有分片都已到達(dá),此時可以進(jìn)行數(shù)據(jù)合并,并將報頭附加在數(shù)據(jù)的前邊;4.刪除鏈表中相應(yīng)的結(jié)構(gòu)。4.3.2分片重組基于“洞”的算法:靜態(tài)分配緩沖區(qū)“洞”:指已經(jīng)部分重組的IP數(shù)據(jù)報中那些未到達(dá)的分片,重組緩沖區(qū)中空的數(shù)據(jù)區(qū);洞描述符:用洞頭(hole.first)和洞尾(hole.last)描述,分別對應(yīng)其第一個字節(jié)和最后一個字節(jié)的序號。洞描述符鏈表:一個數(shù)據(jù)報所有的洞描述符組成。分片描述:片頭(fragment.first)和片尾(fragment.last),分別對應(yīng)分片第一個和最后一個字節(jié)的序號。思想:每收到一個新數(shù)據(jù)報的分片,就創(chuàng)建一個空的緩沖區(qū),并在該數(shù)據(jù)報的洞描述符鏈表中建立一項,其中洞頭為0,洞尾為無窮大(實際實現(xiàn)中可設(shè)置為一個合適的較大值);每到來一個已有數(shù)據(jù)報的新分片,就依次檢查洞描述符鏈表中的每個描述符,找到合適的洞填充進(jìn)去;當(dāng)洞描述符鏈表為空時,算法結(jié)束返回。4.3.2分片重組基于“洞”的算法:實例新數(shù)據(jù)報被分配的緩沖區(qū)尺寸:8000字節(jié),字節(jié)編號從0開始;第一個分片:偏移量為175,總長度(TL)為1420,首部長度(HL)為20;第二個分片:偏移量為0,總長度為820,首部長度為20;第三個分片:偏移量為350,總長度為1220,首部長度為20,MF位為0;第四個分片:偏移量為100,總長度為620,首部長度為20;4.3.2分片重組基于“洞”的算法:實例4.3.2分片重組有關(guān)ID字段使用的新約束:問題1:ID字段用于標(biāo)識IP數(shù)據(jù)報,如何確保在一個數(shù)據(jù)報的重組完成之前,不能有另外一個數(shù)據(jù)報有相同的ID?最早的IP標(biāo)準(zhǔn)規(guī)定:在一個數(shù)據(jù)報的最大生存時間(Maximum
DatagramLifetime,MDL)內(nèi)ID不能重復(fù),因此每個發(fā)送源都應(yīng)設(shè)置一個表,以記錄對應(yīng)每個目的端的ID和報文生存時間信息。問題2:對于重傳的數(shù)據(jù),封裝其的IP數(shù)據(jù)報首部ID字段該如何設(shè)置?解決方案1:將重傳的數(shù)據(jù)報首部ID與原來數(shù)據(jù)報首部的ID設(shè)置為相同原因:如果有分片丟失了,使用相同的ID有助于數(shù)據(jù)報重組;發(fā)生擁塞的路由器可以用ID檢測重復(fù)的數(shù)據(jù)報并丟棄以減輕擁塞。4.3.2分片重組實際運行:使用相同的ID對于解決以上問題幾乎沒有幫助。新問題:為保證ID在一個MDL內(nèi)不重復(fù)(MDL通常設(shè)置為2分鐘),如果以常見的1500字節(jié)MTU計算,則最大帶寬為6.4Mbps,這個值在網(wǎng)絡(luò)帶寬飛速提升的情況下明顯偏小。解決:限定ID僅用于分片,不用于重復(fù)性檢測等其他用途。原子IP數(shù)據(jù)報:(DF==1)&&(MF==0)&&(片偏移量==0),就是沒有被分片且不能被分片的數(shù)據(jù)報,ID對其無意義;非原子IP數(shù)據(jù)報:(DF==0)||(MF==1)||(片偏移量>0);已經(jīng)被分片,或者雖然當(dāng)前未被分片但隨后可能被分片的數(shù)據(jù)報,對于重傳的非原子數(shù)據(jù)報,必須
使用不同的ID;優(yōu)點:提高了效率。4.4
IP數(shù)據(jù)報首部校驗和的計算設(shè)數(shù)據(jù)報首部由L個16位比特構(gòu)成,即b0,b1,b2,…,bL-1,校驗和字段對應(yīng)bL計算:x=b0+b1+b2+…+bL-1
+bL(bL
=0)y
=
x[模(216-1)]
bL
=
-x驗證:
0
=
b0+
b1+
b2+…+
bL-1+
bL
[模(216-1)]說明:查錯能力有限,是綜合權(quán)衡計算時間的結(jié)果。只針對首部計算校驗和,不包含數(shù)據(jù)部分,因為:封裝的數(shù)據(jù)對應(yīng)的協(xié)議可能也具有校驗功能;減少中間路由器開銷;缺陷:中途的差錯可能要到終點才能發(fā)現(xiàn)。4.5
IP選項作用:用于網(wǎng)絡(luò)測試和調(diào)試。拷貝:1比特,用于指示路由器在分片處理過程中對選項的處理方法:設(shè)置為“1”,選項應(yīng)被拷貝到所有分片中;否則僅拷貝至第一分片。選項類:指明了選項的類型;選項號:指明了對應(yīng)某類選項的具體項。4.5
IP選項常用的選項:序號拷貝選項類選項號值名稱含義10000EOOL選項表結(jié)束20011NOP無操作,主要是為了讓選項表保持字節(jié)對齊3102130SEC安全性,主要是用于軍事應(yīng)用4103131LSR松散源路由502468TS時間戳6105133E-SEC擴(kuò)展的安全性7106134CIPSO商業(yè)性安全80077RR記錄路由9108136SID流標(biāo)識(已廢棄不用)10109137SSR嚴(yán)格源路由11001010ZSU試驗性測量12001111MTUPMTU探測13001212MTURMTU應(yīng)答141213205FINN試驗性流控151014142VISA試驗性訪問控制16001515ENCODE加密(現(xiàn)實中無應(yīng)用)171016144IMITDIMI流描述符181017145EIP擴(kuò)展IP19021882TRTraceroute(已不用)201019147ADDEXT地址擴(kuò)展211020148RTRALT路由器警告(當(dāng)路由器收到包含該選項的數(shù)據(jù)報時,應(yīng)對其進(jìn)行檢查)221021149SDB選擇性定向廣播231022150--發(fā)布,但具體用途未指定4.5.1記錄路由選項用于源主機(jī)希望得知到達(dá)目的主機(jī)所經(jīng)過的路由器的場合??截惐忍兀喝≈?;第n個IP地址:依次記錄路由器的地址(最多記錄9個);指針:指示下一個可存放地址的位置。問題:如果路徑中的路由器多于9個怎么辦?答案:用Traceroute。4.5.2源路由選項源端指定數(shù)據(jù)報所經(jīng)過的路徑:測試某個物理上的吞吐量,指定必須經(jīng)過該網(wǎng)絡(luò);判斷拓?fù)浣Y(jié)構(gòu);讓數(shù)據(jù)避開危險網(wǎng)絡(luò)。嚴(yán)格源路由:表中相繼兩個地址所屬的兩個路由器必然分別有一個接口連接同一物理網(wǎng)絡(luò)(指定了完備路徑)。寬松源路由:允許表中相繼兩個地址之間相隔多個路由器或物理網(wǎng)絡(luò)(指定了路徑要點)。4.5.2源路由選項示例:細(xì)節(jié):路由器轉(zhuǎn)發(fā)數(shù)據(jù)報前要用自己的出口IP地址代替入口IP地址。為什么?課堂提問。4.5.3時間戳選項用于記錄路由器收到數(shù)據(jù)報的時間,工作原理與記錄路由類似。溢出:記錄因為選項空間太小而不能提供時間戳的路由器個數(shù)。標(biāo)志:規(guī)定了選項的確切格式,并指示路由器如何提供時戳。值含義0僅記錄時戳,忽略IP地址1在每個時戳前記錄一個IP地址3由發(fā)送方指定IP地址,僅當(dāng)表中的下一個IP地址與路由器的IP地址匹配時,才記錄時戳4.5.4與選項相關(guān)的DOS命令“ping-r”:加入目標(biāo)地址參數(shù),指定了記錄路由選項;“ping-s”:指定了時間戳選項;“ping–j
host
list”:指定寬松源路由選項;“ping–k
host
list”:指定嚴(yán)格源路由選項。4.6
IP的一些安全問題TinyFragment:將IP數(shù)據(jù)報分成小片,讓體現(xiàn)封裝數(shù)據(jù)類型的“目的端口 號”數(shù)據(jù)出現(xiàn)在第二個或隨后分片中,從而規(guī)模某些只檢查第一個分片的 防火墻的檢測。Teardrop:在設(shè)置片偏移量字段時,惡意的攻擊者可設(shè)置一個分片的偏移量小于其前一個分片結(jié)束的位置,從而造成兩個分片重疊。某些IP實現(xiàn)在重組分片時無法處理這種情況,從而出現(xiàn)系統(tǒng)異常。PingofDeath:這種攻擊方法的原理是設(shè)法使得一個IP數(shù)據(jù)報的長度大于65535字節(jié),造成接收方預(yù)先分配的65535字節(jié)緩沖區(qū)溢出,最終導(dǎo)致系統(tǒng)異常。問題:如何實現(xiàn)?解答:利用分片技術(shù),比如8192*8+20=65556啟示:必須考慮程序處理異常的能力。4.7
IP的發(fā)展問題:IPv1-v3在哪里?答案:最早的協(xié)議設(shè)計者們并未區(qū)分TCP和IP,而是用TCP解決所有問題,效果并不理想。當(dāng)設(shè)計者們把IP分離出來時,TCP已經(jīng)發(fā)展到v3,所以IP直接進(jìn)入v4。發(fā)展:1.IPsec:解決安全問題;2.IPv6:解決地址不足、安全等問題。當(dāng)前現(xiàn)狀:IPv4與IPv6共存。問題:IPv5是什么?答案:IPv5是一個試驗性協(xié)議,即ISP(Internet
Stream
Protocol,互聯(lián)網(wǎng)流協(xié)議)。由于網(wǎng)絡(luò)帶寬持續(xù)大幅提升,這就給基于IPv4實現(xiàn)流技術(shù)提供了可能,不需要再用專門的協(xié)議,所以ISP,也就是IPv5最終并未實現(xiàn)。4.8
IP數(shù)據(jù)報的選路選路:尋找一條路徑,將數(shù)據(jù)報從源主機(jī)傳遞到目的主機(jī)的過程,稱為IP數(shù)據(jù)報的選路。兩種選路方式:直接選路:源主機(jī)和目的主機(jī)連接于同一物理網(wǎng)絡(luò),或者路由器待轉(zhuǎn)發(fā)數(shù) 據(jù)報的目的地處于該路由器直接相連的一個物理網(wǎng)絡(luò)時,可將數(shù)據(jù)報封裝 成幀,直接向物理網(wǎng)絡(luò)交付。間接選路:源主機(jī)和目的主機(jī)不在同一物理網(wǎng)絡(luò)上,或者路由器待轉(zhuǎn)發(fā)數(shù) 據(jù)報的目的地不在其直接相連的網(wǎng)絡(luò)里時,選擇另一個路由器并向其轉(zhuǎn)發(fā) 數(shù)據(jù)報。選路的基礎(chǔ):路由表。4.8.1路由表原則:每個主機(jī)和路由器都維護(hù)一個路由表,指明去往某些目的地應(yīng)該走哪條路徑。選路時應(yīng)查詢路由表。格式:包含若干表項,每個表項指明去往一個目的地的路徑。<目的地,去往目的地的路徑>問題:目的地如何描述?是主機(jī)地址么?路徑如何表述?是一個路由器地址序列么?答案:目的地址是網(wǎng)絡(luò)地址;路徑是下一跳,即路徑中下一個路由器的IP地址。<N,R>4.8.1路由表示例:目的網(wǎng)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度民品典當(dāng)借款合同風(fēng)險管理細(xì)則4篇
- 2025年度智能酒店管理系統(tǒng)采購與實施合同3篇
- 2025年度生物質(zhì)能發(fā)電工程承包施工合同示范文本4篇
- 2025年度池塘承包生態(tài)農(nóng)業(yè)產(chǎn)品銷售合同4篇
- 二零二五年度企業(yè)內(nèi)部退養(yǎng)合同(含退休員工生活品質(zhì)保障)
- 2025年度綠化景觀苗木種植與生態(tài)旅游項目開發(fā)合同4篇
- 二零二五年度林木采伐安全與生態(tài)修復(fù)項目合同4篇
- 2024物業(yè)公司提供的物業(yè)保養(yǎng)合同
- 2025年度超聲刀美容儀器銷售與市場推廣合同4篇
- 二零二五年度金融數(shù)據(jù)中心網(wǎng)絡(luò)安全保障承包合同4篇
- 衡水市出租車駕駛員從業(yè)資格區(qū)域科目考試題庫(全真題庫)
- 護(hù)理安全用氧培訓(xùn)課件
- 《三國演義》中人物性格探析研究性課題報告
- 注冊電氣工程師公共基礎(chǔ)高數(shù)輔導(dǎo)課件
- 土方勞務(wù)分包合同中鐵十一局
- 乳腺導(dǎo)管原位癌
- 冷庫管道應(yīng)急預(yù)案
- 司法考試必背大全(涵蓋所有法律考點)
- 公共部分裝修工程 施工組織設(shè)計
- 《學(xué)習(xí)教育重要論述》考試復(fù)習(xí)題庫(共250余題)
- 裝飾裝修施工及擔(dān)保合同
評論
0/150
提交評論