IP協(xié)議對(duì)數(shù)據(jù)報(bào)的操作
在IP協(xié)議中,我們常要用了解的就是它和數(shù)據(jù)報(bào)的聯(lián)系。那么在它的格式,也就是對(duì)物理幀結(jié)構(gòu)進(jìn)行傳輸和封裝的時(shí)候,所進(jìn)行的操作和原理我們?cè)谶@里為大家介紹一下。首先對(duì)這個(gè)原理的分段和重組來(lái)介紹一下。
IP協(xié)議數(shù)據(jù)報(bào)的分段與重組
IP數(shù)據(jù)報(bào)是通過(guò)封裝為物理幀來(lái)傳輸?shù)?。由于因特網(wǎng)是通過(guò)各種不同物理網(wǎng)絡(luò)技術(shù)互連起來(lái)的,在因特網(wǎng)的不同部分,物理幀的大?。?**傳輸單元MTU)可能各不相同。為了***程度的利用物理網(wǎng)絡(luò)的能力,IP模塊以所在的物理網(wǎng)絡(luò)的MTU做為依據(jù),來(lái)確定IP數(shù)據(jù)報(bào)的大小。當(dāng)IP數(shù)據(jù)報(bào)在兩個(gè)不同MTU的網(wǎng)絡(luò)之間傳輸時(shí),就可能出現(xiàn)IP數(shù)據(jù)報(bào)的分段與重組操作。
在IP頭中控制分段和重組的IP頭域有三個(gè):標(biāo)識(shí)域、標(biāo)志域、分段偏移域。標(biāo)識(shí)是源主機(jī)賦予IP數(shù)據(jù)報(bào)的標(biāo)識(shí)符。目的主機(jī)根據(jù)標(biāo)識(shí)域來(lái)判斷收到的IP數(shù)據(jù)報(bào)分段屬于哪一個(gè)數(shù)據(jù)報(bào),以進(jìn)行IP數(shù)據(jù)報(bào)重組。標(biāo)志域中的DF位標(biāo)識(shí)該IP數(shù)據(jù)報(bào)是否允許分段。當(dāng)需要對(duì)IP數(shù)據(jù)報(bào)進(jìn)行分段時(shí),如果DF位置1,網(wǎng)關(guān)將會(huì)拋棄該IP數(shù)據(jù)報(bào),并向源主機(jī)發(fā)送出錯(cuò)信息。標(biāo)志域中的MF位標(biāo)識(shí)該IP數(shù)據(jù)報(bào)分段是否是***一個(gè)分段。分段偏移域記錄了該IP數(shù)據(jù)報(bào)分段在原IP數(shù)據(jù)報(bào)中的偏移量。偏移量是8字節(jié)的整數(shù)倍。分段偏移域被用來(lái)確定該IP數(shù)據(jù)報(bào)分段在IP數(shù)據(jù)報(bào)重組時(shí)的順序。
IP數(shù)據(jù)報(bào)在被傳輸過(guò)程中,一旦被分段,各段就作為獨(dú)立的IP數(shù)據(jù)報(bào)進(jìn)行傳輸,在到達(dá)目的主機(jī)之前有可能會(huì)被再次或多次分段。但是IP數(shù)據(jù)報(bào)分段的重組都只在目的主機(jī)進(jìn)行。
IP協(xié)議對(duì)輸入數(shù)據(jù)報(bào)的處理
IP對(duì)輸入數(shù)據(jù)報(bào)的處理分為兩種,一種是主機(jī)對(duì)數(shù)據(jù)報(bào)的處理,一種是網(wǎng)關(guān)對(duì)數(shù)據(jù)報(bào)的處理。
當(dāng)IP數(shù)據(jù)報(bào)到達(dá)主機(jī)時(shí),如果IP數(shù)據(jù)報(bào)的目的地址與主機(jī)地址匹配,IP接收該數(shù)據(jù)報(bào)并將它傳給高級(jí)協(xié)議軟件處理;否則拋棄該IP數(shù)據(jù)報(bào)。
網(wǎng)關(guān)則不同,當(dāng)IP數(shù)據(jù)報(bào)到達(dá)網(wǎng)關(guān)IP層后,網(wǎng)關(guān)首先判斷本機(jī)是否是數(shù)據(jù)報(bào)到達(dá)的目的主機(jī)。如果是,網(wǎng)關(guān)將接收到的IP數(shù)據(jù)報(bào)上傳給高級(jí)協(xié)議軟件處理。如果不是,網(wǎng)關(guān)將對(duì)接收到的IP數(shù)據(jù)報(bào)進(jìn)行尋徑,并隨后將其轉(zhuǎn)發(fā)出去。
IP協(xié)議對(duì)輸出數(shù)據(jù)報(bào)的處理
IP對(duì)輸出數(shù)據(jù)報(bào)的處理也分為兩種,一種是主機(jī)對(duì)數(shù)據(jù)報(bào)的處理,一種是網(wǎng)關(guān)對(duì)數(shù)據(jù)報(bào)的處理。
對(duì)于網(wǎng)關(guān)來(lái)說(shuō),IP接收到IP數(shù)據(jù)報(bào)后,經(jīng)過(guò)尋徑,找到該IP數(shù)據(jù)報(bào)的傳輸路徑。該路徑實(shí)際上是全路徑中的下一個(gè)網(wǎng)關(guān)的IP地址。然后,該網(wǎng)關(guān)將該IP數(shù)據(jù)報(bào)和尋徑到的下一個(gè)網(wǎng)關(guān)的地址交給網(wǎng)絡(luò)接口軟件。網(wǎng)絡(luò)接口軟件收到IP數(shù)據(jù)報(bào)和下一個(gè)網(wǎng)關(guān)地址后,首先調(diào)用ARP完成下一個(gè)網(wǎng)關(guān)IP地址到物理地址的映射,然后將IP數(shù)據(jù)報(bào)封裝成幀,***由子網(wǎng)完成數(shù)據(jù)報(bào)的物理傳輸。



















