Longitud de cable USB vs Ethernet

10

Estaba hablando con un colega sobre las limitaciones de la longitud del cable USB y, por lo que recuerdo, estaba limitado por la estrecha ventana en la que el host requiere que responda el dispositivo (mencionado aquí ).

Señaló que Ethernet está transfiriendo datos a una velocidad más alta ( USB 1.5 / 12/480 / 5,000 Mbit / s (dependiendo del modo) frente a Ethernet 10 / 100Gbps) y permite una mayor longitud del cable ( 100m para cable CAT6 ).

Así que supongo que los dos nos preguntamos qué aspecto del protocolo USB limita la longitud del cable a 5 my cómo se diferencia de Ethernet.

Luke Quinane
fuente
3
El aspecto clave de Ethernet que está buscando se llama "dominio de colisión".
marcador de posición
Las colisiones de red @rawbrawb ralentizarían un enlace de Ethernet, pero Ethernet todavía puede transmitir de nodo a enrutador a 10 Gbps en condiciones ideales. USB no tiene colisiones como lo entiendo porque el anfitrión decide quién habla; Parece que las colisiones no deberían ser la causa.
Luke Quinane
Estaba hablando SOLO de Ethernet: parece que tienes el USB bajo control.
marcador de posición
"... frente a 10/100 Gbps de Ethernet) y permite una mayor longitud del cable (100 m para el cable CAT6)" - Incorrecto. 10G Ethernet sobre CAT6 sólo es bueno para 55M (ver esta tabla ), y 100G no se puede ejecutar a través de par trenzado en absoluto (véase la tabla ). Creo que estás confundiendo los estándares de Ethernet de baja velocidad (como 1 gigabit).
marcelm

Respuestas:

6

De acuerdo con Wikipedia :

USB 2.0 proporciona una longitud máxima de cable de 5 metros para dispositivos que funcionan a alta velocidad (480 Mbit / s). La razón principal de este límite es el retraso máximo permitido de ida y vuelta de aproximadamente 1.5 μs. Si el dispositivo USB no responde los comandos del host USB dentro del tiempo permitido, el host considera que el comando se ha perdido. Al agregar el tiempo de respuesta del dispositivo USB, los retrasos del número máximo de concentradores agregados a los retrasos de los cables de conexión, el retraso máximo aceptable por cable asciende a 26 ns. La especificación USB 2.0 requiere que el retraso del cable sea inferior a 5.2 ns por metro (192,000 km / s, que está cerca de la velocidad de transmisión máxima alcanzable para el cable de cobre estándar).

Entonces, con un retraso por cable de 26ns y la especificación que requiere un retraso del cable de menos de 5.2ns / m, eso da una longitud máxima teórica del cable de 26ns / (5.2ns / m) = 5m.

Esa fuente también menciona que USB 2.0 está limitado a 5 m, pero USB 3.0 no.

Hombrecito
fuente
1
Supongo que la pregunta es ¿por qué limitaron el tiempo máximo de ida y vuelta a 1.5 μs? Inicialmente pensé que era debido a la alta velocidad de transferencia, pero Ethernet evita ese problema de alguna manera.
Luke Quinane
@LukeQuinane, acabo de notar que la razón se menciona justo arriba del área en el enlace que publicaste, usb.org/developers/usbfaq#cab1
PeterJ
@ PeterJ eso es muy interesante. ¿Alguna idea de cómo Ethernet evita ese problema?
Luke Quinane
1
@LukeQuinane, no, no sé mucho sobre la capa física de Ethernet. Sin embargo, sospecho que la decisión general sobre USB se tomó para mantener los costos del dispositivo lo más bajos posible manteniendo los controladores simples.
PeterJ
44
Ethernet original fue diseñado en una era diferente cuando había diferentes prioridades y costos para los componentes y la complejidad del cable VS. El USB está diseñado en gran medida con el menor costo posible y el menor uso de huella / conector / cable / energía en mente para Joe Bloggs y su iPhone.
John U
6

