Tiempos de transferencia FTP dolorosamente altos, tiempo de respuesta de inicio de sesión interactivo demasiado largo, obteniendo 1 mbps de su red de 100 mbps. Aunque siempre prefiero culpar a la red, tengo que admitir que a veces no es la red.
Lo primero que hay que buscar cuando se trata de un problema de rendimiento de TCP es un problema de Ethernet de bajo nivel y, con mucho, el problema más común es un desajuste de dúplex. Ethernet puede funcionar en modo dúplex completo o medio dúplex. En el modo dúplex completo, tanto el adaptador del módulo como el dispositivo al que está conectado, su par de enlace, (normalmente un conmutador, pero no siempre) pueden transmitir al mismo tiempo. En modo semidúplex sólo un lado puede transmitir. Hay una ventana en el tiempo en la que ambos lados pueden pensar que está bien transmitir y lo hacen, cuando eso sucede se declara una colisión, ambos lados dejan de transmitir, esperan una cantidad de tiempo aleatoria y lo intentan de nuevo. Es importante entender que, cuando ambos lados están en modo medio dúplex, estas colisiones no reducen significativamente el rendimiento de la red.
En un desajuste dúplex, un lado está en modo dúplex completo y su par de enlace está en modo medio dúplex. El lado en modo medio dúplex puede experimentar colisiones tardías y colisiones excesivas, estos tipos de errores reducen significativamente el rendimiento. Cualquier colisión tardía o excesiva es una indicación de un problema. La ralentización de la red puede parecer desproporcionada con respecto al número de colisiones tardías y excesivas porque en una condición de desajuste dúplex incluso las colisiones normales reducirán el rendimiento porque el par de enlace no retransmitirá la trama ya que no reconocerá una colisión en modo dúplex completo.
Entonces, ¿cómo sabes si eso te está pasando? El "
netstat -interfaceEl comando "Desconexión dúplex" mostrará las estadísticas que le permitirán determinar si se está produciendo una desadaptación dúplex. En el siguiente ejemplo, las estadísticas del adaptador activo de la #sdlmux.m16.11-3 se muestran en la interfaz. He eliminado las estadísticas del adaptador de reserva para ahorrar espacio y he añadido los números de línea.Si el adaptador está en modo semidúplex, verá recuentos positivos en las líneas 25 (Trama de transmisión fue aplazada), 26 (Trama de transmisión después de un solo reintento) y 27 (Trama de transmisión después de múltiples reintentos). Estos son los contadores de colisión normales. Si ves recuentos positivos en las líneas 24 (Trama de transmisión descartada, colisiones tardías) y/o 28 (Trama de transmisión descartada, reintentos excesivos) probablemente tienes o has tenido un desajuste dúplex. Estos contadores sólo se reinician cuando se reinicia el adaptador, por lo que los valores positivos son una indicación de que hubo un problema; los contadores que siguen subiendo son una indicación de que todavía tienes un problema. Si el adaptador está en modo dúplex completo y se ve un valor positivo en la línea 32 (cuadro de recepción descartado, CRC malo) el par de enlace probablemente está en modo medio dúplex.
1 netstat -interface #sdlmux.m16.11-3 2 3 Ethernet adapters are grouped 4 Number of failovers = 0 5 6 Active Device Statistics: 7 8 9 MAC Type : CSMA/CD10 MAC Address: 00:00:a8:43:52:2211 Device Name: #sdlmux.m16.11-312 Line Speed : 100 mb/s13 Line Duplex: Full-Duplex1415 MAC Statistics:16 Received frames : 2078318117 Received multicast and broadcast frames : 298437518 Received octets : 178791386919 Transmitted frames : 974701520 Transmitted octets : 278048581921 LAN Chipset re-initialized : 022 SQE error : 023 Transmit ring full : 024 Transmit frame discarded, late collisions: 025 Transmit frame was deferred : 026 Transmit frame after a single retry : 027 Transmit frame after multiple retry : 028 Transmit frame discarded, excessive retry: 029 Receive frame discarded, lack of buffers : 030 Receive frame discarded, improper framing: 031 Receive frame discarded, an overflow : 032 Receive frame discarded, bad CRC : 67433 Receive frame discarded, bad address : 034 Receive frame discarded, congestion : 035 36 MAC Summary:37 Transmitted frames : 974701538 Transmitted octets : 278048581939 Retransmitted frames : 040 Received frames : 2376755641 Received octets : 178791386942 Total of lost frames : 043 Partner Device Statistics: . . . . ready 08:35:14¿Cómo te metiste en este escenario de desajuste de dúplex? Por supuesto que es posible tener un dispositivo configurado para funcionar en modo dúplex completo y el par de enlace configurado para el modo medio dúplex PERO el escenario más común es tener un dispositivo configurado para dúplex completo y el par de enlace configurado para la auto-negociación. La mayoría de los dispositivos cuando están configurados para dúplex completo no se autonegocian y, de acuerdo con la especificación de autonegociación, la parte que intenta autonegociar debe volver al modo semidúplex cuando no ve el protocolo de autonegociación del par de enlace.
Por defecto, los adaptadores Ethernet utilizados por OpenVOS se autonegocian, por lo que a menos que el par de enlace también esté configurado para la autonegociación o el modo half duplex, se producirá un desajuste de dúplex. Para configurar un adaptador para un modo dúplex específico necesitas añadir el
“-duplex full” o “-duplex half” cadena al campo de parámetros en la entrada devices.tin para el adaptador. También debe ajustar la velocidad. La Guía del administrador de flujos TCP/IP de OpenVOS (R419) describe esto en detalle.Una nota final, si el adaptador funciona a 1 gigabit, también funcionará en modo dúplex completo. Nadie soporta el gigabit medio dúplex.
