資訊網路講義 P0 P1 P2 P3 P4 P5 P6 P7 P8 P9

資訊網路 - 傳輸層

A. 傳輸層的主要功用

B. 傳輸層封包的重要欄位 - 連接埠 ( port )

  port是 2 bytes的整數,其目的是用來在細分通訊的對象。有的書本會舉例說,IP用來區分建築物(那一台電腦),而 port 用來區分在那一層樓(這一台電腦的那一個應用程式),有些port號碼是有特定的應用的。

# The latest IANA port assignments can be gotten from
# http://www.iana.org/assignments/port-numbers
# The Well Known Ports are those from 0 through 1023. ( 此段的 port 號 最好依規來用 )
# The Registered Ports are those from 1024 through 49151
# The Dynamic and/or Private Ports are those from 49152 through 65535

舉例 :

ftp-data 20/tcp
ftp-data 20/udp
ftp 21/tcp
ftp 21/udp
ssh 22/tcp
ssh 22/udp
telnet 23/tcp
telnet 23/udp
smtp 25/tcp
smtp 25/udp
domain 53/tcp
domain 53/udp
http 80/tcp
http 80/udp
squid 3128/tcp # squid web proxy

C. 傳輸層的2個重要協定 : UDP (User Datagram Protocol ) 與 TCP ( Transmission Control Protocol )

  UDP TCP
連接埠的欄位 V V
確認與重送   V
流量控制   V
連線導向   V

UDP的重點在快速,TCP的重點在正確

D. UDP 封包的結構 (重要欄位):

Source Port : 來源端的 Port

Destination Port : 目地端的 Port

E. TCP 封包的結構 (重要欄位):

Source Port : 來源端的 Port

Destination Port : 目地端的 Port

Sequence number : 序號

Acknowledgment number : 回應序號

Flags : [urgent][acknowledgement][push][reset][synchronize][finish]

Window : 窗戶的尺寸

F. TCP 的 確認 與 重送

  要完成 「正確」的要求,收方 就必須針對每個封包送出「我收到了」的回覆給送方,稱為ACK;而收方在等待時間超過後仍收不到回覆就會重送封包。

F. TCP 的 流量控制

  以窗戶的大小來控制對方送給我們資料的速度(可以以 封包 或 byte 為單位)。收送的雙方各有一組 send window 和 received window

  窗戶的大小在傳輸的過程中隨時都可以調整的,故可以做到流量的控制

F. TCP 的 連線導向

(參考P8的圖片)

資訊網路講義 P0 P1 P2 P3 P4 P5 P6 P7 P8 P9