文件传输协议: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:用于向远程主机的当前目录上传文件。

要注意区分用户在FTP客户端输入的命令和FTF协议在控制连接上发送的命令之间的区别,尽管它们一般有一一对应关系。每个命令都对应着一个从服务器返回到客户机的回答。回答是一个3位数字,后跟一个可选信息。

FileZilla FTP服务器,可下载安装后,电脑win+R,ftp命令测试使用。

猜你喜欢

转载自blog.csdn.net/qq3399013670/article/details/81448360