CSMA/CD (Acceso múltiple con detección de operador/detección de colisiones) es un método de control de acceso a medios que se usó ampliamente en las primeras tecnologías/LAN de Ethernet cuando solía haber una topología de bus compartida y cada nodo (computadoras) estaba conectado mediante cables coaxiales. Hoy en día, Ethernet es Full Duplex y la topología es en estrella (conectada a través de un conmutador o enrutador) o punto a punto (conexión directa). Por lo tanto, CSMA/CD no se utiliza, pero aún así son compatibles.
Considere un escenario en el que hay 'n' estaciones en un enlace y todas están esperando para transferir datos a través de ese canal. En este caso, todas las 'n' estaciones querrían acceder al enlace/canal para transferir sus propios datos. El problema surge cuando más de una estación transmite los datos al momento. En este caso, habrá colisiones en los datos de diferentes estaciones.
CSMA/CD es una de esas técnicas en la que diferentes estaciones que siguen este protocolo acuerdan algunos términos y medidas de detección de colisiones para una transmisión efectiva. Este protocolo decide qué estación transmitirá y cuándo para que los datos lleguen al destino sin corrupción.
¿Cómo funciona CSMA/CD?
- Paso 1: compruebe si el remitente está listo para transmitir paquetes de datos. Paso 2: compruebe si el enlace de transmisión está inactivo.
El remitente debe seguir comprobando si el enlace/medio de transmisión está inactivo. Para ello, detecta continuamente transmisiones de otros nodos. El remitente envía datos ficticios en el enlace. Si no recibe ninguna señal de colisión, significa que el enlace está inactivo en ese momento. Si detecta que el transportista está libre y no hay colisiones, envía los datos. En caso contrario, se abstiene de enviar datos. Paso 3: Transmita los datos y verifique si hay colisiones.
El remitente transmite sus datos a través del enlace. CSMA/CD no utiliza un sistema de 'acuse de recibo'. Comprueba transmisiones exitosas y fallidas mediante señales de colisión. Durante la transmisión, si el nodo recibe una señal de colisión, la transmisión se detiene. Luego, la estación transmite una señal de interferencia al enlace y espera intervalos de tiempo aleatorios antes de reenviar la trama. Después de un tiempo aleatorio, vuelve a intentar transferir los datos y repite el proceso anterior. Paso 4: Si no se detectó ninguna colisión en la propagación, el remitente completa la transmisión de su trama y reinicia los contadores.
¿Cómo sabe una estación si sus datos chocan?
Considere la situación anterior. Dos estaciones, A y B.
Tiempo de propagación: Tp = 1 hora (la señal tarda 1 hora en pasar de A a B)
At time t=0, A transmits its data. t= 30 mins : Collision occurs.>
Después de que ocurre la colisión, se genera una señal de colisión y se envía a A y B para informar a las estaciones sobre la colisión. Dado que la colisión ocurrió a mitad de camino, la señal de colisión también tarda 30 minutos en llegar a A y B.
Therefore, t=1 hr: A & B receive collision signals.>
Esta señal de colisión es recibida por todas las estaciones de ese enlace. Entonces,
¿Cómo asegurarnos de que sean los datos de nuestra estación los que colisionen?
Para esto, Tiempo de transmisión (Tt)> Tiempo de propagación (Tp) [límite aproximado]
Esto se debe a que queremos que antes de transmitir el último bit de nuestros datos desde nuestra estación, al menos debamos estar seguros de que algunos de los bits ya han llegado a su destino. Esto garantiza que el enlace no esté ocupado y que no se produzcan colisiones.
Pero lo anterior es un punto flojo. No hemos aprovechado el tiempo que tardó la señal de colisión en regresar hasta nosotros. Para ello considere el peor de los casos.
Considere nuevamente el sistema anterior.