El USB fue diseñado para reemplazar varias interfaces perhiperales de PC, incluidos teclados y ratones. Las prioridades incluían bajo costo, bajo consumo de energía y pasar tráfico de alta prioridad con baja latencia. El soporte para cables largos no era una prioridad. Por lo tanto, en el lado del protocolo, optaron por un protocolo simple "duplex dúplex" habla cuando te hablan "con paquetes pequeños. En el lado del hardware, eligieron un sistema de señalización diferencial no aislado que tomó algunos atajos en la terminación.

El USB evolucionó gradualmente para agregar velocidades más altas y dúplex completo, pero una distancia más larga nunca fue un objetivo de diseño.

Ethernet (en su forma inicial) tenía un conjunto diferente de criterios de diseño. Fue diseñado como un estándar de red de área local, ninguna estación era maestra y optaron por un sistema de acceso múltiple con detección de operador con detección de colisión. Para garantizar que la detección de colisión funcionó correctamente, imponen restricciones tanto en el tamaño de paquete mínimo como en el tamaño total de la red. La capa física se diseñó con una terminación mucho más cuidadosa para garantizar que la integridad de la señal se mantuviera incluso a largo plazo. Había una barrera de aislamiento para proteger contra los problemas causados ​​por las diferencias de potencial de tierra en recorridos largos (Ethernet de par trenzado usa transformadores, creo que Ethernet coaxial usó optoaisladores y convertidores de CC a CC)

CSMA / CD funcionó bien en pequeñas LAN de 10Mbps, pero comenzó a mostrar la tensión a medida que aumentaban las velocidades y las redes crecían. Los puentes (más tarde conocidos como conmutadores) se introdujeron permitiendo que las redes se dividieran en múltiples dominios de colisión. Esto permitió que las redes se hicieran más grandes que los límites impuestos por CSMA / CD y también permitió que coexistieran múltiples velocidades.

Posteriormente, Ethernet se alejó de CSMA / CD 1 y los concentradores hacia enlaces dúplex punto a punto y conmutadores. Esto permite enlaces de larga distancia a alta velocidad ya que los paquetes nunca pueden colisionar entre sí.

Sin embargo, hay que pagar un precio por todo esto, las capas físicas que pueden funcionar a largas distancias requieren una potencia considerablemente mayor y transceptores considerablemente más caros que aquellos que solo están diseñados para funcionar a corto alcance. Búferes de datos, al final los dispositivos deben ser mucho más grandes para lidiar con un tiempo de reconocimiento potencialmente largo y una posible pérdida de paquetes. Los conmutadores son dispositivos relativamente complejos que a menudo incluyen cantidades sustanciales de memoria de búfer. La priorización requiere que cada interruptor de la cadena tenga que conocer la información de priorización.

1 A 10Mbps, los hubs y CSMA / CD eran bastante universales. Las primeras implementaciones de 100Mbps también utilizaron hubs y CSMA / CD. Las redes de 100 Mbps posteriores tendieron a utilizar enlaces dúplex completos y conmutadores. En gigabit, los estándares incluían CSMA / CD y hubs, pero nunca he oído hablar de alguien que realmente venda un hub gigabit. A 10 gigabits o más, CSMA / CD y el soporte de concentrador no existen en absoluto.

Peter Green
fuente
2

Otro aspecto importante es que Ethernet de alta velocidad es full duplex : se utilizan dos pares de cables, uno para cada dirección. USB es half duplex : solo hay un par y solo se puede usar en una dirección a la vez.

USB también requiere confirmación, mientras que Ethernet no. Los protocolos además pueden requerir reconocimiento (TCP) o no (transmisión UDP). Sin embargo, como es dúplex completo, los acuses de recibo pueden enviarse un par sin interrumpir el flujo de datos en la otra dirección.

pjc50
fuente
También hay una parte de ventanas TCP: TCP no espera a ACK. En cambio, sigue enviando datos y si ACK se pierde, reenvía los datos. Además de eso, TCP permite que un solo ACK reconozca múltiples datagramas TCP.
AndrejaKo
"... Ethernet de alta velocidad es dúplex completo: se utilizan dos pares de cables, uno para cada dirección". - Esto es cierto para 100Mb Ethernet, pero no para Gigabit Ethernet (1000BASE-T), que usa cuatro pares de cables en ambas direcciones simultáneamente (ver wikipedia / 1000BASE-T ).
marcelm