欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

IP數(shù)據(jù)報的分片和組裝原理是什么

這篇文章主要為大家分析了IP數(shù)據(jù)報的分片和組裝原理是什么的相關(guān)知識點,內(nèi)容詳細易懂,操作細節(jié)合理,具有一定參考價值。如果感興趣的話,不妨跟著跟隨小編一起來看看,下面跟著小編一起深入學(xué)習(xí)“IP數(shù)據(jù)報的分片和組裝原理是什么”的知識吧。

10年積累的成都做網(wǎng)站、網(wǎng)站建設(shè)經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認識你,你也不認識我。但先網(wǎng)站設(shè)計后付款的網(wǎng)站建設(shè)流程,更有安陽免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。


   一份數(shù)據(jù)從一個主機通過路由器發(fā)送給另一個主機時,要經(jīng)過很多路由層轉(zhuǎn)發(fā)的。過程比較復(fù)雜,那么IP在路由層到底是以怎樣的形式轉(zhuǎn)發(fā)和目的主機這份數(shù)據(jù)報的時候又是如何處理的?

   首先我們需要了解數(shù)據(jù)報的格式:

IP數(shù)據(jù)報的分片和組裝原理是什么

IP的轉(zhuǎn)發(fā)和控制都是由IP數(shù)據(jù)報的頭部決定

4位首部長度的數(shù)值是以 4字節(jié)為單位的,最小值為 5,也就是說首部長度最小是 4x5=20字節(jié) ,

也就是不帶任何選項的 IP首部 ,4位能表表示的最大值是 15,也就是說首部長度最大是 60字 節(jié)

8位TOS字段有 3個位用來指定IP數(shù)據(jù)報的優(yōu)先級 (目前已經(jīng)廢棄不用 ),還有4個位表示可選

的服務(wù)類型 (最小延遲、最大呑吐量、最大可靠性、最小成本 ),還有一個位總 是0。

16位總長度是整個數(shù)據(jù)報 (包括IP首部和 IP層payload)的字節(jié)數(shù)。

每傳一個 IP數(shù)據(jù)報 ,16 位的標(biāo)識加1,可用于分片和重新組裝數(shù)據(jù)報。

3位標(biāo)志和13位片偏移用于分片 。

TTL(Time to live) 是這樣用的 :源主機為數(shù)據(jù)包設(shè)定一個生存時間 ,比如 64,每過一個路由器

就把該值減 1,如果減到 0就表示路由已經(jīng)太長了仍然找不到目的主機的網(wǎng)絡(luò) ,就丟棄該包 ,因此

這個生存時間的單位不是秒 ,而是跳 (hop)。

協(xié)議字段指示上層協(xié)議是 TCP、 UDP、 ICMP還是 IGMP。

然后是 校驗和, 只校驗IP首部 ,數(shù)據(jù)的校驗由更高層協(xié)議負責(zé)。

IPv4的IP地址長度為 32位。

    在IP數(shù)據(jù)報中總長度是16位的字段,一次數(shù)據(jù) 報的最大長度為2^16-1,雖然盡可能長的數(shù)據(jù)報能夠提高傳輸效率,但是很少 有超過 1500字節(jié)的;所以在這里只要超過1500字節(jié),就認為此數(shù)據(jù)報該分片了。IP數(shù)據(jù)報被分片以后,各分片分別組成一個具有IP首部的分組,并各自獨立的路由,分別抵達目的主機后,目的主機的IP層會在傳送給傳輸層之前將收到的所有分片重新組裝成一個數(shù)據(jù)報。

一.IP分片

1.IP分片原理:

    分片和重新組裝的過程對于傳輸層是透明的,原因是IP數(shù)據(jù)報進行分片以后,只有它到達下一站時才可以 進行重新組裝,且它是由目的端的IP層來完成的,分片之后的數(shù)據(jù)報根據(jù)需要可以再次 分片;

     IP分片和完整的報文差不多擁有相同的IP頭,ID域?qū)γ烙⒎制际且恢碌模@樣才能在進行組裝的時候識別出來 同一個IP數(shù)據(jù)報文分片。在IP頭里面,16位識別號唯一記錄了一個IP報的ID,具有同一個ID的IP分片將會重新進行組裝;而13位片偏移則記錄了某IP片相對于整個包的位置;這兩個表中間的3位標(biāo)志則標(biāo)志著該分片后面是否還有新的分片。這三個域組成了IP分片的所有信息,接受方可以利用這些信息對IP數(shù)據(jù)進行重新組裝。

