封裝和解封裝

一:數據封裝
1.封裝與解封裝
封裝:是從應用層-傳輸層-網絡層-鏈路層-物理層(從上到下的過程)
數據
應用層 數據
傳輸層 應用層 數據 ---添加源端口 和目標端口
網絡層 傳輸層 應用層 數據 ---添加源IP 和DIP
鏈路層 網絡層 傳輸層 應用層 數據 ---添加源MAC 和DMAC
經過比特流進行傳輸
每層數據解析:
應用層(APP報頭)--數據
傳輸層(TCP&UPD報頭+端口)--數據段
網絡層(原IP地址和目標端口)---數據包
鏈路層(源MAC地址和目標MAC地址)--數據幀
物流層(轉換層0和1的bit流進行傳遞)--bit
封裝和解封裝
注意點:
鏈路層當中有一個type字段 用來表示我上一層是IP協議呢 仍是IPv6協議呢 仍是IPX協議
網絡層當中有一個protocol字段 用來表示上層是TCP呢 仍是UDP呢
傳輸層當中有一個Dport字段 用來表示上層是telnet呢?仍是SSH呢?仍是FTP呢等等
2:解封裝
是從物理層-鏈路層-網絡層-傳輸層-應用層
數據(你好)
鏈路層 網絡層 傳輸層 應用層 數據 ---添加源MAC 和DMAC
網絡層 傳輸層 應用層 數據 ---添加源IP 和DIP
傳輸層 應用層 數據 ---添加源端口 和目標端口
應用層 數據
數據
封裝和解封裝
注意點:
解封裝到鏈路層的時候 當發現DMAC地址 是我本身的時候 我會繼續向上解封裝
解封裝到網絡層的時候 當發現DIP地址是我地址 我會繼續向上解封裝
解封裝傳輸層的時候 當發現Dport是某某的時候 我會交給某一個應用程序進行處理網絡

相關文章
相關標籤/搜索