低頻寬下實時UDP傳輸與非實時TCP傳輸的協調

2021-04-07 08:48:15 字數 507 閱讀 2288

低頻寬下實時udp傳輸與非實時tcp傳輸的協調

一般使用udp傳輸實時資料,充許少量的丟包。

而其他非實時性資料使用tcp傳輸來進行***的資料傳輸。

在低頻寬條件下,如果同時使用udp和tcp傳輸,應該優先實時udp的傳輸。

這個優先權是要應用程式自己保證的。

tcp協議有阻塞控制,在頻寬不足時自動降低傳送速度。所以不必擔心udp傳輸占用tcp傳輸頻寬。

udp傳送資料量大時,造成tcp阻塞,tcp傳輸會自動讓出頻寬。

也有可能udp傳輸因為tcp占用頻寬造成udp丟包大增,而tcp卻不受影響。

此時需要根據udp的傳輸情況主動限制tcp的流量,或直接暫停tcp,待udp通暢時再繼續tcp傳輸。

可以利用tcp啟動時的自動速度遞增機制實現tcp頻寬自動控制。

就是udp丟包率大時,斷開tcp連線,再重新連線。

還要注意頻寬有上下行兩個值,可能差距比較大,會有影響。

如傳送通暢,但應答不通。上下行分別控制頻寬就更麻煩了。

傳輸層協議UDP與TCP

udp 協議 udp 協議用於網路協議傳輸層互動,不同於tcp udp 沒有重傳 重複包的處理,不保證傳輸可靠性,其下層為ip 協議。訊息結構 占用16 位元,為可選擇域,如果不使用可以全寫為0 指示是傳送的埠,但缺乏其它有效資訊時,也作為回應的目的埠 destination port 占用16 位...

socket 後端與後端之間實時傳輸

之前一直用socket.io實現客戶端,和服務端之間的互動,最近需要把乙個node服務獲取到的資料傳到另乙個node服務上,但是又不能依靠前端。所以我試著把傳送資料的服務作為前端來和接受資料的服務做互動,沒想到居然可以實現,下面是我的 僅供參考 作為前端的服務 socket.emit a 作為後端的...

UDP網路傳輸協議 UDP與TCP的區別與基礎案例

udp協議即便傳送 空 也會相互傳送互動,因為會傳送 埠ip資訊 udp不會粘包,recvfrom 和 sendto 必須1對1 服務端from socket import 寫socket的時候可以直接匯入 否則可能大量的socket.加大 量 soc socket af inet,sock dgr...