¿Cómo es físicamente posible 10G Ethernet? [cerrado]

22

10 gigabit Ethernet significa que 10 mil millones de bits se transmiten cada segundo, pero no entiendo cómo esto es físicamente posible (y mucho menos 100G Ethernet). Las CPU más rápidas de hoy solo se ejecutan a ~ 8 GHz, pero incluso si la transmisión no requiere una CPU, todavía parece problemática.

En 10G, cada bit dura solo 100 picosegundos, y en ese lapso de tiempo, creo que los retrasos de puerta se convierten en un problema. No es tan simple como establecer una línea alta o baja para cada bit, seguramente se requieren cientos de transistores para generar la forma de onda de Ethernet complicada.

Esto parece ser un problema aún mayor en el extremo receptor, ya que la forma de onda debe muestrearse a una tasa muy alta, y si utiliza ADC, eso introduce aún más retraso.

    
pregunta HaLailah HaZeh

3 respuestas

24

La búsqueda de esta respuesta tomó algunos enlaces diferentes, pero parece reducirse a esto:
1. 4 pares diferenciales (8 cables en total, pero solo 4 carriles).
2. 800 mega símbolos por segundo.
3. Usando PAM16, se usan 16 símbolos que se traducen en 4 bits por baudios por línea.

Dada esa información, usted obtiene 4 bits * 800 Mhz * 4 líneas que dan como resultado 12800 Mb / s o 12.8 Gb / s. Debido a la codificación de la corrección de errores y otros gastos generales, solo esperan que obtenga 10 Gb / s de ella.

Observe que los cables solo cambian los símbolos o la amplitud a una frecuencia de 800 MHz. Eso es bastante bueno, en términos de velocidades de conmutación para transistores.

Ahora eso es todo para 10Gb Ethernet. Cómo lo hacen para 100Gb Ethernet es un poco más alucinante. Para eso, parece que en realidad aumentan la frecuencia a 10.3 GHz o 25GHz . Que diablos Consulte aquí para esa tabla. La diferencia de frecuencia se debe a la cantidad de líneas de datos de pares de cobre que elige tener. Sería interesante saber si alguien ha hecho o no esta Ethernet de 25 GHz en cobre. Es posible que solo lo hayan especificado. Cuando comienza a llegar a esas frecuencias, sus cables deben ser muy cortos o simplemente cambiar a fibra óptica donde puede enviar cientos de haces de luz a través de una sola fibra. De esa manera, no tiene que ir a velocidades locas, simplemente paraleliza sus datos en la fuente y los pone en paralelo en el destino.

Referencias si quieres ver más: enlace
enlace
enlace
enlace

    
respondido por el horta
14

10G ethernet (como se describe en otras respuestas) no hace transiciones de señal a 10 GHz, usa codificación de múltiples niveles distribuida en 4 pares para alcanzar 10 Gb / s.

Sin embargo, más de 10 transceptores serie gigabit son bastante comunes en chips de alta velocidad. Por ejemplo, PCIe, USB3.1, thunderbolt y protocolos similares utilizan una velocidad de serie de 10 gbit / s en pares individuales.

Usted tiene razón al decir que la lógica "masiva" no puede mantener esa velocidad de datos. Ciertamente, los núcleos de la CPU no funcionan a esa frecuencia, pero incluso la lógica que implementa cosas como las interfaces PCIe no puede operar a esa velocidad. En su lugar, utilizan SERDOS de alta velocidad dedicados.

Los datos se enrutan con el IC en buses paralelos anchos. Una pieza de hardware dedicada realiza la conversión de serie a paralelo o de paralelo a serie justo al lado de la entrada / salida. El SERDES hace un mínimo absoluto de lógica real. Los transmisores son muy simples. Tendrá un PLL para generar el reloj de datos en serie de alta velocidad y el paralelo a la lógica en serie. Los receptores son más complicados, necesitan recuperar el reloj en los datos entrantes y también encuadrar la detección para asegurarse de que los bits estén agrupados correctamente. Con todo, solo un poco de lógica tiene que funcionar a la velocidad ultraalta. Sí, los retrasos de propagación a través de las transiciones son extremadamente importantes, y el circuito debe diseñarse cuidadosamente para que todas las señales se alineen correctamente.

    
respondido por el Evan
2

