ude

ude是一款基於udp的可靠傳輸協定,專門用於在數據傳輸方面對實時性要求較高的領域。

基本介紹

  • 中文名:ude
  • 外文名:ude
ude是一款基於udp的可靠傳輸協定,專門用於在數據傳輸方面對實時性要求較高的領域。
tcp協定雖然能保證數據的可靠傳輸,但它有以下幾個缺點:1.tcp的數據確認機制會導致傳送方重複傳送一些已經被對方接收的數據,降低了頻寬的有效利用率;2.tcp協定的逾時重傳機制嚴格遵守rtt公平性,即到了rtt時間才會重傳丟失的數據,當rtt較大時,就會導致數據的實時性降低,這對於一些對實時性要求較高的套用(比如流媒體、網路遊戲)是不能忍受的,並且還會導致頻寬得不到充分利用;3.在p2p傳輸領域,由於tcp的NAT穿透成功率極低,用tcp做p2p數據傳輸幾乎不可行。
udp協定雖然不能保證數據傳輸的可靠性,但它在數據的實時性、頻寬的利用率等方面有著tcp望塵莫及的優勢。
ude協定,正是融合了tcp和udp各自的優點,ude協定在udp的基礎之上,實現了tcp的握手連線、數據校驗、逾時重傳等機制,並且在某些方面比tcp做的更好:1.ude協定的數據確認機制比tcp更科學,不會重傳已經被對方接收的數據;2.ude的逾時重傳機制不遵循rtt公平性(可以設定rtt的上限值),這就保證了當網路延時較高時,ude也可以用於傳輸對實時性要求較高的數據,降低頻寬的有效利用率換取實時性,另外它不等ack的到來就重傳數據(原理為第n幀沒收到ack、而第n+1、n+2幀已收到ack,則認為第n幀已經丟失);3.ude協定計算兩端之間的頻寬,用這個頻寬值和rtt值計算每次傳送的數據量,可以最大化的利用頻寬;4.當網路傳送擁塞,ude計算出新的頻寬值,它會控制頻寬值的下降幅度,以保證自身的抗網路抖動能力和頻寬競爭力;5.ude協定內部實現了心跳機制來檢測死連結,程式設計師不需要在設計時考慮死連結這樣的問題。
ude協定,極其適合在cs方式/p2p方式下做實時性數據的可靠傳輸。可以在公網搭建tcp server來轉發NAT穿透信令,在穿透之後,使用ude協定來做可靠傳輸。

相關詞條

熱門詞條

聯絡我們