FTP(File Transfer Protocol,文件傳輸協(xié)議) 是 TCP/IP 協(xié)議組中的協(xié)議之一。FTP協(xié)議包括兩個組成部分,其一為FTP服務(wù)器,其二為FTP客戶端。其中FTP服務(wù)器用來存儲文件,用戶可以使用FTP客戶端通過FTP協(xié)議訪問位于FTP服務(wù)器上的資源。
在開發(fā)網(wǎng)站的時候,通常利用FTP協(xié)議把網(wǎng)頁或程序傳到Web服務(wù)器上。此外,由于FTP傳輸效率非常高,在網(wǎng)絡(luò)上傳輸大的文件時,一般也采用該協(xié)議。
FTP 服務(wù)構(gòu)成
上述的文件傳輸,指的是客戶端和FTP服務(wù)器端之間的文件傳輸,如文件上傳和下載。要實現(xiàn)文件傳輸還需要滿足兩個條件,如下:
服務(wù)器端必須開啟一個 TCP 端口(默認為 21 端口),用來監(jiān)聽來自客戶端的請求。
客戶端連接 FTP 服務(wù)器端,需要使用 TCP 方式。這樣可以保證客戶端和服務(wù)器之間的會話是可靠的。
客戶端與FTP服務(wù)器端之間傳輸一個文件是一次完整的 FTP 會話。該會話包含有兩個連接,分別為控制連接和數(shù)據(jù)連接。其作用如下:
控制連接:客戶端向 FTP 服務(wù)器的 21 端口發(fā)送連接,服務(wù)器接受連接,建立一條命令通道。FTP 的命令和應(yīng)答就是通過控制連接來傳輸?shù)模@個連接會存在于整個 FTP 會話過程中。該連接主要負責將命令從客戶端傳給服務(wù)器,并將服務(wù)器的應(yīng)答返回給客戶端。所以,該連接不用于發(fā)送數(shù)據(jù),只用于傳輸命令。
數(shù)據(jù)連接:每當一個文件在客戶端與服務(wù)器之間進行傳輸時,就會創(chuàng)建數(shù)據(jù)連接。該連接主要用來進行文件傳輸。
FTP服務(wù)器:
Wu-ftpd,Proftpd,Pureftpd,ServU,IIS
vsftpd:Very Secure FTP Daemon,CentOS默認FTP服務(wù)器
高速,穩(wěn)定,下載速度是WU-FTP的兩倍
ftp.redhat.com數(shù)據(jù):單機最多可支持15000個并發(fā)
客戶端軟件:
ftp,lftp,lftpget,wget,curl
ftp -A ftpserver port -A主動模式 -p 被動模式
lftp -u username ftpserver
lftp username@ftpserver
lftpget ftp://ftpserver/pub/file
gftp: GUI centos5 最新版2.0.19 (11/30/2008)
filezilla,CuteFtp,F(xiàn)lashFXP,LeapFtp
IE ftp://username:password@ftpserver
ftp不支持補齊,lftp支持補齊,lftpget、wget和curl是非交互式的,wget和curl還支持http
curl ftp://url -o newfilename
curl ftp://url/f1.sh | bash #一鍵安裝腳本實現(xiàn)
filezella:免費,既可以當ftp客戶端,也可以當ssh客戶端
CuteFtp,F(xiàn)lashFXP,LeapFtp:付費
整合自:51cto、c語言中文網(wǎng)、百度百科
編輯:jq
-
服務(wù)器
+關(guān)注
關(guān)注
12文章
9303瀏覽量
86061 -
TCP
+關(guān)注
關(guān)注
8文章
1378瀏覽量
79301 -
FTP
+關(guān)注
關(guān)注
0文章
110瀏覽量
40712 -
SSH
+關(guān)注
關(guān)注
0文章
189瀏覽量
16405
發(fā)布評論請先 登錄
相關(guān)推薦
評論