ftp 是一種資料傳輸協議 (file transfer protocol),它的連線模式有兩種: 主動模式( active )和被動模式( passive )。
以下說明ftp的連線是怎樣建立的:
在 active 模式下 (一般預設的模式):
ftp client 開啟乙個隨機選擇的tcp port 呼叫 ftp server 的 port 21請求建立連線。當完成 three-way handshake 之後,連線就成功建立,但這僅是命令通道的建立。
當兩端需要傳送資料資料的時候,client 透過命令通道用乙個 port command 告訴 server ,client可以用另乙個tcp port 做資料通道。
然後 server 用 port 20 和剛才client 所告知的 tcp port 建立資料連線。注意:連線方向是從server 到 client 的,tcp 分組中會有乙個 syn flag。
然後 client 會返回乙個帶 ack flag的確認分組,並完成另一次的 three-way handshake 過程。這時候,資料連線才能成功建立。開始資料傳送。
在 passive 模式下:
ftp client 開啟乙個隨機選擇的tcp port 呼叫 ftp server 的 port 21請求建立連線,完成命令通道的建立。
當兩端需要傳送資料的時候,client 通過命令通道傳送乙個 pasv command 給server,要求進入 passive 傳輸模式。
然後 server 像上述的正常模式之第 2 步驟那樣,挑乙個tcp port ,並用命令通道告訴 client。
然後 client 用另乙個tcp port 呼叫剛才 server 告知的 tcp port 來建立資料通道。此時分組中帶有 syn flag。
server 確認後回送乙個 ack 分組。並完成所有握手過程、成功建立資料通道。
開始資料傳送。 在實際使用中, active mode 用來登入一些架設在主機上沒有安裝防火牆的 ftp server,或是架設在 client side 的 ftp server! passive mode (簡稱 pasv)用來登陸一些架設於防火牆保護下而又是開設於主機上的 ftp server!
ftp的兩種工作模式
ftp 是一種資料傳輸協議 file transfer protocol 它的連線模式有兩種 主動模式 active 和被動模式 passive 以下說明ftp的連線是怎樣建立的 在 active 模式下 一般預設的模式 ftp client 開啟乙個隨機選擇的tcp port 呼叫 ftp ser...
FTP兩種工作模式介紹
ftp是僅基於tcp的服務,不支援udp。與眾不同的是ftp使用2個埠,乙個資料埠和乙個命令埠 也可叫做控制埠 通常來說這兩個埠是21 命令埠 和20 資料埠 但ftp 工作方式的不同,資料埠並不總是20。這就是主動與被動ftp的最大不同之處。一 主動ftp 在主動模式下 客戶端從乙個任意的非特權埠...
FTP的兩種不同工作模式
ftp的兩種不同工作模式 port 主動模式 pasv 被動模式 1 port模式 該模式是ftp協議最初定義的連線模式,其連線過程是 在開始乙個ftp連線時,客戶端程式首先會為自己隨機分配乙個tcp端 口,它使用這個埠向伺服器的ftp埠 預設21 發出連線請求,伺服器接受請求後會建立一條控制鏈路,...