UDP 協議的優點和缺點


優點:
1、不需要建立連接(不需要三次握手)
2、簡單(傳輸開銷小,報文首部短)
3、快,吞吐效率高(不需要等、重傳,最多受限於帶寬和性能)
缺點:
不可靠(容易丟包)

 

UDP,全稱 User Datagram Protocol,中文名稱為用戶數據報協議,主要用來支持那些需要在計算機之間傳輸數據的網絡連接。

UDP 協議從問世至今已經被使用了很多年,雖然目前 UDP 協議的應用不如 TCP 協議廣泛,但 UDP 依然是一種非常實用和可行的網絡傳輸層協議。尤其是在一些實時性很強的應用場景中,比如網絡游戲、視頻會議等,UDP 協議的快速能力更具有獨特的魅力。

UDP 是一種面向非連接的協議,面向非連接指的是在正式通信前不必與對方先建立連接,不管對方狀態就直接發送數據。至於對方是否可以接收到這些數據,UDP 協議無法控制,所以說 UDP 是一種不可靠的協議。

UDP 協議適用於一次只傳送少量數據、對可靠性要求不高的應用環境。

與TCP 協議一樣,UDP 協議直接位於 IP 協議之上。實際上,IP 協議屬於 OSI 參考模型的網絡層協議,而 UDP 協議和 TCP 協議都屬於傳輸層協議。

因為 UDP 是面向非連接的協議,沒有建立連接的過程,因此它的通信效率很高,但也正因為如此,它的可靠性不如 TCP 協議。

UDP 協議的主要作用是完成網絡數據流和數據報之間的轉換在信息的發送端,UDP 協議將網絡數據流封裝成數據報,然后將數據報發送出去;在信息的接收端,UDP 協議將數據報轉換成實際數據內容。

可以認為 UDP 協議的 socket 類似於碼頭,數據報則類似於集裝箱。碼頭的作用就是負責友送、接收集裝箱,而 socket 的作用則是發送、接收數據報。因此,對於基於 UDP 協議的通信雙方而言,沒有所謂的客戶端和服務器端的概念。

UDP 協議和 TCP 協議簡單對比如下:

TCP 協議:可靠,傳輸大小無限制,但是需要連接建立時間,差錯控制開銷大。

UDP 協議:不可靠,差錯控制開銷較小,傳輸大小限制在 64 KB以下,不需要建立連接。

相比較 TCP,UDP 是一種不可靠的網絡協議,它在通信實例的兩端各建立一個 socket,但這兩個 socket 之間並沒有虛擬鏈路,它們只是發送、接收數據報的對象。

應用場景:
TCP:
    遠程控制
    郵件
    點對點傳輸
UDP:
    網絡游戲
    視頻傳輸
    DNS
    直播

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM