Users Guide

NetXtreme Guide d’utilisation Broadcom Gigabit Ethernet Teaming Services
Page 34 Mécanismes de regroupement Document 2CS57XX-CDUM513-R
Pour les protocoles autres que TCP/IP, la première carte physique est toujours sélectionnée pour les paquets sortants. La
seule exception est le protocole ARP (Address Resolution Protocol), qui est traité de façon différente pour permettre
l'équilibrage de charge du trafic entrant.
Trafic entrant (SLB uniquement)
Le pilote intermédiaire Broadcom gère le trafic entrant pour le mode de regroupement SLB. Contrairement à l'équilibrage de
charge du trafic sortant, l'équilibrage de charge du trafic entrant s'applique uniquement aux adresses IP situées dans le
même sous-réseau que le serveur d'équilibrage de charge. L'équilibrage de charge du trafic entrant exploite une
caractéristique unique du protocole ARP (RFC0826) : chaque hôte IP utilise son propre cache ARP pour encapsuler le
datagramme IP dans une trame Ethernet. BASP manipule prudemment la réponse ARP pour diriger chaque hôte IP afin
qu'il envoie le paquet IP entrant vers la carte physique souhaitée. Ainsi, l'équilibrage de charge du trafic entrant est un
processus planifié à l'avance, basé sur l'historique des statistiques des flux entrants. Les nouvelles connexions d'un client
vers le serveur surviennent toujours sur la carte physique primaire (car la réponse ARP générée par la pile de protocole du
système d'exploitation associe toujours l'adresse IP logique à l'adresse MAC de la carte physique primaire).
Comme pour le flux sortant, il existe un tableau de hachage de tête de flux entrant. Chaque entrée du tableau dispose d'une
liste à lien unique et chaque lien (entrées de flux entrant) représente un hôte IP situé sur le même sous-réseau.
Lorsqu'un datagramme IP entrant arrive, l'entrée de tête de flux entrant est localisée par hachage de l'adresse IP source du
datagramme IP. Les deux compteurs statistiques stockés dans l'entrée sélectionnée sont également mis à jour. Ces
compteurs sont utilisés de la même façon que les compteurs de sortie par le moteur d'équilibrage de charge, afin de
réattribuer régulièrement les flux à la carte physique.
Dans le chemin de code entrant, le tableau de hachage de tête de flux entrant est également conçu pour accepter les accès
concurrents. Les listes de liens des entrées de flux entrant sont uniquement référencées en cas de traitement des paquets
ARP et de l'équilibrage de charge régulier. Il n'existe aucune référence par paquet pour les entrées de flux entrant. Même
si les listes de liens ne sont pas associées, le temps système de traitement de chaque paquet non ARP est toujours une
constante. Le traitement des paquets ARP, entrants et sortants, dépend toutefois du nombre de liens au sein de la liste de
liens correspondante.
Sur le chemin de traitement entrant, le filtrage est également utilisé pour empêcher que les paquets de diffusion n'effectuent
une boucle avec retour dans le système à partir d'autres cartes physiques.
Prise en charge de protocole
Les flux ARP et IP/TCP/UDP bénéficient de l'équilibrage de charge. Si le paquet utilise uniquement le protocole IP (par
exemple, ICMP ou IGMP), toutes les données à destination d'une adresse IP donnée passent par la même carte physique.
Si le paquet utilise TCP ou UDP pour le protocole de couche 4, le numéro de port est ajouté à l'algorithme de hachage, afin
que deux flux de couche 4 puissent être acheminés via deux cartes physiques vers la même adresse IP.
Par exemple, supposons que l'adresse IP du client est 10.0.0.1. L'ensemble du trafic IGMP et ICMP circule via la même
carte physique, car seule l'adresse IP est utilisée pour le hachage. Le flux peut ressembler au schéma suivant :
IGMP ------> PhysAdapter1 ------> 10.0.0.1
ICMP ------> PhysAdapter1 ------> 10.0.0.1
Si le serveur envoie également un flux TCP et UDP vers la même adresse (10.0.0.1), ils peuvent être sur la même carte
physique que IGMP et ICMP ou sur des cartes physiques totalement différentes de ICMP et IGMP. Le flux peut ressembler
au schéma suivant :