1. 程式人生 > >封裝與解封裝

封裝與解封裝

封裝 解封裝

封裝與解封裝

封裝:將數據變為比特流的過程中,在參考模型的每一層需要添加上特定的協議報頭動作

動作:從高層往低層依次封裝,在每一層使用特定的協議,對數據進行處理,在數據前添加特定的協議報頭。

封裝原則:

1:每一層在上一層數據前添加協議報頭

2:添加完協議報頭的整體,就是該層的PDU

3:每一層的PDU對於下一層來說就是上層數據(每一層的上層數據就是上層的PDU)

PDU(協議數據單元,也就是每層的數據單位)

表示層:APDU

會話層:PPDU

傳輸層:SPDU

傳輸層:段(segment)

網絡層:包(packet)

數據鏈路層:幀(frame)

物理層:比特(bit)

封裝由發送者發送出去,數據只有被封裝以後才有可能被發送出去。

*主機在封裝數據包之前,必須要知道目的端IP地址,在封裝數據幀之前,必須要知道去往目的網絡的路由以及下一跳的MAC地址。

封裝的必要參數

傳輸層:源端口號 目標端口號

網絡層:源IP地址 目標IP地址

數據鏈路層:源MAC地址 目標MAC地址

解封裝:封裝的逆過程,數據從比特流還原為數據的過程

動作,從底層往高層依次解封裝,每解封裝一層,會將該層的忒點那個協議報頭去掉

解封裝原則:

1:必須從底層往高層解封裝

2:解封裝時,只有協議報頭合理(打個比方,你收到一個包裹,上面有你的名字還有你的家庭住址才是你的,之久叫做合理),才可以解封裝。

3:解封裝一旦停止,數據就會被丟棄

解封裝由接收者觸發,數據必須經過解封裝才可以被接受

數據鏈路層分為兩個子層:

LLC子層:邏輯鏈路控制子層--負責和上層協商,使用SAP來區分不同的上層協議

MAC子層:介質訪問控制子層

數據鏈路層有FCS(幀檢驗字段)用於檢測數據的完整性

LLC子層提供服務訪問點(SAP),標識上層協議

1:每一層都需要利用下層的服務進行通信

2:每一層都需要為上層服務,所以需要標識上層所使用的協議或應用

傳輸層:使用端口號標識上層應用

網絡層:使用協議號標識上層應用





本文出自 “costin” 博客,請務必保留此出處http://brighttime.blog.51cto.com/12837169/1949698

封裝與解封裝