Switches : Switches Cisco Catalyst de la serie 6500

Programación de salida de QoS en los Catalyst 6500/6000 Series Switch que funcionan con el software del sistema del Cisco IOS

18 Octubre 2015 - Traducción Automática
Otras Versiones: PDFpdf | Inglés (19 Septiembre 2015) | Comentarios


Contenido


Introducción

El uso de la programación de salida asegura que el tráfico importante no se interrumpe en caso de que se produzca una suscripción excesiva. Este documento trata todas las técnicas y los algoritmos involucrados en la programación de salida en el switch Catalyst 6500/6000. Este documento también explica cómo configurar y verificar la operación de la programación de salida en el Catalyst 6500/6000 que funciona con el software de Cisco IOS�.

Refiera a la programación de salida de QoS en los Catalyst 6500/6000 Series Switch que funcionan con el software del sistema de CatOS para más información sobre el Weighted Random Early Detection (WRED), el ordenamiento cíclico cargado (WRR), y la eliminación de cola.

prerrequisitos

Requisitos

No hay requisitos específicos para este documento.

Componentes Utilizados

Este documento no tiene restricciones específicas en cuanto a versiones de software y de hardware.

Convenciones

Consulte Convenciones de Consejos TécnicosCisco para obtener más información sobre las convenciones del documento.

Antecedentes

Perdidas de la cola de salida

Las caídas de resultados son causadas por una interfaz congestionada. Una causa común de esto pudo ser tráfico de un link de ancho de banda alto que se conmuta a un link de ancho de banda más bajo, o el tráfico de los links entrantes múltiples que se conmuta a un solo link saliente.

Por ejemplo, si una gran cantidad de tráfico saturado entra en una interfaz gigabit y se conmuta hacia una interfaz de 100Mbps, esto podría ocasionar que aumenten las pérdidas en la salida en la interfaz de 100Mbps. Esto ocurre porque la cola de salida en esa interfaz está saturada por el exceso de tráfico debido a la asimetría de la velocidad entre los anchos de banda entrante y saliente. Las relaciones del tráfico en la interfaz saliente no pueden validar todos los paquetes que deban ser enviados.

Para resolver el problema, la mejor solución es aumentar la velocidad de línea. Sin embargo, hay maneras de prevenir, de disminuir, o de controlar las caídas de resultados cuando usted no quiere aumentar la velocidad de línea. Usted puede prevenir las caídas de resultados solamente si las caídas de resultados son una consecuencia de las ráfagas breves de los datos. Si las caídas de resultados son causadas por un flujo constante de la alta velocidad, usted no puede prevenir los descensos. Sin embargo, usted puede controlarlos.

Capacidad de formar colas de salida de placas de línea diferentes en el Catalyst 6500/6000

Si usted es inseguro sobre la capacidad de espera de un puerto, publique la interfaz de espera de la demostración {gigabitethernet | comando mod/port del FastEthernet}. Se muestran aquí las primeras líneas de salida de un comando show queueing interface. El puerto está en un linecard del Supervisor Engine 1A:

cosmos#show queueing interface gigabitethernet 1/1
Interface GigabitEthernet1/1 queueing strategy:  Weighted Round-Robin 

  QoS is disabled globally 
  Trust state: trust DSCP 
  Default COS is 0 
  Transmit group-buffers feature is enabled 
  Transmit queues [type = 1p2q2t]: 
    Queue Id    Scheduling  Num of thresholds 
    ----------------------------------------- 
       1         WRR low             2 
       2         WRR high            2 
       3         Priority            1 

!--- Output suppressed.

La salida muestra que este puerto tiene un tipo de los envíos a cola de salida conocido como 1p2q2t.

Otra manera de considerar el tipo de espera disponible en un puerto específico es publicar el comando show interface capabilities:

la-orion#show interface gigabitethernet 6/2 capabilities 
GigabitEthernet6/2
� Model:���������������� WS-SUP720-BASE
� Type:����������������� No GBIC
� Speed:���������������� 1000
� Duplex:��������������� full
� Trunk encap. type:���� 802.1Q,ISL
� Trunk mode:����������� on,off,desirable,nonegotiate
� Channel:�������������� yes
� Broadcast suppression: percentage(0-100)
� Flowcontrol:���������� rx-(off,on,desired),tx-(off,on,desired)
� Membership:����������� static
� Fast Start:����������� yes
� QOS scheduling:������� rx-(1p1q4t), tx-(1p2q2t)
� CoS rewrite:���������� yes
� ToS rewrite:���������� yes
� Inline power:��������� no
� SPAN:����������������� source/destination
� UDLD������������������ yes
� Link Debounce:�������� yes
� Link Debounce Time:��� yes
� Ports on ASIC:�������� 1-2

Entienda la capacidad de la cola de un puerto

Hay vario tipo de colas de administración del tráfico disponibles en el Switches del Catalyst 6500/6000. Esta tabla explica la notación de la arquitectura de QoS del puerto:

