Mode
|
主動模式
|
被動模式
|
Command
|
ftp server:tcp 21 <------client:dynamic
ftp server:tcp 20 ------>client:dynamic
|
ftp server:tcp 21 <----client:dynamic
ftp server:tcp dynamic <----client:dynamic
|
連接過程
|
客戶端向服務器的FTP端口(默認是21)發送連接請求,服務器接受連接,建立一條命令鏈路。當需要傳送數據時,客戶端在命令鏈路上用PORT命令告訴服務器:“我打開了XXXX端口,你過來連接我”。於是服務器從20端口向客戶端的XXXX端口發送連接請求,建立一條數據鏈路來傳送數據。
|
客戶端向服務器的FTP端口(默認是21)發送連接請求,服務器接受連接,建立一條命令鏈路。當需要傳送數據時,服務器在命令鏈路上用PASV命令告訴客戶端:“我打開了XXXX端口,你過來連接我”。於是客戶端向服務器的XXXX端口發送連接請求,建立一條數據鏈路來傳送數據。
|
FTP Active VS Passive
1. FTP協議要用到兩個TCP連接,一個是命令鏈路,用來在FTP客戶端與服務器之間傳遞命令;另一個是數據鏈路,用來上傳或下載數據
2. FTP協議有兩種工作方式:Active方式和Passive方式.
3. FTP協議的數據傳輸存在兩種模式:主動模式和被動模式.(PORT, PASV)
4. 選擇用Active方式還是Passive方式登錄FTP服務器,選擇權在FTP客戶端,而不是在FTP服務器。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.