
Me preguntaba qué sucede si un conmutador pierde demasiados paquetes. La razón por la que pregunto es porque tengo un interruptor que está constantemente sobrecargado. Esto se debe a que las personas descargan archivos pesados en la red. Tengo un interruptor de respaldo en caso de que este falle.
Respuesta1
La respuesta corta es "no mucho". En términos de lo que realmente sucede en el conmutador, los paquetes se pierden, y eso es todo. Al conmutador no le importa más que registrar el hecho de que se perdieron.
Descubrirá exactamente qué causa la pérdida de paquetes en la siguiente sección y cómo está diseñada la red en su conjunto para abordarla.
Nuevamente, en resumen, la respuesta a la pérdida de paquetes la realizan los clientes y no el conmutador. Es su responsabilidad y el único control que tiene el switch sobre ello es a través de la configuración de sus colas y con características como QoS que solo priorizan el tráfico (no detienen la pérdida de paquetes).
¿Qué está pasando en el interruptor?
Los conmutadores utilizan colas para permitir una pequeña cantidad de búfer entre los paquetes que entran y salen de ellos. Son algo así como un caché y tienen muchas características similares. Por lo general, desea que el paquete entre al conmutador y salga directamente. Esta es la forma más rápida, pero no siempre es posible.
Si tiene varios clientes convergentes en una conexión que carece de ancho de banda o se está conectando a través de un ancho de banda más estrecho al destino, los paquetes no se pueden enviar tan rápido como llegan al dispositivo.
Los paquetes adicionales se acumularán en las colas utilizadas dentro del conmutador con la esperanza de que se trate de una ráfaga de paquetes y de que haya menos paquetes antes de que la caché se llene por completo y pueda "ponerse al día" consigo misma.
Si el caché se llena, significa que cualquier otro paquete que llegue no tiene dónde almacenarse y aquí es donde se descartan los paquetes; simplemente se descartan hasta que haya suficiente espacio en la cola.
Ejemplo
Un ejemplo del mundo real de esto sería un servidor de archivos en una oficina. Supongamos que tiene conexiones de 48x100Mbps y 2 conexiones de 1Gbps (donde las 48 son para clientes y los 2 gigabits están vinculados al servidor). Si no había nadie más intentando comunicarse con el servidor, entonces un cliente podría utilizar felizmente su conexión completa de 100 Mbps (con gastos generales, por supuesto). Pero tan pronto como más de 20 quieran acceder al servidor de archivos que ya es de 2 gbit, la persona número 21 no podrá hacerlo.
Los paquetes comenzarán a agregarse a la cola por orden de llegada y se liberarán utilizando la configuración de priorización que está configurada en el conmutador; generalmente, primero en entrar, primero en salir (FIFO) cuando no se establece ninguna configuración como QoS. Cuando este búfer se llena (demasiados paquetes), los paquetes se descartan por completo y corresponde a los clientes darse cuenta y hacer algo al respecto.
El resultado típico sería available_bandwidth / (number_of_clients * bandwidth_of_clients)
un rendimiento promedio. Donde la tarifa que obtiene cada cliente es proporcional a su velocidad de conexión al switch. Esto no es tanto una decisión de diseño determinista sino el resultado de la probabilidad de que un paquete provenga de cualquiera de los puertos tan pronto como haya espacio disponible en una cola.
¿Qué sucede con el tráfico de la red?
El software/hardware que se comunica debe identificar que los paquetes se están descartando e implementar una limitación de velocidad para reducir la cantidad de datos que se intentan enviar. Dicho esto, por supuesto, si los datos son UDP (normalmente en aplicaciones en tiempo real), no hay ningún mensaje ACK, por lo que no sabrá si debe realizar ninguna limitación de velocidad.
La limitación de velocidad es generalmente la forma en que todo el tráfico determina la velocidad más rápida a la que puede enviar. Por ejemplo, es posible que tenga una conexión de 1 Gbit a un enrutador en una red simple, pero solo una velocidad de carga de 20 Mbit y cuando intente enviar más que eso, sus paquetes se descartarán, la PC no recibirá un ACK y se impondrá una limitación de velocidad. coincide con la velocidad máxima que puede alcanzar en toda la red (incluido Internet) hasta el destino.
En TCP elalgoritmo de naglese utiliza para imponer esta limitación de velocidad, pero en una conexión UDP el resultado probablemente sería una disminución de la calidad (para cosas como una transmisión de video) o simplemente una falla, pero la falla en recibir suficientes datos tendría que provenir explícitamente del destino, en lugar de por la falta de reconocimiento.