TCP和UDP是OSI模型中的運輸層中的協議

2021-08-10 22:06:51 字數 1072 閱讀 2722

tcp和udp是osi模型中的運輸層中的協議。tcp提供可靠的通訊傳輸,而udp則常被用於讓廣播和細節控制交給應用的通訊傳輸。

udp(user datagram protocol)

udp不提供複雜的控制機制,利用ip提供面向無連線的通訊服務。並且它是將應用程式發來的資料在收到的那一刻,立刻按照原樣傳送到網路上的一種機制。

即使是出現網路擁堵的情況下,udp也無法進行流量控制等避免網路擁塞的行為。此外,傳輸途中如果出現了丟包,udo也不負責重發。甚至當出現包的到達順序亂掉時也沒有糾正的功能。如果需要這些細節控制,那麼不得不交給由採用udo的應用程式去處理。換句話說,udp將部分控制轉移到應用程式去處理,自己卻只提供作為傳輸層協議的最基本功能。udp有點類似於使用者說什麼聽什麼的機制,但是需要使用者充分考慮好上層協議型別並製作相應的應用程式。

tcp(transmission control protocol)

tcp充分實現愛呢了資料傳輸時各種控制功能,可以進行丟包的重發控制,還可以對次序亂掉的分包進行順序控制。而這些在udp中都沒有。此外,tcp作為一種面向有連線的協議,只有在確認通訊對端存在時才會傳送資料,從而可以控制通訊流量的浪費。

tcp通過檢驗和、序列號、確認應答、重發控制、連線管理以及視窗控制等機制實現可靠性傳輸。此處不一一敘述。

tcp與udp如何加以區分使用?

tcp用於在傳輸層有必要實現可靠性傳輸的情況。由於它是面向有連線並具備順序控制、重發控制等機制的。所以它可以為應用提供可靠傳輸。

另一方面,udp主要用於那些對高速傳輸和實時性有較高要求的通訊或廣播通訊。舉乙個ip**進行通話的例子。如果使用tcp,資料在傳送途中如果丟失會被重發,但是這樣無法流暢地傳輸通話人的聲音,會導致無法進行正常交流。而採用udp,它不會進行重發處理。從而也就不會有聲音大幅度延遲到達的問題。即使有部分資料丟失,也只是影響某一小部分的通話。此外,在多播與廣播通訊中也使用udp而不是udp。rip、dhcp等基於廣播的協議也要依賴於udp。

tcp與udp區別總結:

1、tcp面向連線(如打**要先撥號建立連線);udp是無連線的,即傳送資料之前不需要建立連線

6、tcp的邏輯通訊通道是全雙工的可靠通道,udp則是不可靠通道

OSI模型和TCP模型

osi七層模型 物理層 裝置之間的傳輸流,單位 位元 資料連線層 網路層 傳輸層 最重要的一層,傳輸協議同時進行流量控制或是基於接受方可接受資料的快慢成都規定適當的傳送速率,tcp ip等等,單位 tpdu 會話層 對應用回話的管理,同步負責在網路中的兩節點之間建立和維持通訊。建立通訊連線,保持回話...

OSI參考模型及各層功能,TCP與UDP的區別

osi參考模型 iso iec 7498標準定義了網路互聯的7層結構模型,即開放系統互連參考模型。osi參考模型定義了開放系統的層次結構 層次之間的相互關係,以及各層所包括的可能的服務。osi的服務定義詳細的說明了各層所提供的服務,但是並不涉及介面的具體實現方法。osi參考模型並不是乙個標準,而是一...

傳輸層TCP和UDP程式設計模型

最近接觸了基於這個程式設計模型的程式設計,基礎程式設計再次熟悉了一下 一 tcp程式設計 伺服器端 1 建立serversocket物件,繫結埠 2 通過accept 監聽客戶端請求 3 建立連線後,通過輸入輸出流進行讀寫操作 4 關閉相關資源 客戶端 1 建立socket物件,指定服務端的位址和埠...