計算機網絡原理筆記 第四章 傳輸層
5.1傳輸層的兩個協議
5.1.1 TCP和UDP的應用場景
-
網絡中的計算機通信無外乎有以下兩種情況:
1.要發送的內容多,需要將發送的內容分成多個數據包發送。
2.要發送的內容少,一個數據包就能發送全部內容。 -
針對這兩種情況,在傳輸層有兩個協議,TCP(Transmission
Control Protocol 即傳輸控制協議)和UDP(User Datagram
Protocol即用戶數據報協議)。
5.1.2 傳輸層協議和應用層協議之間的關係
-
應用層協議很多,傳輸層就兩個協議,如何使用傳輸層兩個協議
標識應用層協議呢? -
傳輸層協議加一個端口號來標識一個應用層協議,展示了傳輸層
協議和應用層協議之間的關係。
- 一些常見的應用層協議和傳輸層協議,以及它們之間的關係。 -
HTTP默認使用TCP的80端口標識。
-
FTP默認使用TCP的21端口標識。
-
SMTP默認使用TCP的 25端口標識。
-
POP3默認使用TCP的110端口。
-
HTTPS默認使用TCP的443端口。
-
DNS使用UDP的53端口。
-
遠程桌面協議(RDP)默認使用TCP的3389端口。
-
Telnet使用TCP的23端口。
-
Windows訪問共享資源使用TCP的445端口。
-
微軟SQL數據庫默認使用TCP的1433端口。
-
mySQL數據庫默認使用TCP的3306端口。
5.1.3 服務和端口之間的關係
-
Windows和Linux操作系統有些服務爲本地計算機提供服務,有些服務爲網絡中的計算機提供服務。
-
爲網絡中計算機提供服務的服務,一旦啓動就會使用TCP或UDP的某個端口偵聽客戶端的請求。
5.2 用戶數據報協議 UDP
5.2.1 UDP 協議的特點
- (1)UDP是無連接的,即發送數據之前不需要建立連接(當然發送數據結束時也沒有連接可釋放),因此減少了開銷和發送數據之前的時延。
- (2)UDP使用盡最大努力交付,即不保證可靠交付,因此主機不需要維持複雜的連接狀態表(這裏面有許多參數),通信的兩端不用保持連接,因此節省系統資源。
- (3)UDP是面向報文的,發送方的UDP對應用程序交下來的報文,在添加首部後就向下交付給網絡層。UDP對應用層交下來的報文,既不合並,也不拆分,而是保留這些報文的邊界。
- (4)UDP沒有擁塞控制,因此網絡出現的擁塞不會使源主機的發
送速率降低。這對某些實時應用是很重要的。 - (5)UDP支持一對一、一對多、多對一和多對多的交互通信。
- (6)UDP的首部開銷小,只有8個字節,比TCP的20個字節的首部要短。
5.2.2 UDP 的首部格式
- UDP的首部包括四個字段,源端口、目標端口、長度和校驗和,每個字段的長度是兩個字節。
- 僞首部包括:源地址、目的地址、UDP數據長度、協議類型(0x11),協議類型就一個字節,但需要補一個字節的0x0,構成12個字節。
計算UDP檢驗和的例子