¿En teoría, Gigabit Ethernet puede ser más rápido que Ethernet de 10/100 megabits para muchos paquetes pequeños?

¿En teoría, Gigabit Ethernet puede ser más rápido que Ethernet de 10/100 megabits para muchos paquetes pequeños?

Un proveedor de software con el que trabajo requiere conexiones Gigabit Ethernet para una configuración clásica de software cliente-servidor. A mi sorprendida pregunta de por qué necesitarían transferir una cantidad tan grande de datos entre el cliente y el servidor, el proveedor respondió que no transfieren ningún paquete grande, sino muchos paquetes pequeños. Me dijo que, según su experiencia, esto funciona mucho más rápido en conexiones gigabit que en conexiones de 10 o 100 megabits.

Habiendo entendido Ethernet como una conexión en serie y la velocidad de transferencia está limitada principalmente por el medio (fibra, cobre, etc.), estoy desconcertado. ¿Existe una explicación teórica para el fenómeno explicado por el proveedor que pueda faltar? Mi experiencia no es exactamente en hardware, por lo que tal vez existan medidas de optimización en estándares gigabit que de alguna manera optimicen para este caso especial.

Entonces, suponiendo que tendría que enviar 1.000.000 de paquetes de solo unos pocos bytes cada uno, ¿hay alguna razón por la cual esto podría ser más rápido en Gigabit Ethernet que en Ethernet de 10/100 megabits?

Respuesta1

La velocidad de paquetes (pps) es el resultado directo de dividir la velocidad de la línea por el tamaño del paquete. Como tal, escalalinealmentecon velocidad de línea.

El tamaño mínimo de la trama Ethernet es de 84 bytes, mientras que el máximo (sin tener en cuenta las tramas gigantes) es de 1538 bytes. Como tal, son posibles las siguientes velocidades de fotogramas:

  • 100 Mbit/s: 8127 f/s a 148 809 f/s
  • 1 GBit/s: 81.274 f/s a 1.488.096 f/s

Más ancho de banda siempre es mejor en términos de rendimiento. Puede que sea peor en términos de latencia y probablemente utilice más energía.

Respuesta2

Si tengo un paquete de 5 kb, ¿por qué importaría si la línea puede transmitir 10, 100 o 1000 mbit?

La líneano esmedido en "megabits", se mide en megabitspor segundo. Es una unidad de velocidad que se aplica por igual a cualquier tamaño de datos, al igual que "kilómetros por hora" se aplica por igual a cualquier distancia. (Por ejemplo, viajar 10 metros a 20 km/h sigue siendo diez veces más rápido que hacerlo a 2 km/h.)

Las unidades se pueden reducir si lo desea; por ejemplo, 1 km/h se puede convertir a ~0,27 m/s. De manera similar, 1 Gb/s se puede convertir a 1 kb/μs. Sigue siendo el mismo valor, pero se puede ver que transferir 5 kilobits a 1 kb/μs (1 Gb/s) tarda 5 microsegundos, diez veces más rápido que 50 μs.

[Espero haber hecho bien los cálculos]

Entonces, suponiendo que tendría que enviar 1'000'000 de paquetes de solo unos pocos bytes cada uno, ¿hay alguna razón por la cual esto podría ser más rápido en gigabit ethernet que en megabit ethernet?

Se llama "Gigabit Ethernet" porque su velocidad de transferencia de datos es de 1 Gbps (gigabits por segundo). En realidad, eso no es una capacidad, sino unafrecuencia de reloj fija.Por ejemplo, si envías un gigabit, se transferirá en un segundo a 1 Gbps. Pero si envías 10 megabits, se transferirán en 0,01 segundos.todavía a 1 Gbps,y el enlace permanecerá inactivo durante los 0,99 segundos restantes.

En otras palabras, no cambia de marcha según el tamaño del paquete. Ya sea que envíe X Gb que consistan en paquetes grandes o X Gb que consistan en paquetes pequeños, sonsiempreenviado a la misma velocidad de 1 Gbps, que siempre es 10 veces más rápida que 100 Mbps.

Habiendo entendido ethernet como una conexión serie y la velocidad de transferencia de paquetes pequeños estando limitada principalmente por el medio (fibra, cobre, etc.),

No todas las conexiones serie funcionan igual. La velocidad de bits que puede lograr en el mismo medio puede variar, dependiendo delcodificaciónymodulaciónque usas para poner estos bits en el cable. (Además de algunas otras cosas de las que no tengo conocimiento). Además de eso, Gigabit Ethernet (y de manera similar USB 3.2, PCI-e, SATA y muchos otros enlaces seriales) usa múltiples carriles para enviar varios fragmentos de datos simultáneamente.

información relacionada