Informations détaillées concernant l'implémentation de Microsoft ...

32Kbytes = 0x7fff = 111 1111 1111 1111 ...... Cependant, au niveau de la pile TCP/IP, le périphérique SMB est lié à ADDR_ANY et il utilise l'espace de noms ...


un extrait du document



 HYPERLINK \l "Comp" Composants fondamentaux de la pile de protocole et interface TDI
 HYPERLINK \l "Inter_Appli" Les interfaces d’application réseau
 HYPERLINK \l "Serv_Client" Services client essentiels et composants de pile
 HYPERLINK \l "Outil" Outils et stratégies de dépannage TCP/IP
 HYPERLINK \l "Resume" Résumé
 HYPERLINK \l "A" Annexe A : paramètres de configuration TCP/IP
 HYPERLINK \l "B" Annexe B : paramètres de configuration de NetBIOS sur TCP/IP
 HYPERLINK \l "C" Annexe C : paramètres de registre Windows Sockets et DNS
 HYPERLINK \l "D" Annexe D : optimisation de la réponse TCP/IP à une attaque
Introduction
Microsoft a adopté le protocole TCP/IP comme protocole de transport réseau stratégique d’entreprise pour ses plates-formes. Au début des années 90, Microsoft a lancé un projet ambitieux qui visait à créer des services et une pile TCP/IP, destinés à améliorer considérablement la flexibilité de la gestion réseau Microsoft. Avec la sortie du système d’exploitation Microsoft® Windows NT® 3.5, Microsoft a introduit une pile TCP/IP totalement réécrite. Cette nouvelle pile a été conçue pour intégrer les nombreux progrès réalisés au niveau des performances et de la simplicité d’administration obtenus au cours des dix dernières années. La pile est l’implémentation 32 bits portable hautes performances du protocole standard TCP/IP. Elle a évolué avec chaque version de Windows NT afin d’intégrer de nouvelles fonctionnalités et de nouveaux services qui améliorent ses performances et sa fiabilité.
Les objectifs poursuivis lors du développement de la pile TCP/IP étaient les suivants :
conformité aux normes ;
interopérabilité ;
portabilité ;
évolutivité ;
performances élevées ;
polyvalence ;
mise au point automatique ;
simplicité d’administration ;
simplicité d’adaptation ;
Ce livre décrit en détail l’implémentation de Windows 2000 et constitue un complément aux manuels TCP/IP de Microsoft Windows 2000. Il décrit l’implémentation de Microsoft TCP/IP de manière ascendante et est destiné aux ingénieurs réseau et aux professionnels du support technique qui sont déjà familiarisés avec TCP/IP.
Ce livre utilise des traces réseau afin d’illustrer les concepts. Ces analyses ont été recueillies et mises en forme à l’aide du Moniteur réseau Microsoft version 2.0, un outil logiciel d’analyse et de suivi de protocole inclus dans le produit Microsoft Systems Management Server. Windows 2000 Server inclut une version du Moniteur réseau sans certaines des fonctionnalités. La différence fondamentale entre cette version et celle de Systems Management Server est que la version limitée peut uniquement capturer les trames qui sont normalement vues par l’ordinateur sur lequel elle est installée, et non toutes les trames qui passent sur le réseau (ce qui nécessite que l’adaptateur soit configuré en mode de proximité). Il ne prend pas non plus en charge la connexion à des agents distants du Moniteur réseau.
Fonctionnalités
Présentation
La suite TCP/IP pour Windows 2000 a été conçue afin de simplifier l’intégration des systèmes Microsoft au sein de réseaux d’entreprise, gouvernementaux et publics à grande échelle et de permettre l’exploitation en toute sécurité de ces réseaux. Windows 2000 est un système d’exploitation prêt pour Internet.
Prise en charge des fonctions standard
Windows 2000 prend en charge les fonctions standard suivantes :
possibilité de se connecter à de multiples cartes réseau avec différents types de supports ;
multi-hébergement physique et logique ;
fonction interne de routage IP ;
IGMP (Internet Group Management Protocol) version 2 (Multidiffusion IP) ;
détection des doublons d’adresse IP ;
passerelles par défaut multiples ;
détection de passerelle inactive ;
recherche automatique de l’unité de parcours à transmission maximale (PMTU  : Path Maximum Transmission Unit) ;
sécurité IP (IPSec) ;
qualité de service (QoS) ;
services ATM ;
réseaux privés virtuels (VPN) ;
protocole de tunneling de couche 2 (L2TP).
Amélioration des performances
Windows 2000 présente en outre les améliorations suivantes en termes de performances :
mise au point de la pile du protocole, comprenant l’agrandissement de la taille par défaut des fenêtres et de nouveaux algorithmes de traitement des liaisons à délai élevé, ce qui augmente le débit
fenêtres pouvant être dimensionnées par l’intermédiaire de TCP (pris en charge par la RFC 1323)
accusés de réception sélectifs (SACK)
renvoi rapide TCP
amélioration du calcul du temps de transmission aller-retour (RTT, Round Trip Time) et du délai d’attente de retransmission (RTO, Retransmission Timeout)
amélioration des performances pour la gestion d’un grand nombre de connexions
mécanismes matériels de déchargement des tâches
Services disponibles
La gamme des systèmes d’exploitation Windows 2000 Server assure les services suivants :
client et service DHCP (Dynamic Host Configuration Protocol) ;
WINS (Windows Internet Name Service), un client et serveur de nom NetBIOS ;
DNS dynamique (DDNS) ;
prise en charge de l’accès à distance (PPP/SLIP) ;
protocole de tunneling point-à-point (PPTP) et protocole de tunneling de couche 2 (L2TP), utilisé pour les réseaux privés virtuels distants ;
impression réseau TCP/IP (lpr/lpd) ;
agent SNMP ;
interface NetBIOS ;
interface Windows Sockets version 2 (Winsock2) ;
prise en charge des appels de procédure à distance (RPC, Remote Procedure Call) ;
Network Dynamic Data Exchange (NetDDE) ;
prise en charge de la navigation sur réseau étendu (WAN) ;
Services Microsoft IIS (Internet Information Services) hautes performances ;
utilitaires de connexion TCP/IP essentielles, comportant : finger, ftp, rcp, rexec, rsh, telnet, et tftp ;
logiciel serveur pour protocoles réseau simples, comportant : Générateur de caractères, Heure du jour, Ignorer, Écho et Citation du jour ;
Outils de diagnostic et de gestion TCP/IP, comportant : arp, ipconfig, nbtstat, netstat, ping, pathping, route, nslookup et tracert ;
Table de comparaison des fonctions des différentes versions de Microsoft TCP/IP
Le tableau ci-dessous, qui sert de référence, dresse la liste des fonctions ainsi que des versions des systèmes d’exploitation dans lesquelles elles sont présentes. Les fonctions sont décrites plus en détail tout au long de ce document.
Tableau 1 : N=Non, O=Oui et D=Désactivé par défaut
Produit
Windows 95
Winsock 2 pour Windows 95
Windows 98
Windows 98 SE
Service Pack 5 de Windows NT 4.0
Windows 2000