(1)標(biāo)志字段的作用

   0   DF  MF

標(biāo)志字段共三位,最高位為0,該值必須復(fù)制到 所有 分組中

不分片(Do not Fragment ,DF)值必須復(fù)制。DF=1表示 接受主機不能對分組進行分片。如果分組的長度超過 MTU,又不可以分片,那么這個分組只能丟棄,并要用ICMP差錯報文向源主機報告 。DF=0,表示可以分片

分片(MF)表示分片是不是最后一個分片,MF=1表示接受分片不是 最后一個分片,MF=0表示 接受分片時是最后一個分片

故意發(fā)送部分IP分片而不是全部,則會導(dǎo)致目標(biāo)主機總是等待分片消耗并占用系統(tǒng)資源。

2.MTU(最大傳輸 單元)原理

    當(dāng)兩臺遠程CP互聯(lián)的時候,他們的數(shù)據(jù)要穿過很多的路由器和各種各樣的網(wǎng)絡(luò)媒介才能到達對端

,網(wǎng)絡(luò)中不同媒介的MTU各不相同,就好比一長段的水管,由不同粗細的水管組成(MTU不同 )通過這段水管最大水量就要由中間最細的水管決定。

    對于網(wǎng)絡(luò)層的上層協(xié)議而言(這里以TCP/IP協(xié)議簇為例)他們對水管的粗細不在意因為他們認為 這是網(wǎng)絡(luò)的事情。網(wǎng)絡(luò)層IP協(xié)議會檢測每個從上層協(xié)議下來的數(shù)據(jù)報包的大小 ,并根據(jù)本機的MTU大小決定是否分片處理。分片最大的壞處就是降低了傳輸性能,本來可以一次搞定的事情,分成多次。所以在網(wǎng)絡(luò)的更高一層(傳輸層的實現(xiàn))往往會對此加以注意,因為有些高層因為某些原因可能就要求不能對分組進行分片,索引會在IP數(shù)據(jù)報的包頭加上一個標(biāo)簽:DF這樣IP數(shù)據(jù)包在一大段網(wǎng)絡(luò)傳輸?shù)臅r候,如果遇到MTU小于 數(shù)據(jù)包的情況,轉(zhuǎn)發(fā)設(shè)備會根據(jù)情況丟掉這個數(shù)據(jù)包。然后返回一個錯誤信息給 發(fā)送者,這往往會造成通訊上的問題,不過幸運的是大部分網(wǎng)絡(luò)鏈路MTU都是1500或者大于 1500

    對于UDP而言,這個協(xié)議本身是無連接的協(xié)議,對數(shù)據(jù)包的到達順序是否正確并不關(guān)心,所以一般UDP對分片沒有多大要求

    對于TCP就不一樣了,這個協(xié)議是面向連接的協(xié)議,對于 TCP而言它非常在意數(shù)據(jù)包的到達順序

以及在傳輸過程中是否有錯誤發(fā)生,所以有些TCP應(yīng)用對分片有要求---不能分片

3.MSS(最大報文段長度 )原理

    MSS就是TCP數(shù)據(jù)包每次能夠傳輸?shù)淖畲髷?shù)據(jù)分段,為了達到最佳的傳輸效能TCP協(xié)議在建立連接的時候通常要協(xié)商雙方MSS的值,這個值TCP協(xié)議在實現(xiàn)的時候用MTU代替(要減去IP數(shù)據(jù)包的包頭大小20bites和TCP數(shù)據(jù)段的包頭20BITES)所以MSS大小往往為1460,雙方會根據(jù)提供的MSS最小值 確定這次連接的MSS最大值

二.IP分片步驟

    一個未分片的數(shù)據(jù)報的分片信息字段全為0,即多個分片標(biāo)志位為 0,并且偏移量 為0,分片一個數(shù)據(jù)報需要經(jīng)過一下步驟

(1)檢查DF標(biāo)志位,查看是否允許分片,如果設(shè)置了該位,則數(shù)據(jù)報將被丟棄 ,并將ICMP錯誤返回給源端

