TCP:面向有連接,建立連接需要三次握手,斷開連接需要四次揮手,報頭至少需要20字節,TCP無邊界。
UDP:面向無連接,不需要三次握手和四次揮手,報頭至少需要8字節,UDP有邊界。
TCP的優點和缺點
優點:因為有三次握手,所以可靠穩定,傳遞數據時,有確認、窗口、重傳、擁塞機制。
缺點:易被攻擊,浪費時間,傳輸慢,效率低。
UDP的優點和缺點
優點:效率快,不用建立連接,較安全,沒有TCP的機制,易被攻擊的漏洞就少 。
缺點:不可靠,不穩定,網絡不好時容易丟包。
為什么TCP比UDP可靠?
TCP是面向有連接,建立連接之后才發送數據;而UDP不建立連接也會發送數據。
TCP有確認機制,接收端每收到一個正確包都會回應給發送端。超時或者數據包不完整的話發送端會重傳。UDP沒有。因此可能丟包。
為什么UDP比TCP快?
UDP沒有三次握手,沒有阻塞機制。
什么什么時候用UDP,什么時候用TCP?
UDP:一般用于視頻傳輸,要速度,對質量要求不是很高。
TCP:當對網絡通訊質量有要求的時候。