了解日常中,最為常見得兩種傳輸層協議,他們提供了應用間傳遞資料更好的控制,包括建立及取消傳送還有流程控制/錯誤處理...等,借此機會,了解TCP與UDP間的功用及差異。
Transmission Control Protocol(TCP)為傳輸控制協議,主要目的是可確保資料通訊的正確傳輸,由以下幾點來達到可靠性傳輸:
Three-Way Handshake(稱三路握手)是TCP建立傳送的重點機制,將以下面圖示來闡述:
,用戶資料流協議,UDP 與 TCP 不一樣, UDP 不提供可靠的傳輸模式,相較於TCP的三項交握機制,UDP在傳送的過程中,接收端在接收到封包後並不會回覆確認接收給發送端,也因此封包沒有像TCP管理得這麼嚴密。
但也因為如此,少了一些確認機制,不僅表頭資料會較少,傳輸效率也比較好。因此UDP比較適合需要即時反應的應用,如這次主題的即時通訊應用等,換句話說,當不考慮連線要求、連線終止或流量控制等特性,且資料正確性沒有佔很重的情況,適合使用UDP。
兩者都有各自的優缺點,也因此能夠視情況互相搭配使用。
當然這其中還有很多機制在,但這邊不多加闡述,主要在理解其中概念與用途~~
新手入門,如有錯誤,歡迎指正~~~
系列文章同步更新於部落格