Opciones de red específicas de interfaz

Para lograr un rendimiento de red de alta velocidad (100 Mb o más) bueno, se deben ajustar especialmente las interfaces TCP/IP. Este esfuerzo se complica por el hecho de que en un solo sistema se pueden utilizar varias interfaces de red y una combinación de interfaces TCP/IP tradicionales y de alta velocidad.

En el sistema operativo AIX® , las opciones de red específicas de interfaz (ISNO) permiten a los administradores del sistema ajustar cada interfaz TCP/IP individualmente para obtener el mejor rendimiento.

Hay cinco parámetros ISNO para cada interfaz soportada: rfc1323, tcp_nodelay, tcp_sendspace, tcp_recvspace y tcp_mssdflt. Cuando se establecen, los valores de estos parámetros prevalecen sobre los parámetros de todo el sistema de los mismos nombres que se habían establecido con el mandato no. Cuando no se establecen opciones ISNO para una interfaz determinada, se utilizan opciones para todo el sistema. Cuando una aplicación ha establecido opciones para un socket determinado utilizando la subrutina setsockopt, dichas opciones prevalecen sobre las ISNO.

La opción de red use_isno, establecida con el mandato no, debe tener un valor de 1 para que las ISNO entren en vigor. El valor predeterminado para use_isno es 1.

Algunos adaptadores de alta velocidad tienen los parámetros ISNO establecidos de forma predeterminada en la base de datos ODM.

Las interfaces Gigabit Ethernet, cuando se configuran para utilizar una MTU de 9000, utilizan de forma predeterminada los siguientes valores de ISNO:

Nombre AIX 4.3.3 Valor AIX 4.3.3 (4330-08) Valor AIX 5.1 (y posterior) Valor
tcp_sendspace 131072 262144 262144
tcp_recvspace 92160 131072 131072
rfc1323 1 1 1

Las interfaces Gigabit Ethernet, cuando se configuran para utilizar una MTU de 1500, utilizan de forma predeterminada los siguientes valores de ISNO:

Nombre AIX 4.3.3 Valor AIX 4.3.3 (4330-08) Valor AIX 5.1 (y posterior) Valor
tcp_sendspace 65536 131072 131072
tcp_recvspace 16384 65536 65536
rfc1323 0 no establecido no establecido

Las interfaces FDDI, cuando se configuran para utilizar una MTU de 4352, utilizan de forma predeterminada los siguientes valores de ISNO:

Nombre Valor
tcp_sendspace 45046
tcp_recvspace 45046

Los parámetros de ISNO no se pueden visualizar o cambiar utilizando SMIT. Se pueden establecer utilizando el mandato chdev o el mandato ifconfig. El mandato ifconfig sólo cambia los valores hasta el siguiente rearranque. El mandato chdev cambia los valores en la base de datos de ODM para que se utilicen en los rearranques posteriores. Se puede utilizar el mandato lsattr o el mandato ifconfig para visualizar los valores actuales.

Los ejemplos siguientes muestran mandatos que en primer lugar se pueden utilizar para verificar el soporte de sistema y de interfaz y, a continuación, para establecer y verificar los valores nuevos.

  1. Verifique el soporte general de sistema e interfaz utilizando los mandatos no y lsattr.
    • Asegúrese de que la opción use_isno esté habilitada utilizando un mandato similar al siguiente:
      $ no -a | grep isno 
                use_isno=1
    • Asegúrese de que la interfaz da soporte a los cinco nuevos ISNOs utilizando el mandato lsattr -El , tal como se muestra a continuación:
      $ lsattr -E -l en0 -H 
                attribute   value  description 
                rfc1323                      N/A 
                tcp_nodelay                  N/A 
                tcp_sendspace                N/A 
                tcp_recvspace                N/A 
                tcp_mssdflt                  N/A
  2. Establezca los valores específicos de interfaz, utilizando el mandato ifconfig o chdev. El mandato ifconfig establece los valores temporalmente, lo cual se recomienda para realizar pruebas. El mandato chdev modifica el ODM, de modo que los valores personalizados permanecen válidos después del rearranque.
    • Establezca tcp_recvspace y tcp_sendspace en 64 K y habilite tcp_nodelay utilizando uno de los siguientes:
      $ ifconfig en0 tcp_recvspace 65536 tcp_sendspace 65536 tcp_nodelay 1 
      $ chdev -l en0 -a tcp_recvspace=65536 -a tcp_sendspace=65536 -a tcp_nodelay=1
    • De forma alternativa, suponiendo que el mandato no informe de un valor global de rfc1323=1 , el usuario root puede desactivar rfc1323 para todas las conexiones a través de en0 con los mandatos siguientes:
      $ ifconfig en0 rfc1323 0 
      $ chdev -l en0 -a rfc1323=0
  3. Verifique los valores utilizando el mandato ifconfig o lsattr, como se muestra en el ejemplo siguiente:
    $ ifconfig en0 <UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT>
              en0: flags=e080863  
                  inet 9.19.161.100 netmask 0xffffff00 broadcast 9.19.161.255 
                  tcp_sendspace 65536 tcp_recvspace 65536 tcp_nodelay 1 rfc1323 0 
    $ lsattr -El en0 
              rfc1323         0           N/A               True 
              tcp_nodelay     1           N/A               True 
              tcp_sendspace   65536       N/A               True 
              tcp_recvspace   65536       N/A               True 
              tcp_mssdflt                 N/A               True