0

我正在尝试编写标准的 FTP 服务器。我想知道这种情况是否正确?

1. On each request of clients, a thread manager makes thread for control connection.

2. When control connection thread receives PORT command, it establishes data connection(active open)

这是通常的解决方案吗?我想知道这一点,因为我必须创建标准的 FTP 服务器。

如果您回答“是”或“否”,我会很高兴。

先感谢您。

4

1 回答 1

1

是的,FTP 使用两个连接,阅读 RFC http://www.ietf.org/rfc/rfc959.txt,维基百科的文章更友好一些http://en.wikipedia.org/wiki/File_Transfer_Protocol但 RFC 是圣经。

就线程而言,您将需要一个线程来监听传入连接、一个线程来处理控制连接和一个线程来处理数据连接。您可以通过使用 select 使用异步 i/o 来用一个线程完成所有操作。

于 2013-01-24T10:00:44.817 回答