需要点对点聊天,WCF 和 PNRP 适合吗?
Posted
技术标签:
【中文标题】需要点对点聊天,WCF 和 PNRP 适合吗?【英文标题】:Need peer to peer chat, is WCF and PNRP suitable for this? 【发布时间】:2012-01-22 17:36:32 【问题描述】:我正在编写一个应用程序,作为该应用程序的一部分,我希望用户能够打开彼此的直接连接,以便他们可以聊天。完全像 msn messenger/skype 等...
但据我了解,由于 NAT 和防火墙,这并不简单。
我将 WCF 用于应用程序的一个单独部分,想知道 WCF 对 P2P 应用程序有什么好处吗?
这个 PNRP 东西,似乎没有很好的文档。它实际上被任何现实世界的应用程序使用吗?它会克服 NAT 和防火墙的所有问题吗?
【问题讨论】:
关于“完全像 MSN Messenger”。 Windows Live (MSN) Messenger 是客户端/服务器。所有即时消息都经过一组服务器。但是,语音/视频、文件传输、显示图片和照片通常直接通过 P2P 进行。 【参考方案1】:之前使用过 Windows PNPR 堆栈,我可以告诉您,它与 IPV6 非常硬连线。因此,只要网络上的所有节点都具有 IPV6 连接,就可以了。在现实世界中,很少有 ISP 和企业网络支持 IPV6。但如果所有节点都在同一个 LAN 上,它确实可以工作。
归根结底,我不会向任何人推荐 PNRP。
合法的 NAT 穿越需要公共互联网上的服务器来协助会合(存在)、信令和 NAT 穿越。查看我对一般 P2P 问题的回答here。
如果您只专注于文本聊天 - 您是否考虑过部署 Jabber/XMPP 服务器并使用 many well written XMPP client stacks 之一供用户聊天?
【讨论】:
以上是关于需要点对点聊天,WCF 和 PNRP 适合吗?的主要内容,如果未能解决你的问题,请参考以下文章
Swoole+Redis+webSocket实现点对点即时聊天
Swoole+Redis+webSocket实现点对点即时聊天