UDP
傳送資料前不用進行連線,資料可能出現丟包,
支援一對多,多對多,多對一的方式,也就是說 UDP 提供了單播,多播,廣播的功能。
高效,適用實時直播場景
TCP
傳送資料前需要進行三次握手連線,關閉連線需要四次揮手


TCP 資料保證完整性
滑動視窗解決了資料的丟包、順序不對和流量控制問題
傳送端視窗,接受端視窗,傳送端視窗包含已傳送但未收到應答的資料和可以傳送但是還未傳送的資料,傳送端視窗資料大小由接收端視窗剩餘大小決定,接收方會把當前接收視窗的剩餘大小寫入應答報文,傳送端收到應答後根據該值和當前網路擁塞情況設定傳送視窗的大小,所以傳送視窗的大小是不斷變化的,幫助 TCP 實現了流量控制
Zero 視窗
傳送報文時,對端零視窗,傳送端會停止傳送資料,並啟動 persistent timer,該定時器定時傳送請求給對端,讓對端告知視窗大小,重試超過一定次數,TCP 可能斷開連線
擁塞處理 實現了對流量的控制,保證在全天候環境下最優的傳遞資料
四個演算法:慢開始,擁塞避免,快速重傳,快速恢復