0

I am writing an application and as part of this application I want users to be able to open up direct connections to each other so they can chat. Exactly like msn messenger/skype etc...

But from what I understand this is not straightforward due to NAT and firewalls.

  1. I am using WCF for a separate part of the application and was wondering is WCF any good for P2P applications?

  2. This PNRP thing, it seems there isn't very good documentation on it. Is it actually used by any real world applications? Would it overcome all the issues with NAT & firewalls?

Jim_CS
  • 4,082
  • 13
  • 44
  • 80
  • In regards to "Exactly like MSN Messenger". Windows Live (MSN) Messenger is client/server. All instant messages go through a set of servers. However, voice/video, file transfers, display pictures, and photos generally go direct over P2P. – selbie Dec 22 '11 at 05:40

1 Answers1

1

Having used the Windows PNPR stack before, I can tell you that it is very hardwired to IPV6. So as long as all the nodes on the network have IPV6 connectivity, then you are fine. In the real world, few ISPs and corporate networks support IPV6. But if all the nodes are on the same LAN, it does work.

At the end of the day, I wouldn't recommend PNRP to anyone.

Legitimate NAT traversal requires servers on the public Internet to assist with rendezvous (presence), signaling, and NAT traversal. See my answer to the general P2P problem here.

If you are just focused on text chat only - have you considered just deploying a Jabber/XMPP server and using one of the many well written XMPP client stacks for users to chat through?

Community
  • 1
  • 1
selbie
  • 100,020
  • 15
  • 103
  • 173