FTP即文件傳輸協(xié)議。文件傳輸協(xié)議(FTP:File Transfer Protocol)使得主機(jī)間可以共享文件。 FTP使用TCP生成一個(gè)虛擬連接用于控制信息,然后再生成一個(gè)單獨(dú)的TCP連接用于數(shù)據(jù)傳輸?刂七B接使用類似 TELNET協(xié)議在主機(jī)間交換命令和消息。文件傳輸協(xié)議是TCP/IP網(wǎng)絡(luò)上兩臺(tái)計(jì)算機(jī)傳送文件的協(xié)議,F(xiàn)TP是在TCP/IP網(wǎng)絡(luò)和INTERNET上最早使用的協(xié)議之一,它屬于網(wǎng)絡(luò)協(xié)議組的應(yīng)用層。FTP客戶機(jī)可以給服務(wù)器發(fā)出命令來下載文件,上傳文件,創(chuàng)建或改變服務(wù)器上的目錄。
FTP是TCP/IP網(wǎng)絡(luò)上兩臺(tái)計(jì)算機(jī)傳送文件的協(xié)議,F(xiàn)TP是在TCP/IP網(wǎng)絡(luò)和INTERNET上最早使用的協(xié)議之一。盡管World Wide Web(WWW)已經(jīng)替代了FTP的大多數(shù)功能,F(xiàn)TP仍然是通過Internet把文件從客戶機(jī)復(fù)制到服務(wù)器上的一種途徑。FTP客戶機(jī)可以給服務(wù)器發(fā)出命令來下載文件,上傳文件,創(chuàng)建或改變服務(wù)器上的目錄。原來的FTP軟件多是命令行操作,有了像CUTEFTP這樣的圖形界面軟件,使用FTP傳輸變得方便易學(xué)。主要使用它進(jìn)行“上載”。即向服務(wù)器傳輸文件。由于FTP協(xié)議的傳輸速度比較快,我們?cè)谥谱髦T如“軟件下載”這類網(wǎng)站時(shí)喜歡用FTP來實(shí)現(xiàn),同時(shí)我們這種服務(wù)面向大眾,不需要身份認(rèn)證,即“匿名FTP服務(wù)器”。
FTP是應(yīng)用層的協(xié)議,它基于傳輸層,為用戶服務(wù),它們負(fù)責(zé)進(jìn)行文件的傳輸。FTP是一個(gè)8位的客戶端-服務(wù)器協(xié)議,能操作任何類型的文件而不需要進(jìn)一步處理,就像MIME或Unicode一樣。但是,F(xiàn)TP有著極高的延時(shí),這意味著,從開始請(qǐng)求到第一次接收需求數(shù)據(jù)之間的時(shí)間會(huì)非常長,并且不時(shí)的必需執(zhí)行一些冗長的登陸進(jìn)程。
FTP服務(wù)一般運(yùn)行在20和21兩個(gè)端口。端口20用于在客戶端和服務(wù)器之間傳輸數(shù)據(jù)流,而端口21用于傳輸控制流,并且是命令通向ftp服務(wù)器的進(jìn)口。當(dāng)數(shù)據(jù)通過數(shù)據(jù)流傳輸時(shí),控制流處于空閑狀態(tài)。而當(dāng)控制流空閑很長時(shí)間后,客戶端的防火墻會(huì)將其會(huì)話置為超時(shí),這樣當(dāng)大量數(shù)據(jù)通過防火墻時(shí),會(huì)產(chǎn)生一些問題。此時(shí),雖然文件可以成功的傳輸,但因?yàn)榭刂茣?huì)話會(huì)被防火墻斷開,傳輸會(huì)產(chǎn)生一些錯(cuò)誤。