分享 基於UDP協議實現可靠的資料傳輸

2021-09-08 06:11:39 字數 374 閱讀 3357

這幾天一直在研究p2p相關的技術,對於底層的傳輸使用了udp協議,但是大家都知道udp協議是不可靠的,如果在傳輸對話資訊或檔案的時候發生丟包,那麼就會造成資料出錯;即使不丟包,udp協議也不能保證接收方按照傳送的順序接收到那些包,也會造成資料出問題!

為了使udp有序可靠地傳送資料,那麼必須在它的基礎上進行封裝,實現類似tcp協議的功能,在網上找到的資料有:

上面資料中提到的方法大都是模擬tcp的做法,也就是重複「傳送-確認-傳送-確認……」,當然這種過程是比較低效的,比較好的實現會使用「滑動視窗」機制進行流量控制,從而提公升一部分效能!

再附:我已經知道windowforms.net上面有乙個 msn messenger clone,不過只有乙個主介面,訊息傳送視窗都沒有,比較鬱悶

UDP協議及UDP實現可靠傳輸

udp基於傳輸層 16位 2位元組 16位 2位元組 16位 2位元組 16位 2位元組 udp源埠號 udp目的埠號 udp長度 udp檢驗和資料 udp的傳輸過程類似於寄信 什麼時面向資料報 應用層交給udp多長的報文,udp原樣傳送,既不會拆分,也不會合併 老實巴交的 用udp傳輸100個位元...

可靠的UDP協議 QUIC協議

quic是一種新的傳輸 方式,與tcp相比可以減少延遲。表面上,quic與在udp上實現 的tcp tls http 2非常相似。由於tcp是在作業系統核心和中介軟體韌體中實現的,所以對tcp進行重大改變幾乎是不可能的。但是,由於quic是建立在udp之上的,所以沒有這樣的限制。quic相比於上述介...

ude 基於udp的全雙工可靠傳輸協議

ude是一款基於udp的可靠傳輸協議,專門用於在資料傳輸方面對實時性要求較高的應用領域。tcp協議雖然能保證資料的可靠傳輸,但它有以下幾個缺點 1.tcp的資料確認機制會導致傳送方重 送一些已經被對方接收的資料,降低了頻寬的有效利用率 2.tcp協議的超時重傳機制嚴格遵守rtt公平性,即到了rtt時...