Работает ли PNRP на локальной сети без подключения к Интернету?
Вопрос
Итак, я пытаюсь почувствовать смысл WCF в целом, и это Образец клиента MSDN чата особенно. Я тестировал с конфигурацией ниже, и, кажется, работает нормально. Тем не менее, что произойдет, если подключение к интернету потеряно (или несуществующему)? Будут ли сверстники все еще сможете найти друг друга? (Согласно с этот вопрос, Я буду задавать «облако для информации о маршрутизации, и он совместно отвечает». Будет ли «Облако» в этом деле ограничиваться моей локальной лоткой?)
<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>
Заранее благодарю за любую помощь!
Решение
Локально они используют SSDP для поиска сверстников, которые находятся в одной подсети. Это позволит сверстникам найти друг друга даже без подключения к Интернету.
В качестве альтернативы вы можете реализовать свой собственный «Peer Resolver», который будет действовать как сервер регистрации. Если вам нужен образец этого, пожалуйста, напишите комментарий, и я укажу свой образец код.