• No results found

3. METHODOLOGY

3.2 Naturalistic Design

El encolamiento de paquetes es natural en una interfaz congestionada, es por esto que existen diferentes algoritmos de encolamiento que nos permiten controlar la congestión, priorizando un tipo de tráfico sobre otro. La principal causa de la congestión en las interfaces es la diferencia de velocidad que existe entre ellas, en la figura 2.9 se hace referencia a lo dicho anteriormente.

Fig. 2.9 Causas de congestión en interfaces, [18]

Dependiendo del tipo de aplicaciones que se estén manejando, se debe determinar qué algoritmo de encolamiento será el más conveniente. Las implementaciones propietarias de Cisco están basadas o son una mezcla de los siguientes algoritmos generales de manejo de colas [18].

2.1.4.1.1 Primero en ingresar, primero en salir (FIFO)

Es el mecanismo más simple de encolamiento y se basa en el concepto, que el primer paquete en entrar a la interfaz es el primero en salir. Es adecuado para interfaces de alta velocidad, sin embargo, no para bajas, ya que FIFO es capaz de manejar cantidades limitadas de ráfagas de datos. Si llegan más paquetes cuando la cola está llena, estos son descartados porque no tiene mecanismos de diferenciación de paquetes [13].

Su técnica es basada en la técnica de almacenamiento y reenvío. Se encarga de almacenar paquetes cuando hay congestión en la red, y enviarlos cuando tiene la posibilidad, manteniendo el orden de llegada, es decir, que no ofrece ninguna prioridad

de unos paquetes sobre otros. Este es el mecanismo que se suele utilizar por defecto el modelo de mejor esfuerzo [13]. En la figura 2.10 se muestra la arquitectura del mecanismo de cola FIFO.

Fig. 2.10 Esquema gráfico FIFO, [18]

El mecanismo de encolamiento FIFO utiliza el método de descarte por defecto llamado Descarte de cola (Tail Drop). Este método descarta todos los paquetes que van llegando cuando la cola está llena.

2.1.4.1.2 Colas de prioridad (PQ)

El mecanismo PQ consiste en un conjunto de colas, clasificadas desde alta a baja prioridad. Cada paquete es asignado a una de estas colas, las cuales son servidas en estricto orden de prioridad. Las colas de mayor prioridad son siempre atendidas primero, luego la siguiente de menor prioridad y así. Si una cola de menor prioridad está siendo atendida, y un paquete ingresa a una cola de mayor prioridad, ésta es atendida inmediatamente. Este mecanismo se ajusta a condiciones donde existe un tráfico importante, pero puede causar la total falta de atención de colas de menor prioridad. [13]

En la figura 2.11 se muestra un esquema gráfico de cómo funciona el mecanismo de encolamiento de prioridad (PQ), aquí se puede observar cómo se gestionan los paquetes entrantes según su nivel o clasificación de prioridad que puede ser alto, medio, normal y bajo.

Fig. 2.11 Esquema gráfico PQ, [13]

Los paquetes que no puedan clasificarse serán asignados a la cola de prioridad normal. El inconveniente de este mecanismo es estático y no se adapta a los requerimientos de la red. Además puede crear inanición, es decir, dejar fuera de servicio a tráfico menos prioritario. [13]

2.1.4.1.3 Encolamiento balanceado justo (WFQ)

WFQ es un mecanismo de encolamiento automático, pues permite que el enrutador calcule a qué tráfico darle mayor prioridad. Esto lo hace separando el tráfico en flujos o conversaciones y asignándole pesos inversamente proporcionales a su volumen de tráfico. El flujo con mayor peso tendrá mayor ancho de banda disponible. Normalmente está configurado por defecto en interfaces de menos de 2 Mbps. [18]

En la figura 2.12 se muestra un esquema gráfico de cómo funciona el mecanismo de encolamiento WFQ; en este gráfico se puede observar cómo el algoritmo gestiona los paquetes entrantes de acuerdo a la asignación justa de ancho de banda para todo el tráfico de la red.

Fig. 2.12 Esquema gráfico WFQ, [13]

El proceso de encolamiento WFQ, puede dividirse en tres etapas:

1. Etapa de clasificación automática: WFQ agrupa los paquetes en diferentes flujos para asignar una sola cola a cada uno de ellos. Los criterios de agrupación son: dirección IP origen, dirección IP destino, puerto TCP/UDP origen, puerto TCP/UDP destino, protocolo de transporte y campo ToS. Existe un número máximo de colas que WFQ puede armar, este valor es configurable y debe ser mayor al número de flujos esperados en la comunicación, para evitar que dos flujos distintos se tengan que poner en la misma cola, disminuyendo así el ancho de banda disponible para cada uno. (Ver tabla 2.7). [18]

Tabla 2.7 Número de colas WFQ vs Ancho de banda, [18]

2. Etapa de encolamiento o descarte: Cuando las colas de WFQ se aproximan al valor límite de paquetes que éstas pueden aceptar, se empieza a descartar paquetes del flujo más agresivo. Este descarte temprano empieza cuando se sobrepasa el valor definido por el umbral de descarte congestivo (CDT). El límite de paquetes que puede

aceptar todo el sistema WFQ (todas las colas al mismo tiempo) está definido por el hold-queue out limit. Pasado este límite, cualquier paquete entrante genera un descarte. El tiempo estimado que demorará un paquete en ser transmitido por la cola WFQ depende de su tamaño y es calculado en esta etapa, pues influye en las decisiones de descarte [18]. La tabla 2.8 muestra un resumen de descarte o envío de paquetes a la cola.

Tabla 2.8 Proceso de descarte de colas WFQ, [18]

3. Etapa de planificación (Scheduling): En esta etapa se define el orden en el cual los paquetes de los diferentes flujos o colas se enviarán a la interfaz física. Este orden depende del Tiempo de finalización, como el tiempo que demorará un paquete en ser transmitido, calculado en base a su tamaño y el ancho de banda de la interfaz. [18] Los mecanismos PQ y CQ son estáticos, y por lo tanto no se adaptan a los cambios producidos en la red. Por ello ha sido necesario un mecanismo como WFQ, que es adaptativo. WFQ es adecuado para situaciones donde se necesite un buen tiempo de respuesta, para usuarios que hagan tanto un uso elevado de la red, como para los que hagan un uso más leve, sin añadir ancho de banda adicional. [13]:

• Organiza el tráfico (de tiempo real), poniéndolo al principio de la cola, reduciendo así el tiempo de respuesta.

• Comparte equitativamente el resto del ancho de banda, entre el resto de tráfico de alta prioridad.

WFQ asegura que las diferentes colas no se queden privadas de un mínimo ancho de banda, de modo que el servicio proporcionado al tráfico es más predecible. Este mecanismo considera flujos de poco caudal con flujos sensibles al retardo, como VoIP [13].