Traffic Shaping

Autor: Julio Moisa - CCIE R&S #52536
Email: Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo.

             
   
                        TF1                                             

 

Traffic shaping también llamado packet shaping, es un mecanismo utilizado para mantener un control del volumen de ancho de banda sobre un enlace. Con Traffic Shaping podemos lograr, limitar o asignar ancho de banda a un usuario o redes. Traffic Shaping puede ser considerado una de las herramientas que abarca la calidad de servicio (QoS), debido a que con el podemos priorizar ancho de banda. 

Traffic shaping puede ser utilizado para:

  • Limitar ancho de banda en una red u host y así proveer prioridad a otros usuarios o redes que lo requieran.
  • Proveedores de servicio pueden asignar cierta cantidad de ancho de banda a otros proveedores de servicio o a clientes. 
  • Evitar excesos del ancho de banda en servicios contratados. 

En equipos marca Cisco podemos configurar Traffic Shaping de varias maneras como es CAR, Generic Traffich Shaping (GTS), FRTS y MQC cual es mas recomendable. Nos enfocaremos utilizando esta última opción junto con Police y Shape, pero antes debemos conocer algunos conceptos que nos ayudaran a comprender mejor cómo funcionan ambos métodos:

Algoritmo Token Bucket: Es el algoritmo con el que trabajan los métodos que veremos más adelante, este mecanismo es utilizado para medir y mantener un monitoreo del tráfico que nosotros hemos establecido para ser transmitido. ¿Cómo funciona? Imaginemos que nuestro limite es de 10000 bits, estos bits los colocamos en un recipiente (el cual regulara el flujo de datos) y a cada bit lo representamos como un token, cada token o cierta cantidad de tokens será transmitida en cierto intervalo de tiempo, si la cantidad de tokens aumenta y excede la capacidad se llegara a tomar un acción, la cual puede ser descartar paquetes. Este algoritmo funciona con 3 componentes:

  • CIR (Committed Info Rate) = Esto es básicamente la cantidad de bits por segundo contratados a un proveedor de servicio, ejemplo: 512Kbps, 2Mbps, 5Mbps, 100Mbps, etc. CIR en los libros también es conocido como 'rate limit'
  • Burts (Bc) = Esto indica la cantidad de bits/bytes que pueden ser enviados en cierto momento. 
  • Intervalo de tiempo (Tc) = Esto indica los segundos utilizados para enviar cada Bc.

           La fórmula es CIR = Bc / Tc  ; el valor del resultado será en milisegundos, para encontrar Tc resolvemos la ecuación:

TcFormula1

 

Exceed rate = Como su interpretación en español lo sugiere, es la cantidad de bits que excede el CIR.

MQC (Modular Quality of Service Command) = Támbien conocido como políticas basadas en clases, utiliza un mecánismo modular que compara y marca paquetes antes de asignarse a una interface, este mecánismo esta compuesto por 3 partes: Class-maps, Policy-maps y Service-policy.

Ahora si hablemos un poco de los métodos y sus diferencias:

Police: Es un método caracterizado por descartar paquetes que han excedido el límite de ancho de banda permitido, aunque existen otras acciones como remarcar los paquetes a un diferente CoS. Entre sus características se tiene que puede ser configurado en las interfaces para tráfico saliente o para tráfico que ingresa, no utiliza buffer para el rate limit, puede ser configurado tambien por Bytes. Quizas es el método más preferido por los proveedores de servicio. 

Desventajas: Puede afectar el tamaño de las ventanas de TCP reduciendo el flujo de datos global, lo cuál puede llevar a un exceso de descarte de paquetes.

pold1

Sintaxis:

Police <bits por segundo> <bc opcional> conform-action <transmit/drop> exceed-action <transmit/drop>

Paso 1) 

Creamos las listas de acceso basándonos en los requerimientos:

ACL2

 

Paso 2) Basándonos en MQC, creamos las Class-maps y asociamos las ACLs:

cm2

 

Paso 3) Creamos los Policy-maps y asociamos el ancho de banda permitido a cada Class-map, mientras el tráfico no exceda lo permitido sera tránsmitido de lo contrario sera descartado. 

PM2

 

Paso 4) Como último paso es asociar el Policy-map a una interface utilizando el comando service-policy output <nombre del policy-map>:

interfpolice

 

Una vez implementado Police, podemos verificar el comportamiento utilizando el comando show service policy-map interface <interface>:

 shopolice1

shopolice2

 

Shape: Al contrario que Police, este no descarta paquetes sino lo que haces es retrasar los paquetes que exceden el límite establecido. Utiliza buffer y solo se puede utilizar para tráfico saliente de una interface.

Desventajas: puede generar mucho retraso en la transmisión de los datos si la cola de espera es demasiado larga.

ShapeG1

Sintaxis: 

shape average <limite permitido en bits> luego existen otros parámetros que pueden omitirse ya que el IOS puede seleccionar la mejor opción.

Configuremos nuestro ejercicio:

Paso 1) 

Creamos las listas de acceso basándonos en los requerimientos:

ACL1

Paso 2) Basándonos en MQC, creamos las Class-maps y asociamos las ACLs:

CM1

 

 

 

Paso 3) Creamos los Policy-maps y asociamos el ancho de banda permitido a cada Class-map:

PM1

 

Paso 4) Como último paso es asociar el Policy-map a una interface utilizando el comando service-policy output <nombre del policy-map>:

SP1

 

Una vez implementado el Shape, podemos verificar el comportamiento utilizando el comando show service policy-map interface <interface>:

shopm1

shopm2

 

Notemos que no hay necesidad de crear una clase por defecto, automáticamente el router la crea para el tráfico que no ha sido explícitamente restringido. El tráfico que cae dentro de la clase por defecto tendrá un ancho de banda de 45Mbps.

Cabe mencionar que estos métodos no solo son utilizados para limitar ancho de banda para Internet, al contrario se pueden utilizar dentro de una infraestructura Interna para servicios específicos. 

Con el fin de realizar pruebas se puede utilizar aplicaciones de medición de ancho de banda, como la opción grafica de Wireshark. 

 

 

 

Registrate para comentar.

Visitas del artículo
95730