At time t=0, A transmits its data. t= 59:59 mins : Collision occurs>
Esta colisión ocurre justo antes de que los datos lleguen a B. Ahora la señal de colisión tarda nuevamente 59:59 minutos en llegar a A. Por lo tanto, A recibe la información de la colisión aproximadamente después de 2 horas, es decir, después de 2 * Tp.
Hence, to ensure tighter bound, to detect the collision completely, Tt>>= 2 * Ciudad>
Este es el tiempo máximo de colisión que un sistema puede tardar en detectar si la colisión se debió a sus propios datos.
¿Cuál debería ser la longitud mínima del paquete a transmitir?
Transmission Time = Tt = Length of the packet/ Bandwidth of the link [Number of bits transmitted by sender per second] Substituting above, we get, Length of the packet/ Bandwidth of the link>= 2 * Ciudad>
Length of the packet>= 2 * Tp * Ancho de banda del enlace>
El relleno ayuda en los casos en los que no tenemos paquetes tan largos. Podemos rellenar caracteres adicionales al final de nuestros datos para satisfacer la condición anterior.
La detección de colisiones en CSMA/CD implica las siguientes características:
- Sentido del portador: antes de transmitir datos, un dispositivo escucha la red para comprobar si el medio de transmisión está libre. Si el medio está ocupado, el dispositivo espera hasta que esté libre antes de transmitir datos. Acceso múltiple: en una red CSMA/CD, varios dispositivos comparten el mismo medio de transmisión. Cada dispositivo tiene igual acceso al medio y cualquier dispositivo puede transmitir datos cuando el medio está libre. Detección de colisiones: si dos o más dispositivos transmiten datos simultáneamente, se produce una colisión. Cuando un dispositivo detecta una colisión, inmediatamente deja de transmitir y envía una señal de interferencia para informar a todos los demás dispositivos de la red de la colisión. Luego, los dispositivos esperan un tiempo aleatorio antes de intentar transmitir nuevamente, para reducir las posibilidades de otra colisión. Algoritmo de retroceso: en CSMA/CD, se utiliza un algoritmo de retroceso para determinar cuándo un dispositivo puede retransmitir datos después de una colisión. El algoritmo utiliza un retraso aleatorio antes de que un dispositivo retransmita datos para reducir la probabilidad de que ocurra otra colisión. Tamaño mínimo de trama: CSMA/CD requiere un tamaño de trama mínimo para garantizar que todos los dispositivos tengan tiempo suficiente para detectar una colisión antes de que finalice la transmisión. Si una trama es demasiado corta, es posible que un dispositivo no detecte una colisión y continúe transmitiendo, lo que provocará daños en los datos de la red.
Ventajas de CSMA/CD:
- Simple y ampliamente utilizado: CSMA/CD es un protocolo ampliamente utilizado para redes Ethernet y su simplicidad hace que sea fácil de implementar y usar.
Justicia: En una red CSMA/CD, todos los dispositivos tienen igual acceso al medio de transmisión, lo que garantiza la equidad en la transmisión de datos.
Eficiencia: CSMA/CD permite un uso eficiente del medio de transmisión al evitar colisiones innecesarias y reducir la congestión de la red.
Desventajas de CSMA/CD:
- Escalabilidad limitada: CSMA/CD tiene limitaciones en términos de escalabilidad y puede no ser adecuado para redes grandes con una gran cantidad de dispositivos.
Vulnerabilidad a colisiones: Si bien CSMA/CD puede detectar colisiones, no puede evitar que ocurran. Las colisiones pueden provocar corrupción de datos, retrasos en la retransmisión y reducción del rendimiento de la red.
Uso ineficiente del ancho de banda: CSMA/CD utiliza un algoritmo de retroceso aleatorio que puede resultar en un uso ineficiente del ancho de banda de la red si un dispositivo experimenta colisiones continuamente.
Susceptibilidad a ataques de seguridad: CSMA/CD no proporciona ninguna característica de seguridad y el protocolo es vulnerable a ataques de seguridad como el rastreo y la suplantación de paquetes.
Leer a continuación – Eficiencia de CSMA/CD