我正在尝试编写标准的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服务器。
如果您回答“是”或“否”,我会很高兴。
提前谢谢。
答案 0 :(得分:1)
是的,FTP使用两个连接,阅读RFC http://www.ietf.org/rfc/rfc959.txt,维基百科文章有点友好http://en.wikipedia.org/wiki/File_Transfer_Protocol但RFC是圣经。
就线程而言,你需要一个线程来监听传入的连接,一个线程来处理控制连接,一个线程来处理数据连接。您可以使用select。
使用异步i / o,通过一个线程完成所有操作