La congestion du réseau se traduit généralement par des dépassements du tampon du routeur, lorsque les noeuds envoient plus de paquets que le réseau ne peut en gérer. Différents algorithmes empêchent une congestion du trafic à travers la mise en place de contrôles sur les systèmes d'envoi. Ces algorithmes sont pris en charge par Oracle Solaris et peuvent être facilement ajoutés ou directement rattaché à l'OS, comme indiqué dans le tableau suivant qui décrit les algorithmes pris en charge intégrée.
|
Pour activer le contrôle de congestion, les propriétés de contrôle TCP suivantes doivent être définies. Bien que ces propriétés concernent le trafic TCP, le mécanisme de contrôle activé par ces propriétés s'applique également au trafic SCTP.
Contient une liste d'algorithmes, séparés par des virgules, actuellement opérationnels dans le système. Vous pouvez ajouter ou supprimer des algorithmes pour n'utiliser que ceux qui vous intéressent. Cette propriété peut avoir plusieurs valeurs. Vous devez donc utiliser le qualificatif += ou -=, selon le changement que vous souhaitez appliquer.
Utilisé par défaut lorsque des applications aucun algorithme n'est spécifié explicitement dans les options de socket. Actuellement la valeur de la propriété cong_default s'applique aux zones globales et non globales.
L'exemple ci-dessous illustre comment ajouter un algorithme de contrôle de congestion au protocole, procédez comme suit :
# ipadm set-prop -p cong_enabled+=algorithm tcp
Supprimer un algorithme comme suit :
# ipadm set-prop -p cong_enabled-=algorithm tcp
Remplacer l'algorithme par défaut comme suit :
# ipadm set-prop -p cong_default=algorithm tcp
L'exemple suivant illustre la manière dont vous pouvez implémenter le contrôle de congestion. Dans l'exemple, l'algorithme par défaut du protocole TCP newreno est remplacé par cubic. Ensuite, l'algorithme vegas est retiré de la liste des algorithmes activés.
# ipadm show-prop -p extra_priv_ports tcp PROTO PROPERTY PERM CURRENT PERSISTENT DEFAULT POSSIBLE tcp extra_priv_ports rw 2049,4045 -- 2049,4045 1-65535 # ipadm show-prop -p cong_default,cong_enabled tcp PROTO PROPERTY PERM CURRENT PERSISTENT DEFAULT POSSIBLE tcp cong_default rw newreno -- newreno newreno,cubic, highspeed,vegas tcp cong_enabled rw newreno,cubic, newreno,cubic, newreno newreno,cubic, highspeed, highspeed, highspeed,vegas vegas vegas # ipadm set-prop -p cong_enabled-=vegas tcp # ipadm set-prop -p cong_default=cubic tcp # ipadm show-prop -p cong_default,cong_enabled tcp PROTO PROPERTY PERM CURRENT PERSISTENT DEFAULT POSSIBLE tcp cong_default rw cubic cubic newreno newreno,cubic, highspeed tcp cong_enabled rw newreno,cubic, newreno,cubic, newreno newreno,cubic, highspeed highspeed highspeed,vegas