Administración de redes TCP/IP, IPMP y túneles IP en Oracle® Solaris 11.2

Salir de la Vista de impresión

Actualización: Julio de 2014
 
 

Implementación del control de congestión de tráfico

La congestión de la red generalmente se produce cuando hay desbordamientos de la memoria intermedia del enrutador, cuando los nodos envían más paquetes de los que la red puede recibir. Existen diversos algoritmos que evitan la congestión del tráfico mediante el establecimiento de controles en los sistemas de envío. Estos algoritmos se admiten en Oracle Solaris y pueden agregarse con facilidad o incorporarse directamente en el sistema operativo, como se muestra en la siguiente tabla que describe los algoritmos incorporados.

Algoritmo
Nombre de Oracle Solaris
Descripción
NewReno
newreno
Algoritmo predeterminado en Oracle Solaris. Este mecanismo de control incluye la elusión de la congestión, el retardo en el inicio y el intervalo de congestión de un remitente.
HighSpeed
highspeed
Una de las modificaciones más sencillas y más conocidas de NewReno para redes de alta velocidad.
CUBIC
cubic
Actualmente, el algoritmo predeterminado en Linux 2.6. Cambia la fase de elusión de congestión del aumento de intervalo lineal a una función cúbica.
Vegas
vegas
Un algoritmo basado en retraso clásico que intenta predecir la congestión sin desencadenar la pérdida real de paquetes.

El control de congestión se activa mediante el establecimiento de las siguientes propiedades TCP relacionadas con el control. Aunque estas propiedades se muestran para TCP, el mecanismo de control que se activa mediante estas propiedades también se aplica al tráfico SCTP.

cong_enabled

Contiene una lista de algoritmos, separados por comas, que funcionan actualmente en el sistema. Puede agregar o eliminar algoritmos para activar sólo los algoritmos que desea utilizar. Esta propiedad puede tener varios valores. Por lo tanto, debe usar el cualificador += o -=, según el cambio que desee realizar.

cong_default

Utilizado de manera predeterminada cuando las aplicaciones no especifican los algoritmos explícitamente en las opciones de socket. El valor de la propiedad cong_default se aplica a zonas globales y no globales.

En el ejemplo siguiente se muestra cómo agregar un algoritmo para el control de congestión al protocolo:

# ipadm set-prop -p cong_enabled+=algorithm tcp

Elimine un algoritmo de la siguiente manera:

# ipadm set-prop -p cong_enabled-=algorithm tcp

Reemplace el algoritmo predeterminado de la siguiente manera:

# ipadm set-prop -p cong_default=algorithm tcp

Notas -  No se siguen reglas de secuencia para agregar o eliminar algoritmos. Puede eliminar un algoritmo antes de agregar otros algoritmos para una propiedad. Sin embargo, la propiedad cong_default siempre debe tener un algoritmo definido.

En el ejemplo siguiente se muestra cómo implementar el control de congestión. En este ejemplo, el algoritmo predeterminado para el protocolo TCP se cambia de newreno a cubic. A continuación, el algoritmo vegas se elimina de la lista de algoritmos activados.

# ipadm show-prop -p extra_priv_ports tcp
PROTO PROPERTY              PERM CURRENT      PERSISTENT   DEFAULT      POSSIBLE
tcp   extra_priv_ports      rw   2049,4045    --           2049,4045    1-65535

# ipadm show-prop -p cong_default,cong_enabled tcp
PROTO PROPERTY              PERM CURRENT      PERSISTENT   DEFAULT      POSSIBLE
tcp   cong_default          rw   newreno      --           newreno      newreno,cubic,
                                                                        highspeed,vegas
tcp   cong_enabled          rw   newreno,cubic, newreno,cubic, newreno  newreno,cubic,
                                 highspeed,   highspeed,                highspeed,vegas
                                 vegas        vegas

# ipadm set-prop -p cong_enabled-=vegas tcp
# ipadm set-prop -p cong_default=cubic tcp

# ipadm show-prop -p cong_default,cong_enabled tcp
PROTO PROPERTY              PERM CURRENT      PERSISTENT   DEFAULT      POSSIBLE
tcp   cong_default          rw   cubic        cubic        newreno      newreno,cubic,
                                                                        highspeed
tcp   cong_enabled          rw   newreno,cubic, newreno,cubic, newreno  newreno,cubic,
                                 highspeed    highspeed                 highspeed,vegas