ftp服務的帶外傳輸是什么意思?
HTTP和FTP都是文件傳輸協議,但FTP使用兩個并行的TCP連接來傳輸文件,一個是控制連接(control connection),一個是數據連接(data connection)。
1)控制連接用于在兩個主機之間傳輸控制信息,如用戶標識、口令命令。
2)數據連接用于實際傳輸一個文件。也稱FTP的控制信息是帶外(out-of-band)傳送的。
當用戶主機與遠程主機開始一個FTP會話前,FTP的客戶機首先在21號端口上發起一個用于控制的與服務器的TCP連接。
當FTF的服務器端從該連接上收到一個文件傳輸的命令后,在20號端口發起一個到客戶機的數據連接。FTP在該數據連接上傳送一個文件后關閉該連接。
對FTP傳輸而言,控制連接貫穿了整個用戶會話期間,但是針對會話中的每一次文件傳輸都需要建立一個新的數據連接。
FTP服務器在整個會話期間保留用戶的狀態信息。 例如服務器必須追蹤用戶在遠程目錄樹上的當前位置。對每個活躍用戶會話的狀態進行追蹤等。
FTP命令和回答,都是按照7位ASII格式在控制連接上傳送
常見的命令如下:
USER username:用于向服務器傳送用戶標識。
PASS password:用干向服務器傳送用戶口令。
LIST:用于請求服務器返回遠程主機當前目錄的所有文件列表。
RETR filename:用于從遠程主機的當前目錄下載文件。
STOR filename:用于向遠程主機的當前目錄上傳文件。
1
2
3
4
5
1
2
3
4
5
要注意區分用戶在FTP客戶端輸入的命令和FTF協議在控制連接上發送的命令之間的區別,盡管它們一般有一一對應關系。每個命令都對應著一個從服務器返回到客戶機的回答。回答是一個3位數字,后跟一個可選信息。
FileZilla FTP服務器,可下載安裝后,電腦win+R,ftp命令測試使用。