La velocidad importa: cómo Ethernet pasó de 3 Mbps a 100 Gbps… y más allá


Con Ethernet cumpliendo 50 años este año, Ars vuelve a presentar esta función sobre el desarrollo y la evolución de Ethernet que se publicó originalmente en 2011.

Aunque ver programas de televisión de la década de 1970 sugiere lo contrario, la era no estaba completamente desprovista de todo lo que se asemeja a los sistemas de comunicación modernos. Claro, los módems de 50 Kbps en los que se ejecutaba ARPANET eran del tamaño de refrigeradores, y los módems Bell 103 ampliamente utilizados solo transferían 300 bits por segundo. Pero la comunicación digital a larga distancia era bastante común, en relación con la cantidad de computadoras desplegadas. Los terminales también se pueden conectar a mainframe y minicomputadoras en distancias relativamente cortas con líneas seriales simples o con sistemas multipunto más complejos. Todo esto era bien conocido; lo nuevo en los años 70 fue la red de área local (LAN). Pero, ¿cómo conectar todas estas máquinas?

El objetivo de una LAN es conectar muchos más que solo dos sistemas, por lo que un simple cable de ida y vuelta no hace el trabajo. En teoría, la conexión de varios miles de computadoras a una LAN se puede hacer usando una topología de estrella, anillo o bus. Una estrella es bastante obvia: cada computadora está conectada a algún punto central. Un bus consta de un solo cable largo al que se conectan las computadoras a lo largo de su recorrido. Con un anillo, un cable va desde la primera computadora a la segunda, de allí a la tercera y así sucesivamente hasta que todos los sistemas participantes estén conectados, y luego la última se conecta a la primera, completando el anillo.

En la práctica, las cosas no son tan simples. Token Ring es una tecnología LAN que utiliza una topología en anillo, pero no lo sabría mirando el cableado de la red, porque las computadoras están conectadas a concentradores (similares a los conmutadores Ethernet actuales). Sin embargo, el cable de hecho forma un anillo, y Token Ring usa un sistema de paso de token algo complejo para determinar qué computadora envía un paquete en qué momento. Un token rodea el anillo y el sistema en posesión del token comienza a transmitir. Token Bus utiliza una topología de bus físico, pero también utiliza un esquema de paso de token para arbitrar el acceso al bus. La complejidad de una red token la hace vulnerable a una serie de modos de falla, pero tales redes tienen la ventaja de que el rendimiento es determinista; se puede calcular con precisión por adelantado, lo cual es importante en ciertas aplicaciones.

Pero al final fue Ethernet la que ganó la batalla por la estandarización de LAN a través de una combinación de políticas de cuerpos de estándares y un diseño inteligente, minimalista y, por lo tanto, barato de implementar. Continuó eliminando a la competencia al buscar y asimilar protocolos de mayor tasa de bits y agregar su distinción tecnológica a la suya. Décadas más tarde, se había vuelto omnipresente.

Si alguna vez miró el cable de red que sobresale de su computadora y se preguntó cómo comenzó Ethernet, cómo ha durado tanto y cómo funciona, no se pregunte más: esta es la historia.

Presentado por Xerox PARC

Ethernet fue inventado por Bob Metcalfe y otros en el Centro de Investigación de Palo Alto de Xerox a mediados de la década de 1970. La Ethernet experimental de PARC funcionó a 3 Mbps, una «velocidad de transferencia de datos conveniente […] muy por debajo de la ruta de la computadora a la memoria principal», por lo que los paquetes no tendrían que almacenarse en interfaces Ethernet. El nombre proviene del éter luminífero que en un momento se pensó que era el medio a través del cual se propagan las ondas electromagnéticas, como el sonido. las ondas se propagan por el aire.

Ethernet usó su cableado como «éter» de radio simplemente transmitiendo paquetes a través de una línea coaxial gruesa. Las computadoras se conectaron al cable Ethernet a través de «taps», donde se perfora un orificio a través del revestimiento coaxial y el conductor externo para que se pueda hacer una conexión con el conductor interno. Los dos extremos del cable coaxial (no se permite la ramificación) están equipados con resistencias de terminación que regulan las propiedades eléctricas del cable para que las señales se propaguen a lo largo del cable pero no se reflejen. Todas las computadoras ven pasar todos los paquetes, pero la interfaz Ethernet ignora los paquetes que no están dirigidos a la computadora local o la dirección de transmisión, por lo que el software solo tiene que procesar los paquetes dirigidos a la computadora receptora.

