網絡通信TCP協議與UDP協議有哪些區別呢?
網絡通信UDP協議與TCP協議有哪些區別呢?
奈圖爾科技(www.ntooler.com)整理消息:本文主要與各位伙伴簡單探討一下常用的兩種網絡通信協議的區別,即TCP協議與UDP協議。TCP協議是面向連接的通信協議,即傳輸數據之前,在發送和接收端建立邏輯連接,然后在傳輸數據,它提供了兩臺計算機之間可靠無差錯的數據傳輸。UDP是無線連接通信協議,在數據傳輸的時候,數據的發送端和接收端不建立邏輯連接。
首先,我們簡單描述一下TCP協議:
TCP:傳輸協議(Transmission Control Protocol),TCP協議是面向連接的通信協議,即傳輸數據之前,在發送和接收端建立邏輯連接,然后在傳輸數據,它提供了兩臺計算機之間可靠無差錯的數據傳輸。
在TCP連接中必須明確客戶端與服務器端。由客戶端向服務器端發送請求,每次連接的創建都需要經過“3次握手”,即:TCP協議中,在發送數據的準備階段,客戶端與服務器之間三次交互,以保證連接的可靠。
“第1次握手”:客戶機向服務器發送連接請求,等待服務器確認。
“第2次握手”:服務器向客戶端會送一個響應,通知客服端收到的連接請求。
“第3層握手”:客戶端再次向服務器發送確認信息,確認連接。
關于TCP協議的“3次握手”,如下如圖所示:
完成三次握手,連接建立以后,客戶端和服務器就可以開始進行數據傳輸了。
由于這種面向連接的性質,TCP協議可以保證傳輸數據的安全,所以應用十分廣泛,例如下載文件、瀏覽網頁等。
作為對比,我們在簡單描述一下UDP協議:
UDP:用戶數據報協議(User Datagram Protocol),UDP是無線連接通信協議,在數據傳輸的時候,數據的發送端和接收端不建立邏輯連接。即,當一臺計算機向另一臺計算機發送數據時,發送端不會確認接收端是否存在,就會發送數據,同樣的接收端在接收到數據時,也不會向發送端反饋是否接收數據。
就像給QQ好友發送消息,無論對法是否在線,是否回復,雙方都可以發送消息。
優點:UDP消耗資源小,通信效率高
用途:通常用于音頻、視頻和普通數據的傳輸,比如,視頻會議,這種情況偶然丟失一兩個包,也不會對接收結果產生太大影響。
局限性:數據被限制在64kb以內,超過這個范圍就不能發送
數據包(Datagram):網絡傳輸的基本單位
由于在使用UDP協議傳輸數據時,UDP面向無連接線,不能保證數據的完整性,因此在傳輸數據時不建議使用UDP協議。UDP的交換過程如下圖:
掃一掃,關注我們