logo

Detekce kolize v CSMA/CD

CSMA/CD (Carrier Sense Multiple Access/Collision Detection) je metoda řízení přístupu k médiím, která byla široce používána v rané ethernetové technologii/LAN, kdy bývala sdílená sběrnicová topologie a každý uzel (počítače) byly propojeny koaxiálními kabely. Nyní je Days Ethernet plně duplexní a topologie je buď hvězda (připojená přes přepínač nebo směrovač) nebo bod-bod (přímé připojení). CSMA/CD se tedy nepoužívají, ale stále jsou podporovány.

Zvažte scénář, kdy je na lince „n“ stanic a všechny čekají na přenos dat tímto kanálem. V tomto případě by všechny „n“ stanice chtěly získat přístup k lince/kanálu, aby přenesly svá vlastní data. Problém nastává, když data v daný okamžik přenáší více stanic. V tomto případě dojde ke kolizi v datech z různých stanic.

CSMA/CD je jednou z takových technik, kde se různé stanice, které se řídí tímto protokolem, dohodnou na určitých podmínkách a opatřeních pro detekci kolizí pro efektivní přenos. Tento protokol rozhoduje o tom, která stanice bude kdy vysílat, aby data dorazila do cíle bez poškození.



Jak CSMA/CD funguje?

    Krok 1: Zkontrolujte, zda je odesílatel připraven k přenosu datových paketů. Krok 2: Zkontrolujte, zda není přenosové spojení nečinné.
    Odesílatel musí neustále kontrolovat, zda je přenosové spojení/médium nečinné. K tomu nepřetržitě snímá přenosy z jiných uzlů. Odesílatel odešle fiktivní data na odkaz. Pokud neobdrží žádný kolizní signál, znamená to, že linka je momentálně nečinná. Pokud vycítí, že je dopravce volný a nedochází ke kolizím, odešle data. V opačném případě se zdrží odesílání dat. Krok 3: Odešlete data a zkontrolujte kolize.
    Odesílatel přenáší svá data na odkaz. CSMA/CD nepoužívá systém „potvrzení“. Kontroluje úspěšné a neúspěšné přenosy prostřednictvím kolizních signálů. Pokud během přenosu přijme uzel signál o kolizi, přenos se zastaví. Stanice pak vyšle rušivý signál na linku a čeká na náhodné časové intervaly, než znovu odešle rámec. Po nějakém náhodném čase se znovu pokusí přenést data a zopakuje výše uvedený proces. Krok 4: Pokud nebyla při šíření detekována žádná kolize, odesílatel dokončí přenos svého rámce a vynuluje čítače.

Jak stanice pozná, že její data kolidují?


Zvažte výše uvedenou situaci. Dvě stanice, A a B.
Doba šíření: Tp = 1 hodina (přechod signálu z A do B trvá 1 hodinu)

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

Poté, co ke kolizi dojde, je generován kolizní signál a odeslán do obou A a B, aby informoval stanice o kolizi. Vzhledem k tomu, že ke srážce došlo uprostřed, signálu srážky také trvá 30 minut, než dosáhne A a B.

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

Tento kolizní signál je přijímán všemi stanicemi na tomto spoji. Pak,

Jak zajistit, aby se srazila data naší stanice?
Za tímto účelem doba přenosu (Tt)> Doba šíření (Tp) [hrubá hranice]
Je to proto, že než odešleme poslední bit našich dat z naší stanice, měli bychom si být alespoň jisti, že některé bity již dosáhly svého cíle. Tím je zajištěno, že linka není zaneprázdněna a nedojde ke kolizím.
Ale výše je volná hranice. Netrvalo nám dlouho, než se signál srážky vrátil k nám. Za tímto účelem zvažte nejhorší možný scénář.

Zvažte znovu výše uvedený systém.

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

K této kolizi dochází těsně předtím, než data dosáhnou B. Nyní signálu o kolizi trvá opět 59:59 minut, než dosáhne A. Proto A obdrží informaci o kolizi přibližně po 2 hodinách, tj. po 2 * Tp.

Hence, to ensure tighter bound, to detect the collision completely, Tt>>= 2 * Město>

Toto je maximální čas kolize, který může systému trvat, než zjistí, zda kolize byla způsobena jeho vlastními daty.

Jaká by měla být minimální délka přenášeného paketu?

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 * Město>
Length of the packet>= 2 * Tp * Šířka pásma odkazu>

Padding pomáhá v případech, kdy nemáme tak dlouhé pakety. Můžeme přidat další znaky na konec našich dat, abychom splnili výše uvedenou podmínku.

Detekce kolize v CSMA/CD zahrnuje následující funkce:

    Carrier sense: Před přenosem dat zařízení naslouchá síti, aby zkontrolovalo, zda je přenosové médium volné. Pokud je médium zaneprázdněné, zařízení před přenosem dat čeká, dokud se neuvolní. Vícenásobný přístup: V síti CSMA/CD sdílí více zařízení stejné přenosové médium. Každé zařízení má stejný přístup k médiu a jakékoli zařízení může přenášet data, když je médium volné. Detekce kolize: Pokud dvě nebo více zařízení přenáší data současně, dojde ke kolizi. Když zařízení detekuje kolizi, okamžitě přestane vysílat a vyšle signál rušení, aby o kolizi informovala všechna ostatní zařízení v síti. Zařízení pak náhodně počkají, než se pokusí znovu vysílat, aby se snížila pravděpodobnost další kolize. Algoritmus backoff: V CSMA/CD se k určení, kdy může zařízení po kolizi znovu vysílat data, používá algoritmus backoff. Algoritmus používá náhodné zpoždění, než zařízení znovu odešle data, aby se snížila pravděpodobnost další kolize. Minimální velikost snímku: CSMA/CD vyžaduje minimální velikost snímku, aby bylo zajištěno, že všechna zařízení budou mít dostatek času na detekci kolize před ukončením přenosu. Pokud je rámec příliš krátký, zařízení nemusí detekovat kolizi a pokračovat v přenosu, což vede k poškození dat v síti.

Výhody CSMA/CD:

    Jednoduchý a široce používaný: CSMA/CD je široce používaný protokol pro sítě Ethernet a jeho jednoduchost usnadňuje implementaci a použití.
    Spravedlnost: V síti CSMA/CD mají všechna zařízení rovný přístup k přenosovému médiu, což zajišťuje spravedlivý přenos dat.
    Účinnost: CSMA/CD umožňuje efektivní využití přenosového média tím, že předchází zbytečným kolizím a snižuje přetížení sítě.

Nevýhody CSMA/CD:

    Omezená škálovatelnost: CSMA/CD má omezení z hlediska škálovatelnosti a nemusí být vhodné pro velké sítě s vysokým počtem zařízení.
    Zranitelnost vůči kolizím: CSMA/CD sice dokáže detekovat kolize, ale nemůže zabránit jejich výskytu. Kolize mohou vést k poškození dat, zpoždění opakovaného přenosu a snížení výkonu sítě.
    Neefektivní využití šířky pásma: CSMA/CD používá náhodný algoritmus backoff, který může mít za následek neefektivní využití šířky pásma sítě, pokud zařízení neustále dochází ke kolizi.
    Náchylnost k bezpečnostním útokům: CSMA/CD neposkytuje žádné bezpečnostní funkce a protokol je zranitelný vůči bezpečnostním útokům, jako je sniffing a spoofing paketů.

Čtěte dále – Efektivita CSMA/CD