ÍNDICE
- Parte III: El funcionamiento
El protocolo CSMA/CD
Respecto a lo que supondría un protocolo basado en el puro azar, como es el caso de ALOHA, el CSMA/CD incorpora dos mejoras que aumentan el rendimiento: en primer lugar, no se transmite si hay otra estación hablando (CSMA, Carrier Sense Multiple Access) y en segundo, si mientras se está transmitiendo detecta que otra estación también transmite (es decir se produce una colisión) la estación se calla, en lugar de seguir transmitiendo inútilmente hasta el final de la trama (CD, Colision Detect). Mucho se ha dicho (y no siempre acertadamente) sobre las colisiones y su efecto en el rendimiento de Ethernet, por lo que este tema merece tratarse con cierto detalle.
Se produce una colisión cuando dos o más estaciones empiezan a transmitir simultáneamente, o con una separación en el tiempo menor que el tiempo de propagación que las separa1. Por ejemplo en la red que aparece en la tabla 7 de la Parte II (2t=5,06 µs) se producirá una colisión siempre que los dos ordenadores transmitan con una separación en el tiempo menor de 2,53 µs. Si la separación es mayor que 2,53 µs no se producirá colisión ya que el segundo detectará el medio ocupado cuando vaya a transmitir; en ese caso esperará a que el primero termine y transmitirá inmediatamente a continuación, respetando eso sí el tiempo del hueco entre tramas, que para una red de 100 Mb/s como la de este ejemplo es de 0,96 µs. Aunque transcurridos t µs ya no puede ocurrir colisión, desde el punto de vista de la estación emisora la garantía de no colisión sólo se tiene pasados 2t µs, ya que si otra estación empieza a transmitir justamente t-e µs después (siendo e arbitrariamente pequeño), entonces la colisión se producirá justo en el otro extremo de la red y tendrán que transcurrir otros t µs para que la primera estación detecte la colisión.
Siguiendo con nuestro ejemplo de la tabla 7 de la Parte II supongamos que los dos ordenadores intentan transmitir con una separación en el tiempo menor que 2,53 µs. Al detectar la colisión ambos dejan de transmitir y a partir de ese momento dividen el tiempo en intervalos de 5,12µs2 . Entonces esperan 0 ó 1 intervalos para reintentar (la elección entre 0 y 1 la hace cada uno independientemente de forma aleatoria, por lo que la probabilidad de colisión es ahora de 0,5); si se produce la segunda colisión cada ordenador espera aleatoriamente 0, 1, 2 ó 3 intervalos para reintentar, con lo que la probabilidad de colisión baja a 0,25. Si siguen colisionando el número de intervalos se duplica en cada intento sucesivo, con lo que la probabilidad de colisión decrece exponencialmente, hasta que eventualmente ambos eligen intervalos distintos, momento en el cual el que elige el intervalo más bajo transmite primero. El segundo lo hará más tarde, cuando llegue su intervalo elegido, siempre y cuando el primero ya haya terminado para entonces; de lo contrario el segundo quedará entonces a la espera de que el primero termine para transmitir inmediatamente después. El cómputo del tiempo a efecto del cálculo de intervalos discurre independientemente de que el medio físico se encuentre libre u ocupado. Este mecanismo se conoce con el nombre de retroceso exponencial binario.
Supongamos ahora que una estación ha sufrido una primera colisión, por lo que se encuentra en su segundo intento; aquí elegirá uno de dos posibles intervalos (0 y 1). Si elige el primero transmitirá inmediatamente, mientras que si elige el segundo esperará 51,2 µs. Por tanto el primer reintento introduce de media un retardo de 25,6 µs (suponiendo un reparto equitativo entre ambos intervalos). Si se produce una segunda colisión la estación tendrá que iniciar un tercer intento, eligiendo esta vez entre cuatro posibles intervalos (0, 1, 2 y 3) lo cual introducirá un retardo medio adicional de 76,8 µs (0+51,2+102,4+153,6=307,2/4=76,8). Como este segundo retardo se sumará al ya sufrido en el primer intento podemos estimar que el retardo acumulado en este segundo intento es de 25,6+76,8=102,4 µs.
El retroceso exponencial binario tiene la interesante propiedad de ser autoadaptativo, ya que a medida que crece el tráfico aumenta la probabilidad de colisión, lo cual introduce un retardo creciente en las estaciones emisoras con la consiguiente disminución del tráfico. Para evitar introducir retardos excesivos el número de intervalos deja de duplicarse cuando una estación sufre diez colisiones sucesivas. A partir de ese momento se intenta transmitir la trama seis veces más, pero manteniendo constante el número de intervalos 3. Si la colisión no se resuelve en 16 intentos el protocolo MAC descarta la trama y reporta el fallo al nivel de red.
En la tabla 10 se muestra la evolución en el número de intervalos, rango de tiempo, retardo medio por intento y retardo acumulado medio, para los 16 intentos posibles, en el caso de una red de 10 Mb/s. Sustituyendo los valores de tiempos apropiados se podría construir una tabla similar para el caso de 100 ó 1000 Mb/s.
Nº del Intento | Nº de Intervalos | Rango de Tiempo (µs) |
Retardo medio por intento (µs) |
Retardo acumulado medio (µs) | ||||
0 | 0 |
0 | 0,0 | 0,0 | ||||
1 | 0-1 |
0-51,2 | 25,6 | 25,6 | ||||
2 | 0-3 |
0-153,6 | 76,8 | 102,4 | ||||
3 | 0-7 |
0-358,4 | 179,2 | 281,6 | ||||
4 | 0-15 |
0-768,0 | 384,0 | 665,6 | ||||
5 | 0-31 |
0-1.587,2 | 793,6 |
1.459,2 | ||||
6 |
0-63 | 0-3.225,6 |
1.612,8 | 3.072,0 | ||||
7 |
0-127 | 0-6.502,4 |
3.251,2 | 6.323,2 | ||||
8 |
0-255 | 0-13.056,0 |
6.528,0 | 12.851,2 | ||||
9 |
0-511 | 0-26.163,2 |
13.081,6 | 25.932,8 | ||||
10 | 0-1023 | 0-52.377,6 |
26.188,8 | 52.121,6 | ||||
11 | 0-1023 | 0-52.377,6 |
26.188,8 | 78.310,4 | ||||
12 | 0-1023 | 0-52.377,6 |
26.188,8 | 104.499,2 | ||||
13 | 0-1023 | 0-52.377,6 |
26.188,8 | 130.688,0 | ||||
14 | 0-1023 | 0-52.377,6 |
26.188,8 | 156.876,8 | ||||
15 | 0-1023 | 0-52.377,6 |
26.188,8 | 183.065,6 | ||||
16 | Se descarta |
- |
- | - |
Tabla 10: Evolución de los intentos tras sucesivas colisiones para una red Ethernet de 10 Mb/s
Un detalle importante a destacar del retroceso exponencial binario es que cuando una estación consigue finalmente transmitir una trama su contador de iteraciones se pone a cero, con lo que al transmitir la siguiente empezará el proceso desde el principio, como si nada hubiera ocurrido. No existe por tanto memoria entre tramas. Esta circunstancia discrimina positivamente a la estación afortunada en una colisión frente al resto, ya que además de conseguir enviar su trama se encuentra en posición ventajosa de cara a los nuevos enfrentamientos que tenga que celebrar más tarde con la estación (o estaciones) perdedoras. Esta es la causa del fenómeno denominado efecto captura, del que hablaremos más adelante.
La colisión es el mecanismo previsto en Ethernet para la regulación del tráfico, por lo que una cierta proporción de colisiones es algo completamente normal, especialmente si hay tráfico elevado y se transmiten tramas pequeñas. La denominación colisión es desafortunada, ya que hace pensar en un suceso incorrecto e indeseable, que normalmente no debería ocurrir. Probablemente si se hubiera elegido el término coincidencia o solapamiento el evento parecería menos alarmante y la industria de los LEDs amarillos no se habría desarrollado tanto como lo ha hecho.
Tasa de colisiones y rendimiento
Muchos concentradores y equipos de medida incorporan algún indicador de la tasa de colisiones de una red. Dado que a menudo esta información se utiliza como un primer indicador del rendimiento de una red es importante comprender su significado.
Podemos definir la tasa de colisiones mediante la siguiente fórmula:
Tasacol = Ncol / (Ncol +Ntrans)Donde:
Tasacol: Tasa de colisiones Ncol: Número de colisiones ocurridas por segundo Ntrans: Número de tramas transmitidas correctamente por segundo
A menudo la tasa se especifica de forma porcentual. Por ejemplo una tasa de colisiones del 10% indica que se produce de media una colisión por cada nueve tramas transmitidas correctamente.
Si conocemos la tasa de colisiones y el tamaño medio de trama de una red (Trmed) podemos realizar un cálculo aproximado del rendimiento o eficiencia (Ef) de la misma. Para ello haremos la simplificación de suponer que una colisión bloquea el medio de transmisión durante un tiempo equivalente a lo que tarda en transmitirse una trama del tamaño mínimo; dado que, como sabemos, todas las colisiones serán detectadas antes, esta aproximación resulta bastante conservadora y nos debe dar una aproximación pesimista de la situación4 . Haciendo dicha suposición podemos derivar la siguiente fórmula para la eficiencia:
Ef =1-(Tasacol*512)/(Tasacol * 512+(1-Tasacol)* Trmed)
Por ejemplo en una red con una tasa de colisiones del 30% y un tamaño medio de trama de 512 bits la eficiencia será:
Ef =1-(30% * 512 bits)/(30% * 512 bits+70%*512 bits) =0,7=70%
Así pues para tramas de tamaño mínimo la tasa de colisiones en la red expresa directamente la eficiencia perdida. Supongamos ahora la misma tasa de colisiones, pero con un tamaño de trama de 534 bytes (4272 bits), que según diversos estudios corresponde al valor medio de redes Ethernet en entornos de grupos de trabajo. Aunque las tramas sean mayores la hipótesis de que cada colisión consume el tiempo equivalente a 512 bits es igualmente válida, por lo que la eficiencia sería en este caso de:
Ef = 1-(30% * 512 bits)/(30%*512 bits+70%*4272 bits)=0,951=95,1%
Podemos ver pues que el efecto de las colisiones en la pérdida de eficiencia se atenúa de forma notable a medida que aumenta el tamaño de trama en la red.
A menudo se plantea la cuestión de cual es la tasa de colisiones máxima aceptable en una red Ethernet. Lamentablemente no existe una respuesta única a esta pregunta, ya que las colisiones pueden variar en un rango muy amplio en función de diversos factores, en especial el tamaño de trama. Por ejemplo con tramas de 512 bits puede ser normal una tasa de hasta el 20-30%; en cambio con tramas de 1500 bytes una tasa de colisiones del 4% podría indicar una importante saturación. De forma muy general podemos decir que en redes normales (con tamaños de trama en torno a los 500 bytes) una tasa de colisión superior al 10% de forma sostenida debe ser investigada y aclarada, ya que podría ser síntoma de algún problema. El nivel de ocupación es un parámetro mucho más indicativo del estado de una red que la tasa de colisiones.
Capacidad de Ethernet: mitos y realidades
En su artículo de 1976 sobre Ethernet [1] Metcalfe y Boggs realizaban una estimación de rendimiento basada en datos puramente teóricos. Según ellos cuando en una red Ethernet hay un número muy elevado de estaciones, todas ellas separadas por la distancia máxima y transmitiendo tramas del tamaño mínimo permitido de acuerdo con una distribución de Poisson la situación es equivalente a la de un ALOHA ranurado con intervalo 2t. Como ya era sabido entonces el rendimiento máximo de un sistema de este tipo es del 36,8%. Esto provocó la creencia muy extendida (y recogida en alguna literatura) de que el límite práctico del funcionamiento de una red Ethernet se situaba en torno al 30-40% de su capacidad nominal5 . Pero en la realidad las condiciones son muy diferentes a las supuestas por Metcalfe y Boggs:
- La separación entre las estaciones es normalmente bastante menor que la distancia máxima.
- Las tramas transmitidas son normalmente mayores que el tamaño mínimo.
- Raramente se encuentran más de 100 estaciones en una misma red Ethernet.
- El tráfico no sigue una distribución de Poisson, sino que tiene un comportamiento autosimilar.
Cada uno de estos factores aumenta el rendimiento respecto al modelo seguido por Metcalfe y Boggs, hasta el punto de que la estimación del 36,8% resulta tan conservadora que no tiene nada que ver con la realidad. La confusión creada respecto al rendimiento de una red Ethernet fue tal que en 1988 Boggs escribió un artículo titulado Measured Capacity of an Ethernet: Myths and Reality [3] en el que realizaba medidas con tráfico real en redes con diversos retardos y tamaños de trama, y comprobaba la influencia decisiva de estos factores en el rendimiento. Boggs y sus colaboradores demostraron que en la práctica una red Ethernet puede llegar a niveles de ocupación muy próximos al 100%, y que en la mayoría de los casos en que se produce inestabilidad o problemas de rendimiento en una Ethernet la causa es una implementación incorrecta del protocolo, sobre todo del algoritmo de retroceso exponencial binario, en los equipos y controladores de red.
Las pruebas realizadas por Boggs demuestran que el rendimiento de una red Ethernet depende fundamentalmente de tres factores:
- El tamaño de trama utilizado. A mayor tamaño de trama mayor rendimiento.
- El número de estaciones. A menor número de estaciones mayor rendimiento.
- El tiempo de ida y vuelta, A menor tiempo mayor rendimiento
Boggs concluye su estudio con las siguientes recomendaciones:
- No instalar cables largos6: para cubrir un área extensa es preferible dividir el cable con puentes o routers, no con repetidores.
- No poner demasiados ordenadores en un mismo cable: es conveniente utilizar routers o puentes para dividir la red en comunidades de interés; de esta forma se aumenta el retardo del tráfico inter-comunidades a cambio de un mejor rendimiento y menor tiempo de respuesta en el tráfico intra-comunidades.
- Implementar el protocolo correctamente: una detección de colisiones y un retroceso exponencial binario apropiados en la interfaz y el software del host son esenciales para un buen rendimiento.
- Utilizar el tamaño de trama máximo posible: esto reduce la probabilidad de colisión y el costo de proceso en los hosts.
- No mezclar aplicaciones de transferencia masiva de datos con aplicaciones de tiempo real: no es posible garantizar simultáneamente el mínimo retardo y el máximo rendimiento (aunque para requerimientos moderados ambos tipos de aplicaciones puedan coexistir).
Probablemente el factor que más influye en el rendimiento de Ethernet es el tamaño de trama utilizado. Dado que la colisión sólo puede suceder durante los primeros 512 bits de la trama podemos decir simplificando que cuando ésta tiene 512 bits de longitud el riesgo de colisión es permanente, mientras que si tiene 12144 bits (1518 bytes) la colisión sólo puede producirse durante los primeros 512, es decir el 4,2% del tiempo. Realmente el riesgo de colisión no existe durante los primeros 512 bits, sólo durante los primeros 2t bits (2t=tiempo de ida y vuelta entre esas dos estaciones) pero en cualquier caso el riesgo de colisión será 24 veces menor con tramas de 12144 bits que con tramas de 512 bits. Por tanto dado un nivel de ocupación constante el número de colisiones se reduce, y el rendimiento aumenta, si aumenta el tamaño de trama. Otras consideraciones (tiempo de proceso, cabeceras, etc..) aconsejan también la utilización de tramas grandes para mejorar el rendimiento de una red Ethernet.
Otro factor que influye en la eficiencia, es el número de estaciones transmisoras. Esto se puede comprender fácilmente de manera intuitiva con el siguiente razonamiento. Supongamos que en una red hay una sola estación que transmite de forma aleatoria, con un nivel de ocupación medio de 8 Mb/s: en tal caso no podrá haber colisiones (ya que una estación nunca colisiona consigo misma). Si hay dos estaciones, cada una transmitiendo (aleatoriamente) una media de 4 Mb/s, existirá un cierto riesgo de colisión. Si hay ocho estaciones transmitiendo cada una a 1 Mb/s de media el riesgo será mayor, ya que al aumentar el número de transmisores su distribución en el tiempo es más aleatoria y hay más probabilidad de que dos o más colisionen. Así pues dado un nivel de ocupación constante el número de colisiones disminuye si se reduce el número de estaciones transmisoras. Así por ejemplo la práctica de poner dos tarjetas de red a un servidor para mejorar su rendimiento podría llegar a ser contraproducente si ambas tarjetas se conectan a la misma red (salvo que esto permita superar limitaciones inherentes a otras partes del sistema, en cuyo caso el rendimiento global aumentará). Evidentemente en estos casos lo aconsejable sería conectar las dos tarjetas a redes diferentes y a ser posible dedicadas, por ejemplo a puertas de un conmutador.
El tercer parámetro que influye en el rendimiento de Ethernet, y sobre el que más se puede influir es el tiempo de ida y vuelta entre estaciones. Como ya sabemos las colisiones siempre ocurren en los primeros 512 bits de la trama. En realidad casi siempre ocurren mucho antes, ya el valor de 2 t entre estaciones raramente es igual al máximo permitido. Para verlo consideremos de nuevo la red de la tabla 7 de la Parte II, formada por dos ordenadores unidos a través de dos concentradores y separados por 200 m de cable; esto daba un valor de 2t equivalente a 506 bits. Las colisiones entre estos dos ordenadores siempre ocurrirán en el bit 506, o antes. En el caso de tramas de 512 bits de longitud el riesgo de colisión estará presente el 99% del tiempo de transmisión (506/512=0,99 7).
Supongamos que podemos conectar todos nuestros ordenadores a un solo concentrador, con lo que suprimimos un repetidor (92 ns) y 100 m de cable (111 ns) y reducimos el valor de 2t a 303 bits (100ns de las tarjetas, 92ns de un concentrador y 111ns de 100m de cable). En este caso el riesgo de colisión sólo estará presente durante los primeros 303 bits por lo que con tramas de 512 bits el riesgo se dará el 59% del tiempo (303/512=0,59). Así pues con este cambio hemos reducido las colisiones en un factor 303/506, o sea en un 40%. Aunque en el razonamiento anterior hemos supuesto el tamaño de trama mínimo el razonamiento se puede aplicar a cualquier tamaño de trama obteniendo idéntica mejora en cualquier caso. Por consiguiente dado un nivel de ocupación constante el número de colisiones disminuye si se reduce el tiempo de ida y vuelta entre las estaciones que transmiten en la red. Por tanto para mejorar el rendimiento de una red es recomendable revisar su topología aproximando en lo posible las estaciones (suprimiendo concentradores innecesarios o tendidos de cable innecesariamente largos). Este tipo de reestructuraciones deberán aplicarse en primer lugar a las estaciones que más tráfico generan, ya que de esta forma se conseguirá una máxima rentabilidad de los esfuerzos invertidos.
Una consecuencia curiosa de la influencia del tiempo de ida y vuelta en las colisiones es que, dada una misma topología de red, tamaño de trama, número de estaciones y nivel de ocupación relativa, la probabilidad de colisión aumenta a medida que aumenta la velocidad, ya que el valor de 2t.medido en bits aumenta. Este efecto es especialmente notable en el caso de Gigabit Ethernet. Por ejemplo supongamos tres redes a 10, 100 y 1000 Mb/s, formadas todas ellas por un concentrador al que se conectan varios ordenadores con cables de 100 m. El valor de 2t entre dos ordenadores cualesquiera será entonces de 203, 414 y 3860 bits para las redes de 10, 100 y 1000 Mb/s, respectivamente (valores calculados según las reglas del Modelo 2). Suponiendo un tamaño de trama de 512 bytes (4096 bits) en todos los casos, existirá riesgo de colisión durante el 5% del tiempo de transmisión de una trama en la red de 10 Mb/s (203/4096=0,05), mientras que para las redes de 100 y 1000 Mb/s este riesgo estará presente durante el 10 y 94% del tiempo de transmisión, respectivamente. La tasa de colisiones, dada una misma ocupación relativa en las tres redes, seguirá proporciones similares; por ejemplo supongamos que para una ocupación del 60% (equivalente a un caudal de 6 Mb/s) hemos medido en la red de 10 Mb/s una tasa de colisiones del 2%; en ese caso podemos predecir que la red de 100 Mb/s tendrá una tasa de colisiones del 4% para un tráfico similar con una ocupación equivalente a 60 Mb/s, y la de 1000 Mb/s tendrá una tasa del 38% con una ocupación de 600 Mb/s 8. Aplicando a este supuesto las fórmulas que hemos visto en el apartado anterior podemos calcular la eficiencia, que resulta ser del 99,9%, 99,6% y 63,4% para 10, 100 y 1000 Mb/s respectivamente. Por último a partir de ésta y del nivel de ocupación podemos calcular el caudal útil o goodput de cada red, que es de 5,994, 59,76 y 380,4 Mb/s para las tres redes, respectivamente.
Las estimaciones que hemos hecho en este apartado y el anterior se basan en un modelo muy simplificado del funcionamiento de Ethernet. Esta sencillez, aunque no da resultados muy precisos, resulta de gran utilidad ya que permite, a partir de un conjunto reducido de parámetros normalmente fáciles de obtener, realizar estimaciones, comparaciones, y predecir de forma cuantitativa las consecuencias que pueden tener modificaciones en la topología, velocidad, caudal o tipo de tráfico de una red. Esta información es muy valiosa en la planificación de redes.
Excesivas colisiones y colisiones tardías
Mientras que una tasa importante de colisiones puede ser normal en una red en determinadas circunstancias, hay dos situaciones excepcionales relacionadas con las colisiones que merecen comentarse, ya que en caso de producirse pueden tener un fuerte impacto en el rendimiento. Estas son la ocurrencia de 16 colisiones consecutivas (también denominada excesivas colisiones) y las colisiones tardías.
Como ya hemos comentado cuando una estación sufre 16 colisiones consecutivas el nivel MAC descarta la trama e informa del suceso al nivel de red, que decide las acciones a tomar. Por ejemplo en el caso de IP el evento es ignorado, por lo que cuando se requiere un transporte fiable son los niveles superiores (TCP o NFS 9, por ejemplo) los que por omisión detectan la pérdida de la trama y solicitan su reenvío. Dado que estos protocolos han sido diseñados bajo la premisa de que el nivel de red es altamente fiable, la retransmisión es una acción extraordinaria que genera una merma considerable en el rendimiento. Por ejemplo en el caso de TCP la pérdida de una trama genera el reinicio del proceso conocido como slow-start, con una drástica reducción en el tamaño de ventana utilizado. En NFS el estándar establece que el período de retransmisión ha de ser de al menos 700 ms, con lo que en el caso de perder una trama la retransmisión se hará al menos 700 ms más tarde. En [4] puede encontrarse una discusión detallada de los aspectos de rendimiento de Ethernet, con especial énfasis en el caso de NFS.
Normalmente la ocurrencia de 16 colisiones consecutivas se debe a una saturación extrema o a algún problema físico en el cableado, tarjeta o transceiver de alguna estación y debe considerarse síntoma de mal funcionamiento. El suceso se puede monitorizar mediante un analizador o a través de los contadores de dispositivos de red (por ejemplo conmutadores) accesibles vía SNMP. Ante una situación de este tipo es importante localizar la causa y remediarla, corrigiendo la avería o aislando al culpable en la medida de lo posible (por ejemplo aumentando la capacidad o reorganizando los equipos para repartir mejor el tráfico en la red).
El otro tipo de suceso anormal es el que se conoce como colisiones tardías, y en cierto modo es aún más grave que el anterior, ya que si bien las excesivas colisiones se pueden dar en condiciones de saturación extrema, no puede haber colisiones tardías en una red de topología válida. Cuando una estación Ethernet transmite una trama se supone que la colisión sólo puede ocurrir durante los 512 primeros bits10 . Una colisión pasado el bit 512 sólo puede ocurrir si existen en la red dos estaciones separadas por una distancia de ida y vuelta mayor que 2t. Esto se debe a una topología inválida o a una avería en el nivel físico.
Supongamos por ejemplo la red ilegal de la Tabla 8 de la Parte II. Teníamos un valor de 2t de 621 bits. En este caso la detección de las colisiones sólo está garantizada para tramas superiores a 621 bits. Cuando dos estaciones transmitan tramas que tengan entre 512 y 621 bits podrán ocurrir tres cosas, en función del instante exacto en que cada estación empiece a transmitir, por ejemplo:
- Ambas estaciones empiezan a transmitir en el mismo instante. Se producirá una colisión en el centro de la red, que ambas detectarán cuando estén transmitiendo el bit número 310. El evento se considera normal y se aplica el mecanismo de retroceso exponencial binario.
- Una estación empieza a transmitir 3 µs después que la otra. En este caso la primera estación detectará una colisión cuando esté transmitiendo el bit número 610 de la trama, y la segunda la detectará en el bit 10 11. Para la primera estación se trata de una colisión tardía, ya que ha ocurrido pasado el bit 512. La estación aplica el retroceso exponencial binario pero reporta el suceso como anormal mediante un mensaje en consola, o incrementando un contador de colisiones tardías. Para la segunda estación se trata de una colisión completamente normal.
- La segunda estación empieza a transmitir 3 µs después que la primera, pero esta vez la trama que envía la primera estación tiene una longitud menor de 610 bits. En este caso la colisión no es detectada por la primera estación, ya que para cuando ésta tiene lugar la estación ya ha terminado y ha dado por buena la transmisión. La trama se perderá sin que el nivel MAC del transmisor reciba ninguna notificación del incidente, ya que aparentemente para él todo ha sido normal. Si los protocolos de nivel superior implementan un servicio fiable la pérdida será finalmente detectada y la trama retransmitida, a costa de una pérdida importante de rendimiento.
Las colisiones tardías (caso b anterior) no producen en sí mismas problema de rendimiento, puesto que, aunque con retraso, son detectadas. Sin embargo su presencia indica que se están produciendo colisiones no detectadas, como el caso c) anterior, y éstas sí que suponen un problema de rendimiento. Por tanto las colisiones tardías deben investigarse siempre que se produzcan. Una red Ethernet puede estar funcionando normalmente y tener decenas de colisiones por segundo, pero una sola colisión tardía es síntoma de un problema grave en la red.
Reparto no equilibrado de recursos y Efecto captura
Uno de los objetivos de diseño de cualquier red local es que en condiciones de alta ocupación la capacidad se debe repartir de forma equilibrada entre las estaciones. A primera vista cabría pensar que el protocolo CSMA/CD cumple esta condición, al carecer de un mecanismo de reserva de capacidad o asignación de prioridades, pero la realidad es muy distinta. Debido a la forma como se resuelven las colisiones la red reparte de forma equitativa el número de tramas transmitidas por segundo, no el número de bits por segundo, por lo que el ancho de banda que obtiene una estación en una red saturada es proporcional al tamaño de las tramas que emite; una estación que emita tramas grandes conseguirá más ancho de banda que una que envíe tramas pequeñas.
Como consecuencia de lo anterior en condiciones de saturación los usuarios que transmiten paquetes grandes (por ejemplo servidores FTP, HTTP o flujos de vídeo MPEG) consiguen proporciones sustancialmente mayores de la capacidad disponible que los que manejan paquetes pequeños (como sesiones Telnet o voz sobre IP). Si en una red saturada se encuentran compitiendo usuarios que transmiten paquetes pequeños y grandes (cosa muy normal dada la diversidad de aplicaciones en uso en cualquier red actual) se producirán diferencias notables en el reparto de los recursos entre ellos. Por ejemplo un usuario que transmita voz sobre IP y tenga que competir en una red saturada con otros que envían flujos de vídeo MPEG detectará retrasos en la comunicación que probablemente hagan inviable su comunicación, aun cuando el esté utilizando una proporción pequeña de la capacidad existente. En estos casos habrá que diseñar la red de forma que dichos usuarios no compitan entre sí por el ancho de banda, o sobredimensionar la red para evitar llegar a la saturación.
Otro desequilibrio más sutil que el anterior es el que se conoce como efecto captura, que se da en una circunstancia como la siguiente: supongamos una red Ethernet formada por dos ordenadores, A y B, cada uno de los cuales dispone de una cola infinita de tramas a enviar. A es un ordenador muy potente, capaz de procesar y preparar la trama a enviar en un tiempo inferior al del hueco entre tramas (96 bits), por tanto A sería capaz en principio de saturar la red él solo, concatenando cada trama con la siguiente. Por el contrario B es un ordenador más lento, incapaz de saturar la red, ya que no puede preparar las tramas en tan poco tiempo. Supongamos ahora que A y B intentan empezar a transmitir a la vez, produciéndose por tanto una colisión. Supongamos que en la segunda iteración A elige el intervalo 0 y B el 1, con lo que A consigue transmitir primero y B lo hará después. B no puede transmitir enseguida que A termine, ya que tiene que respetar el hueco entre tramas; pero B colisionará con A, ya que para entonces A tiene preparada una segunda trama que intenta enviar a la vez que B intenta reenviar la primera; esta colisión es segundo intento para B pero primero para A (puesto que para A se trata de una nueva trama que no ha sufrido ninguna colisión anterior). Por tanto A reintentará eligiendo entre los intervalos 0 y 1, mientras que B reintentará eligiendo entre 0, 1, 2 y 3. Estadísticamente A tendrá más probabilidades de transmitir antes, ya que ha de elegir entre un rango de intervalos menor, y por tanto tiene más probabilidades de elegir uno más pequeño. Este proceso se repite en las tramas siguientes, siendo la situación cada vez más favorable a A, ya que B aumentará su número de intervalos en cada nuevo intento, mientras que A, al conseguir transmitir su trama, pone a cero su contador cada vez. Finalmente B agotará el máximo de 16 colisiones consecutivas, momento en el cual descarta la trama y pone a cero su contador; sólo entonces podrá competir en igualdad de condiciones con A, pero dada la rapidez de A el ciclo se repite y la situación pronto se vuelve de nuevo desfavorable a B. A puede transmitir miles de tramas por cada trama que transmite B. Este fenómeno se conoce como efecto captura [5] y para que se dé es preciso que una estación sea capaz de encadenar tramas, es decir que su potencia de proceso le permita saturar la red.
El efecto captura provoca retardos muy grandes e impredecibles en la red; se puede detectar por diversos síntomas, siendo el más obvio una proporción anormal de excesivas colisiones. Obsérvese sin embargo que la estación o estaciones que producen excesivas colisiones son las víctimas, no los culpables. La culpable será evidentemente una estación potente, que ocupe una gran cantidad de la capacidad de la red durante ciertos períodos de tiempo (no necesariamente muy largos) y que tenga un número de colisiones relativamente bajo para las tramas transmitidas. Evidentemente el concepto de estación potente hay que entenderlo relativo a la velocidad de la red; cualquier PC actual es capaz de saturar una Ethernet de 10 Mb/s. También se puede producir el efecto captura por la acción combinada de dos estaciones que actuando en tándem sean capaces de saturar la red
El efecto captura es consecuencia de la forma como funciona el retroceso exponencial binario y de su ausencia de historia, es decir de la puesta a cero del contador de colisiones después de cada transmisión. Algunos autores lo consideran un fallo del diseño original de Ethernet. La verdad es que cuando Metcalfe diseñó Ethernet partía de la hipótesis de que la capacidad de la red era bastante superior que la de los ordenadores a ella conectados; entonces no era concebible que un ordenador fuera capaz de saturar una red de 3 ó 10 Mb/s (un gran ordenador de finales de los 70 difícilmente podía enviar datos a 500 Kb/s). En cambio hoy en día un ordenador personal adecuadamente preparado es capaz de saturar una red de 100 Mb/s.
Se han planteado diversas soluciones al problema del efecto captura. Algunas suponen pequeñas modificaciones al algoritmo del retroceso exponencial binario, y otras plantean su completa sustitución por otros algoritmos, como el denominado Método de Arbitración Logarítmico Binario (BLAM, Binary Logarithmic Arbitration Method) propuesto en 1994 [5]. Con este algoritmo se asegura un reparto más homogéneo de los recursos. El IEEE ha puesto en marcha un grupo de trabajo, el 802.3w, para el estudio del BLAM y su posible incorporación al protocolo 802.3. Sin embargo el futuro de este grupo es incierto, ya que el algoritmo ha de implementarse en hardware y requiere nuevas interfaces de red, lo cual complica la migración. Los fabricantes no han mostrado gran interés (hasta la fecha no existe ninguna interfaz de red y sólo IBM ha desarrollado un chip que incorpora BLAM). Además, la actual tendencia a constituir redes conmutadas, en las que cada ordenador se conecta a una puerta de conmutador dedicada, tiene el efecto colateral de resolver el problema del efecto captura, ya que cada ordenador dispone de un enlace full dúplex dedicado donde no se producen colisiones.
Transmisión full dúplex
Una red Ethernet puede funcionar en modo full dúplex si se dan simultáneamente las tres condiciones siguientes:
- Que el medio físico permita transmisión full-dúplex; esto se cumple en todos los casos habituales excepto 10BASE5, 10BASE2 y 100BASE-T4.
- Que sólo haya dos estaciones conectadas entre sí (por ejemplo conmutador-conmutador, conmutador-host o host-host).
- Que los adaptadores de red y transceivers de ambos equipos soporten el funcionamiento en modo full-dúplex.
Con sólo dos estaciones en la red y un canal de comunicación independiente para cada sentido el medio de transmisión no es compartido, por lo que no hay ninguna necesidad de protocolo MAC; se puede por tanto inhabilitar el CSMA/CD y manejar el medio físico como si se tratara de un enlace punto a punto full dúplex de la velocidad de la red (10, 100 ó 1000 Mb/s). Al no haber colisiones en full dúplex no rige la limitación de distancia impuesta por el 2t de la Ethernet tradicional o half dúplex. La única restricción es la que viene impuesta por la atenuación de la señal según el medio físico utilizado. Por ejemplo 100BASE-FX, que tiene una distancia máxima en half dúplex de 412 m, puede llegar en full dúplex a 2 Km.
Cuando una estación se configura en modo full dúplex sin que se den las tres condiciones antes mencionadas el rendimiento decae de forma espectacular, ya que se producen colisiones que no son detectadas.
Aprovechando la supresión de la restricción en distancia debida al CSMA/CD algunos fabricantes suministran transceivers láser que utilizando fibra monomodo en tercera ventana permiten llegar en Ethernet a distancias de más de 100 Km, a cualquiera de las velocidades habituales (10, 100 ó 1000 Mb/s). Estos equipos no están estandarizados por lo que si se utilizan es conveniente poner en ambos extremos sistemas del mismo fabricante, o asegurarse previamente de su compatibilidad e interoperabilidad. Mediante dispositivos regeneradores de la señal de bajo costo es posible extender este alcance en principio indefinidamente, habiéndose hecho pruebas a distancias de hasta 800 Km. De esta forma Ethernet se convierte en una alternativa interesante en redes de área extensa. Evidentemente cuando se transmite la señal a grandes distancias se introduce un retardo, a veces importante, debido a la velocidad de propagación en el medio físico.
Además de aumentar el rendimiento y permitir distancias mayores el uso de full dúplex simplifica el funcionamiento, puesto que se suprime el protocolo MAC. El aumento en el rendimiento obtenido por la transmisión full dúplex normalmente sólo es significativo en conexiones conmutador-conmutador o conmutador-servidor. En un equipo monousuario el full dúplex supone una mejora marginal ya que las aplicaciones casi siempre están diseñadas para dialogar de forma half-dúplex12 .
En Gigabit Ethernet full dúplex se suprimen la extensión de protadora y las ráfagas de tramas, puesto que son innecesarias. Por tanto las ventajas en Gigabit Ethernet full dúplex son aun mayores que las obtenidas en Ethernet o Fast Ethernet, hasta el punto que algunos autores dudan de que lleguen a extenderse en el mercado productos Gigabit Ethernet half dúplex [6].
Para permitir el funcionamiento full dúplex en Gigabit Ethernet sin tener que recurrir a la conmutación por puerta, que podría resultar excesivamente cara en algunas situaciones, se han ideado recientemente unos dispositivos que son algo intermedio entre los concentradores y los conmutadores, denominados buffered repeaters, buffered distributor, full duplex repeater o full duplex distributor. Un buffered repeater es un conmutador que carece de tabla de direcciones MAC, por lo que cualquier trama que recibe la replica en todas sus interfaces por inundación, actuando de la misma forma que un conmutador cuando recibe una trama dirigida a una dirección que no aparece en sus tablas. Por tanto desde este punto de vista un buffered repeater actúa como un concentrador. Sin embargo a diferencia del concentrador, que reproduce la trama bit a bit, el buffered repeater la almacena en su totalidad antes de reenviarla, actuando como un puente; esto le permite funcionar en modo full dúplex, con lo que no sufre las limitaciones de distancia del half dúplex; tampoco tiene que detectar colisiones o generar extensiones de portadora, lo cual simplifica la electrónica asociada. Se espera que el buffered repeater sea bastante más barato de fabricar que un conmutador de Gigabit Ethernet, ya que debido a su funcionamiento el tráfico total agregado de un buffered repeater está limitado a 1 Gb/s, lo cual simplifica el diseño respecto a un conmutador normal, que en principio debe poder soportar un tráfico total agregado igual a la suma del de todas sus interfaces. Estrictamente hablando los buffered repeaters no son parte del estándar Gigabit Ethernet; y podrían aplicarse igualmente a Ethernet, Fast Ethernet u otras redes 802 ya que su principio de funcionamiento es el mismo que el de los conmutadores (que corresponde al estándar 802.1D. de puentes transparentes).
A la vista de estos desarrollos, que muy probablemente dejarán en desuso la Gigabit Ethernet half dúplex, cabría preguntarse por que razón el subcomité 802.3z emprendió la ardua tarea de estandarizar Gigabit Ethernet half dúplex, con toda la complejidad que esto supuso (definición del concepto de extensión de portadora y ráfagas de tramas, por ejemplo). La explicación es de tipo político: para que el grupo que definía Gigabit Ethernet pudiera constituirse como un subcomité de 802.3 era necesario que contemplara el uso de CSMA/CD (y por ende el funcionamiento half dúplex), ya que ésta es la característica esencial que identifica al subcomité 802.3 dentro del comité 802. En caso de no haber contemplado el CSMA/CD el grupo de Gigabit Ethernet habría tenido que solicitar al IEEE la creación de un nuevo subcomité 802; esto habría retrasado considerablemente la estandarización, cosa no deseada por ninguno de los participantes en el grupo.
Control de flujo
El funcionamiento full dúplex se introdujo inicialmente como una extensión no estándar por parte de varios fabricantes. Cuando en 1997 el subcomité 802.3x lo estandarizó incluyó además una nueva funcionalidad, el control de flujo, que en Ethernet se implementa mediante el comando PAUSE. El receptor puede en cualquier momento enviar al emisor un comando PAUSE indicándole por cuanto tiempo debe dejar de enviarle datos. Durante ese tiempo el receptor puede enviar nuevos comandos PAUSE prolongando, reduciendo o suprimiendo la pausa inicialmente anunciada. Con esto se pretende evitar el desbordamiento de los buffers del receptor con el consiguiente descarte de tramas, lo cual causaría males mayores. El control de flujo está especialmente indicado en el caso de conmutadores, sobre todo si forman parte del backbone de una red. Puede establecerse de forma asimétrica, por ejemplo en una conexión conmutador-host puede que se considere conveniente que el conmutador ejerza control de flujo sobre el host, pero no a la inversa.
Desde el punto de vista de Ethernet el control de flujo se implementó como un nuevo tipo de protocolo de red. Para que funcione correctamente es fundamental que las tramas de control de flujo sean rápidamente identificadas por los conmutadores, por lo que esta función se implementa normalmente en hardware. Esto es mucho más fácil de hacer si los comandos de control de flujo pueden identificarse en la cabecera MAC de la trama y no en la LLC, por lo que se vio que era más eficiente utilizar el formato DIX que el 802.2, ya que permitía poner el campo tipo en la cabecera MAC. Se propuso entonces al comité 802.3 un nuevo formato de trama, que coincidía precisamente con el formato DIX. El comité aceptó la propuesta, pero ya puestos decidió estandarizar el nuevo formato para todos los posibles protocolos de Ethernet, no sólo para el control de flujo. Como consecuencia de esto desde 1997 los dos formatos de trama: el 802.2 y el DIX son legales según el estándar 802.3; la distinción entre ambos se hace según el valor del campo tipo/longitud, como ya era habitual en todas las implementaciones.
Cuando en una conexión full dúplex se implementa control de flujo cada equipo debe disponer de espacio suficiente en buffers para aceptar todo el tráfico proveniente del otro extremo en caso de que este envíe un comando PAUSE. Dicho espacio ha de ser como mínimo igual a la cantidad de datos que el otro equipo pueda transmitir durante el tiempo de ida y vuelta (ya que mientras el comando PAUSE viaja hacia el emisor éste continúa enviando datos). Dicho de otro modo, hay que reservar un espacio en buffers igual al doble de lo que cabe en el cable. Por ejemplo en una conexión 1000BASE-LX full dúplex de 5 Km (tiempo de ida y vuelta 50 µs) se deberá disponer de 50 Kbits (6,25 KBytes) para buffers. En el caso de conexiones Ethernet de larga distancia (superiores a las permitidas por el estándar) puede ocurrir que el espacio en buffers sea insuficiente para albergar todos los datos recibidos cuando se emite un comando PAUSE.
Autonegociación
Los medios físicos 1000BASE-TX y 100 BASE-TX utiliza el mismo conector que 10BASE-T. Esto permite aprovechar la misma instalación de cableado y latiguillos para las tres redes, lo cual da gran flexibilidad. Sin embargo desde el punto de vista del usuario supone también la posibilidad de cometer errores, ya que la compatibilidad de conectores no garantiza la compatibilidad de medios físicos. El funcionamiento full dúplex y el control de flujo plantean un problema parecido, ya que al ser partes opcionales del estándar no tienen por qué estar disponibles en todos los equipos. Esta diversidad de posibilidades en cuanto a velocidad y funcionalidades disponibles en el mismo conector requiere una laboriosa tarea de documentación para asegurar el correcto funcionamiento de una red. Para simplificar esta tarea se añadió al estándar 802.3 una característica denominada autonegociación, consistente en que cuando dos equipos se conectan intercambian unas señales anunciando sus posibilidades, de acuerdo con un protocolo especial. Esto les permite negociar y funcionar de la forma compatible más eficiente posible 13.
En el caso de un conector RJ-45 se negocia en primer lugar el medio físico en el siguiente orden:
2.- 100BASE-T2
3.- 100BASE-TX
4.- 100BASE-T4
5.- 10BASE-T
Una vez acordada la velocidad se negocia el funcionamiento half/full-dúplex, y por último el control de flujo y si éste se establece con carácter simétrico o asimétrico.
En el caso de la fibra óptica el medio físico (es decir la velocidad) no es negociable, ya que la longitud de onda cambia (excepto entre 10BASE-F y 1000BASE-SX, que como utilizan la misma ventana pueden negociar entre sí). En este caso sólo se negocia el funcionamiento full dúplex y el control de flujo.
La autonegociación es opcional, por lo que conviene comprobar que esté soportada por los equipos antes de dejarlo todo en manos del funcionamiento automático. Aun en el caso de que se soporte autonegociación es conveniente comprobar que se ha pactado el funcionamiento más eficiente posible, sobre todo en conexiones entre conmutadores, ya que en este caso la ausencia de control de flujo o el funcionamiento half dúplex puede suponer una diferencia importante de rendimiento.
En algunos casos la autonegociación puede causar problemas. Por ejemplo si conectamos mediante cableado categoría 3 dos equipos que soportan 100BASE-TX y 100BASE-T4 las señales de autonegociación, que tienen unos requerimientos ínfimos en cuanto a ancho de banda, se transmiten perfectamente en el cable, pero no verifican su categoría (ya que incluir esta verificación en el transceiver sería muy costoso). Por tanto la negociación dará como resultado el funcionamiento en 100BASE-TX. Una conexión 100BASE-TX sobre cableado categoría 3 no funcionará o lo hará con muchos errores, por lo que en este caso será necesario configurar manualmente los equipos y forzar el uso de 100BASE-T4 para que la red funcione correctamente. Afortunadamente esta situación se da raramente ya que muy pocos equipos implementan 100BASE-T4.
La autonegociación sólo es posible en conmutadores y hosts, no en concentradores, ya que estos requieren funcionar a la misma velocidad en todos sus puertos, y siempre en modo half dúplex. En el mercado existen equipos denominados concentradores con autonegociación 100/10 por puerto; estos equipos en realidad son internamente un conmutador con dos puertos, uno de 10 y uno de 100 Mb/s, que tiene un concentrador de 10 y uno de 100 Mb/s conectados a cada puerto del conmutador; los puertos físicos se adscriben internamente a uno u otro concentrador en función de la velocidad del equipo que se conecta.
Agregación de enlaces
La agregación de enlaces, también llamada trunking o multiplexado inverso, es una técnica desarrollada inicialmente por la empresa Kalpana que permite utilizar varios enlaces Ethernet full-dúplex para conectar dos equipos, realizando reparto del tráfico entre ellos. Hoy en día esta funcionalidad es ofrecida por diversos fabricantes.
En principio según el estándar si dos conmutadores se unen por dos enlaces el protocolo Spanning Tree desactivará uno de ellos, dejándolo preparado para entrar en funcionamiento en caso de fallo del otro14
. La agregación de enlaces requiere deshabilitar el Spanning Tree entre los enlaces que se agregan, para así poder repartir el tráfico entre ellos. Los enlaces pueden ser de 10, 100 ó 1000 Mb/s, pero han de ser todos de la misma velocidad.
La agregación de enlaces no es todavía un estándar. El grupo de trabajo 802.3ad está trabajando en su elaboración. El fuerte apoyo de la industria a este grupo así como la existencia desde hace varios años de productos comerciales de diversos fabricantes que ofrecen esta funcionalidad hacen prever su aprobación hacia abril del año 2000.
Además de permitir acceder a capacidades superiores cuando por algún motivo no es posible cambiar a una velocidad superior, la agregación de enlaces permite un crecimiento gradual a medida que se requiere, sin necesidad de cambios traumáticos en las interfaces de red o en la infraestructura. Aunque actualmente existen en el mercado productos que permiten agregar hasta 32 enlaces full dúplex, parece que cuatro es un límite razonable, ya que al aumentar el número de enlaces la eficiencia disminuye, y por otro lado el costo de las interfaces aconseja entonces pasar a la velocidad superior en vez de agregar enlaces.
La agregación de enlaces requiere evidentemente el uso de múltiples cables, cosa que no siempre es posible, sobre todo si se trata de enlaces a gran distancia. En el caso de fibra óptica el problema puede resolverse mediante la técnica conocida como WDM (Wavelength Division Multiplexing) que consiste en multiplexar varias señales en una misma fibra utilizando longitudes de onda ligeramente distintas dentro de la misma ventana (equivalente a usar luz de diferentes colores). La WDM se utiliza desde hace algún tiempo en enlaces de área extensa donde el mejor aprovechamiento de las fibras compensa el elevado costo de los equipos. Recientemente han aparecido dispositivos WDM a precios asequibles (unos 2 millones de pesetas) que multiplexan cuatro señales Gigabit Ethernet en una misma fibra, pudiendo así transmitir 4 Gb/s full dúplex por un par de fibras. Como detalle curioso comentaremos que con WDM también es posible multiplexar el canal de ida y el de vuelta en una misma fibra, con lo que es posible tener comunicación full dúplex por una sola fibra.
Referencias
- R. M. Metcalfe y D. R. Boggs: "Ethernet: Distributed Packet Switching for Local Computer Networks" Communications of the ACM 19 (7), julio 1976. URL: http://www.acm.org/classics/apr96/)
- B.E. Carpenter. "Characteristics and Practical use of Networks for High Energy Physics", Proc. 1986 CERN School of Computing, CERN, p. 3, 1987.
- D.R. Boggs, J. C. Mogul y C. A. Kent. "Measured Capacity of an Ethernet: Myths and Reality", ACM SIGCOMM88 Symposium on Communications Architectures & Protocols, pp. 222-234, agosto 1988. URL: ftp://gatekeeper.dec.com/pub/DEC/WRL/research-reports/WRL-TR-88.4.ps ó bien http://www.research.digital.com/wrl/publications/abstracts/88.4.html
- R. Seifert: "The Effect of Ethernet Behavior on Networks using High-Performance Workstations and Servers". Technical Report, Networks and Communications Consulting, marzo 1995. URL: http://wwwhost.ots.utexas.edu/ethernet/pdf/techrept13.pdf
- Mart L. Molle: "A New Binary Logarithmic Arbitrarion Method for Ethernet". Technical Report CSRI-298, Computer Systems Research Institute, University of Toronto, Toronto, Canada, M5S 1A1, abril 1994. URL: ftp://www.cs.ucr.edu/pub/blam/report.ps ó bien: http://www.cs.ucr.edu/blam/report/tableofconts.html
- R. Seifert, "Gigabit Ethernet". Addison Wesley, 1998. URL: http://www.awl.com/cseng/titles/0-201-18553-9/
Errores detectados en los artículos anteriores de esta serie:
Parte II, pag. 34, línea 10: la onda cuadrada de 10 MHz emitida por el preámbulo tiene una duración de 6,4 µs, no 6,4 ms.
Rogelio Montañana
rogelio [dot] montanana [at] uv.es
Universidad de Valencia
Servicio de Informática
NOTAS:
- Este tiempo, también llamado t, es el que tarda la señal eléctrica en viajar de una estación a otra y corresponde a la mitad del tiempo de ida y vuelta 2t
- Este es el valor de 2t máximo permitido en una red Ethernet a 100 Mb/s. En el caso de 10 Mb/s los intervalos serían de 51,2µs, y en el de 1000 Mb/s, debido a la extensión de portadora, serían de 4,096µs.
- Que para entonces es ya de 210= 1024. Este límite se fijó en concordancia con el número máximo de estaciones de una red Ethernet; supuestamente si en una red con 1024 estaciones colisionaran todas a la vez sería posible satisfacerlas en diez intervalos. Realmente esto sólo ocurriría en el caso, extremadamente improbable, de que cada una de las 1024 estaciones eligiera un intervalo diferente. Hoy en día, dada la potencia de los ordenadores, el número de estaciones se mantiene generalmente muy por debajo del valor máximo.
- En realidad cuando se produce una colisión las estaciones Ethernet no paran inmediatamente de transmitir, sino que emiten entonces una señal especial de 32 bits denominada señal de atasco (jam signal) para asegurarse de que cualquier estación que esté a la escucha sabrá que se ha producido una colisión y descartará lo recibido hasta ese momento. Al nivel de aproximación en que estamos trabajando podemos ignorar el efecto que tiene en el rendimiento la señal de atasco.
- Por ejemplo Carpenter [2] afirmaba en 1986: Esta técnica [CSMA] funciona muy bien siempre y cuando la carga en la Ethernet no supere el 30%, aproximadamente.
- El concepto de cable debe interpretarse aquí como dominio de colisión, es decir uno o varios cables unidos por repetidores o concentradores. El concepto de longitud debe entenderse en términos del tiempo de ida y vuelta de la red
- Durante la transmisión de los últimos seis bits (507 a 512) no hay riesgo de colisión, puesto que todas las estaciones ya se han percatado de la existencia del emisor.
- Si en vez de hablar en términos relativos lo hiciéramos en valores absolutos (por ejemplo 6 Mb/s de ocupación en los tres casos) la red de 100 Mb/s tendría muchas menos colisiones que la de 10, y la de 1000 aun menos, ya que con ese caudal esas redes estarían prácticamente vacías.
- NFS
utiliza UDP en el nivel de transporte, por lo que la verificación
de la información en este caso se implementa en el nivel de
aplicación.
- 4096 en el caso de
Gigabit Ethernet.
- La explicación
es la siguiente: si 2t=621 bits entonces >t=310 bits; si la segunda
estación empieza a transmitir 3 µs (300 bits) después la
colisión se producirá a 305 bits de la primera y a 5 bits
de la segunda. Para que la colisión sea detectada la señal
ha de volver a cada estación, por lo que los tiempos en que se
detecta la colisión son el doble de los anteriores, o sea 610 bits
para la primera y 10 bits para la segunda.
- Con la notable
excepción de la videoconferencia punto a punto, donde la
información fluye de forma full-dúplex bastante
simétrica.
- La idea es parecida a la utilizada en los
módems de red telefónica conmutada, que mediante un
proceso de negociación acuerdan funcionar según la
velocidad más alta soportada por ambos.
- En el caso de que ninguno de los dos conmutadores implementara el protocolo Spanning Tree se produciría un bucle que colapsaría e inutilizaría ambos enlaces.