TCP IP 協議 (傳輸層)UDP協議

2021-07-14 08:29:54 字數 1785 閱讀 4660

從之前介紹的網路層協議來看,通訊的兩端是兩台主機,ip 資料報首部就標明了這兩台主機的 ip 位址。但是從傳輸層來看,是傳送方主機中的乙個程序與接收方主機中的乙個程序在交換資料,因此,嚴格地講,通訊雙方不是主機,而是主機中的程序。

主機中常常有多個應用程序同時在與外部通訊(比如你的瀏覽器和 qq 在同時執行),下圖中,a 主機的 ap1 程序在於 b 主機的 ap3 程序通訊,同時主機 a 的 ap2 程序也在與 b 主機的 ap4 程序通訊。

兩個主機的傳輸層之間有乙個灰色雙向箭頭,寫著「傳輸層提**用程序間的邏輯通訊」。 邏輯通訊:看起來是資料似乎是沿著雙向箭頭在傳輸層水平傳輸的,但實際上是沿圖中的虛線經多個協議層次而傳輸。

tcp/ip 協議棧傳輸層有兩個重要協議——udp 和 tcp,不同的應用程序在傳輸層使用 tcp 或 udp 之一:

埠的作用體現在傳輸層。

剛才的圖中,ap1 與 ap3 的通訊與 ap2 與 ap4 的通訊可以使用同乙個傳輸層協議來傳輸(tcp 或 udp),根據 ip 位址或 mac 位址都只能是把資料傳到正確的主機,但具體需要傳到哪乙個程序,是通過埠來辨認的。比如同時使用瀏覽器和 qq,瀏覽器占用 80 埠,而 qq 占用 4000 埠,那麼傳送過來的 qq 訊息便會通過 4000 埠顯示在 qq 客戶端,而不會錯誤地顯示在瀏覽器上。

埠號有 0~65535 的編號,其中:

編號 0~1023 為 系統埠號 ,這些埠號可以在** www.iana.org 查詢到,它們被指派給了 tcp/ip 最重要的一些應用程式,以下是一些常見的系統埠號:

應用層協議: ftp telnet smtp dns tftp http snmp

系統埠號: 21 23 25 53 69 80 161

編號 1024~49151 為 登記埠號 ,為沒有系統埠號的應用程式使用,使用這類埠號必須在 iana 按規定手續登記,以防止重複。

編號 49152~65535 為 短暫埠號 ,是留給客戶程序選擇暫時使用的,使用結束後,這類埠號會被放開以供其它程式使用。

udp(user datagram protocol)使用者資料報協議,它只在 ip 資料報服務之上增加了很少一點功能,它的主要特點有:

從應用層到傳輸層,再到網路層的各層次封裝:

udp 資料報可分為兩部分:udp 報頭和資料部分。其中資料部分是應用層交付下來的資料。udp 報頭總共 8 位元組,而這 8 位元組又分為 4 個字段:

(1)源埠 2 位元組 在對方需要回信時可用,不需要時可以全 0;

(2)目的埠 2 位元組 必須,也是最重要的字段;

(3)長度 2 位元組 長度值包括報頭和資料部分;

(4)校驗和 2 位元組 用於檢驗 udp 資料報在傳輸過程中是否有出錯,有錯就丟棄。

編譯完成後先別執行,我們還需要使用乙個知名的抓包工具 tcpdump ,依次輸入以下命令安裝,並執行 tcpdump

參考來自:

TCP IP協議 傳輸層UDP協議

對於傳輸層來說,主要作用在於識別程序!舉個例子,兩台電腦在互相傳送郵件,其本質上來講,是計算機系統中的郵件對應的程序在相互通訊。tcp和udp是傳輸層的兩個重要協議,對於不同的程序,會用到不同的協議。具體哪個程序的識別,是靠埠號來的。埠號有0 65535。系統埠號 0 1023,最常用的程序都是這個...

TCP IP協議(6) 傳輸層之UDP

udp使用者資料報協議,它是乙個無連線的,面向資料報的協議,它不提供可靠性但傳輸速度比tcp要快。udp資料報中的 udp長度 為兩個位元組,所以我們要傳送的udp資料最多支援65507大約68k的資料,超過該大小的話需要自己來分割傳送。使用udp必須關心ip資料報的長度,因為如果它超過mtu的話,...

傳輸層 UDP協議

資料單位 特點具體實現 要求udp首部格式 傳送udp請求的客戶端圖釋 udp 傳送的資料單位協議是 udp 報文或使用者資料報 udp 是無連線的,即傳送資料之前不需要建立連線 udp 使用盡最大努力交付,即不保證可靠交付,同時也不使用擁塞控制 udp 是面向報文的.udp 沒有擁塞控制,很適合多...