Configuration de l’équilibrage de charge par paquet
Dans Junos OS, vous activez l’équilibrage de charge par flux en définissant l’action d’équilibrage de charge par paquet dans la configuration de la politique de routage. La dénomination peut sembler contre-intuitive, car dans Junos, l’équilibrage de charge par paquet est fonctionnellement équivalent à ce que d’autres fournisseurs peuvent appeler l’équilibrage de charge par flux .
Pour configurer l’équilibrage de charge par paquet, incluez l’instruction load-balance per-packet en tant qu’option de l’instruction route-filter au niveau de la [edit policy-options policy-statement policy-name term term-name from] hiérarchie :
[edit policy-options policy-statement policy-name term term-name from]
route-filter destination-prefix match-type {
load-balance per-packet;
}
ou au niveau hiérarchique [edit policy-options policy-statement policy-name term term-name then] :
[edit policy-options policy-statement policy-name term term-name then] load-balance per-packet;
Pour terminer la configuration, vous devez appliquer la politique de routage aux routes exportées de la table de routage vers la table de transfert, en incluant le nom de la stratégie dans la liste spécifiée par l’instruction export :
export [ policy-names ];
Vous pouvez inclure cette déclaration aux niveaux hiérarchiques suivants :
[edit routing-options forwarding-table][edit logical-systems logical-system-name routing-options forwarding-table]
Par défaut, Junos ignore les données de port lors de la détermination des flux. Pour inclure les données de port dans la détermination du flux, incluez l’instruction family inet au niveau de la [edit forwarding-options hash-key] hiérarchie :
[edit forwarding-options hash-key]
family inet {
layer-3;
layer-4;
}
Si vous incluez à la fois les instructions de couche 3 et de couche 4 , l’appareil utilise les informations de couche 3 et de couche 4 suivantes pour équilibrer la charge :
Adresse IP source
Adresse IP de destination
Protocole
Numéro de port source
Numéro de port de destination
Index d’interface entrant
Type de service IP
Lorsque tous les paramètres de couche 3 et de couche 4 sont identiques, l’équipement envoie les paquets dans le flux via la même interface, ce qui permet d’éviter la distribution dans le désordre des flux TCP et UDP.
Les paquets ICMP (Internet Control Message Protocol) sont traités différemment, car le décalage d’emplacement du champ est le champ de somme de contrôle, ce qui fait de chaque paquet ping un « flux » distinct. Il existe d’autres protocoles qui peuvent être encapsulés dans IP et qui peuvent avoir une valeur variable dans le décalage de 32 bits. Cela peut également être problématique car ces protocoles sont considérés comme un flux distinct.
Par défaut, ou si vous incluez uniquement l’instruction de couche 3 , le routeur utilise l’index d’interface entrant ainsi que les informations de couche 3 suivantes dans l’en-tête du paquet pour équilibrer la charge du trafic :
Adresse IP source
Adresse IP de destination
Protocole
Par défaut, la charge des paquets IP version 6 (IPv6) est automatiquement équilibrée en fonction des informations de couche 3 et de couche 4 suivantes :
Adresse IP source
Adresse IP de destination
Protocole
Numéro de port source
Numéro de port de destination
Index d’interface entrant
Classe de trafic
Exemples d’équilibrage de charge par paquet
Effectuez un équilibrage de charge par paquet pour toutes les routes :
[edit]
policy-options {
policy-statement load-balancing-policy {
then {
load-balance per-packet;
}
}
}
routing-options {
forwarding-table {
export load-balancing-policy;
}
}
Effectuez un équilibrage de charge par paquet uniquement pour un ensemble limité de routes :
[edit]
policy-options {
policy-statement load-balancing-polic {
from {
route-filter 192.168.10/24 orlonger;
route-filter 10.114/16 orlonger;
}
then {
load-balance per-packet;
}
}
}
routing-options {
forwarding-table {
export load-balancing-policy;
}
}
Pour configurer l’équilibrage de charge par pulvérisation aléatoire par paquet, incluez l’instruction load-balance random au niveau de la [edit policy-options policy-statement policy-name term term-name then] hiérarchie :
[edit policy-options policy-statement policy-name term term-name then] load-balance random;
Pour terminer la configuration, vous devez appliquer la politique de routage aux routes exportées de la table de routage vers la table de transfert, en incluant le nom de la stratégie dans la liste spécifiée par l’instruction export au niveau de la [edit routing-options forwarding-table] hiérarchie
[edit routing-options forwarding-table] export [ policy-names ];