UDP協議以及與TCP區別

UDP和TCP協議都屬於傳輸層協議,負責完成網絡中端到端之間的通信,其中UDP協議相對比較簡單,但是有些瑣碎的點還是值得總結的,另外一個UDP/TCP的區別也算是一個高頻考點了,因此,本文主要會總結下UDP協議的注意點,以及和TCP的區別,而TCP內容涉及太多了,會另外再開一篇博客總結的。


談協議,我們直接先看UDP報文是怎麼樣的,根據圖來學習理解UDP。

這裏寫圖片描述

這裏寫圖片描述

UDP的首部一共是8個字節,分別是源端口,目的端口,UDP長度,UDP檢驗和。其中源端口,目的端口標識了兩個主機上的進程(如果目的端口錯誤則丟失報文),UDP長度通常爲8字節,檢驗和則是用來檢測UDP數據報在傳輸中是否有錯,有錯即丟失。

需要注意的是:

這裏寫圖片描述


TCP和UDP的區別:

  1. UDP是面向無連接的,TCP必須要建立連接
  2. UDP是盡最大努力交付(不可靠交付), TCP有專門的可靠傳輸機制
  3. UDP是面向報文段,一次性交付一個報文段(如果太長只會在IP層分片),TCP是面向字節流的,TCP對於數據只看作是無結構的字節流。
  4. UDP支持一對一,一對多,多對一,多對多的通信,TCP只支持點對點通信
  5. UDP首部只有8個字節,開銷小,TCP一般至少20字節
  6. UDP沒有擁塞機制,網絡擁塞不會使得UDP發送速率變低,當然這樣可能會導致網絡擁塞大家都沒法接收數據,TCP則有擁塞避免算法等等
發佈了96 篇原創文章 · 獲贊 119 · 訪問量 17萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章