Partager via


Ce qui se passe pendant une requête

Cette section décrit comment le réseau gère la requête lorsqu’un client 32 bits recherche un nom dans son propre domaine.

Lorsque votre application cliente appelle RpcNsBindingImportBegin, le localisateur résidant sur votre ordinateur client tente de répondre à cette demande. S’il n’y a rien dans le cache, il transfère la requête par RPC à un localisateur de master. Si le localisateur de master ne trouve rien dans son cache, il envoie la demande à tous les ordinateurs du domaine à l’aide d’une diffusion d’emplacement de messagerie. S’il existe une correspondance, le localisateur sur chaque ordinateur répond par un emplacement de courrier dirigé. (Par exemple, si un processus sur cet ordinateur a exporté l’interface.) Les réponses sont rassemblées et le RPC est effectué à partir du localisateur de processus du client, qui répond au processus client lui-même.

Dans un domaine, le localisateur de client recherche un localisateur de master aux emplacements suivants :

  • Sur le contrôleur de domaine principal
  • Sur chaque contrôleur de domaine de sauvegarde

Si aucune correspondance n’est trouvée, le localisateur de client se déclare comme le localisateur master. Par conséquent, il diffusera des requêtes si elles ne peuvent pas être satisfaites localement.

Dans un groupe de travail, le localisateur de client conserve un cache des ordinateurs dont les localisateurs ont une diffusion. Il utilise celui qui a été exécuté le plus longtemps comme localisateur de master. Si cet ordinateur n’est pas disponible, l’ordinateur de diffusion le plus long suivant est utilisé, et ainsi de suite. Si le client a besoin d’un localisateur de master et que le cache est vide, il réapprovisionnera le cache en envoyant une diffusion d’emplacement de messagerie spéciale qui demande aux localisateurs master de répondre. S’il n’y a pas de réponse, le localisateur de client se déclare le localisateur master et diffuse les requêtes si elles ne peuvent pas être satisfaites localement.

Cela change si votre application cliente est un programme 16 bits ou MS-DOS. Dans ce cas, aucun localisateur n’est en cours d’exécution sur l’ordinateur client, et Rpcns1.dll ou Rpcnslm.rpc contient le code permettant de trouver un localisateur de master. Toutes les demandes sont transférées directement au localisateur de master.

Ces instructions sont valides pour les noms dans le domaine du client, tels que les noms pour " /.:/ entryname ». Si le client demande un nom d’un autre domaine à l’aide de « /.../DOMAIN/entryname », le localisateur du client transfère la demande au domaine spécifié qui la diffusera s’il n’a pas la réponse. Si le domaine est en panne ou s’il s’agit en fait d’un groupe de travail, la demande échoue.

Notes

N’oubliez pas ce qui suit lorsque vous utilisez des entrées dans le service de noms :

 

  • Un client ne peut pas utiliser la syntaxe « /.../DOMAIN/nom_entrée » pour rechercher une entrée dans son propre domaine. Utiliser la syntaxe « /.:/ entryname ». Toutefois, vous pouvez utiliser « /.../DOMAIN/entryname » pour rechercher une entrée dans un autre domaine.
  • Le nom de domaine dans « /.../DOMAIN/entryname » doit être en majuscules. Lorsque vous recherchez une correspondance, le localisateur respecte la casse.
  • Les noms d’entrée de localisateur respectent également la casse, mais ne doivent pas nécessairement être en majuscules.
  • Quand le client utilise le « /.:/ syntaxe entryname , le localisateur ne recherche pas les entrées dans d’autres domaines, même s’ils ont une relation d’approbation avec le domaine d’ouverture de session.
  • Les diffusions ne traversent pas les segments LAN (par exemple, les sous-réseaux). Ainsi, l’utilité du localisateur est limitée dans un organization avec plusieurs sous-réseaux.