Description du comportement de mise en cache du protocole ARP (Address Resolution Protocol) dans les implémentations TCP/IP

Cet article fournit une description du comportement de mise en cache du protocole ARP (Address Resolution Protocol) dans les implémentations TCP/IP.

S’applique à : Windows Server 2012 R2, Windows 10 - toutes les éditions, Windows 7 Service Pack 1
Numéro de la base de connaissances d’origine : 949589

Introduction

Cet article décrit le comportement de mise en cache du protocole ARP (Address Resolution Protocol) dans les implémentations TCP/IP windows Vista.

Plus d’informations

Le comportement de mise en cache ARP a été modifié dans Windows Vista. Les implémentations de pile TCP/IP dans Windows Vista sont conformes à RFC4861 (protocole de découverte de voisins pour IP version 6 [Ipv6]) pour le processus de découverte de voisins IPv4 et IPv6.

Les entrées de Registre ArpCacheLife et ArpCacheMinReferencedLife déterminent la façon dont le cache ARP est géré dans Windows XP et windows Server 2003. Ces entrées de Registre ne s’appliquent plus à Windows Vista.

Dans la nouvelle implémentation de pile TCP/IP Windows Vista, les hôtes créent les entrées du cache voisin lorsqu’aucune entrée correspondante n’est présente dans le cache voisin. L’entrée du cache ARP pour IPv4 est un exemple d’entrée de cache voisin. Une fois l’entrée créée dans le cache voisin, l’entrée peut passer à l’état « Accessible » si l’entrée remplit certaines conditions. Si l’entrée est à l’état « Accessible », les hôtes TCP/IP Windows Vista n’envoient pas de demandes ARP au réseau. Par conséquent, les hôtes TCP/IP Windows Vista utilisent les informations dans le cache. Si une entrée n’est pas utilisée et qu’elle reste dans l’état « Accessible » pendant plus longtemps que sa valeur « Temps accessible », l’entrée passe à l’état « Obsolète ». Si une entrée est à l’état « Obsolète », l’hôte TCP/IP Windows Vista doit envoyer une requête ARP pour atteindre cette destination.

La valeur « Temps accessible » est calculée comme suit :
Reachable Time = BaseReachable Time × (valeur aléatoire entre MIN_RANDOM_FACTOR et MAX_RANDOM_FACTOR)
RFC fournit les résultats calculés suivants.

BaseReachable Time 30 000 millisecondes (ms)
MIN_RANDOM_FACTOR 0.5
MAX_RANDOM_FACTOR 1,5

Par conséquent, la valeur « Temps accessible » est comprise entre 15 secondes (30 × 0,5 seconde) et 45 secondes (30 × 1,5 seconde). Si une entrée n’est pas utilisée pendant une période comprise entre 15 et 45 secondes, elle passe à l’état « Obsolète ». Ensuite, l’hôte doit envoyer une demande ARP pour IPV4 au réseau lorsqu’un datagramme IP est envoyé à cette destination.

Pour afficher la valeur actuelle « Temps accessible », procédez comme suit :

  1. Cliquez sur Démarrer, tapez cmd dans la zone Démarrer la recherche , puis cliquez sur cmd dans la liste Programmes .

  2. Si vous êtes invité à entrer un mot de passe administrateur ou à confirmer, tapez votre mot de passe ou cliquez sur Continuer.

  3. Depuis l'invite de commandes, entrez la commande suivante :
    netsh interface ipv4 show interfaces
    Exemple de résultat :

    Idx Met MTU        State       Name
    --- --- -----      ----------- -------------------
     1  50  4294967295 connected   Loopback Pseudo-Interface 1
     9  20  1500       connected   Local Area Connection
    
    
  4. À l’étape 2, la valeur « Connexion de zone locale » Idx est 9. Par conséquent, vous pouvez afficher l’interface 9 en tapant la commande suivante à l’invite de commandes :
    netsh interface ipv4 show interface 9
    Exemple de résultat :

    Interface Local Area Connection Parameters
    ----------------------------------------------
    IfLuid                          : ethernet_7
    IfIndex                         : 9
    Compartment Id                  : 1
    State                           : connected
    Metric                          : 20
    Link MTU                        : 1500 bytes
     Reachable Time                 : 19000 ms Base Reachable Time : 30000 ms Retransmission Interval : 1000 ms
    DAD Transmits : 3 Site Prefix Length : 64 Site Id : 1 Forwarding : disabled  
    Advertising : disabled Neighbor Discovery : enabled Neighbor Unreachability  
    Detecion : enabled Router Discovery : dhcp Managed Address Configuration :
    enabled Other Stateful Configuration : enabled Weak Host Sends : disabled Weak  
    Host Receives : disabled Use Automatic Metric : enabled Ignore Default routes :  
    disabled
    
  5. Vous pouvez modifier la valeur « Temps de baseReachable » en tapant l’exemple de commande suivant à l’invite de commandes :
    netsh interface ipv4 set interface 9 basereachable=60000

  6. Pour afficher le résultat de l’étape 4, tapez la commande suivante à l’invite de commandes :
    netsh interface ipv4 show interface 9
    Exemple de résultat :

    Interface Local Area Connection Parameters
    ----------------------------------------------
    IfLuid                            : ethernet_7
    IfIndex                           : 9
    Compartment Id                    : 1
    State                             : connected
    Metric                            : 20
    Link MTU                          : 1500 bytes
    Reachable Time                    : 61500 ms
     Base Reachable Time              : 60000 ms Retransmission Interval : 1000 ms DAD Transmits : 3 Site Prefix
    Length : 64 Site Id : 1 Forwarding : disabled Advertising : disabled Neighbor
    Discovery : enabled Neighbor Unreachability Detecion : enabled Router Discovery
    : dhcp Managed Address Configuration : enabled Other Stateful Configuration :
    enabled Weak Host Sends : disabled Weak Host Receives : disabled Use Automatic
    Metric : enabled Ignore Default routes : disabled
    

    Remarque

    La valeur « Heure accessible de base » est passée à 60 000 ms.

  7. Vous pouvez augmenter la limite du cache voisin en tapant la commande suivante à l’invite de commandes :
    netsh interface ipv4 set global neighborcachelimit = 4096

    Remarque

    La limite de cache voisin par défaut est de 256 pour les versions clientes de Windows et de 1024 pour Windows Server.

Pour plus d’informations sur les états d’entrée du cache voisin, visitez le site Web suivant :
https://www.ietf.org/rfc/rfc2461.txt

Les produits tiers mentionnés dans le présent article sont fabriqués par des sociétés indépendantes de Microsoft. Microsoft exclut toute garantie, implicite ou autre, concernant les performances ou la fiabilité de ces produits.

Microsoft fournit des informations de contact de sociétés tierces afin de vous aider à obtenir un support technique. Ces informations de contact peuvent être modifiées sans préavis. Microsoft ne garantit pas l’exactitude des informations concernant les sociétés tierces.