2017-08-04 54 views
-1

從我迄今爲止所瞭解的內容來看,與非透明IP分片不同,數據包在源處被分段並僅在目的地重新組裝;透明IP分片的中間網絡系統,在傳輸過程中重新組合和分割IP分組。給出以下兩個終端系統(A)和(B)彼此通信的例子,其中每個終端系統分別是子網1和子網3的一部分。 router1會重新組合A發送的IP數據包分段,然後將整個非分段數據包發送給router2,然後在將它發送給B之前將其分段。這是透明的IP分片工作原理嗎?透明IP分片

(A) subnet1 ----- router1 ------ subnet2 ------- router2 ------- subnet3 (B) 

回答

0

我想你應該看看這個post,它讓你知道它是如何工作的。

對我的包是發送給路由器2路由器1 rassemble然後到達B. 在所有情況下b收到整個帕凱而不是A.

0

在正常IPv4分段製作片段,路由器會片段如果下一個接口的MTU小於數據包大小,則爲數據包。在路由器上發生碎片,但重新組裝分組是終端系統的責任。

在路徑中的兩個中間系統之間使用分段和重組不是直接由IPv4 RFC覆蓋,所以沒有真正的標準來解釋這種情況。基本上,一條鏈路的末端會將一個數據包分段以適應鏈路的MTU,而鏈路的另一端會將這些數據包重新組裝成原始數據包。這並不常見,因爲它給路由器帶來了很大的負擔。在正常的碎片中,重新組裝的負擔將放在終端系統上。

RFC 791, Internet Protocol

基本的互聯網服務是面向數據報的,並提供了在網關 碎裂的數據報,以重新組裝在目標主機的目的地網際協議模塊發生 。 當然,網絡中的數據報的分段和重新組合也可以通過網絡網關之間的私有協議來允許,因爲這對於互聯網協議和高層協議是透明的。這種透明類型的分段和重組被稱爲「網絡相關」(或內聯網)分段 ,在此不作進一步討論。

碎片在RFC的完整描述:

碎片

碎片互聯網數據報是必要的,當它在一個本地網,可以將大數據包大小,必須遍歷起源 一個 本地網絡,將數據包限制爲較小的大小,以達到其目的地址 。

互聯網數據報可以標記爲「不分段」。任何互聯網 如此標記的數據報不得在任何 的情況下被互聯網分段。如果標記的互聯網數據報不能分段,不能將 傳送到其目的地,而是將其丟棄爲 。

分片,傳輸和重組通過本地網絡 這對互聯網協議模塊是不可見的被稱爲內聯網 分片並可以使用[6]。

互聯網分段和重組過程需要能夠將數據報分成幾乎任意數量的片段,然後再重新組裝。片段的接收者使用標識字段來確保不同數據報的片段不混合。片段偏移量字段告訴接收器原始數據報中片段的位置爲 。片段偏移量爲 ,長度決定了該片段所覆蓋的原始數據報的部分。 more-fragments標誌指示(通過重置)最後一個片段 。這些字段提供足夠的信息給 重組數據報。

標識字段用於區分一個 數據報的片段與另一個的片段。互聯網數據報的始發協議模塊將標識字段設置爲對於該源 - 目的地對和時間協議必須是唯一的值,該數據報將在因特網系統中活動。一個完整的數據報的協議模塊的起始 設置更多片段標誌爲 零,片段偏移量爲零。

要片段長互聯網數據報,因特網協議模塊(爲 例如,在網關),創建兩個新的互聯網數據報和副本 從長數據報網絡報頭字段的內容到 兩個新的互聯網頭部。長數據報的數據在8字節(64比特)邊界上被分成兩部分(第二部分 可能不是8個八比特組的整數倍,但第一部分必須是)。 在第一部分NFB中調用8個八位字節塊的數量(對於分段塊的 號碼)。數據的第一部分放在第一個新的互聯網數據報的 中,總長度字段設置爲第一個數據報的長度爲 。 more-fragments標誌被設置爲1。 數據的第二部分被放置在第二個新的互聯網 數據報中,並且總長度字段被設置爲第二數據報的長度 。 more-fragments標誌的值與長數據報中的值相同 。第二個新的互聯網數據報的片段偏移量字段被設置爲數據報長加上NFB的長字段 中的那個字段的值。

此過程可以推廣爲n路分裂,而不是所描述的雙向分裂。

向(在目的地主機例如)裝配因特網的數據報的碎片,因特網 協議模塊結合互聯網 數據報都具有用於四個字段的值相同: 識別,源,目的地和協議。組合是 通過將每個片段的數據部分放置在該片段的互聯網 頭部中的片段偏移所指示的相對位置處來完成。第一個片段的片段偏移量爲零, 最後一個片段將會將more-fragments標誌位重置爲零。