El medidor controla la tasa de transmisión de flujos por paquete. Después, determina si el paquete cumple los parámetros configurados. El módulo medidor (Meter) determina la siguietne acción para un paquete de un conjunto de acciones, que dependen del tamaño del paquete, los parámetros configurados y la tasa de flujo.
Meter consta de dos módulos de medición, tokenmt y tswtclmt, que se configuran en el archivo de configuracón IPQoS. Puede configurar uno de los módulos, o ambos, para una clase.
Al configurar un módulo de medición, puede definir dos parámetros de tasa:
committed-rate – Define la tasa de transmisión aceptable, en bits por segundo, para paquetes de una clase determinada
peak-rate – Define la tasa de transmisión máxima, en bits por segundo, que se permite para paquetes de una clase determinada
Una acción de medición en un paquete puede dar tres resultados:
green – El paquete permite que el flujo se mantenga en la tasa aprobada.
yellow – El paquete hace que el flujo sobrepase su tasa aprobada pero no la máxima.
red – El paquete hace que el flujo sobrepase su tasa máxima.
Puede configurar cada resultado con acciones diferentes en el archivo de configuración IPQoS. La tasa aprobada y la tasa máxima se explican en la siguiente sección.
El módulo tokenmt utiliza conjuntos de tokens para medir la tasa de transmisión de un flujo. Puede configurar tokenmt para que funcione como medidor de tasa única o de doble tasa. Una instancia de acción tokenmt mantiene dos conjuntos de tokens que determinan si el flujo de tráfico cumple los parámetros configurados.
En la página de comando man tokenmt(7ipp) se explica cómo utiliza IPQoS el paradigma de medidor de tokens. Puede encontrar más información general sobre conjuntos de tokens en el documento Differentiated Services for the Internet escrito por Kalevi Kilkki y en varias páginas web.
Los parámetros de configuración de tokenmt son los siguientes:
committed_rate – Especifica la tasa aprobada para el flujo, en bits por segundo.
committed_burst – Especifica el tamaño de ráfaga aprobado en bits. El parámetro committed_burst define cuántos paquetes de una clase determinada pueden transmitirse a la red a la tasa aprobada.
peak_rate – Especifica la tasa máxima en bits por segundo.
peak_burst – Especifica el tamaño de ráfaga máxima en bits. El parámetro peak_burst asigna a una clase de tráfico un tamaño de ráfaga máxima que sobrepasa la tasa aprobada.
color_aware – Establece tokenmt en modo de activación.
color_map – Define una matriz de enteros que asgina valores DSCP a verde, amarillo o rojo.
Para configurar tokenmt como medidor de tasa única, no especifique un parámetro peak_rate para tokenmt en el archivo de configuración IPQoS. Para configurar una instancia de tokenmt de tasa única para que dé un resultado rojo, verde o amarillo, debe especificar el parámetro peak_burst. Si no utiliza el parámetro peak_burst, sólo puede configurar tokenmt para que dé un resultado rojo o verde. Para ver una muestra de tokenmt de tasa única con dos resultados consulte el Ejemplo 34–3.
Cuando tokenmt funciona como medidor de tasa única, el parámetro peak_burst es el tamaño de ráfaga de exceso. committed_rate , y committed_burst o peak_burst deben ser números enteros positivos (no cero).
Para configurar tokenmt como medidor de doble tasa, especifique un parámetro peak_rate para la acción tokenmt en el archivo de configuración IPQoS. Un tokenmt de doble tasa siempre tiene los tres resultados: rojo, amarillo y verde. Los parámetros committed_rate, committed_burst y peak_burst deben ser números enteros positivos (no cero).
Para configurar un tokenmt de doble tasa para que reconozca los colores, debe añadir parámetros para agregar específicamente "reconocimiento de color". A continuación se muestra un ejemplo de instrucción de acción que configura tokenmt para que reconozca colores.
action { module tokenmt name meter1 params { committed_rate 4000000 peak_rate 8000000 committed_burst 4000000 peak_burst 8000000 global_stats true red_action_name continue yellow_action_name continue green_action_name continue color_aware true color_map {0-20,22:GREEN;21,23-42:RED;43-63:YELLOW} } }
Para activar el reconocimiento de color, hay que establecer el parámetro color_aware en true. Como medidor con reconocimiento de color, tokenmt asume que el paquete ya se ha marcado como rojo, amarillo o verde por una acción tokenmt anterior. tokenmt con reconocimiento de color evalúa los paquetes utilizando el punto de código DSCP del encabezado, además de los parámetros de un medidor de doble tasa.
El parámetro color_map contiene una matriz en la que se asigna el punto de código DSCP del encabezado del paquete. Observe la siguiente matriz color_map :
color_map {0-20,22:GREEN;21,23-42:RED;43-63:YELLOW}
Los paqutes con un DSCP de 0–20 y 22 se asignan al verde. Los paquetes con un DSCP de 21 y 23–42 se asignan al rojo. Los paquetes con un DSCP de 43–63 se asignan al amarillo. tokenmt mantiene un mapa de color predeterminado. Aunque puede cambiar los valores predeterminados utilizando los parámetros color_map .
En los parámetros color_action_name, puede especificar continue para completar el procesamiento del paquete. También puede añadir un argumento para enviar el paquete a una acción de marcador, por ejemplo yellow_action_name mark22.
El módulo de medición tswtclmt realiza una esttimazión del ancho de banda medio para una clase de tráfico utilizando un estimador de tasa basado en tiempo. tswtclmt siempre funciona como medidor con tres resultados. El estimador de tasa proporciona una estimación de la tasa de llegada del flujo. Esta tasa debe ser aproximada al ancho de banda medio del flujo de tráfico en un periodo de tiempo determinado, la fase temporal. El algoritmo de estimación de tasa se toma de RFC 2859, un marcador de tres colores con fase temporal de desplazamiento.
Para configurar tswtclmt, se utilizan los siguiente parámetros:
committed_rate – Especifica la tasa aprobada en bits por segundo
peak_rate – Especifica la tasa máxima en bits por segundo
window – Define la fase temporal, en milisegundos en los cuales se mantiene el historial de ancho de banda medio
Si necesita información técnica sobre tswtclmt, consulte la página de comando man tswtclmt(7ipp) Si necesita información general sobre formadores de tasa similares a tswtclmt, consulte RFC 2963, A Rate Adaptive Shaper for Differentiated Services.