(2)基于MTU值,把數(shù)據(jù)字段分成兩個或?qū)€部分,除了最后的數(shù)據(jù) 部分外,所有新建的數(shù)據(jù)選項 長度必須為8字節(jié)的倍數(shù)

(3)每個數(shù)據(jù)被放入一個IP數(shù)據(jù)報,這些數(shù)據(jù)報的包頭略微改了原先的報文頭

(4)除了最后的數(shù)據(jù)報分片外,所有的分片都設(shè)置了多個分片標(biāo)志位

(5)每個分片中的片偏移量字段設(shè)為這個數(shù)據(jù)部分在原來數(shù)據(jù)報中所占的位置,這個位置相對于原來未分片數(shù)據(jù)報中的開頭處。
(6)如果在原來的數(shù)據(jù)報中包括了選項,則選項類型字節(jié)的高位字節(jié)決定了這個信息是被復(fù)制到所有分片數(shù)據(jù)報,還是只復(fù)制到第一個數(shù)據(jù)報。
(7) 設(shè)置新數(shù)據(jù)報的報文頭字段及總長度字段。
(8)重新計算報文頭部校驗和字段。

   此時這些分片數(shù)據(jù)報如一個完整的IP數(shù)據(jù)報一樣被轉(zhuǎn)發(fā),IP獨立的處理每個數(shù)據(jù)報分片,數(shù)據(jù)報分片能夠通過不同的路由 ,到達目的,如果他們通過了那些規(guī)定了更小的MTU路由,還能夠進一步對他們進行分片

    在目的主機上,數(shù)據(jù)被 重新組合成原來的數(shù)據(jù)報 ,發(fā)送主機設(shè)置的標(biāo)示字段與數(shù)據(jù)報中的袁IP地址和目的IP地址一起使用,分片過程不改變這個字段

三 .重組

    為了重新組合這些數(shù)據(jù)報分片,接受主機在第一個分片到達時分配一個存儲緩沖區(qū)。這個主機還將啟動一個計時器。當(dāng)數(shù)據(jù)報的后續(xù)分片到達時,數(shù)據(jù)被復(fù)制到緩沖區(qū)存儲器中片偏移量指定的位置,當(dāng)所有分片都到達時,完整的未分片的原始數(shù)據(jù)報就被恢復(fù)了。

    如果計時器超時并且分片保持尚未認可狀態(tài),則數(shù)據(jù)將被丟棄。這個計時器的初始值為IP數(shù)據(jù)報的生存期值,它依賴于實現(xiàn)的,一些實現(xiàn)允許對他進行配置。

重組步驟

在接受方,一個由發(fā)送方發(fā)出的原始數(shù)據(jù)IP報,將所有的分片重新組合,才能夠提交到上一層協(xié)議,每一個將被重組的IP數(shù)據(jù)報都用一個ipq結(jié)構(gòu)來表示

為了能夠有效提高組裝分片,用于保存分片的結(jié)構(gòu)必須做到以下幾點

(1)快速定位某一個數(shù)據(jù)報的一組分組

(2)在屬于某一個數(shù)據(jù)報的一組分片中快速插入新的分片

(3)有效的判斷一個數(shù)據(jù)報的所有分片是否已經(jīng)被全部接收

(4)具有重組超時機制,如果在重組完成之前超時溢出,則刪除該數(shù)據(jù)報的所有內(nèi)容

這篇文章主要為大家分析了IP數(shù)據(jù)報的分片和組裝原理是什么的相關(guān)知識點,內(nèi)容詳細易懂,操作細節(jié)合理,具有一定參考價值。如果感興趣的話,不妨跟著跟隨小編一起來看看,下面跟著小編一起深入學(xué)習(xí)“IP數(shù)據(jù)報的分片和組裝原理是什么”的知識吧。

網(wǎng)頁題目:IP數(shù)據(jù)報的分片和組裝原理是什么
路徑分享:http://www.chinadenli.net/article26/iiiijg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動網(wǎng)站建設(shè)外貿(mào)網(wǎng)站建設(shè)定制網(wǎng)站網(wǎng)站營銷定制開發(fā)網(wǎng)站設(shè)計

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運營