UDP協議筆記

UDP的主要特徵

1.無需建立連接

​ 通信主機之間不需要建立連接,直接進行數據傳輸。

2.無連接狀態

​ 因爲不需要建立連接,所以也不用維護連接狀態,節省 運行UDP協議的服務器資源。沒有建立連接的時延。

3.分組首部開銷小

​ UDP只有固定的8字節首部開銷

4.UDP不提供可靠數據傳輸服務

使用UDP的應用軟件可忍受一些數據丟失。

UDP的缺點

沒有擁塞控制機制

​ 1.例如啓動過多的高比特視頻傳輸,鏈路上會有很多分組,路由器產生高丟包率。

​ 2.TCP擁塞機制,會在線路擁擠時減少發送方發送速率。

補充

使用UDP協議的應用可以實現可靠數據傳輸

​ 在應用程序自身實現可靠性機制來完成。例如谷歌的Chrome瀏覽器所使用的QUIC協議在UDP之上的應用層協議實現了可靠性。

UDP報文段結構

源端口號:發送方的應用程序端口

目的端口號:接收方的應用程序端口號

長度:UDP報文段字節數。數據+首部

檢驗和:接收方使用檢驗和來檢查在該報文段中是否出現了差錯。

應用數據:報文攜帶的真實數據。如音視頻流式數據。
在這裏插入圖片描述

UDP校驗和

舉例如下

假定有三個16比特的字

0110 0110 0110 0000

0110 0101 0101 0101

1000 1111 0000 1100

三者相加的結果爲

0100 1010 1100 0001

反碼

1011 0101 0011 1110

這就成爲了校驗和

接收方在接收到這些數據後,將這4個16比特字加在一起,如果沒有差錯,應爲 1111 1111 1111 1111 。如果任意位置出現了0,就說明出現了數據錯誤。


雖然UDP提供差錯檢測,但是對差錯恢復無能爲力。UDP的實現只是丟棄受損的報文段;其它實現是將受損的報文段交給應用程序並給出警告。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章