O PNRP funciona em uma LAN sem conexão com a Internet?
Pergunta
Então, estou tentando entender o WCF em geral, e este Amostra do cliente de bate -papo msdn em particular. Eu tenho testado com a configuração abaixo e parece estar funcionando bem. No entanto, o que acontecerá se a conexão com a Internet for perdida (ou inexistente)? Os colegas ainda serão capazes de se encontrar? (De acordo com essa questão, Perguntarei "a nuvem para obter informações de roteamento e responde colaborativamente". A "nuvem" neste caso seria confinada à minha LAN?)
<client>
<!-- chat instance participating in the mesh -->
<endpoint name="ChatEndpoint"
address="net.p2p://chatMesh/ServiceModelSamples/Chat"
binding="netPeerTcpBinding"
bindingConfiguration="BindingDefault"
contract="Microsoft.ServiceModel.Samples.IChat">
</endpoint>
</client>
<bindings>
<netPeerTcpBinding>
<!-- Refer to Peer channel security samples on how to configure netPeerTcpBinding for security -->
<binding name="BindingDefault" port="0">
<security mode="None"/>
<resolver mode="Auto"/>
</binding>
</netPeerTcpBinding>
</bindings>
Agradecemos antecipadamente por qualquer ajuda!
Solução
Localmente, eles usam o SSDP para encontrar colegas que estão na mesma sub -rede. Isso permitirá que os colegas se encontrem, mesmo sem conexão com a Internet.
Como alternativa, você pode implementar seu próprio "resolvedor de pares" que atuará como um servidor de registro. Se você precisar de uma amostra disso, poste um comentário e eu desenterrarei meu código de exemplo.