Vue d’ensemble du contrôle de l’accès réseau à l’aide du contrôle du trafic
Gestion de la congestion pour les flux de trafic IP
Le contrôle du trafic, également connu sous le nom de limitation de débit, est un composant essentiel de la sécurité des accès réseau, conçu pour déjouer les attaques par déni de service (DoS). Le contrôle du trafic vous permet de contrôler le débit maximal de trafic IP envoyé ou reçu sur une interface et de partitionner le trafic réseau en plusieurs niveaux de priorité, également appelés classes de service. Un policer définit un ensemble de limites de débit de trafic et définit les conséquences pour le trafic qui n’est pas conforme aux limites configurées. Les paquets d’un flux de trafic qui ne sont pas conformes aux limites de trafic sont soit rejetés, soit marqués avec une classe de transfert ou un niveau de priorité de perte de paquets (PLP) différent.
À l’exception des polices configurés pour limiter le trafic agrégé (toutes les familles de protocoles et interfaces logiques configurées sur une interface physique), vous pouvez appliquer un policer à tous les paquets IP d’un flux de trafic de couche 2 ou 3 au niveau d’une interface logique.
À l’exception des polices configurés pour limiter le débit en fonction du débit multimédia d’interface physique, vous pouvez appliquer un policer à des paquets IP spécifiques dans un flux de trafic de couche 3 au niveau d’une interface logique à l’aide d’un filtre de pare-feu sans état.
Vous pouvez appliquer un contrôle au trafic d’interface entrant ou sortant. Les polices appliquées au trafic entrant permettent d’économiser des ressources en supprimant le trafic qui n’a pas besoin d’être acheminé via un réseau. L’abandon du trafic entrant contribue également à déjouer les attaques par déni de service (DoS). Les contrôles appliqués au trafic sortant contrôlent la bande passante utilisée.
Les polices de trafic sont instanciées par PIC. Le contrôle du trafic ne fonctionne pas lorsque le trafic d’un abonné de la fonction de décision de stratégie locale (L-PDF) est distribué sur plusieurs PIC multiservices dans un groupe AMS.
Limites de trafic
Les polices Junos OS utilisent un algorithme de seau de jetons pour appliquer une limite à un débit moyen de transmission ou de réception du trafic sur une interface, tout en permettant des rafales de trafic jusqu’à une valeur maximale en fonction de la limite de bande passante configurée et de la taille de rafale configurée. L’algorithme de seau de jetons offre plus de flexibilité qu’un algorithme de compartiment qui fuit dans la mesure où vous pouvez autoriser un pic de trafic spécifié avant de commencer à rejeter des paquets ou d’appliquer une pénalité telle que la priorité de mise en file d’attente de sortie de paquets ou la priorité de perte de paquets.
Dans le modèle token-bucket, le seau représente la fonction de limitation de débit du policer. Les jetons sont ajoutés au seau à un débit fixe, mais une fois la profondeur spécifiée dans le compartiment atteint, les jetons alloués après ne peuvent plus être stockés et utilisés. Chaque jeton représente un « crédit » pour un certain nombre de bits, et les jetons du seau sont « encaissés » pour pouvoir transmettre ou recevoir du trafic au niveau de l’interface. Lorsque suffisamment de jetons sont présents dans le compartiment, un flux de trafic continue sans restriction. Sinon, les paquets peuvent être abandonnés ou re-marqués avec une classe de transfert inférieure, un niveau de priorité de perte de paquet (PLP) plus élevé, ou les deux.
Le taux d’ajout de jetons au seau représente le taux moyen de transmission ou de réception le plus élevé en bits par seconde autorisé pour un niveau de service donné. Vous spécifiez ce taux de trafic moyen le plus élevé comme limite de bande passante du policer. Si le taux d’arrivée du trafic (ou bits fixes par seconde) est si élevé qu’à un moment donné, des jetons insuffisants sont présents dans le compartiment, alors le flux de trafic n’est plus conforme à la limite de trafic. Pendant les périodes de trafic relativement faible (trafic arrivant ou sortant de l’interface à un taux moyen inférieur au taux d’arrivée des jetons), les jetons inutilisés s’accumulent dans le seau.
La profondeur du godet en octets contrôle la quantité d’éclatement d’arrière en arrière autorisée. Vous spécifiez ce facteur comme la limite de taille d’rafale du policer. Cette deuxième limite affecte le taux moyen d’émission ou de réception en limitant le nombre d’octets autorisés dans une rafale de transmission pendant un intervalle de temps donné. Les rafales dépassant la limite actuelle de taille d’rafale sont abandonnées jusqu’à ce qu’il y ait suffisamment de jetons disponibles pour permettre le rafale de se poursuivre.
Figure 1 : trafic réseau et taux d’explosionComme le montre la figure ci-dessus, un code-barres UPC est un bon fac-similé de ce à quoi ressemble le trafic sur la ligne; une interface transmet (éclate à plein débit) ou ne l’est pas. Les lignes noires représentent les périodes de transmission des données et l’espace blanc représente les périodes de silence lorsque le seau de jetons peut se réapprovisionner.
Selon le type de police utilisé, les paquets d’un flux de trafic surveillé qui dépassent les limites définies peuvent être implicitement définis sur un niveau PLP plus élevé, assignés à une classe de transfert configurée ou définis à un niveau PLP configuré (ou les deux), ou simplement rejetés. Si des paquets rencontrent une congestion en aval, les paquets avec un low
niveau PLP sont moins susceptibles d’être rejetés que ceux avec un medium-low
niveau , medium-high
ou high
PLP.
Marquage de la couleur du trafic
En fonction de l’ensemble particulier de limites de trafic configurées, un contrôle identifie un flux de trafic comme appartenant à l’une des deux ou trois catégories similaires aux couleurs d’un feu de circulation utilisé pour contrôler la circulation automobile.
Débit unique bicolore : un policer de marquage bicolore (ou « policer » lorsqu’il est utilisé sans qualification) mesure le flux de trafic et classe les paquets en deux catégories de priorité de perte de paquets (PLP) en fonction d’une bande passante configurée et d’une limite de taille de rafale. Vous pouvez marquer les paquets qui dépassent la bande passante et la limite de taille de rafale d’une manière ou d’une autre, ou simplement les ignorer.
Un dispositif de contrôle est particulièrement utile pour mesurer le trafic au niveau du port (interface physique).
Tricolore à débit unique : ce type de police est défini dans la norme RFC 2697, Un marqueur à débit unique trois couleurs, dans le cadre d’un système de classification de transfert garanti (AF) par comportement (PHB) pour un environnement de services différenciés (DiffServ). Ce type de contrôle mesure le trafic en fonction du taux d’information engagé (CIR), de la taille d’rafale engagée (CBS) et de la taille de rafale excédentaire (EBS). Le trafic est marqué comme appartenant à l’une des trois catégories (vert, jaune ou rouge) selon que les paquets arrivant sont en dessous du CBS (vert), dépassent le CBS (jaune) mais pas l’EBS, ou dépassent le EBS (rouge).
Un système de contrôle tricolore à débit unique est particulièrement utile lorsqu’un service est structuré en fonction de la longueur des paquets et non du taux d’arrivée maximal.
Deux débits trois couleurs : ce type de police est défini dans la RFC 2698, un marqueur à deux débits trois couleurs, dans le cadre d’un système de classification de transfert assuré (AF) par comportement (PHB) pour un environnement de services différenciés (DiffServ). Ce type de police mesure le trafic en fonction du CIR configuré et du débit d’information de pointe (PIR), ainsi que des tailles de rafale associées, du CBS et de la taille de pic de rafale (PBS). Le trafic est marqué comme appartenant à l’une des trois catégories (vert, jaune ou rouge) selon que les paquets arrivant sont en dessous du CIR (vert), dépassent le CIR (jaune) mais pas le PIR, ou dépassent le PIR (rouge).
Un dispositif de contrôle à deux débits en trois couleurs est le plus utile lorsqu’un service est structuré en fonction des taux d’arrivée et pas nécessairement de la longueur des paquets.
Les actions de contrôle sont implicites ou explicites et varient selon le type de police. Le terme Implicite signifie que Junos attribue automatiquement la priorité aux pertes. Le tableau 1 décrit les mesures de contrôle.
Policer |
Marquage |
Action implicite |
Configurable Action |
---|---|---|---|
Bicolore à débit unique |
Vert (conforme) |
Attribuez une faible priorité aux pertes |
Aucun |
Rouge (non-conformité) |
Aucun |
Attribuer une priorité de perte faible ou élevée, attribuer une classe de transfert ou jeterSur certaines plates-formes, vous pouvez attribuer une priorité de perte moyenne-faible ou moyenne-élevée |
|
Trois couleurs à débit unique |
Vert (conforme) |
Attribuez une faible priorité aux pertes |
Aucun |
Jaune (au-dessus du CIR et du CBS) |
Attribuez la priorité aux pertes moyennes et élevées |
Aucun |
|
Rouge (au-dessus de l’EBS) |
Attribuer une priorité élevée aux pertes |
Jeter |
|
Deux débits trois couleurs |
Vert (conforme) |
Attribuez une faible priorité aux pertes |
Aucun |
Jaune (au-dessus du CIR et du CBS) |
Attribuez la priorité aux pertes moyennes et élevées |
Aucun |
|
Rouge (au-dessus du PIR et du PBS) |
Attribuer une priorité élevée aux pertes |
Jeter |
Classes de transfert et niveaux PLP
L’attribution de classe de transfert et le niveau PLP d’un paquet sont utilisés par les fonctionnalités de classe de service (CoS) de Junos OS. Les fonctionnalités CoS de Junos OS comprennent un ensemble de mécanismes que vous pouvez utiliser pour fournir des services différenciés lorsque la livraison de trafic best-effort est insuffisante. Pour les interfaces de routeur (et de commutateur) qui transportent le trafic IPv4, IPv6 et MPLS, vous pouvez configurer des fonctionnalités CoS pour prendre en charge un flux unique de trafic entrant en périphérie de votre réseau et fournir différents niveaux de service sur l’ensemble du réseau (transfert et planification internes (mise en file d’attente pour la sortie) en fonction des attributions de classes de transfert et des niveaux de PLP des paquets individuels.
Les attributions de classe de transfert ou de perte de priorité effectuées par un policer ou un filtre de pare-feu sans état remplacent ces attributions effectuées sur l’entrée par la classification de priorité IP CoS par défaut sur toutes les interfaces logiques ou par tout classificateur d’agrégation de comportement (BA) configuré qui est explicitement mappé à une interface logique.
En fonction des configurations CoS, les paquets d’une classe de transfert donnée sont transmis via une file d’attente de sortie spécifique, et chaque file d’attente de sortie est associée à un niveau de service de transmission défini dans un planificateur.
Selon d’autres configurations CoS, lorsque les paquets d’une file d’attente de sortie rencontrent une congestion, les paquets ayant des valeurs de priorité de perte plus élevées sont plus susceptibles d’être abandonnés par l’algorithme de détection précoce aléatoire (RED). Les valeurs de priorité de perte de paquets affectent la planification d’un paquet sans affecter l’ordre relatif du paquet dans le flux de trafic.
Application de contrôle au trafic
Une fois que vous avez défini et nommé un policer, il est stocké sous forme de modèle. Vous pouvez ensuite utiliser le même nom de policer pour fournir la même configuration de policer chaque fois que vous souhaitez l’utiliser. Cela élimine le besoin de définir les mêmes valeurs de police plus d’une fois.
Vous pouvez appliquer un contrôle à un flux de trafic de deux façons :
Vous pouvez configurer un filtre de pare-feu sans état standard qui spécifie l’action
policer policer-name
non indéterminée ou l’actionthree-color-policer (single-rate | two-rate) policer-name
de non-terminaison. Lorsque vous appliquez le filtre standard à l’entrée ou à la sortie d’une interface logique, le policer est appliqué à tous les paquets de la famille de protocoles spécifiques au filtre qui correspondent aux conditions spécifiées dans la configuration du filtre.Avec cette méthode d’application d’un policer, vous pouvez définir des classes de trafic spécifiques sur une interface et appliquer des limites de débit de trafic à chaque classe.
Vous pouvez appliquer un policer directement à une interface afin que la limitation du débit de trafic s’applique à tout le trafic sur cette interface, quelle que soit la famille de protocoles ou les conditions de correspondance.
Vous pouvez configurer des polices au niveau de la file d’attente, de l’interface logique ou de la couche 2 (MAC). Un seul dispositif de contrôle est appliqué à un paquet au niveau de la file d’attente sortante, et la recherche de contrôles s’effectue dans cet ordre :
Niveau de file d’attente
Au niveau de l’interface logique
Niveau couche 2 (MAC)