— — — — — — — —
Transmita (tx) /Receive (el rx) Haga cola la notación No de las colas de administración del tráfico Priority queue No de las colas de administración del tráfico WRR No. y tipo de umbral para las colas de administración del tráfico WRR
Tr 2q2t 2 2 eliminación de cola configurable 2
Tr 1p2q2t 3 1 2 2 WRED configurable
Tr 1p3q1t 4 1 3 1 WRED configurable
Tr 1p2q1t 3 1 2 1 WRED configurable
Rx 1q4t 1 eliminación de cola configurable 4
Rx 1p1q4t 2 1 1 eliminación de cola configurable 4
Rx 1p1q0t 2 1 1 No configurable
Rx 1p1q8t 2 1 1 8 WRED configurable
Tr 1p3q8t 4 1 3 8 WRED configurable o eliminación de cola
Tr 1p7q8t 8 1 7 8 WRED configurable o eliminación de cola
Rx 1q2t 1 1 descenso del configurable�tail = 1 nonconfigurable
Rx 1q8t 1 eliminación de cola configurable 8
Rx 2q8t 2 2 eliminación de cola configurable 8

La tabla siguiente enumera algunos de los módulos y de los tipos de cola en el rx y los costados TX de la interfaz o del puerto. Si su módulo no se enumera aquí, utilice el comando show interface capabilities de determinar la capacidad de la cola que está disponible. Describen al comando show interface capabilities en la capacidad de formar colas de salida de placas de línea diferentes en la sección del Catalyst 6500/6000.

Módulo Colas de administración del tráfico del rx Colas de administración del tráfico del tx
WS-X6K-S2-PFC2 1p1q4t 1p2q2t
WS-X6K-SUP1A-2GE 1p1q4t 1p2q2t
WS-X6K-SUP1-2GE 1q4t 2q2t
WS-X6501-10GEX4 1p1q8t 1p2q1t
WS-X6502-10GE 1p1q8t 1p2q1t
WS-X6516-GBIC 1p1q4t 1p2q2t
WS-X6516-GE-TX 1p1q4t 1p2q2t
WS-X6416-GBIC 1p1q4t 1p2q2t
WS-X6416-GE-MT 1p1q4t 1p2q2t
WS-X6316-GE-TX 1p1q4t 1p2q2t
WS-X6408A-GBIC 1p1q4t 1p2q2t
WS-X6408-GBIC 1q4t 2q2t
WS-X6524-100FX-MM 1p1q0t 1p3q1t
WS-X6324-100FX-SM 1q4t 2q2t
WS-X6324-100FX-MM 1q4t 2q2t
WS-X6224-100FX-MT 1q4t 2q2t
WS-X6548-RJ-21 1p1q0t 1p3q1t
WS-X6548-RJ-45 1p1q0t 1p3q1t
WS-X6348-RJ-21 1q4t 2q2t
WS-X6348-RJ21V 1q4t 2q2t
WS-X6348-RJ-45 1q4t 2q2t
WS-X6348-RJ-45V 1q4t 2q2t
WS-X6148-RJ-45V 1q4t 2q2t
WS-X6148-RJ21V 1q4t 2q2t
WS-X6248-RJ-45 1q4t 2q2t
WS-X6248A-TEL 1q4t 2q2t
WS-X6248-TEL 1q4t 2q2t
WS-X6024-10FL-MT 1q4t 2q2t

Configuración, monitor, y programación de resultados de ejemplo en el Catalyst 6500/6000

Configuración

Esta sección describe todos los pasos necesarios configurar la programación de salida en un Catalyst 6500/6000 que funciona con el Cisco IOS Software. Para la configuración predeterminada del Catalyst 6500/6000, vea el caso 1: Se habilita QoS y un parámetro predeterminado es sección usada de este documento.

La configuración del Catalyst 6500/6000 implica estos cinco pasos:

  1. Habilitar QoS (Calidad de servicio)

  2. Asocie cada valor posible del Clase de Servicio (CoS) a una cola y a un umbral (opcionales)

  3. Configure la ponderación WRR (opcional)

  4. Configure los buffers que se asignan a cada cola (opcional)

  5. Configure el límite de umbral para cada cola (opcional)

Nota: Cada uno de estos pasos es opcional, a excepción del paso 1. Usted puede decidir dejar el valor predeterminado para uno o más parámetros.

Paso 1: Habilitar QoS (Calidad de servicio)

Primero, permiso QoS. Recuerde que QoS está desactivada de manera predeterminada. Cuando se inhabilita QoS, CoS que le asociaba ha configurado no afecta al resultado. Hay una cola servida en una primera adentro, primero hacia fuera la manera ((Primero en Salir FIFO)), y todos los paquetes se caen allí.

cosmos#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z. 
cosmos(config)#mls qos

QoS is enabled globally 
  Microflow policing is enabled globally 
  
QoS global counters: 
    Total packets: 552638 
    IP shortcut packets: 0 
    Packets dropped by policing: 0 
    IP packets with TOS changed by policing: 0 
    IP packets with COS changed by policing: 0 
    Non-IP packets with CoS changed by policing: 0

