第二章第三节 文件传输协议:FTP
- 在一个典型的FTP(File Transfer Protocol,文件传输协议)会话中,用户坐在一台主机(本地主机)前面,向一台远程主机传输(或接收来自远程主机的)文件。
- 用户通过一个FTP用户接口与FTP交互。
- 用户首先提供远程主机的主机名,使本地主机的FTP客户机进程建立一个到远程主机FTP服务器进程的TCP连接。
- 然后,为使用户能访问远程主机的账户,用户必须提供一个用户标识和口令,作为FTP命令的一部分在该TCP连接上传送。一旦该服务器向该用户授权,用户就能从本地文件系统向远程文件系统传送文件,反之亦然。
- FTP与HTTP的相同点
- FTP与HTTP的相异点
- HTTP是超文本传输协议,是面向网页的;FTP是文件传输协议,是面向文件的。
- HTTP协议默认端口:80号端口。FTP协议默认端口:21号端口。
- FTP使用两个并行的TCP连接来传输文件,一个是 控制连接(control connection),一个是 数据连接(data connection)。
- 控制连接用于在两个主机之间传输控制信息,如用户标识、口令、改变远程目录的命令以及“put”和“get”文件的命令。
- 数据连接用于实际传输一个文件。
- HTTP协议是在传输文件的TCP连接中发送请求和响应首部行的
- FTP服务器必须在整个会话期间保留用户的状态(state)信息,而HTTP是无状态的。
- FTP的控制连接是持久连接,数据连接是非持久连接;而HTTP既可以使用非持久连接,也可以使用持久连接,默认方式下,HTTP使用持久连接。