Delen via


Peer Resolvers

Als u verbinding wilt maken met een mesh, vereist een peerknooppunt de IP-adressen van andere knooppunten. IP-adressen worden verkregen door contact op te maken met een resolver-service, die de mesh-id gebruikt en een lijst met adressen retourneert die overeenkomen met knooppunten die zijn geregistreerd met die specifieke mesh-id. De resolver bewaart een lijst met geregistreerde adressen, die worden gemaakt door elk knooppunt in het mesh-register bij de service te hebben.

U kunt opgeven welke PeerResolver-service moet worden gebruikt via de Resolver eigenschap van de NetPeerTcpBinding.

Ondersteunde peer-resolvers

Peer Channel ondersteunt twee soorten resolvers: Peer Name Resolution Protocol (PNRP) en aangepaste resolver-services.

Peer Channel maakt standaard gebruik van de PNRP-peer-resolverservice voor de detectie van peers en buren in de mesh. Voor situaties/platforms waarbij PNRP niet beschikbaar of haalbaar is, biedt Windows Communication Foundation (WCF) een alternatieve, servergebaseerde detectieservice - de CustomPeerResolverService. U kunt ook expliciet een aangepaste resolver-service definiëren door een klasse te schrijven waarmee de IPeerResolverContract interface wordt geïmplementeerd.

Peer Name Resolution Protocol (PNRP)

PNRP, de standaard resolver voor Windows Vista, is een gedistribueerde, serverloze naamomzettingsservice. PNRP kan ook worden gebruikt op Windows XP SP2 door het Advanced Networking Pack te installeren. Elke twee clients met dezelfde versie van PNRP kunnen elkaar vinden met behulp van dit protocol, mits ze voldoen aan bepaalde voorwaarden (zoals het ontbreken van een tussenliggende bedrijfsfirewall). Houd er rekening mee dat de versie van PNRP die wordt geleverd met Windows Vista nieuwer is dan de versie die is opgenomen in het Advanced Networking Pack. Raadpleeg het Microsoft Downloadcentrum voor updates voor PNRP voor Windows XP SP2.

Aangepaste resolver-services

Wanneer de PNRP-service niet beschikbaar is of u volledige controle wilt over mesh-vormgeving, kunt u een aangepaste, servergebaseerde resolverservice gebruiken. U kunt deze service expliciet definiëren door een resolver-klasse te schrijven die de IPeerResolverContract interface implementeert, of door gebruik te maken van de standaard implementatie in box. CustomPeerResolverService

Bij de standaard implementatie van de service verlopen clientregistraties na een bepaalde tijd als de client de registratie niet expliciet vernieuwt. Clients die de resolver-service gebruiken, moeten op de hoogte zijn van de bovengrens van de latentie van de clientserver om registraties tijdig te kunnen vernieuwen. Dit omvat het kiezen van een juiste time-out voor vernieuwen (RefreshInterval) voor de resolver-service. (Zie voor meer informatie In de CustomPeerResolverService: Clientregistraties.)

De schrijver van de toepassing moet ook overwegen de verbinding tussen clients en de aangepaste resolver-service te beveiligen. U kunt dit doen door beveiligingsinstellingen te gebruiken op de NetTcpBinding clients die worden gebruikt om contact op te maken met de resolver-service. U moet referenties opgeven (indien gebruikt) voor het ChannelFactory maken van peerkanaal. Deze referenties worden doorgegeven aan de ChannelFactory gebruikte om kanalen te maken voor de aangepaste resolver.

Notitie

Wanneer u lokale en oneigenlijke netwerken gebruikt met een aangepaste resolver, wordt het sterk aangeraden dat toepassingen die gebruikmaken van of ondersteuning bieden voor lokale of oneigenlijke netwerken logica bevatten die één adres voor koppelen selecteert dat moet worden gebruikt bij het maken van verbinding. Dit voorkomt verwarring die mogelijk wordt veroorzaakt door computers met meerdere koppelings-lokale adressen. In overeenstemming hiermee biedt Peer Channel alleen ondersteuning voor het gebruik van één koppelingsadres tegelijk. U kunt dit adres opgeven met de ListenIpAddress eigenschap op de NetPeerTcpBinding.

Zie Peer Channel Custom Peer Resolver voor een demonstratie van het implementeren van een aangepaste resolver.

In dit gedeelte

Binnen de CustomPeerResolverService: Clientregistraties

Zie ook