## TCP是可靠的
`TCP` 是傳輸控制協議,是面向連接的,可靠的,基于字節流的傳輸層通信協議。必須先在雙方之間建立一個TCP連接,之后才能傳輸數據,TCP提供超時重發,丟棄重復數據,檢驗數據,流量控制等功能,保證數據能從一端傳到另一端。
<br/>
## UDP是不可靠的
`UDP` 中文名是用戶數據報協議,是OSI開放式系統互聯 參考模型中一種無連接的傳輸層協議,提供面向事務的簡單不可靠信息傳送服務。UDP不提供可靠性,它只是把應用程序傳給IP層的數據報發送出去,但是并不能保證他們能到達目的地。由于UDP在傳輸數據報前不用在客戶和服務器之間建立一個連接,且沒有超時重發等機制,故而傳輸速度很快。

TCP和UDP在傳輸協議層


## TCP 數據傳輸前需要3次握手,能保證可以到達目的地

## UDP不需要握手之接傳輸 保證不了對方能否收到
# TCP與UDP區別總結:
1.TCP面向連接(如打電話需要先撥號建立連接);UDP是無連接的,即發送數據之前不需要建立連接
2.TCP提供可靠的服務,也就是說,通過TCP連接傳送的數據,無差錯,不丟失,不重復,且按序到達;UDP盡最大努力交付,即不保證可靠交付
TCP通過校驗和,重傳控制,序號標識,滑動窗口,確認應答實現可靠傳輸。如丟包時的重發控制,還可以對次序亂掉的分包進行序列控制。
3.UDP具有較好的實時性,工作效率比TCP高,適用于對高速傳輸和實時性有較高的通信或廣播通信。
4.每一條TCP連接只能是點到點的;UDP支持一對一,一對多,多對以和多對多的交互通信。
5.TCP對系統資源要求比較多,UDP對系統資源要求較少。