Otras tecnologías LAN utilizan amplios mecanismos para arbitrar el acceso al medio de comunicación compartido. No Ethernet. Estoy tentado a usar la expresión «los lunáticos manejan el asilo», pero eso sería injusto para el ingenioso mecanismo de control distribuido desarrollado en PARC. Sin embargo, estoy seguro de que los fabricantes de computadoras centrales y minicomputadoras de la época pensaron que la analogía del asilo no estaba muy lejos.

Los procedimientos de control de acceso a medios (MAC) de Ethernet, conocidos como «Carrier Sense Multiple Access with Collision Detect» (CSMA/CD), se basan en ALOHAnet. Esta era una red de radio entre varias islas hawaianas establecida a principios de la década de 1970, donde todos los transmisores remotos usaban la misma frecuencia. Las emisoras transmitían cuando les apetecía. Obviamente, dos de ellos podrían transmitir al mismo tiempo, interfiriéndose entre sí, por lo que se perdieron ambas transmisiones.

Para solucionar el problema, la ubicación central reconoce un paquete si se recibió correctamente. Si el remitente no ve un acuse de recibo, intenta enviar el mismo paquete nuevamente un poco más tarde. Cuando ocurre una colisión porque dos estaciones transmiten al mismo tiempo, las retransmisiones se aseguran de que los datos se transmitan eventualmente.

Ethernet mejora a ALOHAnet de varias maneras. En primer lugar, las estaciones de Ethernet verifican si el éter está inactivo (sentido del portador) y esperar si detectan una señal. En segundo lugar, una vez que se transmite por el medio compartido (acceso multiple), las estaciones Ethernet comprueban si hay interferencias comparando la señal del cable con la señal que intentan enviar. Si los dos no coinciden, debe haber una colisión (detección de colisión). En ese caso, la transmisión se interrumpe. Solo para asegurarse de que la fuente de la transmisión de interferencia también detecte una colisión, al detectar una colisión, una estación envía una señal de «atasco» por 32 bits.

Ambas partes ahora saben que su transmisión falló, por lo que comienzan los intentos de retransmisión utilizando un procedimiento de retroceso exponencial. Por un lado, sería bueno retransmitir lo antes posible para evitar desperdiciar un ancho de banda valioso, pero por otro lado, tener otra colisión de inmediato anula el propósito. Por lo que cada estación Ethernet mantiene un tiempo de retroceso máximo, contado como un valor entero que se multiplica por el tiempo que tarda en transmitir 512 bits. Cuando un paquete se transmite con éxito, el tiempo de retroceso máximo se establece en uno. Cuando ocurre una colisión, el tiempo de retroceso máximo se duplica hasta llegar a 1024. El sistema Ethernet luego selecciona un tiempo de retroceso real que es un número aleatorio por debajo del tiempo de retroceso máximo.

Por ejemplo, después de la primera colisión, el tiempo de retroceso máximo es 2, lo que hace que las opciones para el tiempo de retroceso real sean 0 y 1. Obviamente, si dos sistemas seleccionan 0 o ambos seleccionan 1, lo que sucederá el 50 por ciento del tiempo, habrá es otra colisión. El retroceso máximo se convierte en 4, y las posibilidades de otra colisión se reducen al 25 por ciento para dos estaciones que desean transmitir. Después de 16 colisiones sucesivas, un sistema Ethernet se da por vencido y desecha el paquete.

Solía ​​haber mucho miedo, incertidumbre y dudas en torno al impacto de las colisiones en el rendimiento. Pero en la práctica se detectan muy rápidamente y las transmisiones en colisión se interrumpen. Por lo tanto, las colisiones no hacen perder mucho tiempo, y el rendimiento de Ethernet CSMA/CD bajo carga es bastante bueno: en su artículo de 1976 que describe la Ethernet experimental de 3 Mbps, Bob Metcalfe y David Boggs demostraron que para paquetes de 500 bytes y más grandes, más de El 95 por ciento de la capacidad de la red se usa para transmisiones exitosas, incluso si 256 computadoras tienen datos para transmitir continuamente. Muy inteligente.



Source link-49