Pour réaliser des configurations encore plus compliquées, vous pouvez avoir des filtres qui analysent le trafic à hauteur d'une certaine bande passante. Vous pouvez configurer un filtre pour qu'il cesse complètement l'analyse de tout le trafic au-dessus d'un certain débit ou pour qu'il n'analyse pas la bande passante dépassant un certain débit.
Ainsi, si vous décidez de réglementer à 4mbit/s, mais qu'un trafic de 5mbit/s est présent, vous pouvez cesser d'analyser l'ensemble des 5mbit/s ou seulement cesser d'analyser le 1 mbit/s supplémentaire et envoyer 4 mbit/s à la classe correspondante.
Si la bande passante dépasse le débit configuré, vous pouvez rejeter un paquet, le reclassifier ou voir si un autre filtre y correspond.
Il y a essentiellement deux façons de réglementer. Si vous avez
compilé le noyau avec Estimators
,
celui-ci peut mesurer plus ou moins pour chaque filtre le trafic
qui est passé. Ces estimations ne sont pas coûteuses en temps CPU,
étant donné qu'il ne compte que 25 fois par seconde le nombre de
données qui sont passées, et qu'il calcule le débit à partir de
là.
L'autre manière utilise encore le Token Bucket Filter qui réside à l'intérieur du filtre cette fois. Le TBF analyse seulement le trafic A HAUTEUR de la bande passante que vous avez configurée. Si cette bande passante est dépassée, seul l'excès est traité par l'action de dépassement de limite configurée.
Ceci est très simple et il n'y a qu'un seul paramètre :
avrate
. Soit le flux demeure sous
avrate
et le filtre classifie le trafic
vers la classe appropriée, soit votre débit le dépasse et l'action
indiquée par défaut, la « reclassification », est réalisée dans ce
cas.
Le noyau utilise l'algorithme EWMA pour votre bande passante, ce qui la rend moins sensible aux courtes rafales de données.
Utilisez les paramètres suivants :
-
buffer
/maxburst
-
mtu
/minburst
-
mpu
-
rate
Ceux-ci se comportent la plupart du temps de manière identique à
ceux décrits dans la section Filtre
à seau de jetons. Notez cependant que si vous configurez
le mtu
du filtre de réglementation
TBF trop bas, aucun paquet ne
passera et le gestionnaire de mise en file d'attente de sortie
TBF ne fera que les
ralentir.
Une autre différence est que la réglementation ne peut que laisser passer ou jeter un paquet. Il ne peut pas le retenir dans le but de le retarder.
Si votre filtre décide qu'un dépassement de limite est atteint, il peut mettre en oeuvre des « actions ». Actuellement, trois actions sont disponibles :
continue
-
Provoque l'arrêt de l'analyse du filtre, bien que d'autres filtres aient la possibilité de le faire.
drop
-
Ceci est une option très féroce qui supprime simplement le trafic excédant un certain débit. Elle est souvent employée dans le Ingress policer et a des utilisations limitées. Par exemple, si vous avez un serveur de noms qui s'écroule s'il traite plus de 5mbit/s de paquets, alors, vous pourrez dans ce cas utiliser un filtre d'entrée pour être sûr qu'il ne traitera jamais plus de 5mbit/s.
Pass/OK
-
Transmettre le trafic. Peut être utilisé pour mettre hors service un filtre compliqué, tout en le laissant en place.
reclassify
-
Permet le plus souvent une reclassification vers Best Effort. Ceci est l'action par défaut.
Le seul vrai exemple connu est mentionné dans la section Protéger votre machine des inondations SYN.
FIXME: Si vous avez déjà utilisé ceci, partagez s'il vous plaît votre expérience avec nous.