概述
FTP服務一般運行在20和21兩個端口,端口20用於在客戶端和服務器之間傳輸數據流,端口21用於傳輸控制流,並且是命令通向ftp服務器的進口,當數據通過數據流傳輸時,控制流處於空閒狀態,而當控制流空閒很長時間後,客戶端的防火牆會將會話設置爲超時,這樣當大量數據通過防火牆時,會產生一些問題。
登陸和匿名
使用FTP時,必須首先登陸,但不是每個ftp客戶端都有賬號,所以使用匿名ftp機制,系統管理員可以建立一個特殊的用戶ID,名爲anonymous。
工作原理
ftp服務是一種有連接的文件傳輸服務,採用的傳輸層協議是tcp協議,ftp服務的基本過程是:建立連接,傳輸數據,釋放連接,用於通信的tcp連接分成2個類型——控制連接和數據連接,控制連接用於在通信雙方之間傳輸ftp命令與相應信息,身份認證,異常處理等控制操作,數據連接用於雙方之間傳輸文件或目錄信息。
控制連接要在數據連接建立之前建立,在數據連接釋放之後釋放。
使用模式
ftp有兩種模式,分別是主動模式和被動模式,主動模式要求客戶端和服務器同時打開並且監聽一個端口以創建連接,被動模式只要求服務器產生一個監聽相應端口的進程。
ftp命令
ftp命令由兩部分組成: 命令名與參數,命令名由3或4個字母組成的字符串
ftp響應
ftp相應由兩部分組成:響應碼與描述信息