跳到主要内容

5.2 连接

服务器协议解释器应在端口L上"监听"控制连接. 用户或用户协议解释器应发起全双工控制连接. 服务器和用户协议解释器应遵循ARPA互联网协议手册 [1] 中规定的Telnet协议约定. 服务器没有义务提供命令行编辑功能, 可能要求在用户主机上完成. 在所有传输和回复完成后, 控制连接应由服务器根据用户的请求关闭.

用户DTP必须在指定的数据端口上"监听"; 这应在发送传输请求命令之前完成. 服务器应使用指定的用户数据端口从其自己的默认数据端口发起数据连接. 数据连接应是双工的, 以便服务器可以在从用户DTP发送数据时发送控制信息.

应注意, 所有FTP实现必须支持使用默认端口的数据传输, 并且只有USER-PI可以发起使用非默认端口.

当数据要在两个服务器之间传输时, 用户PI应建立到两个服务器的控制连接. 然后用户应向一个服务器PI发送带有FTP服务器数据端口作为参数的传输请求命令 (RET、STOR或LIST). 然后, 应向另一个服务器PI发送带有FTP服务器数据端口作为参数的另一个传输请求. 回复代码应确定用户PI何时应告诉其中一个服务器PI发起连接. 用户PI向一个服务器PI发送PASV命令, 告诉它在数据连接上"监听"而不是在收到传输命令时发起连接. 然后用户向另一个服务器PI发送传输命令. 服务器然后应连接并交换数据.