FTP(主動與被動)


 數據連接 

       客戶端與服務端建立連接,經過TCP三次握手,連接建立完成之後,客戶端就可以通過建立的連接通道向服務器發送命令了,服務器根據客戶端的命令,向客戶端發送數據,發送數據的時候,服務端會再跟客戶端建立一個TCP連接,用於專門的傳輸數據,這個連接就是數據連接。

 數據連接有兩種工作模式:主動模式和被動模式

  •  主動模式指的是服務器是主動的

  •  被動模式指的是服務器是被動的

spacer.gif

主動模式

    1. 任何大於1024的端口到FTP服務器的21端口。(客戶端初始化的連接)

    2. FTP服務器的21端口到大於1024的端口。 (服務器響應客戶端的控制端口)

    3. FTP服務器的20端口到大於1024的端口。(服務器端初始化數據連接到客戶端的數據端口)

    4. 大於1024端口到FTP服務器的20端口(客戶端發送ACK響應到服務器的數據端口)

  • 服務器端自動打開20號端口,即數據傳輸端口。主動的去連接客戶端的命令端口+1的端口。當數據傳輸完成後,數據連接自動斷開。

wKioL1m3U-iyOAQSAADti9l5HsA878.png-wh_50

 被動模式

    1. 從任何大於1024的端口到服務器的21端口(客戶端初始化的連接)

    2. 服務器的21端口到任何大於1024的端口(服務器響應到客戶端的控制端口的連接)

    3. 從任何大於1024端口到服務器的大於1024端口(客戶端初始化數據連接到服務器指定的任意端口)

    4. 服務器的大於1024端口到遠程的大於1024的端口(服務器發送ACK響應和數據到客戶端的數據端口)

  • 服務器端向客戶端通知自己打開的端口,通知客戶端來連接自己的數據端口,客戶端使用命令端口+1的端口,去連接服務器端的數據端口,被動模式下,服務器的數據連接端口使用的是一個隨機端口。主動模式服務端使用的是20端口。


wKioL1m3U-mRvGSgAAEcfNX9-1w427.png-wh_50

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章