如何理解TCP/IP協議?

林恒發表於2024-03-25

一、是什麼

TCP/IP,傳輸控制協議/網際協議,是指能夠在多個不同網路間實現資訊傳輸的協議簇

  • TCP(傳輸控制協議)

一種面向連線的、可靠的、基於位元組流的傳輸層通訊協議

  • IP(網際協議)

用於封包交換資料網路的協議

TCP/IP協議不僅僅指的是TCPIP兩個協議,而是指一個由FTPSMTPTCPUDPIP等協議構成的協議簇,

只是因為在TCP/IP協議中TCP協議和IP協議最具代表性,所以通稱為TCP/IP協議族(英語:TCP/IP Protocol Suite,或TCP/IP Protocols)

二、劃分

TCP/IP協議族按層次分別了五層體系或者四層體系

五層體系的協議結構是綜合了 OSI 和 TCP/IP 優點的一種協議,包括應用層、傳輸層、網路層、資料鏈路層和物理層

五層協議的體系結構只是為介紹網路原理而設計的,實際應用還是 TCP/IP 四層體系結構,包括應用層、傳輸層、網路層(網際互聯層)、網路介面層

如下圖所示:

五層體系

應用層

TCP/IP 模型將 OSI參考模型中的會話層、表示層和應用層的功能合併到一個應用層實現,透過不同的應用層協議為不同的應用提供服務

如:FTPTelnetDNSSMTP

傳輸層

該層對應於 OSI 參考模型的傳輸層,為上層實體提供源端到對端主機的通訊功能

傳輸層定義了兩個主要協議:傳輸控制協議(TCP)和使用者資料包協議(UDP)

其中面向連線的 TCP 協議保證了資料的傳輸可靠性,面向無連線的 UDP 協議能夠實現資料包簡單、快速地傳輸

網路層

負責為分組網路中的不同主機提供通訊服務,並透過選擇合適的路由將資料傳遞到目標主機

在傳送資料時,網路層把運輸層產生的報文段或使用者資料封裝成分組或包進行傳送

資料鏈路層

資料鏈路層在兩個相鄰節點傳輸資料時,將網路層交下來的IP資料包組裝成幀,在兩個相鄰節點之間的鏈路上傳送幀

物理層

保資料可以在各種物理媒介上進行傳輸,為資料的傳輸提供可靠的環境

四層體系

TCP/IP 的四層結構則如下表所示:

三、總結

OSI 參考模型與 TCP/IP 參考模型區別如下:

相同點:

  • OSI 參考模型與 TCP/IP 參考模型都採用了層次結構
  • 都能夠提供面向連線和無連線兩種通訊服務機制

不同點:

  • OSI 採用的七層模型; TCP/IP 是四層或五層結構

  • TCP/IP 參考模型沒有對網路介面層進行細分,只是一些概念性的描述; OSI 參考模型對服務和協議做了明確的區分

  • OSI 參考模型雖然網路劃分為七層,但實現起來較困難。TCP/IP 參考模型作為一種簡化的分層結構是可以的

  • TCP/IP協議去掉表示層和會話層的原因在於會話層、表示層、應用層都是在應用程式內部實現的,最終產出的是一個應用資料包,而應用程式之間是幾乎無法實現程式碼的抽象共享的,這也就造成 OSI 設想中的應用程式維度的分層是無法實現的

三種模型對應關係如下圖所示:

參考文獻

  • https://zh.wikipedia.org/wiki/TCP/IP%E5%8D%8F%E8%AE%AE%E6%97%8F
  • https://zhuanlan.zhihu.com/p/103162095
  • https://segmentfault.com/a/1190000039204681
  • https://leetcode-cn.com/leetbook/detail/networks-interview-highlights/
  • https://vue3js.cn/interview

相關文章