为什么 FTP 使用两个端口

为什么 FTP 使用两个端口

可能重复:
为什么 FTP 协议设计为使用多个端口?

我知道 FTP 使用两个端口,一个用于命令,另一个用于数据传输。使用两个端口有什么特别的原因或优势吗?我的意思是,选择这两个端口肯定是有原因的。

答案1

为了避免每个数据包的额外报头和详细信息消耗带宽,使用单独的端口进行数据连接。

来源:http://wiki.answers.com/Q/Why_ftp_use_two_ports_numbers#ixzz1O2rJnorL

答案2

上面的 wiki 文章似乎把端口号弄得有点混乱:)

FTP 在主动模式下使用 21 进行控制,使用 20 进行数据传输,在被动模式下使用随机端口。

它可能对带宽有影响,但我认为主要原因之一是允许在传输期间使用控制通道。如果您有一个不错的 FTP 客户端,可以将传输排队,您可能会注意到在传输过程中仍然可以浏览文件夹。我相信客户端也可以通知服务器它想要取消正在进行的传输。

答案3

我认为这是因为客户端可以在两个服务器之间发起数据传输,而不是在客户端和服务器之间发起数据传输。客户端与两个服务器都保持控制连接,而服务器之间保持数据连接。

相关内容