發(fā)布時間: 2017-06-16 13:16:36
一個完整的FTP文件傳輸需要建立兩種類型的連接,一種為文件傳輸下命令,稱為控制連接,另一種實現(xiàn)真正的文件傳輸,稱為數(shù)據(jù)連接。
1) 控制連接 客戶端希望與FTP服務器建立上傳下載的數(shù)據(jù)傳輸時,它首先向服務器的TCP 21端口發(fā)起一個建立連接的請求,F(xiàn)TP服務器接受來自客戶端的請求,完成連接的建立過程,這樣的連接就稱為FTP控制連接。主要用來登錄,認證用的。
2) 數(shù)據(jù)連接 FTP控制連接建立之后,即可開始傳輸文件,傳輸文件的連接稱為FTP數(shù)據(jù)連接。FTP數(shù)據(jù)連接就是FTP傳輸數(shù)據(jù)的過程,它有兩種傳輸模式:主動傳輸模式(Active)和被動傳輸模式(PASSIVE)。
1. 主動傳輸模式
當FTP的控制連接建立,客戶提出目錄列表、傳輸文件時,客戶端發(fā)出PORT命令與服務器進行協(xié)商,F(xiàn)TP服務器使用一個標準端口20作為服務器端的數(shù)據(jù)連接端口(ftp-data),與客戶建立數(shù)據(jù)連接。端口20只用于連接源地址是服務器端的情況,并且端口20沒有監(jiān)聽進程來監(jiān)聽客戶請求。 在主動傳輸模式下,F(xiàn)TP的數(shù)據(jù)連接和控制連接方向相反,由服務器向客戶端發(fā)起一個用于數(shù)據(jù)傳輸?shù)倪B接??蛻舳说倪B接端口由服務器端和客戶端通過協(xié)商確定。主動傳輸模式下,F(xiàn)TP服務器使用20端口與客戶端的暫時端口進行連接,并傳輸數(shù)據(jù),客戶端只是處于接收狀態(tài)。
也就是說:客戶總是主動向服務器發(fā)起連接,源地址是自己,源端口是隨機端口,目的是服務器地址,端口是21.經(jīng)過三次握手之后,就可以登錄到FTP看到目錄了。
2.被動傳輸模式 當FTP的控制連接建立,客戶提出目錄列表、傳輸文件時,客戶端發(fā)送PASV命令使服務器處于被動傳輸模式,F(xiàn)TP服務器等待客戶與其聯(lián)系。FTP服務器在非20端口的其它數(shù)據(jù)傳輸端口上監(jiān)聽客戶請求。 在被動傳輸模式下,F(xiàn)TP的數(shù)據(jù)連接和控制連接方向一致,由客戶端向服務器發(fā)起一個用于數(shù)據(jù)傳輸?shù)倪B接??蛻舳说倪B接端口是發(fā)起該數(shù)據(jù)連接請求時使用的端口。當FTP客戶在防火墻之外訪問FTP服務器時,需要使用被動傳輸模式。被動傳輸模式下,F(xiàn)TP服務器打開一個暫態(tài)端口等待客戶端對其進行連接,并傳輸數(shù)據(jù),服務器并不參與數(shù)據(jù)的主動傳輸,只是被動接受。
上一篇: 從數(shù)據(jù)中心三大趨勢看如何做布線規(guī)劃
下一篇: {思科CCNP-RS}EIGRP的匯總