none
谁有关于wcf p2p Peer Channel 方面的资源提供下。谢谢。 RRS feed

  • 常规讨论

  • 比如WCF服务端如何穿透Nat, 及Peer Channel 能否穿透Nat,及两点能否进行直连等。或者关于用WCF开发点对点通信的资料。谢谢。
    2011年1月7日 4:56

全部回复

  • 例子:

    http://www.codeproject.com/KB/WCF/WPFWCF_Chat_App_via_P2P.aspx

    文章:

    http://msdn.microsoft.com/en-us/magazine/cc700336.aspx


    Frank Xu Lei--谦卑若愚,好学若饥
    专注于.NET平台下分布式应用系统开发和企业应用系统集成
    Focus on Distributed Applications Development and EAI based on .NET
     

    老徐的网站】:http://www.frankxulei.com/

    微软WCF中文技术论坛
    微软WCF英文技术论坛

    Windows Azure中文技术论坛

    2011年1月10日 3:01
    版主
  • 谢谢。

    我似乎知道了.net下的Peer Channel 方案如要在internet上运行话,也就是不受nat限制的话,需要在ipv6进行pnrp的解析,但还有一个自定义解析CustomPeerResolverService,不知道什么情况,也需要在IPv6上吗?还是在ipv4也可以穿透nat?不知道有没有人做过相应的试验?由于自己环境受限,不好做测试。有做过的回应一下,谢谢。

    2011年1月10日 6:00
  • 谢谢。

    我似乎知道了.net下的Peer Channel 方案如要在internet上运行话,也就是不受nat限制的话,需要在ipv6进行pnrp的解析,但还有一个自定义解析CustomPeerResolverService,不知道什么情况,也需要在IPv6上吗?还是在ipv4也可以穿透nat?不知道有没有人做过相应的试验?由于自己环境受限,不好做测试。有做过的回应一下,谢谢。

    CustomPeerResolverService如要不受NAT限制的话同样需要ipv6. 请参考Peer Channel的官方博客:

    http://blogs.msdn.com/b/peerchan/archive/2008/01/23/configuring-peer-channel_3a00_-with_2f00_without-app_2e00_config.aspx

     

    (1)  Can you use p2p over the Internet w/o using PNRP?  ie: custom resolver

    - Yes you can - though for it to work successfully across NATs in the internet, there would be a min. config on clients that requires IPv6 to be installed (so Teredo can kick in) - which is default on vista/win7 clients anyways) ..

    - You can use the default custom resolver implementation (non-pnrp) that we ship out of the box and play aroudn with it..the default impementation registers all available addresses for teh client upon register and then during resolve we attempt to connect to each of the addresses we know of for that node...

     

     

     

     

    2011年1月12日 19:17
  • 感谢 Tiffena Kou [MSFT] 回复。

    我找到了一个跟Peer Channel相关的内容:

    http://slickthought.net/post/2009/10/08/Peer-to-Peer-Series-Part-5-Connecting-Peers-via-WCF.aspx

    PeerNameResult peerRecord = PeerResolution.ResolveHostName(hostPeerName); System.ServiceModel.Channels.Binding netBinding = new NetTcpBinding(SecurityMode.None);EndpointAddress endpointAddress = new EndpointAddress(string.Format("net.tcp://{0}:{1}/IntelService", peerRecord.Uri, peerRecord.Port)); IntelServiceProxy = new IntelProxy(netBinding, endpointAddress);

    从这段代码中

    string.Format("net.tcp://{0}:{1}/IntelService", peerRecord.Uri, peerRecord.Port);

    可以看出 NetTcpBinding可以用pnrp解析的地址,我觉得很有意义。

    我做了相关测试,在windows7下似乎工作很正常,但在windows xp sp3下出现问题:大概是找不到pnrp解析过来的主机dns  地址。不知道为什么。

     

     

    2011年1月13日 3:47
  • 您好,您有WCF中peerChannel这一块功能的小例子吗?想参考下。谢谢啦sjr_vip#126.com
    2012年5月29日 11:02