Paso 2: Asocie cada valor posible de CoS a una cola y a un umbral

Para todos los tipos de cola, asigne CoS a una cola y a un umbral. La asignación definida para un tipo 2q2t de puerto no se aplica a ningún puerto 1p2q2t. También, la asignación para 2q2t se aplica a todos los puertos que tienen un mecanismo de espera 2q2t. Publique estos comandos del mapa de CoS bajo interfaz:

wrr-queue  cos-map Q_number_(1-2) threshold_number_(1-2) cos_value_1 
 cos_value_2

priority-queue cos-map Q_number_(always 1) cos_value_1 cos_value_2

Nota: Cada uno de estos comandos debe estar en una línea.

Usted puede configurar por separado la cola WRR. Si hay un priority queue, usted puede configurarlo con el comando priority-queue.

Nota: Las colas de administración del tráfico se numeran siempre el comenzar con la cola de la bajo-prioridad posible y terminación con la cola de prioridad estricta que está disponible. Por ejemplo:

  • La cola 1 es la cola del WRR de baja prioridad.

  • La cola 2 es la cola del WRR de alta prioridad.

  • La cola 3 es la cola de prioridad estricta.

Relance esta operación para todos los tipos de colas de administración del tráfico, o bien sigue habiendo la asignación de CoS del valor por defecto. Esto es un ejemplo de configuración para 1p2q2t:

cosmos#configure terminal 
cosmos(config)#interface gigabitethernet 1/1 
cosmos(config-if)#priority-queue cos-map 1 5   

!--- Assign a CoS of 5 to priority queue.

  cos-map configured on:  Gi1/1 Gi1/2 
cosmos(config-if)#wrr-queue cos-map 1 1 0 1

!--- Assign CoS 0 and 1 to the first threshold of low-priority WRR queue.

  cos-map configured on:  Gi1/1 Gi1/2 
cosmos(config-if)#wrr-queue cos-map 1 2 2 3

!--- Assign CoS 2 and 3 to the second threshold of low-priority WRR queue.

  cos-map configured on:  Gi1/1 Gi1/2 
cosmos(config-if)#wrr-queue cos-map 2 1 4 6

!--- Assign CoS 4 and 6 to the first threshold of high-priority WRR queue.

  cos-map configured on:  Gi1/1 Gi1/2 
cosmos(config-if)#wrr-queue cos-map 2 2 7 

!--- Assign CoS 7 to the second threshold of high-priority WRR queue.

  cos-map configured on:  Gi1/1 Gi1/2

Verifique la configuración

cosmos#show queueing interface gigabitethernet 1/1 

!--- Output suppressed.

 
queue thresh cos-map 
    --------------------------------------- 
    1     1      0 1 
    1     2      2 3 
    2     1      4 6 
    2     2      7 
    3     1      5 

!--- Output suppressed.

Paso 3: Configure la ponderación WRR

Configure la ponderación WRR para las dos colas de administración del tráfico WRR. Publique este comando interface:

wrr-queue bandwidth weight_for_Q1 weight_for_Q2

La ponderación 1 se relaciona para hacer cola 1, que debe ser la cola del WRR de baja prioridad. Guarde siempre este más bajo llano de la ponderación una que la ponderación 2. La ponderación puede tomar cualquier valor entre 1 y 255. Utilice estas fórmulas para asignar el porcentaje:

  • Para hacer cola 1 — [ponderación 1/(ponderación 1 + ponderación 2)]

  • Para hacer cola 2 — [ponderación 2/(ponderación 1 + ponderación 2)]

Usted debe definir la ponderación para todos los tipos de colas de administración del tráfico. No es necesario que estos tipos de peso sean iguales. Esto es un ejemplo para 2q2t, donde la cola 1 se sirve el 20 por ciento del tiempo y la cola 2 se sirve el 80 por ciento del tiempo:

cosmos#configure terminal
Enter configuration commands, one per line.  End with CNTL/Z. 
cosmos(config)#interface gigabitethernet 1/1 
cosmos(config-if)#wrr-queue bandwidth ? 
  <1-255>  enter bandwidth weight between 1 and 255 
cosmos(config-if)#wrr-queue bandwidth 20 80

!--- Queue 1 is served 20% of the time, and queue 2 is served
!--- 80% of the time.

cosmos(config-if)#

Verifique la configuración

cosmos#show queueing interface gigabitethernet 1/1
Interface GigabitEthernet1/1 queueing strategy:  Weighted Round-Robin 
  Port QoS is enabled 
  Port is untrusted 
  Default cos is 0 
  Transmit queues [type = 1p2q2t]: 
    Queue Id    Scheduling  Num of thresholds 
    ----------------------------------------- 
       1         WRR low             2 
       2         WRR high            2 
       3         Priority            1 

    WRR bandwidth ratios:   20[queue 1]  80[queue 2] 
    queue-limit ratios:     90[queue 1]   5[queue 2] 

!--- Output suppressed.

Nota: Usted puede configurar diversas ponderaciones WRR para cada interfaz cuando no es posible utilizar el software CatOS.

