Es bien conocido el hecho de que cuando se conecta una máquina a la red (lo he visto en Solaris, HP-UX, Windows, Linux, etc) si no se fuerza la tarjeta de red y el switch a la velocidad requerida, la transferencia de archivos y la comunicación es pésima.
En el trabajo, cada vez que se conecta un servidor a la red se debe forzar la interfaz de red, ya sea a 100 Mbps Full-Duplex o a 1000 Mbps Full-Duplex. Pero ojo, con las tarjetas Gigabit en Solaris he visto algunos problemas con el forzado, que explicaré a continuación.
Las inferces se pueden forzar con un archivo que modifica los parámetros a nivel de módulo en el Kernel (Ej: /kernel/drv/ce.conf) o a través del comando ndd (esto dura sólo hasta el reboot del servidor). El primer método es ún "poco" más complicado que el segundo, pero al final hacen lo mismo. En mi experiencia, da lo mismo cual de los métodos usar. En lo particular, utilizo ndd y el script /etc/rc2.d/S68net-tune.
Ahora viene lo importante. Con las tarjetas ce tenía el problema que cuando ocurría algun problema en el switch o reinicio de la máquina, el link de la tarjeta gigabit no volvía a subir. Tenía que activar la autonegociación para que levantara el link y después la forzaba a no autonegociar. Finalmente opté por dejarla a 1000 Mbps Full-Duplex con autonegociación ACTIVA.
En el caso de las ipge, cuando se fuerzan a 1000 Mbps Full-Duplex y autonegociación en OFF, el link nunca sube. La solución es dejar la Autonegociación en ON.
Ahora viene la pregunta (cuya respuesta no conocía y sólo me quedaba asumir): Por qué hay que dejar habilitada la autonegociación cuando se quiere forzar a 1000 Mbps Full-Duplex???
La respuesta la encontré en el documento de instalación y configuración de las tarjetas ipge (P/N: 819-4090-10):
De acuerdo a las especificaciones del IEEE 802.3, cuando se utiliza la velocidad de 1000 Mbit/sec sobre un medio de cobre, la autonegociación no es opcional. En la ausencia de autonegociación (por ejemplo, cuando se usa el modo Forced), la sincronización del link entre los link partners puede no ocurrir y el link no subirá.
Por lo tanto, para forzar una interfaz a 1 Gbps Full-Duplex en Solaris se debe dejar la autonegociación en 1 (On).
Ejemplo:
Para poder forzar la interfaz ipge1 con ndd, se debe ejecutar lo siguiente:
ndd -set /dev/ipge instance 1
ndd -set /dev/ipge adv_1000fdx_cap 1
ndd -set /dev/ipge adv_1000hdx_cap 0
ndd -set /dev/ipge adv_100fdx_cap 0
ndd -set /dev/ipge adv_100hdx_cap 0
ndd -set /dev/ipge adv_10fdx_cap 0
ndd -set /dev/ipge adv_10hdx_cap 0
ndd -set /dev/ipge adv_autoneg_cap 1
Saludos,
ChaZcaZ./
No comments:
Post a Comment