1. 程式人生 > 其它 >第五章運輸層

第五章運輸層

運輸層協議概述

運輸層功能

運輸層為應用程序之間提供端到端的邏輯通訊(但網路層是為主機之間提供邏輯通訊)

運輸層還要對收到的報文進行差錯檢測

運輸層需要有兩種不同的運輸協議,即面向連線的 TCP 和無連線的 UDP

運輸層的兩個主要協議

TCP/IP 的運輸層有兩個不同的協議:

使用者資料報協議 UDP(User Datagram Protocol)

傳輸控制協議 TCP(Transmission Control Protocol)

UDP 在傳送資料之前不需要先建立連線。對方的運輸層在收到 UDP 報文後,不需要給出任何確認。雖然 UDP 不提供可靠交付,但在某些情況下 UDP 是一種最有效的工作方式。

TCP 則提供面向連線的服務。TCP 不提供廣播或多播服務。由於 TCP 要提供可靠的、面向連線的運輸服務,因此不可避免地增加了許多的開銷。這不僅使協議資料單元的首部增大很多,還要佔用許多的處理機資源。

運輸層的埠

TCP/IP的運輸層的埠用一個 16 位埠號進行標誌

埠號只具備本地意義,即埠號只是為了標誌本計算機應用層中的各程序。

客戶發起通訊請求時,必須先知道對方伺服器的IP地址和埠號,運輸層的埠號分為下面三大類:

熟知埠號,數值一般為 0~1023。

一些常用的數值埠號:

FTP 21

LELNET 23

SMTP 25

DNS 53

TFTP 69

HTTP 80

SNMP 161

SNMP(trap) 162

登記埠號,數值為1024~49151,為沒有熟知埠號的應用程式使用的。

客戶埠號或短暫埠號,數值為49152~65535,留給客戶程序選擇暫時使用。

5.2 使用者資料報協議 UDP

UDP的主要特點:

UDP 是無連線的,即傳送資料之前不需要建立連線。

UDP 使用盡最大努力交付,即不保證可靠交付,同時也不使用擁塞控制

UDP 是面向報文的

UDP 沒有擁塞控制,很適合多媒體通訊的要求。

UDP 支援一對一、一對多、多對一和多對多的互動通訊

UDP 的首部開銷小,只有 8 個位元組

5.3 傳輸控制協議 TCP

TCP的主要特點:

TCP 是面向連線的運輸層協議

每一條 TCP 連線只能有兩個端點(endpoint),每一條 TCP 連線只能是點對點的(一對一)

TCP 提供可靠交付的服務

TCP 提供全雙工通訊

面向位元組流

5.4 可靠運輸的工作原理