Je travaille actuellement sur une solution de mise en forme du trafic pour les entreprises de niveau FAI, et est arrivé à un problème intéressant (un peu philosophique).
En regardant le nombre de points finaux que le système devrait gérer (ce qui est d'environ ~ 20k), je me suis un peu inquiété de ce qui se passerait lorsque j'aurais besoin de définir / définir le trafic d'un plus grand nombre d'utilisateurs. Comme j'utilise actuellement l'arbre de mise en forme HFSC (voir tc-hfsc, principalement la même chose mais plus cool que HTB mieux connu) pour l'ensemble du réseau, je devrais utiliser plus de ClassID (évidemment au moins un pour chaque utilisateur sur le réseau). Le problème que j'ai trouvé était que les TC ClassID sont un peu limités - ce sont des nombres de 16 bits, ce qui me donne un maximum possible de 64 000 utilisateurs façonnés par cette solution.
De même, si je souhaite gérer efficacement les filtres TC (par exemple, sans utiliser la «technique de vidage complet»), je dois pouvoir supprimer ou modifier des entrées de filtre individuelles. (J'utilise quelque chose de similaire à la table de hachage de LARTC [1]). Encore une fois, la seule méthode qui semble fonctionner est de numéroter tous les filtres en utilisant des priorités individuelles (filtre tc add dev ... prio 1). Aucun autre paramètre ne peut être utilisé à cette fin, et, malheureusement, prio est également en 16 bits uniquement.
Ma question est la suivante: existe-t-il une bonne méthode pour agrandir "l'espace identifiant" disponible, comme les clsid 32 bits pour la commande 'tc class', et les priorités 32 bits (ou tout autre descripteur de modification) pour 'filtre tc' commander?
Merci beaucoup,
-mk
(btw j'espère que cela n'ira pas au scénario "64k utilisateurs devraient suffire à tout le monde" ...)