Détection de passerelle inactive
N
N
O
O
O
O

Retransmission rapide VJ
N
O
O
O
O
O

AutoNet
N
N
O
O
N
O

SACK (accusé de réception sélectif)
N
O
O
O
N
O

Prise en charge de trame géante
O
O
O
O
O
O

Grandes fenêtres
N
D
D
D
N
D

DNS dynamique
N
N
N
N
N
O

Détection de support
N
N
N
N
N
O

Mode d’éveil par appel réseau (Wake-On-LAN)
N
N
N
N
N
O

Transmission IP
N
N
N
D
D
D

NAT
N
N
N
D
N
D

Kerberos v5
N
N
N
N
N
O

IPSec (Sécurité IP)
N
N
N
N
N
O

PPTP
N
N
O
O
O
O

L2TP
N
N
N
N
N
O

API de l’application d’assistance IP
N
N
O
O
O
O

API Winsock2
N
O
O
O
O
O

API GQoS
N
N
O
O
N
O

API de filtrage IP
N
N
N
N
N
O

Points de raccordement du pare-feu
N
N
N
N
N
O

Planificateur de paquets
N
N
N
N
N
D

RSVP
N
N
O
O
N
O

ISSLO
N
N
O
O
N
O

Filtrage cheval de Troie
N
N
N
N
D
D

Blocage de routage src
N
N
N
O
O
O

Recherche de routeurs ICMP
N
O
O
O
D
D

TCP de déchargement
N
N
N
N
N
O

IPSec de déchargement
N
N
N
N
N
O

RFC Internet prises en charge par Microsoft Windows 2000 TCP/IP
Les requêtes de commentaires (RFC, Requests for Comments) sont constituées d’une série en évolution constante de rapports, de propositions et de normes de protocole, utilisés par la communauté de l’Internet. Il est possible d’utiliser FTP pour obtenir les RFC à partir des sites suivants :
nis.nsf.net ;
nisc.jvnc.net ;
wuarchive.wustl.edu ;
src.doc.ic.ac.uk ;
normos.org.
Tableau 2 : les RFC prises en charge par cette version de Microsoft TCP/IP
RFC
Titre

768
UDP (User Datagram Protocol)

783
TFTP (Trivial File Transfer Protocol)

791
IP (Protocole Internet)

792
ICMP (Internet Control Message Protocol)

793
TCP (Transmission Control Protocol)

816
Localisation des erreurs et récupération

826
ARP (Address Resolution Protocol)

854
TELNET (protocole Telnet)

862
ECHO (protocole Écho)

863
DISCARD (protocole Ignorer)

864
CHARGEN (protocole Générateur de caractères)

865
QUOTE (protocole Citation du jour)

867
DAYTIME (protocole Heure du jour)

894
IP sur Ethernet

919, 922
Datagrammes de diffusion IP (diffusion avec sous-réseaux)

950
Procédure Internet standard de mise en sous-réseau

959
FTP (File Transfer Protocol)

1001, 1002
Protocoles de service NetBIOS

1065, 1035, 1123, 1886
Nom de domaine (DNS)

1042
Norme de transmission des datagrammes IP sur les réseaux IEEE 802

1055
Transmission d’adresses IP sur lignes sérielles (IP-SLIP)

1112
IGMP (Internet Group Management Protocol)

1122, 1123
Configuration hôte requise (communications et applications)

1144
Compression des en-têtes TCP/IP pour les liaisons sérielles à vitesse réduite

1157
SNMP (Simple Network Management Protocol)

1179
Protocole démon d’imprimante en ligne

1188
IP sur FDDI

1191
Recherche du parcours MTU

1201
IP sur ARCNET

1256
Messages de recherche de routeurs ICMP

1323
Extensions TCP pour hautes performances (voir le paramètre de registre TCP1323opts)

1332
IPCP (PPP Internet Protocol Control Protocol)

1518
Architecture pour l’allocation des adresses IP avec CIDR

1519
CIDR (Classless Inter-Domain Routing) : une stratégie d’attribution et d’agrégation d’adresses

1534
Interfonctionnement entre DHCP et BOOTP

1542
Clarifications et extensions pour le protocole Bootstrap

1552
IPXCP (PPP Internetwork Packet Exchange Control Protocol)

1661
PPP (protocole point-à-point)

1662
PPP dans les trames de type HDLC

1748
MIB IEEE 802.5 avec SMIv2

1749
MIB de routage de source de station IEEE 802.5 avec SMIv2

1812
Spécifications pour les routeurs IP version 4

1828
Authentification IP à l’aide de MD5 par clé

1829
Transformation ESP DES-CBC

1851
Transformation ESP Triple DES-CBC

1852
Authentification IP à l’aide de SHA par clé

1886
Extensions DNS pour la prise en charge d’IP version 6

1994
Protocole CHAP (PPP Challenge Handshake Authentication Protocol)

1995
Transfert incrémentiel de zones dans DNS

1996
Mécanisme pour une notification DNS rapide des modifications de zones

2018
Options d’accusé de réception sélectif TCP

2085
Authentification IP HMAC-MD5 (HMAC-MD5 IP Authentication with Replay Prevention)

2104
HMAC : algorithme de hachage à clé pour authentification des messages

2131
DHCP (Dynamic Host Configuration Protocol)

2136
DNS UPDATE (mises à jour dynamiques dans DNS)

2181
Clarifications apportées à la spécification DNS

2205
RSVP (Resource ReSerVation Protocol) : spécification fonctionnelle de la version 1

2236
IGMP (Internet Group Management Protocol), version 2

2308
DNS NCACHE (mise en cache négative des requêtes DNS)

2401
Architecture de sécurité pour le protocole Internet

2401
Architecture de sécurité pour le protocole Internet

2402
En-tête d’authentification IP

2406
ESP (IP Encapsulating Security Payload)

2581
Gestion TCP de l’encombrement

Modèle d’architecture
Vue d’ensemble
La suite Microsoft TCP/IP contient des éléments de protocole fondamentaux, des services et leurs interfaces. Les interfaces TDI (Transport Driver Interface) et NDIS (Network Device Interface Specification) sont publiques et leurs spécifications sont mises à disposition par Microsoft aux adresses suivantes :  HYPERLINK "http://www.microsoft.com/france/technet/Produits/Win2000S/info/info.asp?mar=/france/technet/Produits/Win2000S/info/tcpip2k_8.html" \l "14" 1  HYPERLINK "http://www.microsoft.com/france/" http://www.microsoft.com/france et  HYPERLINK "ftp://ftp.microsoft.com/" ftp://ftp.microsoft.com. Il existe en outre un certain nombre d’interfaces de niveau supérieur disponibles pour les applications en mode utilisateur. Les plus communément utilisées sont Windows Sockets, les appels de procédure à distance (RPC) et NetBIOS.