Paso 4: Configure los buffers que se asignan a cada cola

Usted debe definir el índice de la cola de transmisión. Esto determina cómo los buffers están partidos entre las diversas colas.

wrr-queue queue-limit percentage_WRR_Q1 percentage_WRR_Q2

cosmos(config)#interface gigabitethernet 1/2 
cosmos(config-if)#wrr-queue queue-limit 70 15     

!--- Queue 1 has 70% of the buffers.
!--- Queues 2 and 3 both have 15% of the buffers.

  queue-limit configured on:  Gi1/1 Gi1/2

Nota: Si la capacidad de espera de su puerto Gigabit es 1p1q2t, usted necesita utilizar el mismo nivel para la cola de prioridad estricta y para la cola del WRR de alta prioridad. Estos niveles no pueden diferenciar por las razones de hardware. Solamente el ancho de banda para las dos colas de administración del tráfico WRR se configura. Usted utiliza automáticamente el mismo valor para la cola del WRR de alta prioridad y la cola de prioridad estricta, si hay ninguno.

Algunos tipos de espera no tienen tamaños de la cola armoniosos. Un ejemplo es el 1p3q1t, que está disponible en el WS-X6548RJ45. Reparan a estos tipos de cola, y usted no puede modificarlos.

Verifique la configuración

cosmos#show queueing interface gigabitethernet 1/2
Interface GigabitEthernet1/2 queueing strategy:  Weighted Round-Robin 
  Port QoS is enabled 
  Port is untrusted 
  Default cos is 0 
  Transmit queues [type = 1p2q2t]: 
    Queue Id    Scheduling  Num of thresholds 
    ----------------------------------------- 
       1         WRR low             2 
       2         WRR high            2 
       3         Priority            1 

    WRR bandwidth ratios:    5[queue 1] 255[queue 2] 
    queue-limit ratios:     70[queue 1]  15[queue 2]

Nota: Es el mejor dejar a la parte de más grande los buffers para la cola del WRR de baja prioridad. Ésta es la cola donde usted necesita habilitar mitigar adicional. Las otras colas tienen prioridad de servicio más alta.

Paso 5: Configure el límite de umbral para cada cola

Como último paso, configure el límite de umbral para la cola WRED o para la cola de eliminación de cola. Esta lista proporciona los comandos:

  • Para las colas de administración del tráfico que utilizan el WRED como el mecanismo de descarte para el umbral, publique estos comandos:

    wrr-queue random-dtect min-threshold Q_number 
     threshold_1_value threshold_2_value
    
    wrr-queue random-dtect max-threshold Q_number 
     threshold_1_value threshold_2_value
    
    

    Nota: Cada uno de estos comandos debe estar en una línea.

  • Para las colas de administración del tráfico que utilizan la eliminación de cola como el mecanismo de descarte, publique este comando:

    wrr-queue threshold Q_number 
     threshold_1_value threshold_2_value
    
    

    Nota: Este comando debe estar en una línea.

Configuración para una cola WRED:

cosmos(config)#interface gigabitethernet 1/1
cosmos(config-if)#wrr-queue random-detect min-threshold  1 20 50 

!--- This sets the threshold of queue 1 to 20 and 50% minimum threshold 
!--- configured on Gi1/1 Gi1/2.

cosmos(config-if)#wrr-queue random-detect min-threshold  2 20 50 

!--- This sets the threshold of queue 2 to 20 and 50% minimum threshold 
!--- configured on Gi1/1 Gi1/2.

cosmos(config-if)#wrr-queue random-detect max-threshold  1 50 80 

!--- This sets the threshold of queue 1 to 50 and 80% maximum threshold 
!--- configured on Gi1/1 Gi1/2.

cosmos(config-if)#wrr-queue random-detect max-threshold  2 40 60 

!--- This sets the threshold of queue 2 to 49 and 60% maximum threshold 
!--- configured on Gi1/1 Gi1/2.

Configuración para una cola de eliminación de cola:

cosmos(config)#interface fastethernet 3/1 
cosmos(config-if)#wrr-queue threshold ? 
  <1-2> enter threshold queue id (1-2) 
cosmos(config-if)#wrr-queue threshold 1 ? 
  <1-100>  enter percent of queue size between 1 and 100 
cosmos(config-if)#wrr-queue threshold 1 50 100      

!--- This sets the tail drop threshold for this 2q2t interface for  
!--- queue 1 (low-priority) to 50 and 100% of the buffer.

threshold configured on: Fa3/1 Fa3/2 Fa3/3 Fa3/4 Fa3/5 Fa3/6 Fa3/7 Fa3/8 
 Fa3/9 Fa3/10 Fa3/11 Fa3/12 
cosmos(config-if)# 
cosmos(config-if)# 
cosmos(config-if)#wrr-queue threshold 2 40 100     

!--- This sets the tail drop threshold for this 2q2t interface for  
!--- queue 2 (high-priority) to 40 and 100% of the buffer.
   
