CSMA/CD (Carrier Sense Multiple Access/Collision Detection) est une méthode de contrôle d'accès aux médias qui était largement utilisée dans les premières technologies Ethernet/LAN lorsqu'il y avait une topologie de bus partagée et que chaque nœud (ordinateurs) était connecté par des câbles coaxiaux. Désormais, un Days Ethernet est en duplex intégral et la topologie est soit en étoile (connectée via un commutateur ou un routeur), soit point à point (connexion directe). Par conséquent, CSMA/CD n’est pas utilisé mais ils sont toujours pris en charge.
Imaginons un scénario dans lequel il y a « n » stations sur une liaison et toutes attendent de transférer des données via ce canal. Dans ce cas, toutes les « n » stations souhaiteraient accéder au lien/canal pour transférer leurs propres données. Le problème se pose lorsque plusieurs stations transmettent les données à ce moment-là. Dans ce cas, il y aura des collisions dans les données de différentes stations.
CSMA/CD est l'une de ces techniques dans laquelle différentes stations qui suivent ce protocole s'accordent sur certains termes et mesures de détection de collision pour une transmission efficace. Ce protocole décide quelle station transmettra à quel moment afin que les données atteignent leur destination sans corruption.
Comment fonctionne CSMA/CD ?
- Étape 1 : Vérifiez si l'expéditeur est prêt à transmettre des paquets de données. Étape 2 : Vérifiez si la liaison de transmission est inactive.
L'expéditeur doit continuer à vérifier si le lien/support de transmission est inactif. Pour cela, il détecte en permanence les transmissions provenant d’autres nœuds. L'expéditeur envoie des données factices sur le lien. S'il ne reçoit aucun signal de collision, cela signifie que la liaison est actuellement inactive. S'il détecte que le transporteur est libre et qu'il n'y a pas de collision, il envoie les données. Dans le cas contraire, il s'abstient d'envoyer des données. Étape 3 : Transmettez les données et vérifiez les collisions.
L'expéditeur transmet ses données sur le lien. CSMA/CD n’utilise pas de système « d’accusé de réception ». Il vérifie les transmissions réussies et infructueuses grâce aux signaux de collision. Pendant la transmission, si un signal de collision est reçu par le nœud, la transmission est arrêtée. La station transmet ensuite un signal de brouillage sur la liaison et attend des intervalles de temps aléatoires avant de renvoyer la trame. Après un certain temps aléatoire, il tente à nouveau de transférer les données et répète le processus ci-dessus. Étape 4 : Si aucune collision n'a été détectée lors de la propagation, l'émetteur termine sa transmission de trame et réinitialise les compteurs.
Comment une station sait-elle si ses données entrent en collision ?
Considérez la situation ci-dessus. Deux stations, A et B.
Temps de propagation : Tp = 1 heure (le signal met 1 heure pour passer de A à B)
At time t=0, A transmits its data. t= 30 mins : Collision occurs.>
Après la collision, un signal de collision est généré et envoyé à A et B pour informer les stations de la collision. Puisque la collision s'est produite à mi-chemin, le signal de collision met également 30 minutes pour atteindre A et B.
Therefore, t=1 hr: A & B receive collision signals.>
Ce signal de collision est reçu par toutes les stations de cette liaison. Alors,
Comment s’assurer que ce sont les données de notre station qui sont entrées en collision ?
Pour cela, Temps de transmission (Tt)> Temps de propagation (Tp) [Roughbound]
En effet, nous souhaitons qu'avant de transmettre le dernier bit de nos données depuis notre station, nous soyons au moins sûrs que certains bits ont déjà atteint leur destination. Cela garantit que la liaison n'est pas occupée et qu'aucune collision ne se produira.
Mais ci-dessus se trouve une limite lâche. Nous n'avons pas mis le temps que mettait le signal de collision pour revenir vers nous. Pour cela, considérons le pire des cas.
Considérez à nouveau le système ci-dessus.

