3 回答

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超4個(gè)贊
UDP比TCP更快,原因很簡(jiǎn)單,因?yàn)樗牟淮嬖诘拇_認(rèn)包(ACK)允許連續(xù)的數(shù)據(jù)包流,而不是通過(guò)使用TCP窗口大小和往返時(shí)間計(jì)算的確認(rèn)一組數(shù)據(jù)包的TCP(RTT) )。
有關(guān)更多信息,我建議使用簡(jiǎn)單但非常易于理解的Skullbox解釋(TCP與UDP)

TA貢獻(xiàn)1876條經(jīng)驗(yàn) 獲得超5個(gè)贊
在某些應(yīng)用中,TCP比UDP更快(更好的吞吐量)。
當(dāng)進(jìn)行大量相對(duì)于MTU大小的小寫(xiě)時(shí),就是這種情況。例如,我讀了一個(gè)實(shí)驗(yàn),其中通過(guò)以太網(wǎng)(1500字節(jié)MTU)發(fā)送300字節(jié)數(shù)據(jù)包流,TCP比UDP快50%。
原因是TCP將嘗試緩沖數(shù)據(jù)并填充整個(gè)網(wǎng)段,從而更有效地利用可用帶寬。
另一方面,UDP立即將數(shù)據(jù)包放在線路上,從而使網(wǎng)絡(luò)擁有大量小數(shù)據(jù)包。
您可能不應(yīng)該使用UDP,除非您有非常具體的理由這樣做。特別是因?yàn)槟梢酝ㄟ^(guò)禁用Nagle算法為T(mén)CP提供與UDP相同的延遲(例如,如果您正在傳輸實(shí)時(shí)傳感器數(shù)據(jù),并且您不擔(dān)心使用大量小數(shù)據(jù)包來(lái)?yè)砣W(wǎng)絡(luò))。
添加回答
舉報(bào)