FTP(File Transfer Protocol)是一种用于在计算机之间传输文件的协议。在FTP中,有两种不同的数据传输模式:主动模式(Active Mode)和被动模式(Passive Mode)。
在主动模式下,客户端主动连入服务器的数据端口(一般是20端口),而服务器则通过一个随机的高位端口(通常是1024到65535之间)向客户端发送数据。在主动模式中,客户端的防火墙需要打开服务器所使用的端口,以便能够接收来自服务器的数据传输请求。
而在被动模式下,客户端先向服务器的命令端口(一般是21端口)发送数据传输请求,并等待服务器返回一个随机的高位端口号。然后客户端通过该端口与服务器建立数据连接,进行文件传输。在被动模式中,服务器的防火墙需要打开用于数据传输的端口,以便能够接收来自客户端的数据连接请求。
主动模式和被动模式的选择通常取决于网络环境和防火墙的配置。在一些情况下,主动模式可能更容易设置,但在防火墙配置比较严格的情况下,被动模式可能更可靠。网络管理员必须根据实际情况选择适合的模式以确保文件传输的成功。