At time t=0, A transmits its data. t= 59:59 mins : Collision occurs>
Cette collision se produit juste avant que les données n'atteignent B. Maintenant, le signal de collision met à nouveau 59:59 minutes pour atteindre A. Par conséquent, A reçoit les informations de collision environ après 2 heures, c'est-à-dire après 2 * Tp.
Hence, to ensure tighter bound, to detect the collision completely, Tt>>= 2 * Ville>
Il s'agit du temps de collision maximum qu'un système peut prendre pour détecter si la collision concernait ses propres données.
Quelle doit être la longueur minimale du paquet à transmettre ?
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 * Ville>
Length of the packet>= 2 * Tp * Bande passante du lien>
Le remplissage est utile dans les cas où nous n'avons pas de paquets aussi longs. Nous pouvons remplir des caractères supplémentaires à la fin de nos données pour satisfaire la condition ci-dessus.
La détection des collisions dans CSMA/CD implique les fonctionnalités suivantes :
- Sens du porteur : Avant de transmettre des données, un appareil écoute le réseau pour vérifier si le support de transmission est libre. Si le support est occupé, l'appareil attend qu'il soit libre avant de transmettre des données. Accès multiple : dans un réseau CSMA/CD, plusieurs appareils partagent le même support de transmission. Chaque appareil a un accès égal au support, et n'importe quel appareil peut transmettre des données lorsque le support est libre. Détection de collision : si deux appareils ou plus transmettent des données simultanément, une collision se produit. Lorsqu'un appareil détecte une collision, il arrête immédiatement la transmission et envoie un signal de brouillage pour informer tous les autres appareils du réseau de la collision. Les appareils attendent ensuite un temps aléatoire avant de tenter à nouveau de transmettre, afin de réduire les risques d'une autre collision. Algorithme de backoff : dans CSMA/CD, un algorithme de backoff est utilisé pour déterminer quand un appareil peut retransmettre des données après une collision. L'algorithme utilise un délai aléatoire avant qu'un appareil ne retransmette les données, afin de réduire le risque qu'une autre collision se produise. Taille de trame minimale : CSMA/CD nécessite une taille de trame minimale pour garantir que tous les appareils disposent de suffisamment de temps pour détecter une collision avant la fin de la transmission. Si une trame est trop courte, un appareil peut ne pas détecter une collision et continuer la transmission, entraînant une corruption des données sur le réseau.
Avantages de CSMA/CD :
- Simple et largement utilisé : CSMA/CD est un protocole largement utilisé pour les réseaux Ethernet, et sa simplicité le rend facile à mettre en œuvre et à utiliser.
Justice: Dans un réseau CSMA/CD, tous les appareils ont un accès égal au support de transmission, ce qui garantit l'équité dans la transmission des données.
Efficacité: CSMA/CD permet une utilisation efficace du support de transmission en évitant les collisions inutiles et en réduisant la congestion du réseau.
Inconvénients de CSMA/CD :
- Évolutivité limitée : CSMA/CD présente des limites en termes d'évolutivité et peut ne pas convenir aux grands réseaux comportant un nombre élevé d'appareils.
Vulnérabilité aux collisions : Bien que CSMA/CD puisse détecter les collisions, il ne peut pas les empêcher de se produire. Les collisions peuvent entraîner une corruption des données, des retards de retransmission et une réduction des performances du réseau.
Utilisation inefficace de la bande passante : CSMA/CD utilise un algorithme d'attente aléatoire qui peut entraîner une utilisation inefficace de la bande passante du réseau si un appareil subit continuellement des collisions.
Susceptibilité aux attaques de sécurité : CSMA/CD ne fournit aucune fonctionnalité de sécurité et le protocole est vulnérable aux attaques de sécurité telles que le reniflage de paquets et l'usurpation d'identité.
Lire la suite – Efficacité du CSMA/CD