Muchos de los enlaces Ethernet de 10 GBit / s son en realidad ópticos (por ejemplo, 10GBASE-SR o 10GBASE-LR, consulte enlace ) aunque también hay 10GBASE-T sobre cables de par trenzado con conectores 8P8C ('RJ45') como se describe por @horta. Por lo que sé, es bastante hambriento de energía en comparación con las variantes ópticas.

La transferencia de datos desde la CPU (o más bien la memoria) a la tarjeta Ethernet se realiza generalmente a través del bus PCIe en una computadora basada en x86. PCIe Gen 1 los carriles tienen una tasa de transferencia de datos utilizable de 2 Gbit / s segundo (después del 8/10 codificación de bits). Con 8 carriles, el máximo teórico es de 16 GBit / s (por dirección), suficiente para manejar un solo puerto de 10 GBit / s Ethernet.

La CPU deposita los datos que se transmiten en la RAM y luego le indica a la tarjeta de red dónde recoger (DMA) y, de manera similar, para la recepción, la CPU asigna búferes e informa a la tarjeta de red cuando ésta típicamente genera una interrupción cuando la Se llenaron los tampones. Tenga en cuenta que el ancho de banda a la RAM suele ser mucho mayor que el del bus PCIe.

Hoy tenemos PCIe Gen 3 ampliamente disponible que tiene una tasa de datos utilizable de aproximadamente 8 GBit / s por línea y dirección. En teoría, una ranura de 16 carriles puede manejar 128 GBit / s, suficiente para 100 GBit / s Ethernet (PCIe Gen 4 se ha anunciado oficialmente recientemente).

Por lo tanto, el 'truco' para lograr un alto rendimiento dentro de la PC (sin tener que ir a velocidades de señalización exorbitantes) es utilizar buses paralelos (RAM) o múltiples líneas en serie (PCIe).

Para Ethernet de 100 Gbit / s uno tiene típicamente cuatro enlaces con una velocidad de señalización de 25 GBaud (100GBASE-SR4, 100GBASE-LR4, 100GBASE-CR4), también existen estándares para cables con diez enlaces (por ejemplo, pares de fibra) de 10 Gbit / s (100GBASE-CR10, 100GBASE-SR10, 100GBASE-CR10). Para enlaces de mayor distancia, también hay estándares que usan solo una sola fibra, ya sea usando cuatro longitudes de onda (100GBASE-CWDM4) o usando dos modos de polarización y QPSK (100GBASE-ZR).

Para velocidades de enlace extremadamente altas en enlaces de larga distancia (como Cable transatlántico de Marea con 20 Terabit / s por par de fibra) un paquete que contiene tantos transmisores a diferentes longitudes de onda como sea posible en la banda de longitud de onda utilizable de las fibras y amplificadores, también conocida como multiplexación por división de longitud de onda densa (DWDM). Tenga en cuenta que un multiplexor / demultiplexador de este tipo suele ser un dispositivo óptico único en su núcleo y se alimenta de múltiples flujos de ancho de banda inferior que pueden procesarse electrónicamente en paralelo.

Para alcanzar 20 TBit / s, también se utilizan técnicas de modulación avanzadas en las que en cada ciclo de reloj se pueden transmitir múltiples amplitudes y fases (he visto 64QAM en un whitepaper ) por lo tanto, transmite múltiples bits por ciclo de reloj, similar al estándar 10GBASE-T descrito por @horta.

    
respondido por el Andre Holzner

Lea otras preguntas en las etiquetas