FTP(File Transfer Protocol,文件传输协议) 是 TCP/IP 协议组中的协议之一。FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端。其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。
在开发网站的时候,通常利用FTP协议把网页或程序传到Web服务器上。此外,由于FTP传输效率非常高,在网络上传输大的文件时,一般也采用该协议。
FTP 服务构成
上述的文件传输,指的是客户端和FTP服务器端之间的文件传输,如文件上传和下载。要实现文件传输还需要满足两个条件,如下:
服务器端必须开启一个 TCP 端口(默认为 21 端口),用来监听来自客户端的请求。
客户端连接 FTP 服务器端,需要使用 TCP 方式。这样可以保证客户端和服务器之间的会话是可靠的。
客户端与FTP服务器端之间传输一个文件是一次完整的 FTP 会话。该会话包含有两个连接,分别为控制连接和数据连接。其作用如下:
控制连接:客户端向 FTP 服务器的 21 端口发送连接,服务器接受连接,建立一条命令通道。FTP 的命令和应答就是通过控制连接来传输的,这个连接会存在于整个 FTP 会话过程中。该连接主要负责将命令从客户端传给服务器,并将服务器的应答返回给客户端。所以,该连接不用于发送数据,只用于传输命令。
数据连接:每当一个文件在客户端与服务器之间进行传输时,就会创建数据连接。该连接主要用来进行文件传输。
FTP服务器:
Wu-ftpd,Proftpd,Pureftpd,ServU,IIS
vsftpd:Very Secure FTP Daemon,CentOS默认FTP服务器
高速,稳定,下载速度是WU-FTP的两倍
ftp.redhat.com数据:单机最多可支持15000个并发
客户端软件:
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,FlashFXP,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 #一键安装脚本实现
filezella:免费,既可以当ftp客户端,也可以当ssh客户端
CuteFtp,FlashFXP,LeapFtp:付费
整合自:51cto、c语言中文网、百度百科
编辑:jq
-
服务器
+关注
关注
12文章
9123浏览量
85324 -
TCP
+关注
关注
8文章
1353浏览量
79055 -
FTP
+关注
关注
0文章
110浏览量
40624 -
SSH
+关注
关注
0文章
188浏览量
16335
发布评论请先 登录
相关推荐
评论