Omitir V�nculos de navegaci�n | |
Salir de la Vista de impresi�n | |
Administración de Oracle Solaris: interfaces y virtualización de redes Oracle Solaris 11 Information Library (Español) |
1. Descripción general de la pila de red
Configuración de red en esta versión de Oracle Solaris
La pila de red en Oracle Solaris
Dispositivos de red y nombres de enlaces de datos
Administración de otros tipos de enlaces
Parte I Conexión automática a la red (NWAM, Network Auto-Magic)
3. Configuración y administración de NWAM (descripción general)
4. Configuración de perfiles de NWAM (tareas)
5. Administración de perfiles de NWAM (tareas)
6. Acerca de la interfaz gráfica de usuario de NWAM
Parte II Configuración de interfaz y enlace de datos
7. Uso de comandos de configuración de interfaces y enlaces de datos en perfiles
8. Configuración y administración de enlaces de datos
9. Configuración de una interfaz IP
10. Configuración de las comunicaciones mediante interfaces inalámbricas en Oracle Solaris
12. Administración de agregaciones de enlaces
16. Intercambio de información de conectividad de red con LLDP
Parte III Virtualización de la red y gestión de los recursos
17. Introducción a la virtualización de redes y el control de recursos (descripción general)
18. Planificación para la virtualización de red y el control de recursos
19. Configuración de redes virtuales (tareas)
20. Uso de la protección de enlaces en entornos virtualizados
21. Gestión de recursos de red
Descripción general de la gestión de recursos de red
Propiedades de enlaces de datos para el control de recursos
Gestión de recursos de red mediante flujos
Comandos para la gestión de recursos de red
Gestión de recursos de red (mapa de tareas)
Gestión de recursos en enlaces de datos
Anillos de transmisión y recepción
Clientes MAC y asignación de anillos
Propiedades para la asignación de anillos
Preparativos para la configuración de clientes basados en hardware
Cómo configurar un cliente basado en hardware
Cómo crear un cliente basado en software
Cómo identificar asignaciones de anillos en la asignación estática de anillos
Cómo configurar una agrupación de CPU para un enlace de datos
Configuración de flujos en la red
En esta sección, se describen las propiedades de enlace seleccionadas que se pueden definir para mejorar el rendimiento de la red para una red física o una red virtual.
En las NIC, los anillos de recepción (Rx)y los anillos de transmisión (Tx) son recursos de hardware mediante los que el sistema recibe y envía paquetes de red, respectivamente. En las secciones siguientes, se proporciona una descripción general de los anillos y de los procedimientos que se utilizan para asignar anillos a procesos de red. También se proporcionan ejemplos para mostrar cómo funciona mecanismo al ejecutar comandos para asignar anillos.
Los clientes MAC, como VNIC y otros enlaces de datos, se configuran mediante la NIC para permitir la comunicación entre un sistema y otros nodos de red. Una vez que un cliente se configura, éste utiliza los anillos Rx y Tx para recibir o transmitir paquetes de red respectivamente. Un cliente MAC puede estar basado en hardware o en software. Un cliente basado en hardware debe cumplir con alguna de las siguientes condiciones:
Tiene el uso dedicado de uno o varios anillos de Rx.
Tiene el uso dedicado de uno o varios anillos de Tx.
Tiene el uso dedicado de uno o varios anillos de Rx y de uno o varios anillos Tx.
Los clientes que no cumplen con ninguna de estas condiciones se denominan clientes MAC basados en el software.
A los clientes basados en hardware se les pueden asignar anillos para uso exclusivo en función de la NIC. Las NIC como nxge admiten la asignación dinámica de anillos. En estas NIC, puede configurar no sólo clientes basados en hardware. También tiene la flexibilidad para determinar el número de anillos para asignar a dichos clientes, suponiendo que los anillos siguen estando disponibles para la asignación. El uso de los anillos siempre se optimiza para la interfaz principal, por ejemplo, nxge0. La interfaz principal también se conoce como el cliente principal. Los anillos disponibles que no se han asignado para el uso exclusivo de otros clientes, se asignan automáticamente a la interfaz principal.
Otras NIC como ixge sólo admiten la asignación estática de anillos. En estas NIC, sólo puede crear clientes basados en hardware. Los clientes se configuran automáticamente con un conjunto fijo de anillos por cliente. El conjunto fijo se determina durante la configuración inicial del controlador de la NIC. Para obtener más información sobre la configuración inicial de un controlador para la asignación estática de anillos, consulte Manual de referencia de parámetros ajustables de Oracle Solaris.
Con las VLAN, la asignación de anillos se lleva a cabo de forma diferente según cómo se haya creado la VLAN. Las VLAN se crean de una de estas dos maneras:
Mediante el uso del subcomando dladm create-vlan:
# dladm create-vlan -l link -v VID vlan
Mediante el uso del subcomando dladm create-vnic:
# dladm create-vnic -l link -v VID vnic
Una VLAN que se crea mediante el subcomando dladm create-vlan comparte la misma dirección MAC que la interfaz subyacente. Por lo tanto, esa VLAN también comparte los anillos de Rx y Tx de la interfaz subyacente. Una VLAN que se crea como una VNIC mediante el comando dladm create-vnic tiene una dirección MAC distinta de la de su interfaz subyacente. La asignación de anillos para esta VLAN es independiente de la asignación para el enlace subyacente. Por lo tanto, a esa VLAN se le pueden asignar sus propios anillos dedicados, suponiendo que la NIC admite clientes basados en hardware.
Para administrar anillos, se pueden definir dos propiedades de anillos mediante el comando dladm:
rxrings se refiere al número de anillos de Rx asignados a un enlace especificado.
txrings se refiere al número de anillos de Tx asignados a un enlace especificado.
Puede establecer cada propiedad en uno de los tres valores posibles:
sw indica que está configurando un cliente basado en software. El cliente no tiene el uso exclusivo de los anillos. En cambio, el cliente comparte los anillos con cualquier otro cliente existente que esté configurado de manera similar.
n > 0 (número mayor que cero) se aplica a la configuración de un cliente basado en hardware únicamente. El número hace referencia a la cantidad de anillos que asigna al cliente para su uso exclusivo. Puede especificar un número sólo si la NIC subyacente admite la asignación dinámica de anillos.
hw también se aplica a la configuración de un cliente basado en hardware. Sin embargo, para dicho cliente, no puede especificar el número real de anillos dedicados. En su lugar, ya está establecido el número fijo de anillos por cliente según la configuración inicial del controlador de la NIC. Debe definir las propiedades *rings en hw si la NIC subyacente admite la asignación estática de anillos únicamente.
Para proporcionar información sobre las asignaciones y el uso actuales de los anillos, están disponibles las siguientes propiedades de anillo de sólo lectura adicionales:
rxrings-available y txrings-available indican el número de anillos de Rx y Tx que están disponibles para la asignación.
rxhwclnt-available y txhwclnt-available indican el número clientes basados en hardware de Rx y Tx que se pueden configurar mediante una NIC.
Antes de configurar clientes basados en hardware, debe conocer las capacidades de asignación de anillos de la NIC de su sistema. Para obtener la información necesaria, utilice el siguiente comando:
# dladm show-linkprop link
Donde enlace hace referencia al enlace de datos de la NIC específica.
Para mostrar las propiedades específicas, utilice el siguiente comando:
# dladm show-linkprop -p property[,property,...] link
Para configurar correctamente los clientes basados en hardware, debe determinar lo siguiente:
Si la NIC admite clientes basados en hardware
Las propiedades rxrings y txrings de la salida del comando indican si una NIC admite clientes basados en hardware. De los mismos datos, también puede determinar el tipo de asignación de anillos que es compatible con la NIC.
La disponibilidad de anillos para asignar a los clientes basados en hardware
Las propiedades rxrings-available y txrings-available de la salida del comando indican los anillos de Rx y de Tx disponibles que puede asignar a un cliente basado en hardware.
La disponibilidad de clientes basados en hardware que puede configurar en el enlace
Los anillos se asignan como conjuntos. No hay una correspondencia de igual a igual entre el número de anillos disponibles y el número de clientes que pueden utilizar anillos dedicados. Por lo tanto, para asignar anillos, debe comprobar no sólo la disponibilidad de los anillos, sino también el número de clientes basados en hardware adicionales que todavía puede configurar para utilizar anillos dedicados. Puede asignar anillos sólo si hay anillos y clientes basados en hardware disponibles.
Las propiedades rxhwclnt-available y txhwclnt-available de la salida del comando indican cuántos clientes basados en hardware puede configurar que puedan utilizar anillos de Rx y de Tx dedicados.
Si la NIC admite la asignación de anillos, y los anillos y los clientes basados en hardware están disponibles, puede configurar este tipo de cliente en el sistema, como se explica en Cómo configurar un cliente basado en hardware. Como alternativa, en cambio, puede configurar un cliente basado en software, como se explica en Cómo crear un cliente basado en software.
En los ejemplos siguientes se muestra información diferente que se muestra para las propiedades de enlace relacionadas con anillos de una NIC nxge, una NIC ixgbe y una NIC e1000g.
Ejemplo 21-1 Información de anillo de la NIC nxge
En el ejemplo siguiente se muestra la información de anillo de una NIC nxge.
# dladm show-linkprop nxge0 LINK PROPERTY PERM VALUE DEFAULT POSSIBLE ... nxge0 rxrings rw -- -- sw,<1-7> ... nxge0 txrings rw -- -- sw,<1-7> ... nxge0 rxrings-available r- 5 -- -- nxge0 txrings-available r- 5 -- -- nxge0 rxhwclnt-available r- 2 -- -- nxge0 txhwclnt-available r- 2 -- -- ...
El campo POSSIBLE muestra sw y <1-7> como valores aceptables para las propiedades rxrings y txrings. Estos valores indican que nxge admite clientes basados en hardware y clientes basados en software. El rango <1-7> indica que el número de anillos de Rx o de Tx que se establece debe estar dentro del rango especificado. También puede deducir del rango que la NIC admite la asignación dinámica de anillos para la recepción y la transmisión.
Además, las propiedades *rings-available indican que cinco anillos de Rx y cinco anillos de Tx están disponibles para ser asignados a clientes basados en hardware.
Sin embargo, según las propiedades *clnt-available, sólo puede configurar dos clientes que pueden tener el uso exclusivo de los anillos de Rx disponibles. Del mismo modo, sólo puede configurar dos clientes que pueden tener el uso exclusivo de los anillos de Tx disponibles.
Ejemplo 21-2 Información de anillo de la NIC ixgbe
En el ejemplo siguiente se muestra la información de anillo de una NIC ixgbe.
# dladm show-linkprop ixgbe0 LINK PROPERTY PERM VALUE DEFAULT POSSIBLE ... ixgbe0 rxrings rw -- -- sw,hw ... ixgbe0 txrings rw -- -- sw,hw,<1-7> ... ixgbe0 rxrings-available r- 0 -- -- ixgbe0 txrings-available r- 5 -- -- ixgbe0 rxhwclnt-available r- 0 -- -- ixgbe0 txhwclnt-available r- 7 -- -- ...
El campo POSSIBLE para las propiedades rxrings y txrings indica que se pueden configurar clientes basados en hardware y clientes basados en software en ixgbe0. Para los anillos de Rx sólo se admite la asignación estática de anillos, en la que el hardware asigna un conjunto fijo de anillos de Rx a cada cliente basado en hardware. Sin embargo, puede asignar los anillos de Tx dinámicamente, lo que significa que puede determinar el número de anillos de Tx que se pueden asignar a un cliente basado en hardware, en este ejemplo, hasta siete anillos.
Además, las propiedades *rings-available indican que hay cinco anillos de Tx disponibles para asignar a clientes basados en hardware, pero no se pueden asignar anillos de Rx.
Por último, en función de las propiedades *hwclnt-available, puede configurar siete clientes de Tx basados en hardware para utilizar anillos de Tx exclusivamente. Sin embargo, la asignación dinámica de anillos de Rx no se admite en las tarjetas ixgbe. Por lo tanto, no puede crear un cliente basado en hardware con un conjunto especificado de anillos de Rx dedicados.
Un cero (0) en el campo VALUE de cualquiera de las propiedades *rings-available puede significar una de las siguientes opciones:
No hay más anillos disponibles para asignar a los clientes.
No se admite asignación dinámica de anillos.
Puede verificar el significado del cero mediante la comparación del campo POSSIBLE de rxrings y txrings, y del campo VALUE para rxrings-available y txrings-available .
Por ejemplo, suponga que txrings-available es 0, como se muestra a continuación:
# dladm show-linkprop ixgbe0 LINK PROPERTY PERM VALUE DEFAULT POSSIBLE ... ixgbe0 rxrings rw -- -- sw,hw ixgbe0 txrings rw -- -- sw,hw,<1-7> ixgbe0 rxrings-available r- 0 -- -- ixgbe0 txrings-available r- 0 -- -- ...
En esta salida, el campo VALUE para rxrings-available es 0, mientras que el campo POSSIBLE para rxrings es sw,hw. La información combinada significa que no hay anillos de Rx disponibles, porque la NIC no admite la asignación dinámica de anillos. En la transmisión, el campo VALUE para txrings-available es 0, mientras que el campo POSSIBLE para txrings es sw,hw,<1-7>. La información combinada indica que no hay anillos de Tx disponibles, porque todos los anillos de Tx ya se han asignado. Sin embargo, como indica el campo POSSIBLE para txrings, se admite la asignación dinámica de anillos. Por lo tanto, puede asignar anillos de Tx a medida que estos anillos estén disponibles.
Ejemplo 21-3 Información de anillo de la NIC e1000g
En el ejemplo siguiente se muestra la información de anillo de una NIC e1000g.
# dladm show-linkprop e1000g0 LINK PROPERTY PERM VALUE DEFAULT POSSIBLE ... e1000g0 rxrings rw -- -- -- ... e1000g0 txrings rw -- -- -- ... e1000g0 rxrings-available r- 0 -- -- e1000g0 txrings-available r- 0 -- -- e1000g0 rxhwclnt-available r- 0 -- -- e1000g0 txhwclnt-available r- 0 -- -- ...
La salida indica que no se pueden configurar ni anillos ni clientes basados en hardware, porque la NIC e1000g no admite la asignación de anillos.
Este procedimiento muestra cómo configurar un cliente basado en hardware en una NIC que admite la asignación dinámica de anillos o en una NIC que admite la asignación estática de anillos.
Antes de empezar
Asegúrese de contar con la siguiente información sobre la NIC de su sistema:
Si la NIC admite clientes basados en hardware
El tipo de asignación de anillos que admite la NIC
La disponibilidad de anillos para asignar a los clientes basados en hardware
La disponibilidad de clientes basados en hardware que puede configurar en el enlace
Para obtener información, consulte Preparativos para la configuración de clientes basados en hardware.
Si la NIC admite la asignación dinámica de anillos, utilice la siguiente sintaxis:
# dladm create-vnic -p rxrings=number[,txrings=number] -l link vnic
Se refiere al número de anillos de Rx y de anillos de Tx que asigna al cliente. El número debe estar dentro del rango de del número de anillos disponibles para la asignación.
Nota - Algunas NIC admiten la asignación dinámica en anillos de Rx o de Tx, pero no en ambos tipos. Debe especificar el número en el tipo de anillo para el que se admite la asignación dinámica de anillos.
Se refiere al enlace de datos mediante el que está creando el cliente.
Se refiere al cliente que está configurando.
Si la NIC admite la asignación estática de anillos, utilice la sintaxis siguiente:
# dladm create-vnic -p rxrings=hw[,txrings=hw] -l link vnic
Nota - Algunas NIC admiten la asignación estática en anillos de Rx o de Tx, pero no en ambos tipos. Debe especificar el hw en el tipo de anillo para el que se admite la asignación estática de anillos.
# dladm show-linkprop vnic
Un cliente basado en software no tiene el uso exclusivo de los anillos. En cambio, el cliente comparte el uso de los anillos con el cliente principal o interactúa con otros clientes basados en software existentes. El recuento de anillos para los clientes basados en software depende del número de clientes basados en hardware existentes.
Para crear un nuevo cliente basado en software, escriba el siguiente comando:
# dladm create-vnic -p rxrings=sw[,txrings=sw] -l link vnic
Se refiere al enlace de datos mediante el que está creando el cliente.
Se refiere al cliente que está configurando.
Para configurar un cliente existente para compartir los anillos con otros clientes, escriba el comando siguiente:
# dladm set-linkprop -p rxrings=sw[,txrings=sw] vnic
Ejemplo 21-4 Configuración de clientes basados en hardware y clientes basados en software
En este ejemplo se muestra cómo configurar clientes basados en hardware y clientes basados en software en un sistema con una NIC ixgbe. Para mostrar cómo se implementa la asignación de anillos, el ejemplo se divide en partes. La información relacionada con el anillo se muestra y se explica en cada paso del proceso de configuración. La configuración se lleva a cabo de la siguiente manera:
Antes de configurar los clientes, visualice el uso de los anillos y los enlaces.
Configure el cliente principal.
Configure un cliente basado en software.
Configure otro cliente sin ningún anillo dedicado.
Asigne anillos de forma estática al cliente que acaba de configurar.
Configure un tercer cliente con anillos dedicados que se asignan dinámicamente.
En primer lugar, visualice los enlaces, el uso de los anillos y las propiedades relacionadas con los anillos.
# dladm show-link LINK CLASS MTU STATE BRIDGE OVER ixgbe0 phys 1500 down -- -- # dladm show-phys -H ixgbe0 LINK RINGTYPE RINGS CLIENTS ixgbe0 RX 0-1 <default,mcast> ixgbe0 TX 0-7 <default> ixgbe0 RX 2-3 -- ixgbe0 RX 4-5 -- ixgbe0 RX 6-7 -- # dladm show-linkprop ixgbe0 LINK PROPERTY PERM VALUE DEFAULT POSSIBLE ... ixgbe0 rxrings rw -- -- sw,hw ixgbe0 rxrings-effective r -- -- -- ixgbe0 txrings rw -- -- sw,hw,<1-7> ixgbe0 txrings-effective r -- -- -- ixgbe0 txrings-available r- 7 -- -- ixgbe0 rxrings-available r- 0 -- -- ixgbe0 rxhwclnt-available r- 3 -- -- ixgbe0 txhwclnt-available r- 7 -- -- ...
La salida del comando muestra un único enlace ixgbe0 en el sistema, pero no los clientes existentes. Además, de esta salida también se obtiene la siguiente información:
La NIC tiene ocho anillos de Rx y ocho anillos de Tx (anillos de 0 a 7).
Para los clientes basados en hardware, para los anillos de Rx sólo se admite la asignación estática de anillos, mientras que para los anillos de Tx se admiten las asignaciones tanto estáticas como dinámicas.
Los clientes basados en software se pueden configurar para anillos de Rx y para anillos de Tx.
Hay siete anillos de Tx, de 1 a 7, disponibles para ser asignados de forma dinámica a otros clientes (el anillo 0 normalmente se reserva para el cliente principal). No hay anillos de Rx disponibles porque no se admite la asignación dinámica de anillos para los anillos de Rx.
Se pueden configurar tres clientes basados en hardware para utilizar anillos de Rx, mientras que se pueden configurar siete clientes basados en hardware para utilizar anillos de Tx.
Para obtener una explicación de las propiedades *rings-effective, consulte Cómo identificar asignaciones de anillos en la asignación estática de anillos.
A continuación, configure el cliente principal.
# ipadm create-ip ixgbe0 # ipadm create-addr -T static -a 192.168.10.10/24 ixgbe0/v4 # dladm show-phys -H ixgbe0 LINK RINGTYPE RINGS CLIENTS ixgbe0 RX 0-1 <default,mcast> ixgbe0 TX 0-7 <default>ixgbe0 ixgbe0 RX 2-3 ixgbe0 ixgbe0 RX 4-5 -- ixgbe0 RX 6-7 -- # dladm show-linkprop ixgbe0 LINK PROPERTY PERM VALUE DEFAULT POSSIBLE ... ixgbe0 rxrings rw -- -- sw,hw ixgbe0 rxrings-effective r 2 -- -- ixgbe0 txrings rw -- -- sw,hw,<1-7> ixgbe0 txrings-effective r 8 -- -- ixgbe0 txrings-available r- 7 -- -- ixgbe0 rxrings-available r- 0 -- -- ixgbe0 rxhwclnt-available r- 3 -- -- ixgbe0 txhwclnt-available r- 7 -- -- ...
La salida proporciona la siguiente información:
ixgbe0, el cliente principal, recibe automáticamente dos anillos de Rx (los anillos 2 y 3) para uso dedicado. Sin embargo, ixgbe0 utiliza todos anillos de Tx. De manera predeterminada, todos los anillos no utilizados se asignan automáticamente al cliente principal.
El número de anillos de Tx disponibles que se pueden asignar a otros clientes sigue siendo siete.
El número de clientes basados en hardware disponibles que se pueden configurar con anillos de Rx sigue siendo tres. El número de clientes basados en hardware disponibles que se pueden configurar de forma dinámica con anillos de Tx sigue siendo siete.
A continuación, cree una VNIC como un cliente basado en software.
# dladm create-vnic -l ixgbe0 -p rxrings=sw,txrings=sw vnic0 # dladm show-phys -H ixgbe0 LINK RINGTYPE RINGS CLIENTS ixgbe0 RX 0-1 <default,mcast>,vnic0 ixgbe0 TX 0-7 <default>vnic0,ixgbe0 ixgbe0 RX 2-3 ixgbe0 ixgbe0 RX 4-5 -- ixgbe0 RX 6-7 -- # dladm show-linkprop vnic0 LINK PROPERTY PERM VALUE DEFAULT POSSIBLE ... vnic0 rxrings rw sw -- sw,hw ... vnic0 txrings rw sw -- sw,hw,<1-7> ... # dladm show-linkprop ixgbe0 LINK PROPERTY PERM VALUE DEFAULT POSSIBLE ... ixgbe0 rxrings rw -- -- -- ixgbe0 rxrings-effective r 2 -- -- ixgbe0 txrings rw -- -- sw,hw,<1-7> ixgbe0 txrings-effective r -- -- -- ixgbe0 txrings-available r- 7 -- -- ixgbe0 rxrings-available r- 0 -- -- ixgbe0 rxhwclnt-available r- 3 -- -- ixgbe0 txhwclnt-available r- 7 -- -- ...
La salida proporciona la siguiente información:
Como un cliente basado en software, vnic0 se asigna automáticamente para utilizar los anillos de Rx 0 y 1. Otros clientes basados en software con anillos de Rx que se creen posteriormente se asignarán para utilizar este par de manera predeterminada. De manera predeterminada, a vnic0 también se le asigna el uso de los ocho anillos de Tx (los anillos de 0 a 7). Otros clientes basados en software con anillos de Tx que se creen posteriormente se asignarán para utilizar este par de manera predeterminada.
Como un cliente basado en software, las propiedades rxrings y txrings de vnic0 se establecen de la manera correspondiente en sw.
No se asignan anillos de Tx. Por lo tanto, el número de anillos de Tx disponibles que se pueden asignar a otros clientes sigue siendo siete.
El número de clientes basados en hardware disponibles que se pueden configurar con anillos de Rx sigue siendo tres. El número de clientes basados en hardware disponibles que se pueden configurar con anillos de Tx sigue siendo siete.
A continuación, configure otro cliente sin ninguna asignación de anillo.
# dladm create-vnic -l ixgbe0 vnic1 # dladm show-phys -H ixgbe0 LINK RINGTYPE RINGS CLIENTS ixgbe0 RX 0-1 <default,mcast>,vnic0 ixgbe0 TX 0,2-7 <default>vnic0,ixgbe0 ixgbe0 RX 2-3 ixgbe0 ixgbe0 RX 4-5 vnic1 ixgbe0 RX 6-7 -- ixgbe0 TX 1 vnic1 # dladm show-linkprop vnic1 LINK PROPERTY PERM VALUE DEFAULT POSSIBLE ... vnic1 rxrings rw -- -- sw,hw vnic1 rxrings-effective r- 2 -- -- vnic1 txrings rw -- -- sw,hw,<1-7> vnic1 txrings-effective r- -- -- -- ... # dladm show-linkprop ixgbe0 LINK PROPERTY PERM VALUE DEFAULT POSSIBLE ... ixgbe0 rxrings rw -- -- sw,hw ixgbe0 rxrings-effective r- 2 -- -- ixgbe0 txrings rw -- -- sw,hw,<1-7> ixgbe0 txrings-effective r- -- -- -- ixgbe0 txrings-available r- 7 -- -- ixgbe0 rxrings-available r- 0 -- -- ixgbe0 rxhwclnt-available r- 3 -- -- ixgbe0 txhwclnt-available r- 7 -- -- ...
La salida proporciona la siguiente información:
Cuando se admite la asignación de anillos, un cliente que está configurado se considera un cliente basado en hardware, aunque no se definan las propiedades rxrings y txrings. Por lo tanto, vnic1 recibe automáticamente dos anillos de Rx dedicados (los anillos 4 y 5) para su uso. Del mismo modo, vnic1 también recibe un anillo de Tx dedicado (el anillo 1).
De los ocho anillos de Tx, ixgbe0 y vnic0 ahora comparten siete anillos (el anillo 0 y los anillos del 2 al 7). El anillo 1 se ha convertido en un anillo de Tx dedicado para vnic1.
No se asignan anillos de Tx. Por lo tanto, el número de anillos de Tx disponibles que se pueden asignar a otros clientes sigue siendo siete.
El número de clientes basados en hardware disponibles que se pueden configurar con anillos de Rx sigue siendo tres. El número de clientes basados en hardware disponibles que se pueden configurar con anillos de Tx sigue siendo siete.
A continuación, asigne anillos de manera estática al cliente que acaba de configurar, vnic1.
# dladm set-linkprop -p rxrings=hw,txrings=hw vnic1 # dladm show-phys -H ixgbe0 LINK RINGTYPE RINGS CLIENTS ixgbe0 RX 0-1 <default,mcast>,vnic0 ixgbe0 TX 0,2-7 <default>vnic0,ixgbe0 ixgbe0 RX 2-3 ixgbe0 ixgbe0 RX 4-5 vnic1 ixgbe0 RX 6-7 -- ixgbe0 TX 1 vnic1 # dladm show-linkprop vnic1 LINK PROPERTY PERM VALUE DEFAULT POSSIBLE ... vnic1 rxrings rw hw -- sw,hw vnic1 rxrings-effective r- 2 -- -- vnic1 txrings rw hw -- sw,hw,<1-7> vnic1 txrings-effective r- -- -- -- ... # dladm show-linkprop ixgbe0 LINK PROPERTY PERM VALUE DEFAULT POSSIBLE ... ixgbe0 rxrings rw -- -- sw,hw ixgbe0 rxrings-effective r- 2 -- -- ixgbe0 txrings rw -- -- sw,hw,<1-7> ixgbe0 txrings-effective r- -- -- -- ixgbe0 txrings-available r- 6 -- -- ixgbe0 rxrings-available r- 0 -- -- ixgbe0 rxhwclnt-available r- 3 -- -- ixgbe0 txhwclnt-available r- 6 -- -- ...
La salida proporciona la siguiente información:
La distribución de anillos de Rx y de Tx de vnic1 sigue siendo la misma que cuando se creó vnic1 sin asignación de anillos.
De manera similar, la información de anillo sigue siendo la misma que cuando se creó vnic1 sin asignación de anillos.
Las propiedades rxrings y txrings de vnic1 se definieron de manera explícita en hw. Por consiguiente, el número de anillos de Tx disponibles para la asignación dinámica se redujo a seis. Del mismo modo, el número de clientes basados en hardware disponibles que se pueden configurar se redujo a seis.
A continuación, configure un cliente basado en hardware con anillos de Tx asignados dinámicamente.
# dladm create-vnic -l ixgbe0 -p txrings=2 vnic2 # dladm show-phys -H ixgbe0 LINK RINGTYPE RINGS CLIENTS ixgbe0 RX 0-1 <default,mcast>,vnic0 ixgbe0 TX 0,4-7 <default>vnic0,ixgbe0 ixgbe0 RX 2-3 ixgbe0 ixgbe0 RX 4-5 vnic1 ixgbe0 RX 6-7 vnic2 ixgbe0 TX 1 vnic1 ixgbe0 TX 2-3 vnic2 # dladm show-linkprop vnic2 LINK PROPERTY PERM VALUE DEFAULT POSSIBLE ... vnic2 rxrings rw -- -- sw,hw vnic2 rxrings-effective r- 2 -- -- vnic2 txrings rw 2 -- sw,hw,<1-7> vnic2 txrings-effective r- 2 -- -- ... # dladm show-linkprop ixgbe0 LINK PROPERTY PERM VALUE DEFAULT POSSIBLE ... ixgbe0 rxrings rw -- -- sw,hw ixgbe0 rxrings-effective r- 2 -- -- ixgbe0 txrings rw -- -- sw,hw,<1-7> ixgbe0 txrings-effective r- -- -- -- ixgbe0 txrings-available r- 4 -- -- ixgbe0 rxrings-available r- 0 -- -- ixgbe0 rxhwclnt-available r- 3 -- -- ixgbe0 txhwclnt-available r- 5 -- -- ...
La salida proporciona la siguiente información:
El hardware asignó automáticamente un par de anillos de Rx (los anillos 6 y 7) a vnic2 para uso exclusivo. Sin embargo, los dos anillos de Tx dedicados de vnic2 (los anillos 2 y 3) fueron asignados por el administrador.
Como se asignaron administrativamente dos anillos de Tx a vnic2, el número de anillos de Tx que se pueden asignar a otros clientes se redujo a cuatro.
Como vnic2 se configuró como un cliente basado en hardware con dos anillos de Tx, el número de clientes disponibles que se pueden configurar se redujo a cinco.
Al configurar un cliente basado en hardware con la asignación estática anillos, el hardware determina el número de anillos para asignar. Sin embargo, las propiedades rxrings y txrings se establecen en hw y no indican el número de anillos realmente asignados. En su lugar, el número se puede obtener activando las propiedades rxrings-effective y txrings-effective.
Para crear el cliente con asignación estática de anillos, escriba el comando siguiente:
# dladm create-vnic -l link -p rxrings=hw[,txrings=hw] vnic
Se refiere al enlace de datos mediante el que está creando el cliente.
Se refiere al cliente que está configurando.
Para asignar estadísticamente anillos a un cliente existente, escriba el siguiente comando:
# dladm set-linkprop -p rxrings=hw[,txrings=hw] vnic
# dladm show-linkprop link
Donde enlace hace referencia al cliente basado en hardware o a la VNIC.
Por ejemplo, si asignó anillos de Rx de manera estática, active la propiedad rxrings-effective. Si asignó anillos de Tx de manera estática, active la propiedad txrings-effective. El número indica la cantidad de anillos que fueron asignados por el hardware.
# dladm show-phys -H link
Donde enlace hace referencia al cliente principal.
Ejemplo 21-5 Identificación de anillos asignados de manera estática
En este ejemplo se muestra cómo se asignaron anillos de Rx de forma estática a un cliente que está configurado mediante una NIC ixgbe. En esta NIC, sólo se admite la asignación estática de anillos de Rx. El ejemplo continúa de la siguiente manera:
Visualice los enlaces del sistema. En este ejemplo, el sistema sólo tiene un enlace, que es ixgbe0.
Cree vnic1 como un cliente basado en hardware con anillos de Rx que se asignan de manera estática.
Visualice la información de anillo para conocer el número de anillos asignados por el hardware.
Visualice el uso del anillo para identificar qué anillos fueron asignados.
# dladm show-link LINK CLASS MTU STATE BRIDGE OVER ixgbe0 phys 1500 down -- -- # dladm create-vnic -l ixgbe0 -p rxrings=hw vnic1 # dladm show-linkprop vnic1 LINK PROPERTY PERM VALUE DEFAULT POSSIBLE ... vnic1 rxrings rw hw -- sw,hw vnic1 rxrings-effective r- 2 -- -- vnic1 txrings rw -- -- sw,hw,<1-7> vnic1 txrings-effective r- -- -- -- # dladm show-phys -H ixgbe0 LINK RINGTYPE RINGS CLIENTS ixgbe0 RX 0-1 <default,mcast> ixgbe0 TX 0,2-7 <default> ixgbe0 RX 2-3 vnic1 ixgbe0 RX 4-5 -- ixgbe0 RX 6-7 -- ixgbe0 TX 1 vnic1 ...
La salida indica que, después de haber configurado vnic1 con anillos de Rx, el hardware asignó dos anillos de Rx dedicados, como se refleja en la propiedad rxrings-effective. Según la salida del comando dladm show-phys -H, se dedicaron los anillos de Rx 2 y 3 para ser utilizados por vnic1.
Como resultado de haber sido configurado como cliente, vnic1 también recibió automáticamente el anillo de Tx 1 para su uso dedicado. Sin embargo, la propiedad txrings-effective no muestra ningún valor porque la propiedad txrings no se estableció de manera explícita.
La agrupación es una propiedad de enlace que permite vincular el procesamiento de red a una agrupación de CPU. Con esta propiedad, puede integrar mejor la gestión de recursos de red con la vinculación y la administración de las CPU en zonas. En Oracle Solaris, la administración de zonas incluye la vinculación de procesos no relacionados con redes a una agrupación de recursos de CPU mediante el comando zonecfg o poolcfg. Para vincular esa misma agrupación de recursos para también gestionar los procesos de red, utilice el comando dladm set-linkprop para configurar la propiedad pool de un enlace. A continuación, asigne dicho enlace a la zona.
Al establecer la propiedad pool para un enlace y asignar el enlace como la interfaz de red de la zona, ese enlace también se vincula a la agrupación de una zona. Si dicha zona se establece como exclusiva, los recursos de CPU de la agrupación ya no podrán ser utilizados por otros enlaces de datos que no estén asignados a dicha zona.
Nota - Una propiedad aparte, cpu, se puede establecer para asignar CPU específicas a un enlace de datos. Las dos propiedades, cpu y pool, son mutuamente excluyentes. No puede definir ambas propiedades para un enlace de datos determinado. Para asignar recursos de CPU a un enlace de datos mediante la propiedad cpu, consulte Cómo asignar las CPU a los enlaces.
Para obtener más información sobre agrupaciones dentro de una zona, consulte el Capítulo 13, Creación y administración de agrupaciones de recursos (tareas) de Administración de Oracle Solaris: zonas de Oracle Solaris, zonas de Oracle Solaris 10 y gestión de recursos. Para obtener más información sobre cómo crear agrupaciones y asignar conjuntos de CPU a las agrupaciones, consulte la página del comando man poolcfg(1M).
La siguiente figura muestra cómo funcionan las agrupaciones cuando se asigna la propiedad pool a un enlace de datos.
Figura 21-1 Propiedad pool de una VNIC asignada a una zona
En la figura, el sistema tiene ocho CPU. Cuando no se configuran agrupaciones en el sistema, todas las CPU pertenecen a la agrupación predeterminada y son utilizadas por la zona global. Sin embargo, en este ejemplo, se creó la agrupación pool99, que está compuesta por CPU 3 y CPU 4. Esta agrupación está asociada a zone1, que es una zona exclusiva. Si pool99 se establece como una propiedad de vnic1, pool99 se dedica a gestionar también los procesos de red de vnic1. Una vez que vnic1 se asigna como la interfaz de red de zone1, las CPU de pool99 se reservan para gestionar procesos relacionados y no relacionados con redes de zone1.
La propiedad pool es dinámica por naturaleza. Las agrupaciones de zona se pueden configurar con un rango de CPU, y el núcleo determina qué CPU se asignan al conjunto de CPU de la agrupación. Los cambios realizados en la agrupación se implementan de manera automática en el enlace de datos, lo que simplifica la administración de las agrupaciones de ese enlace. Por el contrario, para asignar CPU específicas al enlace mediante la propiedad cpu, debe especificar la CPU que se asignará. Debe establecer la propiedad cpu cada vez que desea cambiar los componentes de la CPU de la agrupación.
Por ejemplo, suponga que en el sistema de la Figura 21-1, se desconecta CPU 4. Como la propiedad pool es dinámica, el software automáticamente asocia una CPU adicional a la agrupación. Por lo tanto, se conserva la configuración original de dos CPU de la agrupación. Para vnic1, el cambio es transparente. En la siguiente figura, se muestra la configuración ajustada.
Figura 21-2 Reconfiguración automática de la propiedad pool
Las propiedades adicionales relacionadas con la agrupación muestran información sobre el uso del enlace de datos de las CPU o de una agrupación de CPU. Estas propiedades son de sólo lectura y no pueden ser configuradas por el administrador.
pool-effective muestra la agrupación que se está utilizando para procesos de red.
cpus-effective muestra la lista de las CPU que se están utilizando para procesos de red.
Para gestionar los recursos de CPU de una zona, la configuración de la propiedad pool de un enlace de datos no se suele llevar a cabo como paso inicial. Con mayor frecuencia, se utilizan comandos, como zonecfg y poolcfg, para configurar una zona con el fin de usar una agrupación de recursos. Las propiedades de enlace cpu y pool en sí mismas no se establecen. En tales casos, las propiedades pool-effective y cpus-effective de estos enlaces de datos se definen de manera automática según esas configuraciones de zona cuando se inicia la zona. La agrupación predeterminada se muestra en pool-effective, mientras que el valor de cpus-effective es seleccionado por el sistema. Por lo tanto, si utiliza el comando dladm show-linkprop, las propiedades pool y cpu estarán vacías, mientras que las propiedades pool-effective y cpus-effective contendrán valores.
Configurar directamente las propiedades pool y cpu de un enlace de datos es un paso alternativo que puede utilizar para vincular la agrupación de CUP de una zona para procesos de red. Después de configurar estas propiedades, sus valores también se reflejarán en las propiedades pool-effective y cpus-effective. Tenga en cuenta, sin embargo, que este paso alternativo se usa con menos frecuencia para gestionar los recursos de red de una zona.
Como sucede con otras propiedades de enlace, la propiedad pool se puede configurar para un enlace de datos en el momento en que se crea el enlace o más adelante, cuando el enlace requiere configuración adicional. Por ejemplo:
# dladm create-vnic -p pool=pool-name -l link vnic
Establece la propiedad pool mientras crea la VNIC. Para establecer la propiedad pool de una VNIC existente, utilice la sintaxis siguiente:
# dladm setlinkprop -p pool=pool-name vnic
El siguiente procedimiento muestra los pasos para configurar una agrupación de CPU para una VNIC.
Antes de empezar
Primero, debe realizar lo siguiente:
Crear un conjunto de procesadores con su número asignado de CPU.
Crear la agrupación con la que se asociará el conjunto de procesadores.
Asociar la agrupación con el conjunto de procesadores.
Nota - Para ver las instrucciones para completar estos requisitos previos, consulte Cómo modificar una configuración de Administración de Oracle Solaris: zonas de Oracle Solaris, zonas de Oracle Solaris 10 y gestión de recursos.
Si la VNIC todavía no se creó, utilice la sintaxis siguiente:
# dladm create-vnic -l link -p pool=pool vnic
Donde pool hace referencia al nombre de la agrupación que se creó para la zona.
Si la VNIC existe, utilice la sintaxis siguiente:
# dladm setlinkprop -p pool=pool vnic
zonecfg>zoneid:net> set physical=vnic
Nota - Para ver todos los pasos que explican cómo asignar una interfaz de red a una zona, consulte Configuración, verificación y confirmación de una zona de Administración de Oracle Solaris: zonas de Oracle Solaris, zonas de Oracle Solaris 10 y gestión de recursos.
Ejemplo 21-6 Asignación de una agrupación de CPU de un enlace a una zona con un tipo de IP exclusiva
En este ejemplo se muestra cómo se asigna una agrupación al enlace de datos de una zona. El escenario se basa en la configuración en la Figura 21-1. En el ejemplo, se presupone que una agrupación de CPU denominada pool99 ya fue configurada para la zona. La agrupación se asigna a una VNIC. Por último, la zona no global zone1 se configura para usar la VNIC como la interfaz de red.
# dladm create-vnic -l e1000g0 -p pool99 vnic0 # zonecfg -c zone1 zonecfg:zone1> set ip-type=exclusive zonecfg:zone1> add net zonecfg:zone1>net> set physical=vnic0 zonecfg:zone1>net> end zonecfg:zone1> exit
El procedimiento siguiente explica cómo asignar CPU específicas para procesar el tráfico que atraviesa un enlace de datos mediante la configuración de la propiedad cpu.
# dladm show-linkprop -p cpus link
De manera predeterminada, no se asigna ninguna CPU a ninguna interfaz específica. Por lo tanto, el parámetro VALUE de la salida del comando no contendrá ninguna entrada.
# echo ::interrupts | mdb -k
La salida muestra los parámetros de cada enlace del sistema, incluido el número de CPU.
Las CPU pueden incluir aquellas con las que están asociadas las interrupciones del enlace.
# dladm set-linkprop -p cpus=cpu1,cpu2,... link
Donde cpu1 es el número de CPU que se va a asignar al enlace. Puede dedicar varias CPU al enlace.
# echo ::interrupts | mdb -k
# dladm show-linkprop -p cpus link
Ejemplo 21-7 Asignación de CPU a la interfaz
En este ejemplo se muestra cómo dedicar CPU específicas a la interfaz internal0 en la Figura 18-3.
Tenga en cuenta la siguiente información de la salida generada por los diferentes comandos. Para mayor claridad, la información significativa se destaca en la salida.
De manera predeterminada, internal0 no tiene CPU dedicada. Por lo tanto VALUE es --.
La interrupción de internal0 está asociada a la CPU 18.
Después de que se asignan las CPU, internal0 muestra una nueva lista de CPU en VALUE.
# dladm show-linkprop -p cpus internal0 LINK PROPERTY PERM VALUE DEFAULT POSSIBLE internal0 cpus rw -- -- -- # echo ::interrupts | mdb -k Device Shared Type MSG # State INO Mondo Pil CPU external#0 no MSI 3 enbl 0x1b 0x1b 6 0 internal#0 no MSI 2 enbl 0x1a 0x1a 6 18 # dladm set-linkprop -p cpus=14,18,19,20 internal0 # dladm show-linkprop -p cpus internal0 LINK PROPERTY PERM VALUE DEFAULT POSSIBLE internal0 cpus rw 14,18,19,20 -- --
Todos los subprocesos auxiliares, incluida la interrupción, ahora se limitan al conjunto de CUP recientemente asignado.