TCP和UDP的區別

2021-10-01 02:20:27 字數 855 閱讀 5756

tcp提供的是面向連線,可靠的位元組流服務。也就是說,在收發資料前,必須和對方建立可靠的連線。乙個tcp連線必須要經過三次「對話」才能建立起來。使用tcp協議傳輸資料,tcp提供超時重發,丟棄重複資料,檢驗資料,流量控制等功能,保證資料能從一端傳到另一端。當資料從a端傳到b端後,b端會傳送乙個確認包(ack包)給a端,告知a端資料我已收到!

udp提供的是簡單的面向資料報的傳輸層協議,udp協議不可靠。提供這種可靠服務,會加大網路頻寬的開銷,因為「虛擬通道」是持續存在的,同時網路中還會出現大量的ack和fin包。tcp協議提供了可靠的資料傳輸,但是其擁塞控制、資料校驗、重傳機制的網路開銷很大,不適合實時通訊,所以選擇開銷很小的udp協議來傳輸資料。udp協議是無連線的資料傳輸協議並且無重傳機制,會發生丟包、收到重複包、亂序等情況。

1.基於連線與無連線。

2.udp不提供可靠性,不能保證資料能夠到達目的地。

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

4.udp結構較簡單。

5.tcp面向位元組流模式,tcp會保證服務端按順序接收到全部的位元組流,udp面向資料報模式,不保證順序性。

udp傳輸速率快和tcp傳輸完整性,可控性,可靠性好

很明顯,當資料傳輸的效能必須讓位於資料傳輸的完整性、可控制性和可靠性時,選擇tcp協議。當強調傳輸效能而不是傳輸的完整性時,如音訊和多**應用,udp是最好的選擇。在資料傳輸時間很短,以至於此前的連線過程成為整個流量主體的情況下,udp也是乙個好的選擇,如dns交換。udp較低的開銷使其有更好的機會去傳送管理資料。tcp豐富的功能有時會導致不可預料的效能低下。

TCP和UDP的區別

tcp transimission control protocol 傳輸控制協議 和udp user datagram protocol 是傳輸層的兩種實現版本!它們之間提供基本的服務又各有所長。因此,根據對特定服務質量的要求,應用層軟體單元可以選擇通過傳輸層的tcp版本或者udp版本來傳輸資料。...

TCP和UDP的區別

tcp和udp都是傳輸層的協議,他們的區別主要如下 1 tcp,全名 傳輸控制協議 是面向連線的,也就是說在傳送方和接收方在傳送資料之前,必須通過三次握手建立連線,相當於現實生活中的打 功能,必須先撥號,接通後才能說話,udp,全名 使用者資料報協議 是無連線的,其中一方向向另一方傳送資料時不需要建...

TCP和UDP的區別

tcp transmission control protocol,傳輸控制協議 是基於連線的協議,也就是說,在正式收發資料前,必須和對方建立可靠的連線。乙個tcp連線必須要經過三次 對話 才能建立起來,其中的過程非常複雜,我們這裡只做簡單 形象的介紹,你只要做到能夠理解這個過程即可。我們來看看這三...