FTP服务器是一种常用的文件传输协议,它提供了多种传输模式,包括主动传输模式、被动传输模式和单端口模式。下面将详细介绍这些传输模式及其应用场景。
主动传输模式
在主动传输模式下,当FTP的控制连接建立后,客户端向服务器发送PORT命令进行协商。服务器使用标准端口20作为数据连接端口(ftp-data),并发起一个用于数据传输的连接。在主动传输模式中,FTP的数据连接和控制连接方向相反,由服务器向客户端发起数据连接。客户端的连接端口由服务器端和客户端协商确定。
被动传输模式
在被动传输模式下,当FTP的控制连接建立后,客户端发送PASV命令使服务器处于被动传输模式。FTP服务器等待客户端与其联系,并在非20端口的其他数据传输端口上监听客户请求。在被动传输模式中,FTP的数据连接和控制连接方向一致,由客户端向服务器发起数据连接。客户端的连接端口是发起数据连接请求时使用的端口。被动传输模式适用于FTP客户在防火墙之外访问FTP服务器的情况。
单端口模式
除了主动传输模式和被动传输模式,还存在一种单端口模式。在单端口模式中,FTP服务器发起数据连接请求,而客户端的控制连接端口和数据连接端口一致。然而,由于该模式无法在短时间内连续输入数据或传输命令,因此并不常用。