ONT – Congestion management and Queuing

La congestion intervient quand:

  • le taux de trafic en input excède le taux de l’interface en output – Speed mismatch problem
  • plusieurs liens sont agrégés vers une seule interface avec une capacité inférieure – Aggregation problem
  • plusieurs flux de trafic arrivent sur une interface – Confluence problem

Router Queuing Components (Hard/Soft)

Sans file software, toute les queues seraient traitées en hardware, ce qui ne permettrai pas de gérer les != classes de paquets, ou de différencier les services.
Dans show controllers serial, on peut voir la taille de la pile FIFO hardware:

  • tx_limited
  • tx_ring_limit
  • tx_ring

FIFO, Priority Queuing, Round-Robin, Weighted Round-Robin Queuing

  • FIFO
  • Default-queuing, except on 2mb (E1).
  • No configuration effort
  • PQ – Priority Queuing

Requires configuration
4 queues:

  • High
  • Medium
  • Normal
  • Low

Use ACL to define “which paquet” to “which queue”

Priority Queuing

  • Round Robin
  • Queuing discipline
  • Few queues, and assign traffic to them
  • RR scheduler process 1 packet from 1 queue, and then 1 packet from the next queue, etc.
  • No mechanism of traffic prioritization
  • Weighted Round Robin (WRR)
  • Permet d’assigner un poids à chaque queue
  • CQ (Custom Queuing) est un exemple de WRR, ou on peux configurer le nb d’octets de chaque queues à procésser avant de passer à une autre queue.
  • WRR & CQ weakness: si le poids assigné à une queue est proche du MTU de l’interface, la division de bande passante ne pourra pas être déterminée.
  • Weighted Fair Queuing
  • WFQ is simple
  • WFQ is the default-queuing on E1 interface (2Mb)
  • WFQ is used by CBWFQ & LLC (popular, modern, advanced queuing methods)

WFQ goals/objectives:

    • Divise le trafic en “flows”
    • Fournis juste allocation de BW aux flows actifs
    • Fournis schdeuling plus rapide aux flows de petits volumes
    • fournis plus de BW aux flows prioritaires

Règle les insuffisances de FIFO & PQ:

  • pas les délais, jitter, starvation de FIFO
  • n’impose pas de starvation de paquets de PQ (ceux de faible priorité) … hum hum.. (si quelqu’un lis cette lignes; laissez un commentaire)

WFQ Classification & scheduling
WFQ est un algorithme de queuing basé sur les flux.
Les flux sont identifiés en se basant sur les fields suivants:

    • Source IP address
    • Destination IP address
    • Protocol number
    • Type of service (ToS)
    • Source TCP/UDP Port number
    • Destination TCP/UDP port number

Weight Fair Queuing

WFQ insertion & drop policy
WFQ à une file d’attente pour tous les paquets de tous les flux.
La file d’attente est la somme de toute la mémoire prise par les paquets présents dans le système WFQ.
Si la hold queue (file d’attente) est pleine, un nouveau paquet arrivant sera droppé – Aggressive dropping – except si le paquet est assigné à une file vide.
CDT (congestive discard treshold) – si la file d’attente n’est pas pleine, mais que le CDT l’est, paquet droppé – Early dropping.

Benefits & drawbacks of WFQ
Benefits:

    • simple configuration
    • no starve flows
    • drop les flux du plus agressif au moins agressif
    • standard supported by all cisco products & IOS

Drawbacks:

    • classification & scheduling not configurable
    • supported only on slow links < 2 mb
    • no BW/Delay garantee.

Configuring & monitoring WFQ

fair-queue [cdt [dynamic-queues [reservable-queues]]]
Router(config-if)# hold-queue max-limit out

Verification:
Router#show interface
Router#show queue
  • Class-Based Weighted Fair Queuing

CBWFQ addresse quelques limitations de PQ, CQ, WFQ.

Configuring and monitoring CBWFQ

class-map défini les classes de traffic

class-map transaction
match access-group 101
class-map business
match access-group 103

policy-map

policy-map enterprise
 class transaction
  bandwidth 128
  queue-limit 50
 class business
  bandwidth 256
  queue-limir 90
 class class-default
  fair-queue 16

Vérification:
show policy-map interface
  • Low-Latency Queuing

WFQ et CBWFQ ne garantissent pas la BW et le délai.
LLQ le fait en incluant une file de priorité stricte.

LLQ Configuration

router(config)#policy-map enterprise
router(config-pmap)#class voice
router(config-pmap-p)#priority bandwidth {burst - entre 32 et 2 000 000}
router(config-pmap-p)#priority percent percentage {burst - entre 32 et 2 000 000}

Vérification:
show policy-map interface 

Benoit

Network engineer at CNS Communications. CCIE #47705, focused on R&S, Data Center, SD-WAN & Automation.

More Posts - Website

Follow Me:
TwitterLinkedIn

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *