UDP 使用者資料報協議

2022-07-05 02:03:11 字數 1643 閱讀 4004

udp是乙個簡單的面向資料報的運輸層協議:程序的每個輸出操作都正好產生乙個udp資料報,並組裝成乙份待傳送的ip資料報。這與面向流字元的協議不同,如tcp,應用程式產生的全體資料與真正傳送的單個ip資料報可能沒有什麼聯絡。

udp資料報封裝成乙份ip資料報的格式。如下圖所示。

udp不提供可靠性:它把應用程式傳給ip層的資料傳送出去,但是並不保證它們能到達目的地。

udp首部

udp首部

udp報文首部結構如上圖所示,它由rfc 768定義。應用層資料占用了udp報文段的資料字段。例如,對於dns引用,資料字段要麼包含乙個查詢報文,要麼包含乙個響應報文。對於流式音訊應用,音訊抽樣資料填充到資料字段。udp首部只有4個字段,每個欄位由兩個位元組組成。

埠號表示傳送程序和接收程序。由於ip層已經把ip資料報分配給tcp或udp(根據ip首部中協議字段值),因此tcp埠號由tcp來檢視,而udp埠號由udp來檢視。tcp埠號與udp埠號是相互獨立的。

udp長度欄位指的是udp首部和udp資料的位元組長度。該欄位最小值為8位元組(傳送乙份0位元組的udp資料報是ok的)。這個udp長度是有冗餘的。ip資料報長度指的是資料報全長,因此udp資料報長度是全長減去ip首部的長度。

接收主機使用檢驗和來檢查報文段中是否存在差錯。

選擇udp而不是tcp的原因

1. 應用層能更好地控制要傳送的資料和傳送時間。採用udp時,只要應用程序將資料傳遞給udp。udp就會將此資料打包成udp報文段並立即將其傳遞給網路層。另一方面,tcp有乙個擁塞控制機制以便當源和目的主機間的一條或多條鏈路變得非常擁塞時,遏制運輸層tcp傳送方。tcp仍將繼續重新傳送資料報文段並加以確認,而不管可靠交付需要用都長時間。實時運用通常要求最快的傳送速率,不想過分地延遲報文段的傳送,且能容忍一些資料丟失,而tcp服務模型並不是特別適合這些應用的需求。

2.無需連線建立。tcp在開始資料傳輸之前要經過三次握手。udp卻不需要任何準備即可進行資料傳輸。因此udp不會引入建立連線的時延。這可能是dns執行在udp之上而不是執行在tcp之上的主要原因(如果執行在tcp之上,則dns會慢的多)。http使用tcp而不是udp,是因為對於具有文字資料的web網頁來說,可靠性是至關重要的。

3.無連線狀態。tcp需要在端系統中維護連線狀態。此連線狀態包括接收和傳送快取、擁塞控制引數、序號與確認號的引數。另一方面,udp不維護連線狀態,也不跟蹤這些引數。因此,某些專門應用伺服器使用udp而不是tcp,以便能支援更多的活動客戶機。

4.分組首部開銷小。每個tcp報文段都有20位元組的首部開銷,而udp僅有8位元組的開銷。

使用udp的服務

1. dns執行在udp之上,從而避免了tcp的連線建立時間

2. udp用於承載網路管理資料(snmp)。在這種場合下,udp要優於tcp,因為網路管理應用程式通常必須在該網路處於重壓狀態時執行,而正是在這時可靠的、擁塞受控的資料傳輸變得難以實現。

使用者資料報協議 UDP

udp 簡述 udp只在ip 的資料報服務之上增加了很少一點的功能,即埠的功能和差錯檢測的功能。udp 的主要特點 udp是無連線的 即傳送資料之前不需要建立連線。udp使用盡最大努力交付 即不保證可靠交付,同時也不使用擁塞控制。udp沒有擁塞控制,很適合多 通訊的要求。udp是面向報文的 udp ...

使用者資料報協議UDP

udp概述 使用者資料報協議udp只在ip的資料報服務上增加了兩個兩個共能。分別是埠功能 有了埠,運輸層就能進行復用和分用 和差錯檢測功能。雖然udp使用者資料報只能提供不可靠的交付,但是在某些方面尤其特殊的優勢 1.udp是無連線的,即傳送資料之前不需要建立連線 當然傳送資料結束時也沒有連線可以釋...

使用者資料報協議UDP

一 udp協議概述 使用者資料報協議 user datagram protocol,縮寫為 udp 又稱使用者資料報文協議,是乙個簡單的面向資料報的運輸協議。在 tcp ip 模型中,udp 為網路層以上和應用層以下提供了乙個簡單的介面。udp 只提供資料的不可靠傳遞,它一旦把應用程式發給網路層的資...