Partager via


Programmes de résolution d’homologues

Pour se connecter à un maillage, un nœud homologue requiert les adresses IP d’autres nœuds. Les adresses IP sont obtenues en contactant un service de résolution, qui prend l’ID de maillage et retourne une liste d’adresses correspondant aux nœuds inscrits avec cet ID de maillage particulier. Le programme de résolution conserve une liste d’adresses inscrites, qu’il crée en ayant chaque nœud dans le registre de maillage auprès du service.

Vous pouvez spécifier le service PeerResolver à utiliser via la Resolver propriété du NetPeerTcpBinding.

Programmes de résolution d’homologue pris en charge

Le canal homologue prend en charge deux types de programme de résolution : le protocole PNRP (Peer Name Resolution Protocol) et les services de programme de résolution personnalisés.

Par défaut, le canal homologue utilise le service de programme de résolution d’homologue PNRP pour la découverte d’homologues et de voisins dans le maillage. Pour les situations/plateformes où PNRP n’est pas disponible ou réalisable, Windows Communication Foundation (WCF) fournit un autre service de découverte basé sur le serveur - le CustomPeerResolverService. Vous pouvez également définir explicitement un service de programme de résolution personnalisé en écrivant une classe qui implémente l’interface IPeerResolverContract .

Protocole PNRP (Peer Name Resolution Protocol)

PNRP, le programme de résolution par défaut pour Windows Vista, est un service de programme de résolution de noms serverless distribué. PNRP peut également être utilisé sur Windows XP SP2 en installant advanced networking Pack. Tous les deux clients exécutant la même version de PNRP peuvent se localiser mutuellement à l’aide de ce protocole, à condition qu’ils répondent à certaines conditions (par exemple, l’absence d’un pare-feu d’entreprise intermédiaire). Notez que la version de PNRP fournie avec Windows Vista est plus récente que la version incluse dans le pack de mise en réseau avancé. Consultez le Centre de téléchargement Microsoft pour connaître les mises à jour de PNRP pour Windows XP SP2.

Services de résolution personnalisés

Lorsque le service PNRP n’est pas disponible ou que vous souhaitez contrôler complètement la mise en forme du maillage, vous pouvez utiliser un service de programme de résolution basé sur un serveur personnalisé. Vous pouvez définir explicitement ce service en écrivant une classe de programme de résolution implémentant l’interface IPeerResolverContract ou en utilisant l’implémentation par défaut intégrée. CustomPeerResolverService

Sous l’implémentation par défaut du service, les inscriptions clientes expirent après un certain temps si le client n’actualise pas explicitement l’inscription. Les clients qui utilisent le service de résolution doivent connaître la limite supérieure de la latence du serveur client afin d’actualiser correctement les inscriptions dans le temps. Cela implique de choisir un délai d’actualisation approprié (RefreshInterval) sur le service de résolution. (Pour plus d’informations, consultez Inside the CustomPeerResolverService : Client Registrations.)

L’enregistreur d’applications doit également envisager de sécuriser la connexion entre les clients et le service de programme de résolution personnalisé. Pour ce faire, vous pouvez utiliser les paramètres de sécurité sur les NetTcpBinding clients qui utilisent pour contacter le service de résolution. Vous devez spécifier les informations d’identification (si elles sont utilisées) sur le ChannelFactory canal homologue utilisé. Ces informations d’identification sont transmises à l’utilisateur ChannelFactory utilisé pour créer des canaux vers le programme de résolution personnalisé.

Remarque

Lorsque vous utilisez des réseaux locaux et impromptu avec un programme de résolution personnalisé, il est fortement recommandé que les applications utilisant ou prenant en charge les réseaux locaux ou impromptu de liaison incluent une logique qui sélectionne une adresse locale à liaison unique à utiliser lors de la connexion. Cela empêche toute confusion potentiellement causée par les ordinateurs avec plusieurs adresses locales de liaison. Conformément à cela, le canal homologue prend uniquement en charge l’utilisation d’une adresse locale à liaison unique à tout moment. Vous pouvez spécifier cette adresse avec la ListenIpAddress propriété sur le NetPeerTcpBinding.

Pour une démonstration de l’implémentation d’un programme de résolution personnalisé, consultez Peer Channel Custom Peer Resolver.

Dans cette section

À l’intérieur de CustomPeerResolverService : Inscriptions du client

Voir aussi