7.1 TCP與UDP
1、TCP是一種可靠的通訊方式,UDP是一種不可靠的通訊方式
2、二層通訊(乙太網通訊):在二層網路內部,介面直接都是透過交換資料幀來相互傳遞資訊
3、二層功能模組之間沒有相應的控制機制來控制雙方之間資料幀的交換,所以說二層通訊是一種無連線的通訊方式
4、三層通訊(網路層通訊):通訊雙方的IP模組是透過"包"交換的方式來互相傳遞資訊的
5、由於三層通訊的雙方沒有一種合理有效的控制機制來控制"包"之間的交換,所以三層通訊也是不可靠的通訊
6、TCP通訊:由於通訊的雙方會透過TCP控制端的互動來建立TCP會話,而且在整個的通訊期間會一直保持TCP控制端的互動,因此,TCP通訊實際上是一種面向連線的、可靠的通訊
7、TCP會話的建立:TCP會話的建立是透過"三次握手"來建立的,所謂三次握手是指TCP會話建立過程中的交換的三個TCP控制段,分別是SYN段、SYN+ACK段、ACK段
(1)SYN段:是由A的TCP模組向B的TCP模組發起的建立會話的請求並告訴對方自己的狀態
(2)SYN+ACK段:是B的TCP模組傳送的迴應並同時將自己的狀態告訴對方
(3)ACK段:是A的TCP模組對B的TCP模組迴應做出的迴應
8、透過三次握手,實際上是建立了兩個TCP會話
(1)由A指向B的TCP會話
(2)由B指向A的TCP會話
9、TCP會話的終止:透過"四次握手"終止TCP會話,分別是兩個FIN段、兩個ACK段
(1)A向B傳送一個FIN控制段,請求終止A指向B的TCP會話,B迴應一個ACK段,同意該請求
(2)B向A傳送一個FIN控制段,請求終止B指向A的TCP會話,A迴應一個ACK段,同意該請求
10、TCP控制段格式
(1)源埠:用以標識TCP分段的載荷資料是應用層的哪個具體應用產生併發送的
(2)目的埠:用以標識TCP分段的載荷資料應該由應用層的哪個模組接收並處理
11、TCP的確認與重傳機制
在該示例下,A每傳送一個段,都必須等待B的迴應才會繼續傳送下一個段,因此效率較低
(1)TCP的確認與重傳機制示例1
(2)TCP確認與重傳機制示例2
12、為了解決"TCP確認與重傳機制"效率低下的問題,因此還提供了一種叫做"滑動視窗"的機制來提高傳輸的效率
13、TCP分段中埠的作用是標識了該TCP段的資料載荷所對應的應用層模組
14、埠分類:
(1)常用埠:0~1023
主要有:FTP資料20、FTP控制21、telnet 23、SMTP 25、DNS 53、HTTP 80、HTTPS 443、POP3 110
(2)不常用埠:1024~65535
15、TCP的確認與重傳機制在保證了資訊傳遞可靠的同時也降低了資訊傳遞的效率