logo

Botsingsdetectie in CSMA/CD

CSMA/CD (Carrier Sense Multiple Access/Collision Detection) is een mediatoegangscontrolemethode die veel werd gebruikt in de vroege Ethernet-technologie/LAN's toen er een gedeelde bustopologie was en elk knooppunt (computers) met coaxkabels was verbonden. Nu is Days Ethernet full-duplex en is de topologie ofwel ster (verbonden via switch of router) of point-to-point (directe verbinding). Daarom wordt CSMA/CD niet gebruikt, maar ze worden nog steeds ondersteund.

Beschouw een scenario waarbij er ‘n’ stations op een verbinding zijn en ze allemaal wachten om gegevens via dat kanaal over te dragen. In dit geval zouden alle ‘n’ stations toegang willen hebben tot de link/het kanaal om hun eigen gegevens over te dragen. Het probleem doet zich voor wanneer meer dan één station de gegevens op dat moment verzendt. In dit geval zullen er botsingen optreden in de gegevens van verschillende stations.



CSMA/CD is zo'n techniek waarbij verschillende stations die dit protocol volgen het eens worden over een aantal voorwaarden en maatregelen voor botsingsdetectie voor effectieve transmissie. Dit protocol beslist welk station wanneer zal zenden, zodat de gegevens de bestemming zonder corruptie bereiken.

Hoe CSMA/CD werkt?

    Stap 1: Controleer of de afzender klaar is voor het verzenden van datapakketten. Stap 2: Controleer of de transmissielink inactief is.
    De afzender moet blijven controleren of de transmissieverbinding/het medium inactief is. Hiervoor detecteert het continu transmissies van andere knooppunten. De afzender verzendt dummygegevens op de link. Als er geen collisiesignaal wordt ontvangen, betekent dit dat de verbinding momenteel inactief is. Als het detecteert dat de vervoerder vrij is en er geen botsingen zijn, verzendt het de gegevens. Anders onthoudt het zich van het verzenden van gegevens. Stap 3: Verzend de gegevens en controleer op botsingen.
    De afzender verzendt zijn gegevens via de link. CSMA/CD hanteert geen ‘bevestigingssysteem’. Het controleert op succesvolle en mislukte transmissies via botsingssignalen. Als tijdens de verzending een collisiesignaal door het knooppunt wordt ontvangen, wordt de verzending gestopt. Het station verzendt vervolgens een jamsignaal naar de verbinding en wacht op willekeurige tijdsintervallen voordat het het frame opnieuw verzendt. Na enige willekeurige tijd probeert het opnieuw de gegevens over te dragen en herhaalt het bovenstaande proces. Stap 4: Als er tijdens de voortplanting geen botsing is gedetecteerd, voltooit de zender de frametransmissie en worden de tellers opnieuw ingesteld.

Hoe weet een station of zijn gegevens botsen?




Neem de bovenstaande situatie. Twee stations, A en B.
Voortplantingstijd: Tp = 1 uur (signaal duurt 1 uur om van A naar B te gaan)

At time t=0, A transmits its data. t= 30 mins : Collision occurs.>

Nadat de botsing heeft plaatsgevonden, wordt een botsingssignaal gegenereerd en naar zowel A als B verzonden om de stations over de botsing te informeren. Omdat de botsing halverwege plaatsvond, duurt het ook 30 minuten voordat het botsingssignaal A en B bereikt.

Therefore, t=1 hr: A & B receive collision signals.>

Dit collisiesignaal wordt door alle stations op die verbinding ontvangen. Dan,



Hoe kunnen we ervoor zorgen dat de gegevens van ons station met elkaar botsen?
Hiervoor geldt Transmissietijd (Tt)> voortplantingstijd (Tp) [ruwe grens]
Dit komt omdat we willen dat voordat we het laatste stukje van onze gegevens vanaf ons station verzenden, we er op zijn minst zeker van moeten zijn dat sommige bits hun bestemming al hebben bereikt. Dit zorgt ervoor dat de verbinding niet bezet is en er geen botsingen zullen optreden.
Maar hierboven is een losse grens. We hebben niet de tijd genomen die het botsingssignaal nodig heeft om naar ons terug te reizen. Houd hiervoor rekening met het worstcasescenario.

Denk nog eens aan het bovenstaande systeem.

At time t=0, A transmits its data. t= 59:59 mins : Collision occurs>