threshold configured on: Fa3/1 Fa3/2 Fa3/3 Fa3/4 Fa3/5 Fa3/6 Fa3/7 Fa3/8 
 Fa3/9 Fa3/10 Fa3/11 Fa3/12 
cosmos(config-if)#

Verifique la configuración

cosmos#show queueing interface gigabitethernet 1/1
Interface GigabitEthernet1/1 queueing strategy:  Weighted Round-Robin 
  Port QoS is enabled 
  Port is untrusted 
  Default cos is 0 
  Transmit queues [type = 1p2q2t]: 
    Queue Id    Scheduling  Num of thresholds 
    ----------------------------------------- 
       1         WRR low             2 
       2         WRR high            2 
       3         Priority            1 

    WRR bandwidth ratios:   20[queue 1]  80[queue 2] 
    queue-limit ratios:     70[queue 1]  15[queue 2] 


    queue random-detect-min-thresholds 
��� ----------------------------- 
      1    20[1] 50[2] 
      2    20[1] 50[2] 

    queue random-detect-max-thresholds 
    ---------------------------------- 
      1    50[1] 80[2] 
      2    40[1] 60[2] 

cosmos#show queueing interface fastethernet 3/1 
Interface FastEthernet3/1 queueing strategy:  Weighted Round-Robin 
  Port QoS is enabled 
  Port is untrusted 
  Default cos is 0 
  Transmit queues [type = 2q2t]: 
    Queue Id    Scheduling  Num of thresholds 
    ----------------------------------------- 
       1         WRR low             2 
       2         WRR high            2 

    WRR bandwidth ratios:  100[queue 1] 255[queue 2] 
    queue-limit ratios:     90[queue 1]  10[queue 2] 

    queue tail-drop-thresholds 
    -------------------------- 
    1     50[1] 100[2] 
    2     40[1] 100[2]

Usted no puede configurar el umbral y asignar CoS a la cola por el puerto. Todos los cambios se aplican a un conjunto de puertos contiguos:

  • Cuatro puertos para el linecards del gigabit — los puertos 1 a 4 son juntos, y los puertos 5 a 8 son juntos.

  • Doce puertos para 10/100 puerto o 100 puertos de fibra basaron on�1q4t/2q2t que hacía cola — 1 a 12, 13 a 24, 25 a 36, y 36 a 48.

  • Para determinar el puerto exacto que pertenece al mismo ASIC, utilice el comando show interface capabilities.

Monitoree la programación de salida y verifique las configuraciones

El comando easiest de publicar para verificar la configuración de tiempo de ejecución actual para un puerto con respecto a la programación de salida es la interfaz de espera de la demostración {gigabitethernet | comando del /port del slot del FastEthernet}. Este comando visualiza el tipo de espera en el puerto, la asignación de CoS a las diversos colas de administración del tráfico y umbrales, la distribución de búfer, y la ponderación WRR. Aquí, es el 20 por ciento WRR para la cola el 1 y 80 por ciento WRR para la cola 2. El comando también visualiza toda la información configurada para la programación de salida y el número de paquetes que se caigan en cada cola para cada umbral:

cosmos#show queueing interface gigabitethernet 1/1
Interface GigabitEthernet1/1 queueing strategy:  Weighted Round-Robin 
  Port QoS is enabled 
  Port is untrusted 
  Default COS is 0 
  Transmit queues [type = 1p2q2t]: 
    Queue Id    Scheduling  Num of thresholds 
    ----------------------------------------- 
       1         WRR low             2 
       2         WRR high            2 
       3         Priority            1 
    WRR bandwidth ratios:   20[queue 1]  80[queue 2] 
    queue-limit ratios:     70[queue 1]  15[queue 2] 

    queue random-detect-max-thresholds 
    ---------------------------------- 
      1    50[1] 80[2] 
      2    40[1] 60[2] 

    queue thresh cos-map 
    --------------------------------------- 
    1     1      0 1 
    1     2      2 3 
    2     1      4 6 
    2     2      7 
    3     1      5 

  Receive queues [type = 1p1q4t]: 
    Queue Id    Scheduling  Num of thresholds 
    ----------------------------------------- 
       1         Standard            4 
       2         Priority            1 
  

    queue tail-drop-thresholds 
    -------------------------- 
    1     100[1] 100[2] 100[3] 100[4] 

    queue thresh cos-map 
    --------------------------------------- 
    1     1      0 1 
    1     2      2 3 
    1     3      4 
    1     4      6 7 
    2     1      5 
  

  Packets dropped on Transmit: 
    BPDU packets:  0 

    queue thresh    dropped  [cos-map] 
    --------------------------------------------------- 
    1     1               0  [0 1 ] 
    1     2               0  [2 3 ] 
    2     1               0  [4 6 ] 
    2     2               0  [7 ] 
    3     1               0  [5 ] 

  Packets dropped on Receive: 
    BPDU packets:  0 

    queue thresh    dropped  [cos-map] 
    --------------------------------------------------- 
    1     1               0  [0 1 ] 
    1     2               0  [2 3 ] 
    1     3               0  [4 ] 
    1     4               0  [6 7 ] 
    2     1               0  [5 ]

