整理自计算机网络微课堂
FTP的工作过程
两条TCP连接:
一个是控制连接,这条TCP连接是FTP客户与服务器之间的命令通道,在整个会话期间一直保持打开,用于传送FTP相关控制命令。
另一个是数据连接,这条TCP连接是FTP客户与服务器之间的数据通道。用于文件传输,在每次文件传输时才建立,传输结束就关闭。
两种传输模式:
主动模式:在建立数据通道时,FTP服务器主动连接FTP客户,因此称为主动模式。
被动模式:当有数据要传输时,FTP客户通过命令通道通知FTP服务器开启某个协商好的临时端口,被动等待来自FTP客户的TCP连接,建立数据通道。由于在建立数据通道时,FTP服务器被动等待FTP客户的连接,因此称为被动模式。
主动模式下,FTP使用TCP 21端口进行控制连接,TCP 20端口进行数据连接。
被动模式下,FTP使用TCP 21端口进行控制连接,数据连接端口由服务器和客户协商决定。