TCP IP 中的複用 分解和封裝

之前已經討論了協議複用、分解和封裝的基礎內容,每層都會有一個標識符,允許接收方決定哪些協議或數據流可複用在一起。每層通常也有地址信息,它用於保證一個PDU被交付到正確的地方。


TCP IP 中的複用 分解和封裝

如何在一臺Internet主機上進行分解


TCP/IP協議棧將地址信息和協議分解標識符相結合,以決定一個數據報是否被正確接收,以及哪個實體將處理該數據報。有幾層還會檢測到數值(例如校驗和),以保證內容在傳輸中沒有損壞。

雖然它不是TCP/IP協議族的真實部分 ,但我們也能自底向上地說明從鏈路層開始如何進行分解。這裡使用以太網作為例子,以太網幀包含一個48位的目的地址(又稱為鏈路層或介質訪問層控制MAC地址)和一個16位的以太網類型字段。0x0800(十六進制)表示這個幀包含IPv4數據報,0x0806和0x86DD分別表示ARP和IPv6。假設目的地址與接收方的一個地址匹配,這個幀將被接收並校驗差錯,以太網類型字段用於選擇處理它的網絡層協議。

如果接收到的幀包含一個IP數據報,以太網頭部和尾部信息將被清除,並將剩餘字節(包含幀的有效載荷)交給IP來處理。IP檢測一系列的字段,包括數據報中的目的IP地址。如果目的IP地址與自己的一個IP地址匹配,並且數據報頭部(IP不檢測有效載荷)沒有錯誤,則檢測8位的IPv4協議字段(在IPv6稱為下一個頭部字段),以決定接下來哪個協議來處理。常見的值包括1(ICMP)2(IGMP)4(IPv4) 6(TCP)和17(UDP).數值4(和41,表示IPv6)的含義是有趣的,因為它表示一個IP數據報可能出現在另一個IP數據報的有效載荷中。它違反了分層和封裝的原有概念,但是作為隧道技術的基礎。

如果網絡層(IPv4或IPv6)認為傳入的數據有效,並且已確定正確的傳輸層協議,則將數據報(必要時由分片重組而成)交給傳輸層處理。在傳輸層中,大部分協議(包括TCP和UDP)通過端口號將複用分解到適當的應用。

備註:有效載荷也簡稱為負載

"


分享到:


相關文章: