我们正在开发一个基于C/S的网络应用程序,在这个应用程序中,服务器需要向客户端传输文件,有时还需要从客户端接收文件。因此,在服务器应用程序中,它需要为每个客户端创建一个控制套接字和许多传输套接字。
我的问题是,我们如何创建和定义一个套接字作为控制套接字或传输套接字的角色?(下面被删除:服务器应用程序如何区分控制套接字和传输套接字?)目前服务器使用监听套接字,对于由accept(监听套接字)建立的所有新连接,它将它们平等地存储在一个数组中,最后让客户端将它们注册为控制套接字或传输套接字(意味着在传输文件之前,客户端需要告知它想要使用哪个套接字作为控制套接字,以及哪个套接字要用作传输套接字)。
我不认为这是一个在服务器应用程序和客户端之间创建控制套接字和传输套接字的好模式。那么,有没有其他适合这类问题的模式呢?
发布于 2013-02-05 14:11:37
我们如何创建这个控制套接字和所有其他的传输套接字?
与创建任何其他套接字的方式相同。我不明白这个问题。
以及服务器应用程序如何区分控制套接字和传输套接字?
通过被客户端告知,并在每个客户端以某种数据结构记住它。或者您应该为控制套接字和传输套接字使用不同的侦听端口。或者,也许传输套接字应该是一个回调,就像FTP中一样。
https://stackoverflow.com/questions/14701064
复制相似问题