WINS se compose des deux éléments suivants :
Le serveur WINS, qui gère les requêtes et les inscriptions de noms
Le logiciel client, qui requiert la résolution des noms d'ordinateur
Les clients de réseaux Windows (les ordinateurs Windows NT, Windows 98, Windows 95 ou Windows for Workgroups 3.11 configurés pour utiliser WINS) peuvent utiliser WINS directement. Les ordinateurs non-WINS d'un interréseau qui sont compatibles B-nud (comme décrit dans les RFC 1001 et 1002) peuvent accéder à WINS par le biais de proxies (ordinateurs configurés pour utiliser WINS) qui écoutent les diffusions de requêtes de noms puis répondent pour les noms qui ne figurent pas sur le sous-réseau local).
Pour autoriser l'exploration sans WINS, l'administrateur du réseau doit s'assurer que le domaine principal de l'utilisateur a des ordinateurs SunLink Server, Windows NT Server ou Windows NT Workstation des deux côtés du routeur afin d'agir en tant qu'explorateurs maîtres. Ces ordinateurs ont besoin de fichiers LMHOSTS correctement configurés comportant des entrées pour les contrôleurs de domaine à travers le sous-réseau.
Avec WINS, ces stratégies sont inutiles car les serveurs et les proxies WINS fournissent de manière transparente le support nécessaire pour que l'exploration se fasse à travers les routeurs quand les domaines en comportent.
Si un ordinateur client exécutant Windows NT est également configuré pour utiliser DHCP et si l'administrateur spécifie les informations du serveur WINS dans le cadre des options DHCP, l'ordinateur sera automatiquement configuré avec les informations du serveur WINS.
Dans un environnement implémentant WINS et la résolution de noms par diffusion, un ordinateur client configuré pour utiliser WINS ne se comportera pas de la même manière qu'un ordinateur client non-WINS. Il y aura des différences au niveau de la façon dont ces clients géreront la résolution, l'inscription, le relâchement et le renouvellement, opérations qui sont décrites dans les sections suivantes.
S'il y a des serveurs WINS sur un interréseau, les noms d'ordinateur NetBIOS sont résolus en utilisant deux méthodes de base selon si la résolution WINS est disponible et activée sur l'ordinateur client. Quelle que soit la méthode utilisée, le processus n'est pas visible à l'utilisateur une fois que le système est configuré.
Si WINS n'est pas activé sur le client - L'ordinateur inscrit son nom en envoyant des paquets de requête d'inscription de nom (sous la forme de messages de diffusion) au sous-réseau local. Pour trouver un ordinateur donné, l'ordinateur non-WINS envoie des paquets de requête de nom (sous la forme de messages de diffusion) sur le sous-réseau local (ce message de diffusion ne peut pas être retransmis par les routeurs IP). Si la résolution de noms locale échoue, le fichier LMHOSTS local est consulté. Ces processus sont suivis que l'ordinateur soit un ordinateur du réseau, une station de travail ou un autre périphérique.
Si WINS est activé sur le client - L'ordinateur commence par adresser sa requête au serveur WINS. En cas d'échec, il envoie des requêtes de recherche et d'inscription de nom (sous la forme de messages de diffusion) en suivant les étapes ci-après :
La requête de nom du client est tout d'abord envoyée au serveur WINS. Si le nom est trouvé dans la base de données WINS, le client peut alors établir une session sur la base du mappage d'adresse reçu du serveur WINS.
Si la recherche du serveur WINS est infructueuse et si l'ordinateur client est configuré en tant que H-nud, l'ordinateur client envoie des paquets de requête de recherche de nom (sous la forme de messages de diffusion) de la même manière qu'un ordinateur non-configuré pour utiliser WINS.
Enfin, si cette autre méthode échoue, le fichier LMHOSTS local est contrôlé (la recherche englobe également tous les fichiers LMHOSTS centralisés auxquels il est fait référence dans les déclarations #INCLUDE du fichier local).
Les serveurs WINS acceptent et répondent aux recherches de noms UDP (User Datagram Protocol). Tout mappage nom / adresse IP enregistré avec un serveur WINS peut être fourni de manière fiable en tant que réponse à une requête de nom. Toutefois, la présence d'un mappage dans la base de données ne garantit pas que le périphérique correspondant fonctionne, elle indique simplement qu'un ordinateur utilisait cette adresse IP et qu'il s'agit d'un mappage couramment valide.
L'inscription des noms garantit l'unicité du nom d'ordinateur NetBIOS et de l'adresse IP affectés à un périphérique donné.
Si WINS est activé sur le client - La requête d'inscription de nom est envoyée directement au serveur WINS pour être ajoutée à la base de données. Un serveur WINS accepte ou rejette l'inscription d'un nom d'ordinateur selon le contenu courant de sa base de données, comme suit :
Si la base de données contient une adresse différente pour le nom en question, WINS challenge l'entrée courante pour déterminer si le périphérique correspondant demande toujours à utiliser ce nom.
Si un autre périphérique utilise le nom, WINS rejette la requête d'inscription du nouveau nom.
Sinon, WINS accepte l'entrée et l'ajoute à sa base de données locale avec une date d'expiration, un numéro de version unique croissant, et d'autres informations.
Si WINS n'est pas activé sur le client - Pour qu'un ordinateur qui n'est pas configuré pour utiliser WINS puisse s'inscrire, un paquet de requête indiquant son nom d'ordinateur NetBIOS et son adresse IP est diffusé dans le réseau local. Tout périphérique du réseau qui utilisait ce nom au préalable challenge l'inscription de nom (avec une réponse d'inscription négative), ce qui donne une erreur pour l'ordinateur qui a essayé d'enregistrer le nom dupliqué. Si la requête d'inscription de nom reste non-challengée pendant une période de temps donnée, l'ordinateur demandeur adopte nom et adresse.
Après qu'un ordinateur non-configuré pour utiliser WINS a demandé à utiliser un nom, il doit challenger les tentatives d'inscription de noms dupliqués (avec une réponse d'inscription de nom négative) et répondre de manière positive aux requêtes de noms ayant pour objet son nom (avec une réponse de recherche positive). La réponse de recherche de nom positive contient l'adresse IP de l'ordinateur de sorte à permettre aux deux systèmes d'établir une session.
Lorsqu'un ordinateur arrête d'utiliser un nom donné, il ne challenge plus les requêtes d'inscription relatives à ce nom. C'est ce que l'on appelle relâcher un nom.
Si WINS est activé sur le client - Lorsqu'un ordinateur est arrêté dans les règles, il relâche son nom et le serveur WINS marque l'entrée correspondante de la base de données comme relâchée. Si l'entrée reste relâchée pendant une certaine période de temps, le serveur WINS la marque comme éteinte, met à jour le numéro de version et signale le changement aux autres serveurs WINS.
Si un nom est marqué relâché sur un serveur WINS et qu'une nouvelle requête d'inscription utilisant ce nom avec une autre adresse arrive, le serveur WINS peut immédiatement donner ce nom au client qui le demande car il sait que l'ancien client n'utilise plus ce nom. Ceci peut arriver, par exemple, lorsqu'un portable configuré pour utiliser DHCP change de sous-réseau.
Si l'ordinateur a relâché son nom lors d'un arrêt effectué dans les règles, le serveur WINS ne challenge pas le nom lorsque l'ordinateur est reconnecté. Si en revanche l'arrêt n'a pas été effectué dans les règles, une inscription relative au même nom mais avec une nouvelle adresse fait que le serveur WINS challenge l'inscription. Le challenge échoue et l'inscription réussit car l'ordinateur n'a plus l'ancienne adresse.
Si WINS n'est pas activé sur le client - Lorsqu'un ordinateur non-configuré pour utiliser WINS relâche un nom, une diffusion est effectuée pour permettre à tous les systèmes du réseau qui avaient mis le nom en cache de le supprimer. Lorsqu'ils reçoivent des paquets de requête de nom indiquant le nom supprimé, ces ordinateurs ignorent tout simplement la requête ce qui permet aux ordinateurs du réseau d'acquérir le nom relâché.
Pour que les ordinateurs non-configurés pour utiliser WINS soient accessibles depuis d'autres sous-réseaux, leurs noms doivent être ajoutés en tant qu'entrées statiques à la base de données WINS ou aux fichiers LMHOSTS du ou des systèmes distants car sinon ils ne répondront qu'aux recherches de noms qui proviennent de leur sous-réseau local.
Il est régulièrement demandé aux ordinateurs clients de renouveler leurs inscriptions de noms NetBIOS auprès du serveur WINS. Lorsqu'un ordinateur client s'inscrit pour la première fois à un serveur WINS, ce serveur WINS lui renvoie un message qui lui indique quand il devra renouveler son inscription, comme suit :
L'intervalle de renouvellement par défaut pour les entrées de la base de données WINS est de six jours.
Les clients WINS doivent s'inscrire et opérer un rafraîchissement tous les trois jours.
Les serveurs WINS primaires et secondaires devraient avoir le même intervalle de renouvellement.
Une entrée dite statique n'expire jamais.
Si une entrée appartient au serveur WINS local, le nom est relâché à l'heure spécifiée à moins que le client ne l'ait renouvelé entre-temps. Si une entrée appartient à un autre serveur WINS, elle est revalidée à l'heure spécifiée. Si une entrée n'existe pas dans la base de données du serveur WINS qui en est le propriétaire, elle est supprimée de la base de données WINS locale. Une requête de renouvellement de nom est traitée comme l'inscription d'un nouveau nom.
Mal régler l'intervalle de renouvellement peut avoir des effets négatifs sur les performances du système et du réseau.