區別
1、是否基於連接
tcp是面向連接的協議,而udp是無連接的協議,即tcp是需要連接的,udp是不需要連接的,發送數據不需要連接
2、可靠性和有序性的區別
TCP 提供交付保證(Tcp通過校驗和,重傳控制,序號標識,滑動窗口、確認應答實現可靠傳輸),無差錯,不丟失,不重復,且按序到達,也保證了消息的 有序性。該消息將以從服務器端發出的同樣的順序發送到客戶端,盡管這些消息到網絡的另一端時可能是無序的。TCP協議將會為你排好序。
UDP不提供任何有序性或序列性的保證。UDP盡最大努力交付,數據包將以任何可能的順序到達。
TCP的邏輯通信信道是全雙工的可靠信道,UDP則是不可靠信道
3、實時性
UDP具有較好的實時性,工作效率比TCP高,適用於對高速傳輸和實時性有較高的通信或廣播通信。
4、協議首部大小
TCP首部開銷20字節; UDP的首部開銷小,只有8個字節
5、資源占用
TCP對系統資源要求較多,UDP對系統資源要求較少。
TCP被認為是重量級的協議,而與之相比,UDP協議則是一個輕量級的協議。因為UDP傳輸的信息中不承擔任何間接創造連接,保證交貨或秩序的的信 息。這也反映在用於承載元數據的頭的大小
優缺點
udp優點
用戶數據報協議,是一種無連接的傳輸層協議,相對於tcp傳輸不可靠
特點:報文簡單,傳輸速度快,效率快,占用資源少
缺點::不可靠,不穩定
tcp優點
是一種面向連接,可靠的,基於字節流的傳輸層通信協議
特點:安全,有序
缺點:慢,效率低,占用系統資源高,易被攻擊