關於UDP協議

傳輸層負責源主機與目的主機進程之間端到端的數據傳輸。傳輸層有兩個著名的協議:用戶數據報協議UDP和傳輸控制協議TCP。二者都使用IP作爲網絡層協議。TCP提供可靠的面向連接的服務,而UDP提供不可靠的、無連接的服務。之前簡單的總結了我對TCP的認識和理解,下面就簡單說一下UDP

TCP是可靠的、面向連接的通信,通信雙方必須先建立一個通信管道,而UDP是不可靠的、非面向連接的通信,只需要知道目標地址(IP和端口)即可發送,至於端口是否打開,目標地址是否真正存在,數據是否發送到了目標地址,發送者都不需知道,也無法知道。這麼看來,UDPTCP相比沒有什麼優勢,又爲什麼要用UDP呢?

其實不然,有些情況下UDP協議可能會變得非常有用。因爲UDP具有TCP所望塵莫及的速度優勢。雖然TCP協議中植入了各種安全保障功能,但是在實際執行的過程中會佔用大量的系統開銷,無疑使速度受到嚴重的影響。反觀UDP,由於拍出來信息可靠傳遞機制,將安全和排序等功能移交給上層應用來完成,極大降低了執行時間,使速度得到了保證。

另外,我們也可以爲UDP加上一些可靠的傳輸控制,最直接的方法就是模擬TCP協議的實現,對UDP進行簡單的差錯重傳控制。

UDP廣泛應用於簡單的請求-應答查詢以及快速遞交比精確遞交更爲重要的場合。使用UDP發送很短的報文時,在發送站和接收站之間的交互比使用TCP少得多。UDP對多媒體和多播應用也是很方便的一種協議。

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