Wcf 在没有主服务器的本地网络中聊天

Wcf 在没有主服务器的本地网络中聊天,wcf,chat,communication,lan,tcp-ip,Wcf,Chat,Communication,Lan,Tcp Ip,没有主服务器,我如何构造聊天应用程序? 我考虑在连接到网络的每台计算机上托管WCF服务,并尝试在LAN中的所有可用主机上进行环路连接。启动我的聊天应用程序后的简单场景: 启动主机聊天wcf服务 将我的客户连接到我自己的服务 在LAN中搜索可用主机(例如,如果在相应端口上打开) 正在尝试连接到其上托管的聊天室wcf服务 其他机器正在为我服务 要发送消息,每台机器都使用自己的服务。 每个服务都存储连接的客户端,并删除断开连接的用户 我不太喜欢这个解决方案,所以也许你有更好的想法吗?要实现这一点,

没有主服务器,我如何构造聊天应用程序? 我考虑在连接到网络的每台计算机上托管
WCF服务
,并尝试在
LAN
中的所有可用主机上进行环路连接。启动我的聊天应用程序后的简单场景:

  • 启动主机聊天wcf服务
  • 将我的客户连接到我自己的服务
  • LAN
    中搜索可用主机(例如,如果在相应端口上打开)
  • 正在尝试连接到其上托管的聊天室wcf服务
  • 其他机器正在为我服务
要发送消息,每台机器都使用自己的服务。 每个服务都存储连接的客户端,并删除断开连接的用户


我不太喜欢这个解决方案,所以也许你有更好的想法吗?

要实现这一点,我的最佳选择是 在每个WCF服务上实现一个小的UDP boardcast,这样每个客户机都知道任何新客户机何时连接。
UDP也可以通过WCF发现来实现

,但通常来说,使用WCF的解决方案是好的吗?也许还有其他方法?另一种解决方案是编写原始sockets应用程序,只需很少的努力即可达到目的。请查看ipmessenger以获取示例