TCP/IP模型

明易發表於2018-12-05

先上一張圖

Snip20181204_1.png

沒錯,這就是傳輸中的TCP/IP分層模型。

TCP/IP分為四層:應用層、傳輸層、網路層、鏈路層。

關於四層模型的介紹,網上可謂汗牛充棟,概念何其艱深,比如:

  • 應用層:決定了向使用者提供應用服務時通訊的活動
  • 傳輸層:對上層應用層提供處於網路連線中的兩臺計算機之間的資料傳輸
  • 網路層:處理在網路上流動的資料包
  • 鏈路層:處理連線網路的硬體部分。

相信你看完還是一頭霧水。

要理解TCP/IP,我們依舊要先搞清楚它想幹嘛?

一句話概括,就是用最少的資源,準確快速的把資訊傳送到對端去。

那麼這裡面就有很多問題要解決了:怎樣充分利用資源?用資源怎麼發資訊?怎樣找到對端?怎樣做到準確?怎樣快速?怎樣保證對端完整收到資訊?………

對於學計算機的我們,這個時候應該就能想到,這麼多問題,不可能一次性解決,需要分解,分模組來解決,TCP/IP分層模型也是這麼想的。

首先是怎樣充分利用資源,用什麼物質傳又省錢又好用?這就是物理層要解決的問題了,這裡展開來就是無線銅線光纖損耗等等的問題。很好理解。

然後知道介質了,怎樣把資訊傳給裝置?這就是資料鏈路層要解決的問題了。這裡需要解決資訊的封裝問題,資訊傳送機制問題。所以這一層的所有協議設計都是圍繞著怎麼傳資訊展開。

理論上到這裡就結束了,但隨著入網裝置越來越多,就需要被管理了,所以網路層就來解決網路管理的問題。IP層是整個網路分層裡承上啟下的核心,他主要解決兩個問題,一個是編號,一個是找人。網路太大,人太多,認識不過來,所以要用ip地址給人編號。編完號找人,幾十億人一個個問也不可行,也是要講方法的,所以這裡就有了路由技術。網路層的關鍵是路由技術,路由技術解決怎樣快速準確找到對端的問題。

找到對端後,怎樣保證對端完整收到資訊?這就是傳輸層要解決的問題了,這裡就有傳送速度的調節,傳送資訊的驗證,傳完資訊的確認等等問題,對應的TCP和UDP也是兩種不同的實現思路。

來到這裡,關於網路的問題基本上就結束了,因為終端已經拿到了別人發過來的資訊了,至於怎麼處理資訊,就是會話層,表示層,應用層的問題了。不同的應用程式有著不同的通訊協議(Email——SMTP,Web——Http,檔案傳輸——Ftp等),這些通訊協議都工作在應用層。

可見,分層之間相互獨立,卻又是緊密合作,他們的出現不是無中生有,而是在問題的解決中,不斷成熟並定形的。

有了以上的瞭解,再看看開頭的那張圖……

Snip20181204_1.png

現在是不是好理解得多~

傳送端在層與層之間傳輸資料時,每經過一層時必定會被打上一個該層所屬的首部資訊。反之,接收端在層與層傳輸資料時,每經過一層時會把對應的首部消去。

好了,本文就到這,如果你有更好的見解,歡迎留言~

相關文章