TCP與UDP協議的區別

2021-08-09 14:48:06 字數 840 閱讀 5317

tcp

(transmission control protocol,傳輸控制協議)

是面向連線的協議,也就是說,在收發資料前,必須和對方建立可靠的連線。乙個tcp連線必須要經過三次「對話

」才能建立起來。

udp(user data protocol,使用者資料報協議)

(1) udp是乙個非連線的協議,傳輸資料之前客戶端和服務端不建立連線,當它想傳送時就簡單地去抓取來自應用程式的資料,並盡可能快地把它扔到網路上。在傳送端,udp傳送資料的速度僅僅是受應用程式生成資料的速度、計算機的能力和傳輸頻寬的限制;在接收端,udp把每個訊息段放在佇列中,應用程式每次從佇列中讀乙個訊息段。

(2) 由於傳輸資料不建立連線,因此也就不需要維護連線狀態,包括收發狀態等,因此一台服務機可同時向多個客戶機傳輸相同的訊息。

(3) udp資訊包的標題很短,只有8個位元組,相對於tcp的20個位元組資訊包的額外開銷很小。

(4) 吞吐量不受擁擠控制演算法的調節,只受應用軟體生成資料的速率、傳輸頻寬、源端和終端主機效能的限制。

(5)udp使用盡最大努力交付,即不保證可靠交付,因此主機不需要維持複雜的鏈結狀態表(這裡面有許多引數)。

(6)udp是面向報文的。傳送方的udp對應用程式交下來的報文,在新增首部後就向下交付給ip層。既不拆分,也不合併,而是保留這些報文的邊界,因此,應用程式需要選擇合適的報文大小。

tcp與udp的區別:

1.基於連線與無連線;

2.對系統資源的要求(tcp較多,udp少);

3.udp程式結構較簡單;

4.流模式與資料報模式 ;

5.tcp

保證資料正確性,udp可能丟包,tcp保證資料順序,udp不保證。

TCP與UDP協議區別

tcp和udp 都是來自於傳輸層的協議。傳輸層是位於第2層的,如下圖所示。傳輸層位於應用層和網路層之間,負責位於不同主機中程序之間的通訊。之前一位老哥問我 不同電腦之間是如何通訊的呢?是不是還要自己開發協議什麼的。internet的傳輸層提供兩種不同的服務,應用開發者必須選擇其中的一種。是面向連線的...

TCP協議與UDP協議的區別

tcp建立連線要進行3次握手,而斷開連線要進行4次 1 當主機a完成資料傳輸後,將控制位fin置1,提出停止tcp連線的請求 2 主機b收到fin後對其作出響應,確認這一方向上的tcp連線將關閉,將ack置1 3 由b 端再提出反方向的關閉請求,將fin置1 4 主機a對主機b的請求進行確認,將ac...

TCP協議與UDP協議的區別

tcp協議和ucp協議與tcp ip協議的聯絡,一直都是說tcp ip協議與udp協議的區別。所以我想解釋一點的是tcp ip協議是乙個協議簇。裡面包括很多協議的。udp只是其中的乙個。之所以命名為tcp ip協議,因為tcp,ip協議是兩個很重要的協議,就用他兩命名了。那首先我們先總結幾個區別 1...