Ejemplo de programación de salida

Este tráfico se inyecta en el Catalyst 6500/6000:

  • En el Gigabit de puerto el 1/2: un Gigabit de tráfico con la precedencia de cero

  • En el Gigabit de puerto 5/2:

    • 133MB del tráfico con la precedencia de siete

    • 133MB del tráfico con la precedencia de seis

    • 133MB del tráfico con la precedencia de cinco

    • 133MB del tráfico con la precedencia de cuatro

    • 133MB del tráfico con la precedencia de tres

    • 133MB del tráfico con la precedencia de dos

    • 133MB del tráfico con la precedencia de una

Todas las salidas de tráfico de unidifusión el Switch por el Gigabit de puerto 1/1, que es muy oversubscribed.

Caso 1: Se habilita QoS y se utiliza un parámetro predeterminado

El comando interface gigabitethernet 1/1 de espera de la demostración configura toda la salida en este ejemplo. El comando proporciona la información adicional sobre la previsión de la entrada. Sin embargo, como este documento cubre solamente la programación de salida, suprime esa salida.

Cuando QoS global se habilita y todos los parámetros predeterminados son funcionando, los resultados de esta salida después de algunos minutos:

nelix#show queueing interface gigabitethernet 1/1 
Interface GigabitEthernet1/1 queueing strategy:  Weighted Round-Robin 
  Port QoS is enabled 
  Trust state: trust DSCP 
  Default cos is 0 
  Transmit queues [type = 1p2q2t]: 
    Queue Id    Scheduling  Num of thresholds 
    ----------------------------------------- 
       1         WRR low             2 
       2         WRR high            2 
       3         Priority            1 

    WRR bandwidth ratios:  100[queue 1] 255[queue 2] 
    queue-limit ratios:     90[queue 1]   5[queue 2] 

    queue random-detect-max-thresholds 
    ---------------------------------- 
      1    40[1] 100[2] 
      2    40[1] 100[2] 

    queue thresh cos-map 
    --------------------------------------- 
    1     1      0 1 
    1     2      2 3 
    2     1      4 
    2     2      6 7 
    3     1      5 

  Packets dropped on Transmit: 
    BPDU packets:  0 

    queue thresh    dropped  [cos-map] 
    --------------------------------------------------- 
    1     1       149606424  [0 1 ] 
    1     2               0  [2 3 ] 
    2     1        16551394  [4 ] 
    2     2         4254446  [6 7 ] 
    3     1               0  [5 ]

En esta salida, los valores predeterminados son:

  • Ponderación WRR para la cola 1 — 100/(100 + 255) el = 28%

  • Ponderación WRR para la cola 2 — 255/(255 + 100) el = 72%

  • Distribución de búfer: — el 90% para la cola 1, el 5% para la cola 2, y el 5% para la cola de prioridad estricta

La mayor parte de los paquetes en la cola del WRR de baja prioridad se caen, pero algunos todavía se caen en la cola del WRR de alta prioridad para ambos umbrales. Hay un total de 170,412,264 descensos (149,606,424 + 16,551,394 + 4,254,446). Estos descensos están partidos como sigue:

  • 149,606,424/170,412,264 el = 88% de los descensos en la cola 1 (primer paquete de umbral con CoS 0 y 1)

  • 16,551,394/170,412,264 el = 10% de los descensos en la cola 2 (primer paquete de umbral con CoS 4)

  • 4,254,446/170,412,264 el = 2% de los descensos en la cola 2 (segundo paquete de umbral con CoS de 6 o 7)

Nota: Usted no ve ninguna descensos en la cola de prioridad estricta.

Caso 2: Modifique la ponderación WRR

Como se apunta en el caso 1: Se habilita QoS y un parámetro predeterminado es sección usada, los paquetes en la cola 2 todavía se está cayendo. Modifique la ponderación WRR para dar más ancho de banda para hacer cola 2. Ahora, la cola 1 se vacia el 4 por ciento del tiempo, y la cola 2 se vacia el 96 por ciento del tiempo:

show run interface gigabitethernet 1/1 
interface GigabitEthernet1/1 
 no ip address 
 wrr-queue bandwidth 10 255 
 mls qos trust dscp 
 switchport 
 switchport mode access 
end 
  
nelix#show queueing interface gigabitethernet 1/1 
Interface GigabitEthernet1/1 queueing strategy:  Weighted Round-Robin 
  Port QoS is enabled 
  Trust state: trust DSCP 
  Default cos is 0 
  Transmit queues [type = 1p2q2t]: 
    Queue Id    Scheduling  Num of thresholds 
    ----------------------------------------- 
       1         WRR low             2 
       2         WRR high            2 
       3         Priority            1 

    WRR bandwidth ratios:   10[queue 1] 255[queue 2] 
    queue-limit ratios:     90[queue 1]   5[queue 2] 

    queue random-detect-max-thresholds 
    ---------------------------------- 
      1    40[1] 100[2] 
      2    40[1] 100[2] 

    queue thresh cos-map 
    --------------------------------------- 
    1     1      0 1 
    1     2      2 3 
    2     1      4 
    2     2      6 7 
    3     1      5 

  Packets dropped on Transmit: 
    BPDU packets:  0 

    queue thresh    dropped  [cos-map] 
    --------------------------------------------------- 
    1     1         2786205  [0 1 ] 
    1     2               0  [2 3 ] 
    2     1           11363  [4 ] 
    2     2              69  [6 7 ] 
    3     1               0  [5 ]