Deze botsing vindt plaats net voordat de gegevens B bereiken. Nu duurt het opnieuw 59:59 minuten voordat het botsingssignaal A bereikt. A ontvangt de botsingsinformatie dus ongeveer na 2 uur, dat wil zeggen na 2 * Tp.

Hence, to ensure tighter bound, to detect the collision completely, Tt>>= 2 * Stad>

Dit is de maximale botsingstijd die een systeem nodig heeft om te detecteren of de botsing op zijn eigen gegevens betrekking heeft.

Wat moet de minimale lengte zijn van het te verzenden pakket?

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 * Stad>
Length of the packet>= 2 * Tp * Bandbreedte van de link>

Opvulling helpt in gevallen waarin we niet zulke lange pakketten hebben. We kunnen extra tekens aan het einde van onze gegevens toevoegen om aan de bovenstaande voorwaarde te voldoen.

Botsingsdetectie in CSMA/CD omvat de volgende kenmerken:

    Carrier sense: Voordat gegevens worden verzonden, luistert een apparaat naar het netwerk om te controleren of het transmissiemedium vrij is. Als het medium bezet is, wacht het apparaat tot het vrijkomt voordat het gegevens verzendt. Meervoudige toegang: In een CSMA/CD-netwerk delen meerdere apparaten hetzelfde transmissiemedium. Elk apparaat heeft gelijke toegang tot het medium en elk apparaat kan gegevens verzenden wanneer het medium gratis is. Botsingsdetectie: Als twee of meer apparaten tegelijkertijd gegevens verzenden, vindt er een botsing plaats. Wanneer een apparaat een botsing detecteert, stopt het onmiddellijk met zenden en verzendt het een storingssignaal om alle andere apparaten in het netwerk op de hoogte te stellen van de botsing. De apparaten wachten vervolgens een willekeurige tijd voordat ze opnieuw proberen te zenden, om de kans op een nieuwe botsing te verkleinen. Backoff-algoritme: In CSMA/CD wordt een backoff-algoritme gebruikt om te bepalen wanneer een apparaat gegevens opnieuw kan verzenden na een botsing. Het algoritme maakt gebruik van een willekeurige vertraging voordat een apparaat gegevens opnieuw verzendt, om de kans op een nieuwe botsing te verkleinen. Minimale framegrootte: CSMA/CD vereist een minimale framegrootte om ervoor te zorgen dat alle apparaten voldoende tijd hebben om een ​​botsing te detecteren voordat de transmissie eindigt. Als een frame te kort is, is het mogelijk dat een apparaat een botsing niet detecteert en doorgaat met verzenden, wat leidt tot gegevensbeschadiging op het netwerk.

Voordelen van CSMA/CD:

    Eenvoudig en veel gebruikt: CSMA/CD is een veelgebruikt protocol voor Ethernet-netwerken en door zijn eenvoud is het gemakkelijk te implementeren en te gebruiken.
    Eerlijkheid: In een CSMA/CD-netwerk hebben alle apparaten gelijke toegang tot het transmissiemedium, wat een eerlijke gegevensoverdracht garandeert.
    Efficiëntie: CSMA/CD maakt efficiënt gebruik van het transmissiemedium mogelijk door onnodige botsingen te voorkomen en netwerkcongestie te verminderen.

Nadelen van CSMA/CD:

    Beperkte schaalbaarheid: CSMA/CD heeft beperkingen op het gebied van schaalbaarheid en is mogelijk niet geschikt voor grote netwerken met een groot aantal apparaten.
    Kwetsbaarheid voor botsingen: Hoewel CSMA/CD botsingen kan detecteren, kan het deze niet voorkomen. Botsingen kunnen leiden tot datacorruptie, vertragingen bij de hertransmissie en verminderde netwerkprestaties.
    Inefficiënt gebruik van bandbreedte: CSMA/CD maakt gebruik van een willekeurig uitstelalgoritme dat kan resulteren in een inefficiënt gebruik van de netwerkbandbreedte als een apparaat voortdurend botsingen ondervindt.
    Gevoeligheid voor beveiligingsaanvallen: CSMA/CD biedt geen beveiligingsfuncties en het protocol is kwetsbaar voor beveiligingsaanvallen zoals packet sniffing en spoofing.

Lees het volgende – Efficiëntie van CSMA/CD