一、tcp和udp的區別?
1.tcp是面向連線的,udp事面向無連線的。
建立連線:為了在客戶端和服務端維護連線,而建立一定的資料結構來維護雙方互動的狀態,用這樣的資料結構來保證所謂的面向連線的特性。
2.tcp提供可靠交付。通過tcp連線傳輸的資料,無差錯、不丟失、不重複、並且按序到達。udp不保證可靠交付,不保證不丟失,不保證按順序到達。
3.tcp是面向位元組流的,傳送的時候發的是乙個流,沒頭沒尾。udp是基於資料報的,乙個乙個地發,乙個乙個地收。
4.tcp是可以有擁塞控制的,udp不會。
5.tcp是乙個有狀態服務,裡面準確地記著傳送了沒有,接收了沒有,傳送到哪個了,接收到哪個了。udp是乙個無狀態服務。
二、udp包頭
三、udp的使用場景
1.需要資源少,在網路情況比較好的內網,或者對於丟包不敏感的應用
2.不需要一對一溝通,建立連線,而是可以廣播的應用。
3.需要處理速度快,時延低,可以容忍少數丟包,但是要求即使網路擁塞,也不降低自己的傳送速率。
四、udp使用的具體例子
遊戲對實時要求較為嚴格的情況下,採用自定義的可靠udp協議,自定義重傳策略,能夠把丟包產生的延遲降到最低,儘量減少網路問題對遊戲效能造成的影響。
4.iot物聯網
物聯網領域終端資源少,很可能只是個記憶體非常小的嵌入式系統,而維護tcp協議代價太大;另一方面,物聯網對實時性要求也很高,而tcp會導致時延加大。google旗下的nest建立thread group,推出了物聯網通訊協議thread,就是基於udp協議的。
5.移動通訊領域
使用者資料報協議 UDP
udp 簡述 udp只在ip 的資料報服務之上增加了很少一點的功能,即埠的功能和差錯檢測的功能。udp 的主要特點 udp是無連線的 即傳送資料之前不需要建立連線。udp使用盡最大努力交付 即不保證可靠交付,同時也不使用擁塞控制。udp沒有擁塞控制,很適合多 通訊的要求。udp是面向報文的 udp ...
使用者資料報協議UDP
udp概述 使用者資料報協議udp只在ip的資料報服務上增加了兩個兩個共能。分別是埠功能 有了埠,運輸層就能進行復用和分用 和差錯檢測功能。雖然udp使用者資料報只能提供不可靠的交付,但是在某些方面尤其特殊的優勢 1.udp是無連線的,即傳送資料之前不需要建立連線 當然傳送資料結束時也沒有連線可以釋...
使用者資料報協議UDP
一 udp協議概述 使用者資料報協議 user datagram protocol,縮寫為 udp 又稱使用者資料報文協議,是乙個簡單的面向資料報的運輸協議。在 tcp ip 模型中,udp 為網路層以上和應用層以下提供了乙個簡單的介面。udp 只提供資料的不可靠傳遞,它一旦把應用程式發給網路層的資...