Omitir V�nculos de navegaci�n | |
Salir de la Vista de impresi�n | |
Administración de Oracle Solaris: servicios IP Oracle Solaris 11 Information Library (Español) |
Parte I Administración de TCP/IP
1. Planificación de la implementación de red
2. Consideraciones para el uso de direcciones IPv6
3. Configuración de una red IPv4
4. Habilitación de IPv6 en una red
5. Administración de una red TCP/IP
6. Configuración de túneles IP
7. Resolución de problemas de red
10. Acerca de DHCP (descripción general)
11. Administración del servicio DHCP de ISC
12. Configuración y administración del cliente DHCP
13. Comandos y archivos DHCP (referencia)
14. Arquitectura de seguridad IP (descripción general)
15. Configuración de IPsec (tareas)
16. Arquitectura de seguridad IP (referencia)
17. Intercambio de claves de Internet (descripción general)
18. Configuración de IKE (tareas)
19. Intercambio de claves de Internet (referencia)
20. Filtro IP en Oracle Solaris (descripción general)
22. Descripción general del equilibrador de carga integrado
23. Configuración del equilibrador de carga integrado (tareas)
24. Protocolo de redundancia de enrutador virtual (descripción general)
25. Configuración VRRP (tareas)
26. Implementación del control de congestión
Parte V Calidad de servicio IP (IPQoS)
27. Introducción a IPQoS (descripción general)
28. Planificación para una red con IPQoS (tareas)
29. Creación del archivo de configuración IPQoS (tareas)
30. Inicio y mantenimiento de IPQoS (tareas)
31. Uso de control de flujo y recopilación de estadísticas (tareas)
32. IPQoS detallado (referencia)
Arquitectura IPQoS y el modelo Diffserv
Utilización del marcador dscpmk para reenviar paquetes
Archivo de configuración IPQoS
En esta sección se describe la arquitectura IPQoS y cómo IPQoS implementa el modelo de servicios diferenciados (Diffserv) definido en RFC 2475, An Architecture for Differentiated Services. Los siguientes elementos del modelo Diffserv están incluidos en IPQoS:
Clasificador
Medidor
Marcador
Además, IPQoS incluye el módulo de control de flujo y el marcador dlcosmk para su uso en dispositivos VLAN (red de área local virtual).
En el modelo Diffserv, el módulo clasificador se encarga de organizar los flujos de tráfico seleccionados en grupos a los que se aplican diferentes niveles de servicio. Los clasificadores definidos en RFC 2475 se diseñaron originalmente para enrutadores de límite de sistema. En cambio, el clasificador IPQoS ipgpc está diseñado para administrar flujos de tráfico en hosts internos de la red local. Por lo tanto, una red con sistemas IPQoS y un enrutador Diffserv puede proporcionar un alto nivel de servicios diferenciados. Para ver una descripción técnica de ipgpc, consulte la página del comando man ipgpc(7ipp).
El clasificador ipgpc se encarga de lo siguiente:
Selecciona los flujos de tráfico que cumplen los criterios especificados en el archivo de configuración IPQoS en el sistema con IPQoS.
La política QoS define varios criterios que deben estar presentes en los encabezados de paquetes. Estos criterios se denominan selectores. El clasificador ipgpc compara estos selectores con los encabezados de paquetes que recibe el sistema IPQoS. Después, ipgpc selecciona todos los paquetes que coinciden.
Separa los flujos de paquetes en clases, tráfico de red con las mismas características, como se ha definido en el archivo de configuración IPQoS.
Examina el valor del campo de servicios diferenciados (DS) del paquete para comprobar si contiene un punto de código de servicios diferenciados (DSCP).
La presencia de un punto de código DSCP indica si el tráfico entrante ha sido marcado en su origen con un comportamiento de reenvío.
Determina qué otras acciones están especificadas en la configuración IPQoS para paquetes de una clase específica.
Transfiere los paquetes al siguiente módulo IPQoS especificado en el archivo de configuración IPQoS, o los devuelve al flujo de red.
Para ver una descripción general del clasificador, consulte Descripción general del clasificador (ipgpc). Si necesita información sobre cómo invocar al clasificador en el archivo de configuración IPQoS, consulte Archivo de configuración IPQoS.
El clasificador ipgpc admite varios selectores que se pueden usar en la cláusula filter del archivo de configuración IPQoS. Al usar un filtro, utilice siempre el número mínimo de selectores necesarios para extraer el tráfico de una clase determinada. El número de filtros definidos repercute en el rendimiento de IPQoS.
En la siguiente tabla se muestran los selectores disponibles para ipgpc .
Tabla 32-1 Selectores de filtro para el clasificador IPQoS
|
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 determina la siguiente 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.
El medidor consta de dos módulos de medición, tokenmt y tswtclmt, que se configuran en el archivo de configuració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 del 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 asigna 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 un ejemplo de tokenmt de tasa única con dos resultados, consulte el Ejemplo 29-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 action que configura tokenmt para que reconozca colores.
Ejemplo 32-1 Acción tokenmt de reconocimiento de color para el archivo de configuración IPQoS
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 paquetes 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 del 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.
IPQoS incluye dos módulos de marcador, dscpmk y dlcosmk. Esta sección contiene información sobre cómo usar ambos marcadores. Normalmente se utiliza dscpmk, porque dlcosmk sólo está disponible para sistemas IPQoS con dispositivos VLAN.
Si necesita información técnica sobre dscpmk, consulte la página del comando man dscpmk(7ipp). Si necesita información técnica sobre dlcosmk, consulte la página del comando man dlcosmk(7ipp).
El marcador recibe flujos de tráfico después de que el clasificador o los módulos de medición los hayan procesado. El marcador marca el tráfico con un comportamiento de reenvío. Este comportamiento de reenvío es la acción que se realizará en los flujos cuando salgan del sistema IPQoS. El comportamiento de reenvío para una clase de tráfico se define en el comportamiento por salto (PHB). El PHB asigna una prioridad a una clase de tráfico, que indica los flujos de precedencia de esa clase en relación con otras clases de tráfico. Los comportamientos PHB sólo determinan los comportamientos de reenvío en la red contigua del sistema IPQoS. Si necesita más información sobre comportamientos PHB, consulte Comportamientos por salto.
El reenvío de paquetes es el proceso de enviar tráfico de una clase determinada a su siguiente destino en una red. En un host como un sistema IPQoS, un paquete se reenvía del host al flujo de red local. Para un enrutador Diffserv, un paquete se reenvía de la red local al siguiente salto del enrutador.
El marcador marca el campo DS del encabezado del paquete con un comportamiento de reenvío común, definido en el archivo de configuración IPQoS. A partir de ahí, el sistema IPQoS y los sistemas con Diffserv siguientes, reenvían el tráfico como se indica en el campo DS, hasta que cambia la marca. Para asignar un PHB, el sistema IPQoS marca un valor en el campo DS del encabezado del paquete. Este valor se denomina punto de código de servicios diferenciados (DSCP). La arquitectura Diffserv define dos tipos de comportamientos de reenvío, EF y AF, que utilizan diferentes puntos DSCP. Si necesita información general sobre DSCP, consulte Punto de código DS.
El sistema IPQoS lee el punto de código DSCP del flujo de tráfico y evalúa la precedencia del flujo con respecto a otros flujos de tráfico saliente. A continuación, el sistema IPQoS prioriza todos los flujos de tráfico concurrentes y envía cada flujo a la red según su prioridad.
El enrutador Diffserv recibe los flujos de tráfico saliente y lee el campo DS de los encabezados de los paquetes. El punto de código DSCP permite al enrutador priorizar y programar los flujos de tráfico concurrentes. El enrutador reenvía cada flujo según la prioridad indicada en el PHB. Tenga en cuenta que el PHB no puede aplicarse fuera del enrutador de límite de sistema de la red, a no ser que haya sistemas con Diffserv en los siguientes puntos que también reconozcan el mismo PHB.
El reenvío acelerado (EF) garantiza que los paquetes con el punto de código EF recomendado, 46 (101110), reciben el mejor tratamiento posible al enviarse a la red. El reenvío acelerado puede compararse con una línea alquilada. Los paquetes con el punto de código 46 (101110) tienen garantizado un tratamiento preferencial por todos los enrutadores Diffserv que se encuentren hasta el destino del paquete. Si necesita información técnica sobre EF, consulte RFC 2598, Un PHB de reenvío acelerado.
El reenvío asegurado (AF) proporciona cuatro clases diferentes de comportamientos de reenvío que pueden especificarse al marcador. La siguiente tabla muestra las clases, las tres precedencias de descarte proporcionadas para cada clase y los puntos de código DSCP recomendados asociados con cada precedencia. Cada DSCP está representado por su valor AF, su valor decimal y su valor binario.
Tabla 32-2 Puntos de código de reenvío asegurado
|
Cualquier sistema con Diffserv puede utilizar el punto de código AF como guía para proporcionar comportamientos de reenvío diferenciados a diferentes clases de tráfico.
Cuando estos paquetes llegan a un enrutador con Diffserv, el enrutador evalúa los puntos de código de los paquetes junto con los puntos de código DSCP de otro tráfico en cola. Después, el enrutador reenvía o descarta paquetes, según el ancho de banda disponible y las prioridades asignadas por los puntos DSCP de los paquetes. Los paquetes marcados con PHB EF tienen ancho de banda garantizado con respecto a paquetes marcados con cualquier comportamiento PHB AF.
El marcado de paquetes debe coordinarse entre cualquier sistema IPQoS de la red y el enrutador Diffserv, para garantizar que los paquetes se reenvían de manera apropiada. Por ejemplo, suponga que los sistemas IPQoS de la red marcan los paquetes con puntos de código AF21 (010010), AF13 (001110), AF43 (100110) y EF (101110). Deberá añadir los puntos de código DSCP AF21, AF13, AF43 y EF al archivo correspondiente del enrutador Diffserv.
Para obtener una explicación técnica sobre la tabla de puntos de código AF, consulte RFC 2597. En las páginas web de los fabricantes de enrutadores Cisco Systems y Juniper Networks puede encontrar información detallada acerca de la configuración de comportamientos AF PHB. Puede usar esta información para definir comportamientos PHB AF para sistemas IPQoS y enrutadores. La documentación del fabricante del enrutador contiene instrucciones para definir puntos de código DS en el equipo.
El DSCP tiene un tamaño de 6 bits. El campo DS tiene un tamaño de 1 byte. Al definir un DSCP, el marcador marca los 6 primeros bits significativos del encabezado del paquete con el punto de código DS. Los 2 bits menos significativos no se utilizan.
Para definir un DSCP, se utiliza el siguiente parámetro en una instrucción action de marcador:
dscp_map{0-63:DS_codepoint}
El parámetro dscp_map es una matriz de 64 elementos, que se rellena con el valor (DSCP). dscp_map se utiliza para asignar puntos DSCP entrantes a puntos DSCP salientes que aplica el marcador dscpmk.
Debe especificar el valor DSCP de dscp_map en notación decimal. Por ejemplo, el punto de código EF 101110 debe traducirse al valor decimal 46, que da como resultado dscp_map{0-63:46}. Para puntos de código AF, debe convertir los diferentes puntos de código que se muestran en la Tabla 32-2 a notación decimal para usarlos con dscp_map.
El módulo de marcador dlcosmk marca un comportamiento de reenvío en el encabezado MAC de un datagrama. dlcosmk sólo se puede usar en un sistema IPQoS con una interfaz VLAN.
dlcosmk añade cuatro bytes, denominados etiqueta VLAN, al encabezado MAC. La etiqueta VLAN incluye un valor de prioridad de usuario de 3 bits, definido en el estándar IEEE 801.D. Los nodos de red con Diffserv que admitan VLAN pueden leer el campo de prioridad de usuario en un datagrama. Los valores de prioridad de usuario 801.D utilizan marcas CoS (Class of Service), que son comunes e interpretables para nodos de red comerciales.
Puede utilizar los valores de prioridad de usuario de la acción de marcador dlcosmk definiendo la clase de marcas de servicio de la siguiente tabla.
Tabla 32-3 Valores de prioridad de usuario 801.D
|
Si necesita más información sobre dlcosmk, consulte la página del comando man dlcosmk(7ipp).
En esta sección se presenta un escenario de red simple para mostrar cómo utilizar IPQoS en sistemas con dispositivos VLAN. El escenario incluye dos sistemas IPQoS, machine1 y machine2, conectados mediante un nodo. El dispositivo VLAN de machine1 tiene la dirección IP 10.10.8.1. El dispositivo VLAN de machine2 tiene la dirección IP 10.10.8.3.
El siguiente archivo de configuración IPQoS de machine1 muestra una solución simple para marcar el tráfico a través del nodo a machine2.
Ejemplo 32-2 Archivo de configuración IPQoS para un sistema con un dispositivo VLAN
fmt_version 1.0 action { module ipgpc name ipgpc.classify filter { name myfilter2 daddr 10.10.8.3 class myclass } class { name myclass next_action mark4 } } action { name mark4 module dlcosmk params { cos 4 next_action continue global_stats true } }
En esta configuración, todo el tráfico de machine1 destinado para el dispositivo VLAN de machine2 se transfiere al marcador dlcosmk. La acción de marcador mark4 indica a dlcosmk que debe añadir una marca VLAN a datagramas de la clase myclass con un valor CoS de 4. El valor de prioridad de usuario de 4 indica que el conmutador que hay entre los dos equipos debe proporcionar reenvío de carga controlado a los flujos de tráfico myclass desde machine1 .
El módulo IPQoS flowacct registra información sobre flujos de tráfico, un proceso que se denomina control de flujo. El control de flujo genera datos que pueden utilizarse para la facturación de clientes o para evaluar la cantidad de tráfico de una clase determinada.
El control de flujo es optativo. flowacct es, generalmente, el último módulo que los módulos medidos o marcados encuentras antes de enviarse al flujo de red. Para ver una ilustración de la posición de flowacct en el modelo Diffserv, consulte la Figura 27-1. Para ver información técnica detallada sobre flowacct, consulte la página del comando man flowacct(7ipp).
Para habilitar el control de flujo, debe emplear la utilidad de control exacct de Oracle Solaris y el comando acctadm, además del comando flowacct. Para ver los pasos necesarios para configurar el control de flujo, consulte la sección Establecimiento del control de flujo (mapa de tareas).
El módulo flowacct recopila información sobre flujos en una tabla de flujo compuesta por registros de flujo. Cada entrada de la tabla contiene un registro de flujo. No se puede ver una tabla de flujo.
En el archivo de configuración IPQoS, se definen los siguientes parámetros de flowacct para medir los registros de flujo y escribirlos en la tabla de flujo:
timer: define un intervalo, en milisegundos, en el que los flujos con tiempo de espera superado se eliminan de la tabla de flujo y se escriben en el archivo creado por acctadm.
timeout: define un intervalo, en milisegundos, que especifica cuánto tiempo debe estar inactivo un flujo de paquete para que se supere el tiempo de espera del flujo.
Nota - Puede configurar timer y timeout para que tengan diferentes valores.
max_limit: define el límite máximo para el número de registros de flujo que pueden almacenarse en la tabla de flujo.
Para ver un ejemplo de cómo se utilizan los parámetros flowacct en el archivo de configuración IPQoS, consulte Cómo configurar el control de flujo en el archivo de configuración IPQoS.
El módulo flowacct mantiene una tabla de flujo que registra todos los flujos de paquetes supervisados por una instancia de flowacct. Un flujo se identifica mediante los siguientes parámetros, que incluyen flowacct 8–tuple:
Dirección de origen
Dirección de destino
Puerto de origen
Puerto de destino
DSCP
ID de usuario
ID de proyecto
Número de protocolo
Si todos los parámetros de 8–tuple de un flujo siguen siendo los mismos, la tabla de flujo contiene sólo una entrada. El parámetro max_limit determina el número de entradas que puede contener una tabla de flujo.
La tabla de flujo se explora en el intervalo especificado en el archivo de configuración IPQoS del parámetro timer. El tiempo predeterminado es 15 segundos. El tiempo de espera de un flujo se supera cuando el sistema IPQoS no envía los paquetes del flujo en el intervalo timeout definido en el archivo de configuración IPQoS. El intervalo de tiempo de espera predeterminado es de 60 segundos. Las entradas con tiempo de espera superado se escriben en el archivo de control creado con el comando acctadm.
Un registro flowacct contiene los atributos descritos en la siguiente tabla.
Tabla 32-4 Atributos de un registro flowacct
|
El comando acctadm se utiliza para crear un archivo en el que se almacenan los registros de flujo generados por flowacct . acctadm funciona en combinación con la herramienta de contabilidad ampliada. Si necesita información técnica sobre acctadm, consulte la página del comando man acctadm(1M).
El módulo flowacct observa los flujos y rellena la tabla de flujo con registros. A continuación, flowacct evalúa los parámetros y atributos en el intervalo especificado por timer . Cuando un paquete no se detecta durante el tiempo definido en el valor last_seen más el valor timeout, se supera su tiempo de espera. Todas las entradas con tiempo de espera superado se eliminan de la tabla de flujo. Estas entradas se escriben en el archivo de control cada vez que pasa el intervalo de tiempo especificado en el parámetro timer.
Para invocar a acctadm para utilizarlo con el módulo flowacct, utilice la siguiente sintaxis:
acctadm -e file-type -f filename flow
Invoca a acctadm con la opción -e. "-e" indica que a continuación hay una lista de recursos.
Especifica los atributos que se deben recopilar. tipo de archivo debe reemplazarse por basic o extended. Para ver una lista de atributos de cada tipo de archivo, consulte la Tabla 32-4.
Crea el archivo nombre de archivo que contendrá los registros de flujo.
Indica que acctadm debe ejecutarse con IPQoS.