Éthernet sobre USB - Enciclopedia
El Ethernet sobre USB es el uso de una conexión USB como parte de una red Ethernet, resultando en una conexión Ethernet sobre USB (en lugar de, por ejemplo, PCI o PCIe).
Protocolos
Hay numerosos protocolos para la red de estilo Ethernet sobre USB. El uso de estos protocolos es permitir el intercambio de datos independientes de la aplicación con dispositivos USB, en lugar de protocolos especializados como el video o MTP (Protocolo de Transferencia de Medios). A pesar de que el USB no es un Ethernet físico, las pilas de red de todos los principales sistemas operativos están configuradas para transportar marcos IEEE 802.3, sin necesidad de un transporte subyacente particular.
Los principales protocolos industriales son el Remote NDIS (RNDIS, un protocolo de proveedor de Microsoft), el Modelo de Control de Ethernet (ECM), el Modelo de Emulación de Ethernet (EEM) y el Modelo de Control de Red (NCM). Los tres últimos son parte del grupo más grande de protocolos de la Clase de Dispositivos de Comunicaciones (CDC) del USB Implementers Forum (USB-IF). Están disponibles para descarga desde el USB-IF (ver a continuación). La especificación RNDIS está disponible en el sitio web de Microsoft. Respecto a las normas de facto, algunas normas, como ECM, especifican el uso de recursos USB que los sistemas antiguos no tenían. Sin embargo, modificaciones menores de los subconjuntos de estándares hacen posibles implementaciones prácticas en tales plataformas. Notablemente, incluso algunas de las plataformas más modernas necesitan ajustes menores y, por lo tanto, sigue siendo necesario el soporte para estos subconjuntos.
De estos protocolos, ECM podría clasificarse como el más simple: los marcos se envían y reciben sin modificación uno a uno. Esta fue una estrategia satisfactoria para sistemas USB 1.1 de velocidad completa (actual en el momento en que se emitió el protocolo) con paquetes de 64 bytes, pero no para sistemas USB 2.0 de alta velocidad que utilizan paquetes de 512 bytes. Los marcos Ethernet pueden variar de 64 a 1522 bytes. Este máximo está justo debajo de 3 paquetes de alta velocidad USB o 24 paquetes de velocidad completa USB.
El sistema USB funciona mediante la envío de cada paquete como una transferencia, una serie de paquetes de longitud máxima terminados por un paquete corto o un ZLP (paquete de longitud cero). Después de esto, hay latencia del bus, donde no se envía nada hasta que se puede iniciar otra transferencia. Este problema reduce la ocupación del bus, lo que significa que no se envía nada durante fracciones considerables del tiempo del bus. Un间隙 cada 24 marcos no es perceptible, pero un间隙 cada tres marcos puede considerarse muy costoso en términos de rendimiento.
A medida que el USB se ha vuelto más rápido, los dispositivos utilizan más datos y, por lo tanto, ahora hay demanda para enviar grandes cantidades de datos, ya sea para almacenarse en el dispositivo o para retransmitirse a través de enlaces inalámbricos (ver 3GPP Long Term Evolution).
Estos nuevos dispositivos son mucho más bajos en potencia que los PCs de escritorio, por lo que surge el problema de manejo cuidadoso de los datos, para maximizar el uso de recursos DMA en el dispositivo y minimizar (o eliminar) la copia de datos (zero-copy). El protocolo NCM tiene disposiciones elaboradas para esto. Ver el enlace a continuación para comparaciones de protocolos.
Controlador específico de Linux
El módulo USB-eth en Linux hace que el ordenador en el que se ejecuta sea una variante de dispositivo Ethernet que utiliza USB como medio físico. Crea una interfaz de red Linux, que puede asignarse una dirección IP y tratarse de la misma manera que una interfaz Ethernet verdadera. Cualquier aplicación que funcione sobre interfaces Ethernet reales también funcionará sobre una interfaz USB-Ethernet sin modificaciones, ya que no hay distinción entre el uso de hardware Ethernet adecuado o inadecuado.
En los hosts Linux, el módulo del kernel correspondiente para Ethernet sobre USB se llama usbnet. El controlador de red Bahia es un controlador de estilo usbnet disponible para hosts Win32.
Este enfoque permite que los dispositivos con muy limitado hardware de comunicación operen sobre redes IP. El kernel Linux para el iPAQ utiliza esta estrategia de comunicación exclusivamente, ya que el hardware del iPAQ no tiene una interfaz serial heredada (RS-232/RS-422) accesible ni una interfaz de red dedicada.
Referencias
Enlaces externos
Especificación de Subclase CDC para Dispositivos de Modelado de Emulación de Ethernet 1.0