Como se ve en esta salida, el porcentaje de los descensos en la cola 2 es mucho más bajo ahora. Un total de 2,797,637 descensos están partidos de esta manera:

  • 2,786,205/2,797,637 = 99.591% de los descensos en la cola 1 (con el paquete de CoS 0 y 1)

  • 11,363/2,797,637 = 0.408% de los descensos en la cola 2 (primer umbral con el paquete CoS 4)

  • 69/2,797,637 = 0.001% de los descensos en la cola 2 (segundo umbral para el paquete con CoS 6 y 7)

Si usted utiliza las diversas ponderaciones WRR, asegura más QoS en la cola 2.

Caso 3: Modificación del peso WRR adicional

Usted puede ser aún más agresivo con la ponderación WRR. En esta salida de muestra, el solamente 0.39 por ciento de la ponderación se da para hacer cola 1:

show run interface gigabitethernet 1/1 
interface GigabitEthernet1/1 
 no ip address 
 wrr-queue bandwidth 1 255 
 mls qos trust dscp 
 switchport 
 switchport mode access 
end 

nelix#show queueing interface gigabitethernet 1/1 
Interface GigabitEthernet1/1 queueing strategy:  Weighted Round-Robin 
  Port QoS is enabled 
  Trust state: trust DSCP 
  Default cos is 0 
  Transmit queues [type = 1p2q2t]: 
    Queue Id    Scheduling  Num of thresholds 
    ----------------------------------------- 
       1         WRR low             2 
       2         WRR high            2 
       3         Priority            1 

    WRR bandwidth ratios:    1[queue 1] 255[queue 2] 
    queue-limit ratios:     90[queue 1]   5[queue 2] 

    queue random-detect-max-thresholds 
    ---------------------------------- 
      1    40[1] 100[2] 
      2    40[1] 100[2] 

    queue thresh cos-map 
    --------------------------------------- 
    1     1      0 1 
    1     2      2 3 
    2     1      4 
    2     2      6 7 
    3     1      5 
  
  Packets dropped on Transmit: 
    BPDU packets:  0 

    queue thresh    dropped  [cos-map] 
    --------------------------------------------------- 
    1     1         2535315  [0 1 ] 
    1     2               0  [2 3 ] 
    2     1             705  [4 ] 
    2     2              73  [6 7 ] 
    3     1               0  [5 ]

Incluso con la ponderación agresiva WRR, los paquetes todavía se están cayendo en la cola 2. Sin embargo, en comparación, no es muchos paquetes. Ahora hay solamente una caída de paquetes del 0.03 por ciento en la cola 2.

Caso 4: Modifique la asignación del buffer del límite de cola

Como se ve en el caso 2: Modifique la ponderación y el caso 3 WRR: Las secciones adicionales de la Modificación del peso WRR, los paquetes todavía están cayendo en la cola 2, aunque el porcentaje WRR le asegure que el descenso es mínimo. Sin embargo, cuando el segundo umbral (que se fija al 100 por ciento) se alcanza en la cola 2, algunos paquetes continúan siendo caídos.

Para mejorar esto, cambie el límite de cola (tamaños del buffer asignado a cada cola). En este ejemplo, el límite de cola se establece al 70 por ciento para la cola 1, el 15 por ciento para la cola el 2, y 15 por ciento para la cola de prioridad estricta:

show run gigabitethernet 1/1
interface GigabitEthernet1/1 
 no ip address 
 wrr-queue bandwidth 1 255 
 wrr-queue queue-limit 70 15 
 mls qos trust dscp 
 switchport 
 switchport mode access 
end 

nelix#show queueing interface gigabitethernet 1/1 
Interface GigabitEthernet1/1 queueing strategy:  Weighted Round-Robin 
  Port QoS is enabled 
  Trust state: trust DSCP 
  Default cos is 0 
  Transmit queues [type = 1p2q2t]: 
    Queue Id    Scheduling  Num of thresholds 
    ----------------------------------------- 
       1         WRR low             2 
       2         WRR high            2 
       3         Priority            1 

    WRR bandwidth ratios:    1[queue 1] 255[queue 2] 
    queue-limit ratios:     70[queue 1]  15[queue 2] 

    queue random-detect-max-thresholds 
    ---------------------------------- 
      1    40[1] 100[2] 
      2    40[1] 100[2] 

    queue thresh cos-map 
    --------------------------------------- 
    1     1      0 1 
    1     2      2 3 
    2     1      4 
    2     2      6 7 
    3     1      5 

  Receive queues [type = 1p1q4t]: 
    Queue Id    Scheduling  Num of thresholds 
    ----------------------------------------- 
       1         Standard            4 
       2         Priority            1 
  
    queue tail-drop-thresholds 
    -------------------------- 
    1     100[1] 100[2] 100[3] 100[4] 

    queue thresh cos-map 
    --------------------------------------- 
    1     1      0 1 
    1     2      2 3 
    1     3      4 
    1     4      6 7 
    2     1      5 
 
  Packets dropped on Transmit: 
    BPDU packets:  0 

    queue thresh    dropped  [cos-map] 
    --------------------------------------------------- 
    1     1       154253046  [0 1 ] 
    1     2               0  [2 3 ] 
    2     1               0  [4 ] 
    2     2               0  [6 7 ] 
    3     1               0  [5 ]

