【问题标题】:creating ports and initiating communication between client and server创建端口并启动客户端和服务器之间的通信
【发布时间】:2010-07-24 08:12:56
【问题描述】:
我需要的是一个监听 5060 端口的服务器,当客户端向该端口发送数据时,服务器应该打开另一个端口(我相信 1250 之后的任何端口)并将客户端数据转发到该端口,保持 5060 空闲所以它可以为下一个客户端执行相同的功能
所以基本上我需要服务器
a) 为每个客户端打开多个端口
b) 从客户端获取语音数据并能够向该客户端发送语音数据
我正在研究场景的硬件规格和其他此类细节,所以我没有时间自己制作这样的程序
如果有我可以在 Visual Studio .net 2010 上直接运行(服务器端和客户端)的代码来执行这些任务,那将非常有帮助
在此先感谢
【问题讨论】:
标签:
c#
client-server
communication
【解决方案1】:
听起来像是典型的 TCP 套接字服务器实现。我不知道 C#,但我确信其中有 Berkeley Sockets / Winsock listen() 和 accept() 函数的映射,这正是您在原始套接字 API 级别所寻找的。我想您应该在 .Net 库中寻找 TCPServer 或 TCPSocket 类(或类似的)。
【解决方案2】:
如果客户端和服务器都是 .NET,我会考虑使用 WCF。
【解决方案3】:
您可能需要采用并发 TCP 客户端服务器架构。任何时候都会有一个监听套接字连接客户端的多个套接字端点。