Accueil » Cisco, Réseaux

Répartition de charge sur agrégat EtherChannel

5 août 2009 No Comment Par Remy

Cisco offre la possibilité de réaliser des agrégats logiques de liens entre switches via sa technologie EtherChannel (à l’image de la norme IEEE 802.3ad et MLT/SMLT chez Nortel). Afin de déterminer l’interface de sortie d’un paquet, le switch utilise la fonction logique XOR entre différents couples d’informations afin de générer un hash et d’obtenir l’interface de sortie correspondant dans sa table.

Pour mémoire, la fonction XOR fonctionne de cette manière :

  • 0 XOR 0 = 0
  • 0 XOR 1 = 1
  • 1 XOR 0 = 1
  • 1 XOR 1 = 0

Le couple d’informations utilisé par défaut est le couple adresse IP source et adresse IP destination. Le switch traduit donc ces adresses en binaire et applique la fonction XOR entre ces deux paramètres. En fonction du nombre d’interfaces composant l’aggrégat, on utilisera 1, 2 voire 3 bits pour obtenir l’index de l’interface. La relation entre le nombre d’interfaces et le nombre de bits significatifs pour le résultat du hash est la suivante : 2 puissance (nombre de bits) = nombre d’interfaces. Pour 2 interfaces, on se basera donc sur le dernier bit, pour 3 et 4 interfaces sur les deux derniers, et jusqu’à 8 les trois derniers.

Il est possible de changer ce comportement par défaut qui sélectionne donc les adresses IP source et destination via la commande globale suivante :

port-channel load-balance method METHODE

Il est à noter que cette commande modifie donc l’ensemble des aggrégats configurés sur un équipement. De plus, le paramètre METHODE correspond aux choix suivants :

  • src-ip:  Uniquement l’adresse IP source
  • dst-ip:  Uniquement l’adresse IP de destination
  • src-dst-ip:  Le couple adresse IP source et destination (par défaut)
  • src-mac:  Uniquement l’adresse MAC source
  • dst-mac:  Uniquement l’adresse MAC de destination
  • src-dst-mac:  Le couple adresse MAC source et destination
  • src-port:  Le port TCP ou UDP source
  • dst-port:  Le port TCP ou UDP de destination
  • src-dst-port:  Le port TCP ou UDP source et le port TCP ou UDP de destination
  • Pour dérouler l’algorithme et connaître à quelle interface correspond le résultat du XOR des deux informations (ou d’une seule), il est nécessaire de faire la commande :

    show etherchannel detail

    Celle-ci permet alors d’afficher les index associés à chaque interface et de vérifier ce qui a été obtenu lors de l’application de la fonction XOR.

    Puisqu’un exemple est souvent bien plus parlant qu’un long discours, passons donc à son application. Imaginons que nous sommes dans le paramétrage de base, et que mon paquet a pour source 192.168.0.1 et pour destination 192.168.1.1.

    • 192.168.0.1 en binaire donne  : 11000000.10101000.00000000.00000001
    • 192.168.1.1 en binaire donne : 11000000.10101000.00000001.00000001
    • Le résultat du XOR de ces deux adresses donne : 00000000.00000000.0000001.00000000

    Si l’on considère que notre aggrégat n’est composé que de deux liens, alors le nombre de bits significatifs est égal à 1 : 00000000.00000000.0000001.00000000. Ce chiffre est alors l’index de l’interface de sortie, obtenue via la commande précédente.

    Laissez votre réponse !

    Vous devez être connecté pour poster un commentaire