Ahora, los descensos ocurren solamente en la cola 1.

Utilice la programación de salida para reducir la fluctuación y retraso

Los estudios de casos en la sección del Ejemplo de programación de resultados demuestran la ventaja de implementar la programación de salida para evitar un descenso del voip o del tráfico crítico en caso de oversubscription del puerto de egreso. El oversubscription no ocurre muy con frecuencia en una red normal (determinado en un link Gigabit). El oversubscription debe suceder solamente durante los horarios picos del tráfico o durante las ráfagas de tráfico que ocurren dentro mismo de un período corto.

Incluso sin ningún oversubscription, la programación de salida puede ser de gran ayuda en una red donde está End to End QoS implementado. Esta sección proporciona los ejemplos de cómo la programación de salida puede ayudar a reducir la fluctuación y retraso.

Reduzca el retardo

El retardo de un paquete aumenta debido al tiempo “perdió” en el buffer de cada Switch mientras que espera para ser transmitido. Por ejemplo, un paquete de voz pequeño con CoS de 5 se envía fuera de un puerto durante un respaldo o una transferencia de archivos grande. Asuma que no hay QoS para el puerto de egreso, y el paquete de voz pequeño está hecho cola después de 10 paquetes grandes 1500-byte. En este caso, usted puede calcular fácilmente que es el tiempo de velocidad en gigabit que es necesario transmitir los 10 paquetes grandes:

  • (10 x 1500 x 8) = 120,000 bits transmitidos en 120 microsegundos

Si este paquete necesita cruzar ocho o nueve Switches mientras que pasa a través de la red, un retardo de cerca de 1 milisegundo puede resultar. Esto incluye solamente los retardos en la cola de salida del Switch cruzado en la red.

Nota: Si usted necesita hacer cola los mismos 10 paquetes grandes en un 10MB interconectan (por ejemplo, conectado con un teléfono del IP y un PC), el retardo introducen son:

  • (10 x 1500 x 8) = 120,000 bits transmitidos en 12 milisegundos

La implementación de la programación de salida se asegura que los paquetes de voz con CoS de 5 estén puestos en la cola de prioridad estricta y que enviados antes de cualquier paquete con CoS de menos de 5. Esto reduce el retardo.

Reduzca el jitter

Otra ventaja importante de la programación de salida es la reducción del jitter. El jitter es la variación en el retardo para los paquetes dentro del mismo flujo. Este ejemplo de escenario muestra cómo la programación de salida puede reducir el jitter:

http://www.cisco.com/c/dam/en/us/support/docs/switches/catalyst-6000-series-switches/10587-73a.gif

En este escenario, el mismo puerto de egreso necesita enviar dos secuencias:

  • Una secuencia de voz entrante en un acceso de Ethernet 10MB.

  • Una secuencia entrante FTP en el puerto del link ascendente Gigabit Ethernet del a1.

Ambas secuencias dejan el Switch a través del mismo puerto de egreso. Este ejemplo muestra qué puede ocurrir sin el uso de la programación de salida. Todos los paquetes de datos grandes se pueden interpolar entre dos paquetes de voz. Esto crea el jitter en la recepción de los paquetes de voz del mismo flujo. Hay un retardo más grande entre la recepción de paquete 1 y el n+1 del paquete pues el Switch transmite el paquete de datos grande. Sin embargo, el retardo entre el n+1 y n + 2 es insignificante. Esto da lugar al jitter en la secuencia del tráfico de voz. Usted puede evitar fácilmente este problema con el uso de una cola de prioridad estricta. Asegúrese de que usted asocie el valor de CoS de los paquetes de voz a la cola de prioridad estricta.

Conclusión

En este documento, usted ha visto los casos prácticos de cómo configurar y resolver problemas la cola de salida que programaba en un Catalyst 6500/6000 que funciona con el Cisco IOS Software. Usted también ha visto las ventajas de la programación de salida en la mayoría de las redes con el tráfico de voz:

  • Evita el descenso del tráfico crítico en el caso del oversubscription del puerto de egreso.

  • Reduce el retardo.

  • Reduce el jitter.

Discusiones relacionadas de la comunidad de soporte de Cisco

La Comunidad de Soporte de Cisco es un foro donde usted puede preguntar y responder, ofrecer sugerencias y colaborar con colegas.


Información Relacionada


Document ID: 10587