Figure 1 : le modèle de réseau TCP/IP Windows 2000
Plug and Play
Windows 2000 introduit la prise en charge de Plug and Play, qui présente les fonctionnalités suivantes :
Reconnaissance automatique et dynamique du matériel installé. Ceci inclut l’installation initiale du système, la reconnaissance des changements statiques de matériel qui peuvent avoir lieu entre deux amorçages et la réponse aux événements matériels en cours d’exécution, tels que l’installation ou l’extraction et l’insertion ou la suppression de cartes.
Configuration efficace du matériel en réponse à sa reconnaissance automatique et dynamique, comportant l’activation dynamique du matériel, l’arbitrage des ressources, le chargement des pilotes de périphérique, le montage des unités, etc.
Prise en charge de types de bus particuliers et d’autres normes matérielles qui facilitent la reconnaissance dynamique et automatique du matériel, ainsi qu’une configuration efficace du matériel, notamment Plug and Play ISA, PCI, PCMCIA, PC Card/CardBus, USB et 1394. Ceci comprend également la promulgation de normes et de recommandations sur le comportement du matériel.
Une structure Plug and Play ordonnée permettant le fonctionnement de programmes d’écriture de pilotes. Il s’agit d’une infrastructure comportant des éléments tels que les interfaces d’informations (INF) sur l’unité, les API, les notifications en mode noyau, les interfaces d’exécution, etc.
Des mécanismes qui permettent au code et aux applications en mode utilisateur de prendre connaissance des changements d’environnement matériel afin de prendre les mesures appropriées.
Le fonctionnement Plug and Play ne requiert pas nécessairement un matériel Plug and Play. Dans la mesure du possible, les deux premiers points ci-dessus s’appliquent au matériel d’origine ainsi qu’au matériel Plug and Play. Dans certains cas, l’énumération ordonnée des périphériques d’origine n’est pas possible en raison des méthodes de détection qui sont destructives ou qui nécessitent du temps.
L’impact principal de la prise en charge Plug and Play sur les piles du protocole est que les interfaces réseau sont susceptibles d’être extraites et introduites à tout moment. La pile TCP/IP de Windows 2000 et les composants associés ont été adaptés pour permettre la prise en charge Plug and Play.
L’interface NDIS et les couches inférieures
Les protocoles de gestion réseau Microsoft utilisent la spécification NDIS (Network Device Interface Specification) pour communiquer avec les pilotes de carte réseau. La plupart des fonctions de la couche de liaison du modèle OSI sont implémentées dans la pile du protocole. De cette manière, le développement des pilotes de carte réseau est grandement simplifié.
NDIS (Network Driver Interface Specification) versions 3.1 à 5.0
NDIS 3.1 prend en charge les services fondamentaux qui permettent à un module de protocole d’envoyer des paquets bruts sur un périphérique réseau et d’être également averti des paquets entrants reçus par un périphérique réseau.
NDIS 4.0 présente les fonctions supplémentaires suivantes par rapport à NDIS 3.1 :
Prise en charge des données hors-bande (requis pour Broadcast PC).
Extension de support pour réseau étendu sans fil.
Envoi et réception de paquets à haute vitesse (une amélioration significative des performances).
Extension de support IrDa rapide.
détection du support (nécessaire pour l’obtention du logo Conçu pour Windows dans le Guide de conception du matériel PC versions 97 et ultérieures). La pile TCP/IP de Microsoft Windows 2000 utilise les informations de détection de support ; ces informations sont décrites dans la section « Configuration automatique du client » de ce livre blanc.
Tous les filtres de paquets locaux (empêchent le Moniteur réseau de monopoliser le processeur)
De nombreuses nouvelles fonctions du système NDIS (nécessaires à la compatibilité binaire de miniports dans Windows 95, Windows 98, Windows NT et Windows 2000)
NDIS 5.0 comporte toutes les fonctions définies dans NDIS 4.0 ainsi que les extensions suivantes :
Gestion NDIS de l’alimentation (requise pour la gestion de l’alimentation réseau et la fonction d’éveil réseau)
Plug and Play (NDIS pour Windows 95 prenait déjà en charge la fonction Plug and Play ; ce changement s’applique par conséquent uniquement aux pilotes de réseau Windows 2000.)
Prise en charge de WMI (Windows Management Instrumentation), permettant l’instrumentation compatible WBEM (Web-based Enterprise Management) des miniports NDIS et des cartes correspondantes.
Prise en charge d’un format INF unique pour tous les systèmes d’exploitation Windows. Le nouveau format INF est basé sur le format INF de Windows 98.
Miniport désérialisé pour améliorer les performances.
Mécanismes de déchargement de tâches, tels que le total de contrôle UDP et TCP et la transmission rapide de paquets (Fast Packet Forwarding).
Extension du support de diffusion (requis par les services de diffusion pour Windows).
NDIS orienté connexion (requis pour la prise en charge du mode de transfert asynchrone [ATM], d’ADSL [Asymmetric Digital Subscriber Line] et de WDM-CSA [Windows Driver Model–Connection Streaming Architecture].
Prise en charge de QoS (Quality of Service).
Prise en charge de pilote intermédiaire (requise pour Broadcast PC, les réseaux locaux virtuels, la planification de paquets pour QoS et la prise en charge NDIS des périphériques réseau IEEE 1394).
NDIS peut couper l’alimentation des cartes réseau lorsque le système demande un changement de niveau de l’alimentation. Tant l’utilisateur que le système peuvent émettre cette requête. L’utilisateur peut par exemple mettre l’ordinateur en mode veille ou le système peut demander un changement de niveau d’alimentation en raison de l’inactivité de la souris ou du clavier. En outre, la déconnexion du câble réseau peut initier une demande de mise hors tension si la carte d’interface réseau (NIC) permet la prise en charge de cette fonction. Dans ce cas, le système attendra pendant un intervalle de temps à déterminer avant de mettre la carte réseau hors tension, étant donné que la déconnexion peut être due à des changements de câblage temporaires sur le réseau plutôt qu’à la déconnexion d’un câble du périphérique réseau lui-même.
La stratégie de gestion de l’alimentation NDIS est basée sur l’absence d’activité réseau. Cela signifie que tous les autres composants réseau doivent être d’accord avec la requête pour que la carte réseau puisse être mise hors tension. Dans le cas de sessions actives quelconques ou de fichiers ouverts sur le réseau, la demande de mise hors tension peut être refusée par l’ensemble ou par un seul des composants impliqués.
L’ordinateur peut également sortir d’un état de faible alimentation, en fonction d’événements qui se produisent sur le réseau. Un signal de réveil peut être provoqué par :
la détection d’un changement de l’état de la liaison réseau (par exemple, la reconnexion d’un câble) ;
la réception d’une trame de réveil réseau ;
la réception d’un paquet magique (Magic Packet). Pour en savoir plus, consultez le  HYPERLINK "http://www.microsoft.com/france/" \t "_blank" site Microsoft.
Lors de l’initialisation du pilote, NDIS interroge la capacité du miniport à déterminer s’il prend en charge des éléments tels que les paquets magiques, la correspondance au modèle ou les réveils pour changement de liaison, ainsi qu’à déterminer la condition d’alimentation minimale requise par chaque méthode de réveil. Les protocoles réseau demandent ensuite les capacités du miniport. Au moment de l’exécution, le protocole établit la stratégie de réveil, à l’aide d’identificateurs d’objets (OID), tels que Enable Wakeup (Autoriser réveil), Set Packet Pattern (Définir modèle de paquet) et Remove Packet Pattern (Supprimer modèle de paquet).
Actuellement, Microsoft TCP/IP est la seule pile de protocole Microsoft qui permette la gestion d’alimentation réseau. À l’initialisation du miniport, la pile enregistre les modèles de paquets suivants :
paquet IP dirigé ;
diffusion ARP pour l’adresse IP de la station ;
diffusion NetBIOS à l’aide de TCP/IP pour le nom d’ordinateur attribué à la station.
Des pilotes compatibles NDIS sont disponibles pour un large choix de cartes réseau de nombreux fabricants. L’interface NDIS permet la liaison entre plusieurs protocoles de différents types et un pilote réseau unique ; elle permet également la liaison entre un protocole unique et plusieurs pilotes réseau. La spécification NDIS décrit le mécanisme de multiplexage utilisé pour exécuter cette fonction. Les liaisons peuvent être visualisées ou modifiées à partir du dossier Windows Network Connections.
Windows 2000 TCP/IP permet la prise en charge de :
Ethernet (et 802.3 SNAP)
FDDI
Token Ring (802.5)
ATM (LANE et CLIP)
ARCnet
Liaisons dédiées de réseau étendu (WAN), telles que DDS (Dataphone Digital Service) et T-carrier (Fractional T1, T2 et T3)
Services de réseau étendu commuté permanent ou à distance, tels que les téléphones analogiques, les réseaux RNIS et xDSL
Services de réseau étendu à commutation de paquets, tels que X.25, Frame Relay et ATM
Les objectifs de ces nouvelles fonctionnalités sont les suivants :
faciliter l’utilisation et réduire le coût total de propriété (TCO) ;
améliorer les performances ;
autoriser de nouveaux types de supports, de services et d’applications ;
augmenter la souplesse de l’architecture des pilotes.
Fonctionnalité de la couche liaison
La fonctionnalité de la couche liaison est répartie entre la combinaison pilote/carte d’interface réseau et le pilote de pile de protocole de bas niveau. Les filtres de la combinaison pilote/carte réseau sont basés sur l’adresse du contrôle d’accès du support de destination (MAC) de chaque trame.
Normalement, le matériel filtre toutes les trames entrantes, à l’exception de celles contenant une des adresses de destination suivantes :
l’adresse de la carte ;
l’adresse de diffusion constituée uniquement de 1 (FF-FF-FF-FF-FF-FF) ;
les adresses de multidiffusion qui intéressent un pilote de protocole sur l’hôte, à l’aide d’une primitive NDIS.
Cette première décision de filtrage étant effectuée par le matériel, la carte réseau ignore toutes les trames qui ne répondent pas aux critères de filtrage sans nécessiter de traitement par le processeur. Toutes les trames (y compris les diffusions) qui passent le filtre matériel sont ensuite passées au pilote de la carte réseau par le biais d’une interruption matérielle. HYPERLINK "http://www.microsoft.com/france/technet/Produits/Win2000S/info/info.asp?mar=/france/technet/Produits/Win2000S/info/tcpip2k_8.html" \l "15" 2Le pilote réseau est un logiciel qui s’exécute sur l’ordinateur ; par conséquent, toutes les trames qui arrivent jusque là nécessitent un certain temps processeur pour être traitées. Le pilote réseau fait passer la trame de la carte d’interface à la mémoire du système, puis la carte est passée au(x) pilote(s) de transport approprié(s). La spécification NDIS 5.0 offre plus de détails à propos de ce processus.
Les trames sont passées à tous les pilotes de transport liés dans l’ordre des liaisons.
Lors du passage d’un paquet à travers le réseau ou une série de réseaux, l’adresse du contrôle d’accès du support (MAC) source correspond toujours à celle de la carte réseau qui a placé le paquet sur le support, tandis que l’adresse MAC du support de destination correspond à celle de la carte réseau qui devra l’extraire du support. En d’autres termes, dans un réseau à routage, les adresses MAC des supports source et de destination changent à chaque passage par un périphérique de couche réseau (routeur ou commutateur de couche 3).
Unité à transmission maximale (MTU)
Chaque type de support présente une taille de trame maximale qui ne peut être dépassée. La couche liaison est responsable de la recherche de cette unité MTU et de son signalement aux protocoles susmentionnés. La pile de protocole peut interroger les pilotes NDOS pour connaître l’unité MTU locale. La connaissance de l’unité MTU d’une interface est utilisée par les protocoles des couches supérieures, tels que TCP, qui optimisent automatiquement la taille des paquets destinés à chaque support. Pour en savoir plus, consultez l’exposé sur la recherche de l’unité de parcours à transmission maximale TCP (PMTU) dans la section « TCP (Transmission Control Protocol) » de ce livre.
Si un pilote réseau (tel qu’un pilote ATM) utilise un mode d’émulation LAN, il peut signaler qu’il possède une MTU supérieure à celle prévue pour ce type de support. Par exemple, il peut émuler Ethernet, mais indiquer une MTU de 9180 octets. Windows NT et Windows 2000 acceptent et utilisent la taille MTU indiquée par la carte, même si elle dépasse la MTU normale pour un type de support donné.
Parfois, la MTU signalée à la pile de protocole peut être inférieure à ce qu’on pourrait prévoir pour un type de support donné. Par exemple, l’utilisation de la norme 802.1p pour QoS sur Ethernet réduit souvent (cela dépend du matériel) de 4 octets la MTU signalée, en raison de la présence d’en-têtes de couche de liaison plus larges.
Composants fondamentaux de la pile de protocole et interface TDI
Les composants fondamentaux de la pile de protocole sont ceux indiqués entre les interfaces TDI et NDIS à la figure 1. Ils sont implémentés dans le pilote Tcpip.sys de Windows 2000. Il est possible d’accéder à la pile Microsoft à travers les interfaces TDI et NDIS. L’interface Winsock2 permet également de pouvoir accéder directement à la pile de protocole.
ARP (Address Resolution Protocol)
Le protocole ARP effectue la résolution de l’adresse IP vers l’adresse MAC pour tous les paquets sortants. Étant donné que chaque datagramme IP sortant est encapsulé dans une trame, les adresses MAC source et de destination doivent être ajoutées. La détermination de l’adresse MAC de destination pour chaque trame est exécutée par le protocole ARP.
ARP compare l’adresse IP de destination de tous les datagrammes IP sortants au cache ARP de la carte réseau par laquelle la trame sera transmise. En présence d’une entrée correspondante, l’adresse MAC est extraite du cache. Dans le cas contraire, ARP diffuse un paquet de requête ARP sur le sous-réseau local afin de demander au propriétaire de l’adresse IP en question de répondre avec son adresse MAC. Si le paquet passe à travers un routeur, ARP procède à la résolution de l’adresse MAC pour le routeur du tronçon suivant plutôt que pour l’hôte de destination finale. Lors de la réception d’une réponse ARP, le cache ARP est mis à jour sur la base de la nouvelle information qui est utilisée pour adresser le paquet à la couche de liaison.
Cache ARP
Vous pouvez utiliser l’utilitaire ARP pour visualiser, ajouter ou supprimer des entrées dans le cache ARP. Des exemples sont présentés ci-dessous. Les entrées ajoutées manuellement sont statiques et ne sont pas automatiquement supprimées du cache, à l’inverse des entrées dynamiques (consultez la section « Vieillissement du cache ARP » pour en savoir plus).
La commande arp peut être utilisée pour visualiser le cache ARP, de la manière indiquée ci-dessous :
C:\>arp –a Interface: 199.199.40.123 Internet Address Physical Address Type 199.199.40.1 00-00-0c-1a-eb-c5 dynamic 199.199.40.124 00-dd-01-07-57-15 dynamic Interface: 10.57.8.190 Internet Address Physical Address Type 10.57.9.138 00-20-af-1d-2b-91 dynamic
L’ordinateur de cet exemple est multi-hébergement (il a plus d’une carte réseau) ; c’est la raison pour laquelle il y a un cache ARP distinct pour chaque interface.
Dans l’exemple suivant, la commande arp –s est utilisée pour ajouter une entrée statique au cache ARP utilisé par la deuxième interface pour l’hôte dont l’adresse IP est 10.57.10.32 et dont l’adresse réseau est 00608C0E6C6A :
C:\>arp -s 10.57.10.32 00-60-8c-0e-6c-6a 10.57.8.190 C:\>arp -a Interface: 199.199.40.123 Internet Address Physical Address Type 199.199.40.1 00-00-0c-1a-eb-c5 dynamic 199.199.40.124 00-dd-01-07-57-15 dynamic Interface: 10.57.8.190 Internet Address Physical Address Type 10.57.9.138 00-20-af-1d-2b-91 dynamic 10.57.10.32 00-60-8c-0e-6c-6a static
Vieillissement du cache ARP
Windows NT et Windows 2000 règlent automatiquement la taille du cache ARP afin de répondre aux besoins du système. Si une entrée n’est utilisée par aucun datagramme sortant pendant deux minutes, l’entrée est supprimée du cache ARP. Les entrées qui sont actuellement en cours de consultation sont supprimées du cache ARP après dix minutes. Les entrées ajoutées manuellement ne sont pas supprimées automatiquement du cache. Un nouveau paramètre de registre, ArpCacheLife, a été ajouté dans Windows NT 3.51 Service Pack 4 afin de permettre davantage de contrôle administratif sur le vieillissement. Ce paramètre est décrit à l’annexe A.
Utilisez la commande arp –d pour supprimer des entrées du cache, de la manière décrite ci-dessous :
C:\>arp -d 10.57.10.32 C:\>arp -a Interface: 199.199.40.123 Internet Address Physical Address Type 199.199.40.1 00-00-0c-1a-eb-c5 dynamic 199.199.40.124 00-dd-01-07-57-15 dynamic Interface: 10.57.8.190 Internet Address Physical Address Type 10.57.9.138 00-20-af-1d-2b-91 dynamic
ARP met en file d’attente un seul datagramme IP sortant pour une adresse de destination spécifiée, tandis que l’adresse IP est résolue en une adresse MAC. Si une application basée sur le protocole UDP (User Datagram Protocol) envoie des datagrammes IP multiples vers une adresse de destination unique sans aucun intervalle entre eux, certains des datagrammes peuvent être perdus si aucune entrée de cache ARP n’est déjà présente. Une application peut compenser cette situation en faisant appel à la routine iphlpapi.dll SendArp() pour établir une entrée de cache ARP avant d’envoyer le flux de paquets. Consultez le  HYPERLINK "http://msdn.microsoft.com/downloads/sdks/platform/platform.asp" Kit de développement logiciel de la plate-forme pour en savoir plus sur l’API de l’application d’assistance IP.
Protocole Internet (IP)
IP est la chambre de réception de la pile TCP/IP, où se font le tri et la livraison des paquets. Au niveau de cette couche, chaque paquet entrant ou sortant est appelé un datagramme. Chaque datagramme IP porte l’adresse IP source de l’expéditeur et l’adresse IP de destination du destinataire choisi. Contrairement aux adresses MAC, les adresses IP d’un datagramme restent identiques tout au long du séjour du paquet à travers un réseau d’interconnexion. Les fonctions de la couche IP sont décrites ci-dessous.
Routage
Le routage est une fonction fondamentale de IP. Les datagrammes sont envoyés vers IP à partir de UDP et TCP au-dessus, de la ou des cartes réseau ci-dessous. Chaque datagramme est étiqueté avec une adresse IP source et de destination. IP examine l’adresse de destination de chaque datagramme, la compare à une table de routage locale et décide de l’action à prendre. Il existe trois possibilités pour chaque datagramme :
Il peut être passé à une couche de protocole au-dessus de IP sur l’hôte local.
Il peut être transféré à l’aide de l’une des cartes réseau connectées localement.
Il peut être supprimé.
La table de routage conserve quatre types d’itinéraires différents. Ils sont répertoriés ci-dessous dans l’ordre de consultation appliqué lors de la recherche de correspondance :
hôte (un itinéraire vers une adresse IP de destination unique et spécifique) ;
sous-réseau (un itinéraire vers un sous-réseau) ;
réseau (un itinéraire vers un réseau complet) ;
par défaut (utilisé en l’absence de correspondance) ;
Pour déterminer un itinéraire unique à utiliser pour transférer un datagramme IP, le protocole IP utilise la procédure suivante :
Pour chaque itinéraire présent dans la table de routage, le protocole IP exécute un ET logique au niveau du bit entre l’adresse IP de destination et le masque de réseau. Il compare le résultat avec la destination réseau afin d’essayer de trouver une correspondance. S’ils correspondent, le protocole IP marque l’itinéraire de manière à indiquer qu’il correspond à l’adresse IP de destination.
Dans la liste des itinéraires correspondants, le protocole IP détermine l’itinéraire qui possède le plus de bits dans le masque de réseau. Il s’agit de l’itinéraire avec le plus grand nombre de bits correspondant à l’adresse IP de destination ; il constitue par conséquent l’itinéraire le plus spécifique pour le datagramme IP. Cette procédure est connue comme la procédure de recherche de l’itinéraire le plus court ou le plus long.
Si plusieurs itinéraires les plus courts sont trouvés, le protocole IP utilise celui correspondant à la métrique la plus faible. Si plusieurs itinéraires les plus courts avec les métriques les plus faibles sont trouvés, le protocole IP peut choisir d’utiliser un quelconque des itinéraires trouvés.
Grâce à la commande route print, vous pouvez visualiser la table de routage à partir de l’invite de commande, tel que décrit ci-dessous :
C:\>route print ========================================================================= Interface List 0x1 ........................... MS TCP Loopback interface 0x2 ...00 a0 24 e9 cf 45 ...... 3Com 3C90x Ethernet Adapter 0x3 ...00 53 45 00 00 00 ...... NDISWAN Miniport 0x4 ...00 53 45 00 00 00 ...... NDISWAN Miniport 0x5 ...00 53 45 00 00 00 ...... NDISWAN Miniport 0x6 ...00 53 45 00 00 00 ...... NDISWAN Miniport ========================================================================= ========================================================================= Active Routes: Network Destination Netmask Gateway Interface Metric 0.0.0.0 0.0.0.0 10.99.99.254 10.99.99.1 1 10.99.99.0 255.255.255.0 10.99.99.1 10.99.99.1 1 10.99.99.1 255.255.255.255 127.0.0.1 127.0.0.1 1 10.255.255.255 255.255.255.255 10.99.99.1 10.99.99.1 1 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1 224.0.0.0 224.0.0.0 10.99.99.1 10.99.99.1 1 255.255.255.255 255.255.255.255 10.99.99.1 10.99.99.1 1 Default Gateway: 10.99.99.254 ========================================================================= Persistent Routes: None
La table de routage illustrée ci-dessus concerne un ordinateur ayant l’adresse IP classe A 10.99.99.1, le masque de sous-réseau 255.255.255.0 et la passerelle par défaut 10.99.99.254. Elle contient les huit entrées suivantes :
La première entrée, à l’adresse 0.0.0.0, représente l’itinéraire par défaut.
La deuxième entrée représente le masque de sous-réseau 10.99.99.0, sur lequel se trouve l’ordinateur.
La troisième entrée, à l’adresse 10.99.99.1, est un itinéraire hôte pour l’hôte local. Elle détermine l’adresse de bouclage, ce qui a un sens, car un datagramme lié à l’hôte local doit être bouclé en interne.
La quatrième entrée représente l’adresse de diffusion du réseau.
La cinquième entrée représente l’adresse de bouclage, 127.0.0.0.
La sixième entrée sert à la multidiffusion IP qui sera traitée plus loin dans ce document.
La dernière entrée représente l’adresse de diffusion limite (comportant uniquement des 1).
La Passerelle par défaut représente la passerelle par défaut actuellement active. Il est utile de savoir si plusieurs passerelles par défaut sont configurées.
Sur cet hôte, lorsqu’un paquet est envoyé à l’adresse 10.99.99.40, l’itinéraire le plus proche correspond à l’itinéraire local de sous-réseau (10.99.99.0 avec le masque 255.255.255.0). Le paquet est envoyé par le biais de l’interface locale 10.99.99.1. Si un paquet est envoyé à l’adresse 10.200.1.1, l’itinéraire le plus proche correspond à l’itinéraire par défaut. Dans ce cas, le paquet est transmis à la passerelle par défaut.
Dans la plupart des cas, la table de routage est gérée automatiquement. Lors de l’initialisation d’un hôte, des entrées relatives aux réseaux locaux, au bouclage, à la multidiffusion et à la passerelle configurée par défaut sont ajoutées. Davantage d’itinéraires peuvent apparaître dans la table au fur et à mesure que la couche IP en apprend l’existence. Par exemple, la passerelle par défaut peut informer l’hôte de l’existence d’un meilleur itinéraire vers un réseau, un sous-réseau ou un hôte spécifique avec le protocole ICMP (expliqué plus loin dans ce livre blanc). Il est également possible d’ajouter des itinéraires manuellement à l’aide de la commande route ou avec un protocole de routage. Pour indiquer les itinéraires permanents, utilisez l’option -p (permanent) de la commande route. Les itinéraires permanents sont stockés dans le registre sous la clé de registre
HKEY_LOCAL_MACHINE \SYSTEM \CurrentControlSet \Services \Tcpip \Parameters \PersistentRoutes
Windows 2000 TCP/IP introduit une nouvelle option de configuration métrique pour les passerelles par défaut. Grâce à cette métrique, vous pouvez mieux contrôler, à tout instant, quelle est la passerelle par défaut actuellement active. La valeur par défaut de la métrique est 1 ; un itinéraire avec une valeur inférieure est préféré aux autres. Dans le cas des passerelles par défaut, l’ordinateur optera pour celle dont la valeur de la métrique est la plus faible, à moins qu’elle soit inactive ; dans ce cas, le mécanisme de détection d’inactivité des passerelles peut déclencher le basculement vers la passerelle par défaut suivante dans la liste (avec la métrique la plus faible). Les métriques des passerelles par défaut peuvent être définies dans la boîte de dialogue Propriétés TCP/IP avancés. Les serveurs DHCP fournissent une métrique de base et une liste de passerelles par défaut. Si un serveur DHCP fournit une valeur de base égale à 100 et une liste de trois passerelles par défaut, les passerelles seront respectivement configurées avec les métriques 100, 101 et 102. Une valeur de base fournie par un serveur DHCP ne s’applique pas aux passerelles par défaut configurées de manière statique.
La plupart des routeurs de systèmes autonomes (AS) se servent d’un protocole tel que RIP (Routing Information Protocol) ou OSPF (Open Shortest Path First) pour échanger les tables de routage. Ces protocoles sont pris en charge par Windows 2000 Server. Windows 2000 Professionnel inclut la prise en charge de RIP silencieux.
Par conséquent, les systèmes Windows n’agissent pas en tant que routeurs et ne transmettent pas les datagrammes IP entre interfaces. Toutefois, Windows 2000 Server inclut les services de routage et d’accès distant. Celui-ci peut être activé et configuré pour fournir tous les services de routage multi-protocole.
Pour administrer le service de routage et d’accès distant
Dans le menu Démarrer, pointez sur Programmes.
Pointez sur Outils d’administration, puis cliquez sur Routage et accès distant.
Lors de l’exécution de plusieurs sous-réseaux logiques sur le même réseau physique, utilisez la commande suivante pour ordonner au protocole IP de traiter tous les sous-réseaux en local et d’utiliser directement ARP pour la destination :
route add 0.0.0.0 MASK 0.0.0.0
Ainsi, les paquets destinés aux sous-réseaux non locaux sont directement transmis sur le média local au lieu d’être envoyés à un routeur. Par essence, la carte d’interface locale peut être désignée comme passerelle par défaut. Ceci peut être utile dans le cas où plusieurs réseaux de classe C sont exploités sur un seul réseau physique en absence de routeur vers le monde extérieur ou dans un environnement proxy-ARP.
Détection des doublons d’adresses IP
La détection des doublons d’adresse IP est une fonctionnalité importante. À la première initialisation de la pile ou lors de l’ajout d’une nouvelle adresse IP, des requêtes ARP gratuites sont diffusées aux adresses IP de l’hôte local. Le nombre d’ARP à envoyer est commandé par le paramètre de registre ArpRetryCount, qui est de 3 par défaut. Si un autre hôte répond à une quelconque de ces ARP, cela signifie que l’adresse IP est déjà utilisée. Dans ce cas, l’ordinateur Windows démarre encore, mais l’interface qui contient l’adresse fautive est désactivée, une entrée est générée dans le journal système et un message d’erreur s’affiche. Si l’hôte qui a émis l’adresse fautive est également un ordinateur Windows, une entrée est également générée dans le journal système et un message d’erreur s’affiche sur cet ordinateur. Pour réparer les éventuels dommages occasionnés sur les caches ARP des autres ordinateurs, l’ordinateur fautif rediffuse une autre ARP et rétablit les valeurs d’origine des caches ARP des autres ordinateurs.
Un ordinateur qui utilise un doublon d’adresse IP peut démarrer s’il n’est pas connecté au réseau, auquel cas aucun conflit n’est détecté. En revanche, s’il est ensuite connecté au réseau, la première fois qu’il envoie une requête ARP pour obtenir une autre adresse IP, tous les ordinateurs Windows NT présentant un conflit d’adresses détecteront ce conflit. L’ordinateur qui détecte le conflit affiche un message d’erreur et enregistre un événement détaillé dans le journal système. Un exemple d’entrée dans le journal des événements est illustré ci-après.
Le système a détecté un conflit sur l’adresse IP 199.199.40.123 avec le système ayant l’adresse réseau matérielle 00:DD:01:0F:7A:B5. Par conséquent, les opérations réseau sur ce système peuvent être perturbées.
Les clients sur lesquels DHCP est activé informent le serveur DHCP qu’un conflit d’adresse IP a été détecté et, au lieu d’invalider la pile, ils demandent au serveur DHCP de signaler l’adresse conflictuelle et de leur en donner une nouvelle. Cette fonctionnalité est couramment appelée traitement des refus DHCP.
Multi-hébergement
Quand un ordinateur est configuré avec plusieurs adresses IP, on l’appelle système multi-hôtes. Le multi-hébergement est pris en charge de trois manières différentes :
Plusieurs adresses IP par carte réseau
Pour ajouter des adresses pour une carte réseau, dans le menu Démarrer, pointez sur Paramètres, puis cliquez sur Connexions réseau et accès à distance. Cliquez avec le bouton droit de la souris sur Connexion au réseau local, puis cliquez sur Propriétés. Sélectionnez Protocole Internet (TCP/IP), cliquez sur Propriétés, puis sur Avancé. Dans la boîte de dialogue Paramètres TCP/IP avancés, cliquez sur Ajouter sous l’onglet Paramètres IP pour ajouter des adresses IP.
NetBIOS sur TCP/IP (NetBT) se lie à une seule adresse IP par carte réseau. Quand un enregistrement de nom NetBIOS est émis, une seule adresse IP est enregistrée par interface. L’enregistrement se fait sur la première adresse IP répertoriée dans l’interface utilisateur (UI).
Plusieurs cartes réseau par réseau physique. Les seules restrictions concernent le matériel.
Plusieurs réseaux et types de support. Les seules restrictions concernent le matériel et le support. Consultez la section intitulée « L’interface NDIS et les couches inférieures » pour connaître les types de support pris en charge.
Quand un datagramme IP est envoyé par un ordinateur multi-hôtes, il est transmis à la carte réseau avec le meilleur itinéraire apparent vers sa destination. Par conséquent, le datagramme peut contenir l’adresse IP source d’une des interfaces installées sur l’ordinateur multi-hôtes, même s’il a été placé sur le support par une autre carte réseau. L’adresse de contrôle de l’accès au support source (MAC) présente sur la trame correspond à celle de la carte réseau qui a effectivement transmis la trame au support et l’adresse IP source est celle émise par l’application qui l’envoie ; donc, l’adresse n’est pas nécessairement une des adresses IP associées à l’interface d’envoi définie dans l’interface utilisateur Connexions réseaux.
Quand un ordinateur multi-hôtes possède des cartes réseau liées à des réseaux indépendants (réseaux qui sont séparés les uns des autres, comme par exemple un réseau connecté par accès à distance et une connexion locale), il se peut que des problèmes de routage surviennent. Il est souvent nécessaire, dans cette situation, d’établir des itinéraires statiques vers des réseaux distants.
Quand vous devez configurer un ordinateur multi-hôtes sur deux réseaux séparés, la meilleure méthode consiste à placer la passerelle par défaut sur le réseau principal ou sur le plus grand et le moins connu. Ensuite, vous pouvez soit ajouter des itinéraires statiques, soit utiliser un protocole de routage pour assurer la connexion avec les hôtes placés sur le réseau plus petit ou mieux connu. Évitez de configurer une passerelle par défaut différente de chaque côté, car cela pourrait entraîner l’instabilité des réseaux et la perte de connexion.
Remarque Seule une passerelle par défaut peut être active par ordinateur à un instant donné.
Vous pouvez trouver plus d’informations sur l’enregistrement de noms, la résolution et le choix des cartes réseaux sur les datagrammes sortants avec les ordinateurs multi-hôtes dans les sections intitulées « TCP (Transmission Control Protocol) », « NetBios sur TCP/IP » et « Windows Sockets » de ce livre.
CIDR (Classless Interdomain Routing)
Le routage CIDR, décrit dans les RFC 1518 et 1519, supprime le concept de classe dans les processus de gestion et d’attribution des adresses IP. Au lieu d’attribuer les adresses dans des limites préfixées et bien connues, CIDR alloue les adresses définies par une adresse de départ et une plage ; ce mode d’allocation permet une gestion plus efficace de l’espace disponible. La plage définit la partie réseau de l’adresse. Par exemple, une attribution donnée à une société client par un ISP pourrait être 10.57.1.128 /25. Cela signifie qu’un bloc de 128 adresses est destiné à usage local, les 25 bits plus significatifs étant la partie d’identification réseau de l’adresse. Une allocation traditionnelle sur classe entière serait .0.0.0 /8, .0.0 /16 ou bien ...0 /24. Au fur et à mesure que ces adresses sont récupérées, elles sont réallouées à l’aide des techniques CIDR de routage sans classes.
Étant donné la base installée de systèmes classe entière, l’implémentation initiale du routage CDIR consistait à construire une chaîne de morceaux d’espace de classe C. Ce processus a été appelé supernetting. Le supernetting peut être utilisé pour regrouper plusieurs adresses réseau de classe C en un seul réseau logique. Pour utiliser le supernetting, les adresses réseau IP à combiner doivent partager les mêmes bits plus significatifs et le masque de sous-réseau est raccourci afin d’éliminer des bits de la partie réseau de l’adresse et de les ajouter à la partie hôte. Par exemple, les adresses réseau de classe C 199.199.4.0, 199.199.5.0, 199.199.6.0 et 199.199.7.0 peuvent être combinées au moyen du masque de sous-réseau 255.255.252.0 pour chacun :
NET 199.199.4 (1100 0111.1100 0111.0000 0100.0000 0000) NET 199.199.5 (1100 0111.1100 0111.0000 0101.0000 0000) NET 199.199.6 (1100 0111.1100 0111.0000 0110.0000 0000) NET 199.199.7 (1100 0111.1100 0111.0000 0111.0000 0000) MASK 255.255.252.0 (1111 1111.1111 1111.1111 1100.0000 0000)
Quand les décisions de routage sont prises, seuls les bits couverts par le masque de sous-réseau sont utilisés ; par conséquent, toutes les adresses semblent faire partie du même réseau du point de vue du routage. Tous les routeurs en fonction doivent également prendre en charge le routage CIDR et nécessiter pour cela une configuration spéciale.Windows 2000 TCP/IP permet la prise en charge des sous-réseaux de 0 et 1, comme cela est indiqué dans la RFC 1878.
Multidiffusion IP
La multidiffusion IP assure des services de multidiffusion efficaces pour les clients qui ne peuvent pas être placés sur le même segment de réseau. Par exemple, les applications Windows Sockets peuvent joindre un groupe de multidiffusion pour participer à une conférence étendue.
Windows 2000 est conforme au niveau 2 (envoi et réception) à la RFC 1112. Le protocole IGMP, décrit plus loin dans ce document, est utilisé dans la gestion de la multidiffusion IP.
IP sur ATM
Windows 2000 introduit la prise en charge du protocole IP sur ATM. Les documents RFC 1577 (et successifs) définissent le fonctionnement de base du protocole IP sur réseau ATM, ou plus précisément d’un sous-réseau IP logique sur un réseau ATM. Un sous-réseau IP logique (LIS) est un ensemble d’hôtes IP susceptibles de communiquer directement entre eux. Deux hôtes qui appartiennent à des sous-réseaux IP logiques différents ne peuvent communiquer que par l’intermédiaire d’un routeur IP membre des deux sous-réseaux.
Résolution d’adresses ATM
Étant donné que les réseaux ATM ne permettent pas la diffusion, les diffusions ARP (utilisées par Ethernet ou Token Ring) ne constituent pas une bonne solution. Par conséquent, la résolution des adresses IP vers ATM est assurée par un serveur ARP (Address Resolution Protocol) dédié.
L’une des stations d’un LIS est désignée comme serveur ARP (et le logiciel serveur ARP est chargé dans sa mémoire). Les stations qui utilisent les services du serveur ARP sont appelées clients ARP. Toutes les stations IP au sein d’un LIS sont des clients ARP. Chaque client ARP est configuré avec l’adresse ATM du serveur ARP. Au démarrage, un client ARP établit une connexion ATM avec le serveur ARP et lui envoie un paquet contenant ses adresses IP et ATM. Le serveur ARP construit une table de mappage des adresses IP vers ATM. Quand un client doit envoyer un paquet IP à un autre client (dont l’adresse IP est connue, mais dont l’adresse ATM n’est pas connue), il demande d’abord au serveur ARP l’adresse ATM du client désiré. À la réception de la réponse avec l’adresse requise, le client établit une connexion ATM directe avec le client destinataire et lui envoie les paquets IP.
Les clients ferment toute connexion ATM, y compris la connexion avec le serveur, si ces connexions sont inactives. Tous les clients actualisent régulièrement les adresses IP et ATM avec le serveur (la période par défaut est de 15 minutes). Une entrée qui n’a pas été actualisée pendant 20 minutes (par défaut) est éliminée par le serveur. Le client ARP ATM et le serveur ARP permettent tous deux le réglage d’un certain nombre de paramètres de registre qui sont énumérés dans l’Annexe A.
ICMP (Internet Control Message Protocol)
Le protocole ICMP est un protocole de maintenance spécifié dans la RFC 792 et qui fait normalement partie de la couche IP. Les messages ICMP sont encapsulés dans des datagrammes IP, de sorte qu’ils puissent être routés par le biais d’un réseau d’interconnexion. Windows NT et Windows 2000 s’appuient sur le protocole ICMP pour :
construire et gérer les tables d’itinéraires ;
rechercher des routeurs ;
fournir une aide dans la recherche de l’unité de parcours à transmission maximale (PMTU) ;
diagnostiquer les problèmes (ping, tracert, pathping) ;
régler le contrôle du flux pour éviter la saturation de la liaison ou du routeur.
Recherche du routeur ICMP
Windows 2000 assure la recherche du routeur comme cela est spécifié dans la RFC 1256. Cette fonction constitue une bonne méthode de configuration et détection des passerelles par défaut. Plutôt que d’utiliser les passerelles par défaut configurées manuellement ou par DHCP, les ordinateurs hôtes ont la possibilité de rechercher dynamiquement les routeurs dans leur sous-réseau. En cas de défaillance du routeur principal ou de modification des préférences du routeur par les administrateurs réseau, les hôtes peuvent basculer automatiquement sur un routeur de réserve.
À l’initialisation, un hôte qui effectue la recherche du routeur réunit le groupe de multidiffusion IP de tous les systèmes (224.0.0.1), puis il attend les annonces de routeur que les routeurs envoient à ce groupe. Les hôtes sont également susceptibles d’envoyer des messages de sollicitation à l’adresse de multidiffusion IP de tous les routeurs (224.0.0.2) quand une interface s’initialise pour éviter tout retard dû à la configuration. Windows 2000 envoie un maximum de trois sollicitations à des intervalles d’environ 600 millièmes de seconde.
La fonction de recherche du routeur est gérée par les paramètres de registre PerformRouterDiscovery et SolicitationAddressBCast et prend, par défaut, la valeur « DHCP controlled » dans Windows 2000.
Quand le paramètre SolicitationAddressBCast est configuré sur 1, les sollicitations du routeur sont diffusées plutôt que multidiffusées, comme cela est décrit dans la RFC.
Gestion des tables d’itinéraires
Quand un ordinateur Windows est initialisé, la table d’itinéraires ne co