1. 程式人生 > >TCP/IP 詳解 Part 1.

TCP/IP 詳解 Part 1.

TCP/IP協議族

為使不同廠家生產的各種型號,執行完全不同作業系統的計算機間能夠互相通訊而制定的一系列通訊協議。

TCP/IP協議族層次劃分

不同於OSI參考模型的七層結構,TCP/IP將網路層次劃分為應用層、傳輸層、網路層、資料鏈路層四層。其中OSI參考模型中的應用層、表示層、會話層在TCP/IP協議結構中被統一為應用層,資料鏈路層、物理層被統一為資料鏈路層。

OSI參考模型
層次 報文名稱 功能 主要協議
7 應用層 應用層協議資料單元報文(APDU) 提供應用程式間通訊 DHCP、HTTP、FTP、DNS、...
6 表示層 表示層協議資料單元報文(PPDU) 處理資料格式、資料加密等
5 會話層 會話層協議資料單元報文(SPDU) 建立、維護和管理會話
4 傳輸層 資料段(segment) 建立主機端到端連線 TCP、UDP、RTP、...
3 網路層 資料報(datagram) 定址和路由選擇 IP(IPV4、IPV6)、ARP、ICMP、IGMP、...
2 資料鏈路層 資料幀(frame) 提供解釋訪問、鏈路管理等 802.11、802.16、Wi-Fi、PPP、L2TP、...
1 物理層 位元(bit) 位元流傳輸 RS443、RS-232C、...
TCP/IP參考模型
層次 功能
4 應用層 提供應用程式網路介面
3 傳輸層 建立主機端到端連結
2 網路層 定址和路由選擇
1 資料鏈路層 提供物理介質訪問

他們每一層利用下一層提供的服務與對等層進行通訊,如下圖所示。

TCP/IP分層
TCP/IP分層

網際網路地址

網際網路上的每個介面必須有一個唯一的Internet地址(也稱作IP地址)。IP地址長32 bit。Internet地址並不採用平面形式的地址空間,如1、2、3等。IP地址具有一定的結構,五類不同的網際網路地址格式如下圖所示。

網際網路地址
網際網路地址 ​​​​​

這些32位的地址通常寫成四個十進位制的數,其中每個整數對應一個位元組。這種表示方法稱作“點分十進位制表示法(Dotted decimal notation)”。下圖列出了各類地址的起止範圍,其中第一個十進位制整數用加黑字體表示。

ip地址範圍
ip地址範圍 ​​​​​​

封裝

當應用程式用TCP傳送資料時,資料被送入協議棧中,然後逐個通過每一層直到被當作一串位元流送入網路。其中每一層對收到的資料都要增加一些首部資訊(有時還要增加尾部資訊),該過程如下圖所示。

協議棧封裝
協議棧封裝過程

分用

當目的主機收到一個乙太網資料幀時,資料就開始從協議棧中由底向上升,同時去掉各層協議加上的報文首部。每層協議盒都要去檢查報文首部中的協議標識,以確定接收資料的上層協議。這個過程稱作分用(Demultiplexing),下圖顯示了該過程是如何發生的。

資料幀分用
乙太網資料幀分用