In einem lokalen Ethernet-Netzwerk treffen für ge­wöhn­lich alle Netz­teil­neh­mer an einem ge­mein­sa­men Über­tra­gungs­me­di­um zusammen – einem Kabel. Dieses Zu­sam­men­tref­fen muss geregelt geschehen, damit es nicht zu Chaos bei der Da­ten­über­tra­gung kommt, was wiederum zum Verlust oder zur Be­schä­di­gung von Daten führen kann. In diesem Zu­sam­men­hang bietet CSMA/CD ein Verfahren, das die ord­nungs­ge­mä­ße Da­ten­über­tra­gung or­ga­ni­siert.

In einem WLAN ist diese Technik nicht zweck­mä­ßig. Deshalb hat man dort eine Anpassung des Ver­fah­rens in Form von CSMA/CA ent­wi­ckelt. Auch bei den meisten ka­bel­ge­bun­de­nen Netzen ist CSMA/CD nicht mehr von Bedeutung, da neue Ka­bel­tech­nik andere Mög­lich­kei­ten bietet. Dennoch ist es nicht verkehrt, wenn man auch dieses ältere Verfahren versteht.

Was ist CSMA/CD? Eine De­fi­ni­ti­on

CSMA/CD steht für Carrier Sense Multiple Access / Collision Detection. Die Collision Detection ist eine Er­wei­te­rung des CSMA-Pro­to­kolls. Dieses schafft ein Verfahren, das regelt, wie Kom­mu­ni­ka­ti­on in einem Netzwerk mit geteiltem Über­tra­gungs­me­di­um ablaufen muss. Die Er­wei­te­rung regelt darüber hinaus, wie zu verfahren ist, wenn es zu Kol­li­sio­nen kommt, also zwei oder mehr Teil­neh­mer gleich­zei­tig versuchen, Da­ten­pa­ke­te über das Über­tra­gungs­me­di­um (Bus) zu versenden und diese sich ge­gen­sei­tig stören.

De­fi­ni­ti­on CSMA/CD

Um zu verstehen, wie CSMA/CD funk­tio­niert, ist es sinnvoll, die einzelnen Be­stand­tei­le des Begriffs auf­zu­schlüs­seln:

  • Carrier Sense (CS): Die Trä­ger­zu­stands­er­ken­nung regelt, dass alle Netz­werk­teil­neh­mer über­prü­fen, ob das Medium derzeit frei ist. Erst dann leitet das Protokoll eine Über­tra­gung der Daten ein.
  • Multiple Access (MA): Mehrere Teil­neh­mer (Computer mit Anschluss an das Netzwerk) teilen sich ein Über­tra­gungs­me­di­um.

  • Collision Detection (CD): Die Kol­li­si­ons­er­ken­nung ist eine Er­wei­te­rung des ur­sprüng­li­chen Pro­to­kolls und regelt, wie im Falle einer Kollision von Da­ten­pa­ke­ten vor­ge­gan­gen werden soll.

Ablauf des CSMA/CD-Ver­fah­rens

CSMA/CD ist in mehrere Schritte un­ter­teilt. Der Ablauf ori­en­tiert sich dabei an einem normalen Gespräch in einer Gruppe: Für eine ver­nünf­ti­ge Kom­mu­ni­ka­ti­on ist es er­for­der­lich, dass nicht alle Ge­sprächs­teil­neh­mer durch­ein­an­der sprechen, sondern nach­ein­an­der, sodass jeder Teil­neh­mer die Dis­kus­si­ons­bei­trä­ge der anderen voll und ganz verstehen kann. Ganz unbewusst verhalten wir uns bei einem solchen Gespräch nach einem Protokoll: Während jemand anderes spricht, hören wir selbst nur zu.

Nachdem der andere Teil­neh­mer seinen Beitrag fürs Erste beendet hat, warten wir eine kurze Zeit und fangen erst dann an zu reden, wenn der gleiche Teil­neh­mer oder ein anderer am Gespräch Be­tei­lig­ter nicht zu einem neuen Beitrag ansetzt. Sollten wir zufällig gleich­zei­tig mit jemand anderem anfangen zu sprechen, beenden wir unseren Versuch, warten erneut und starten dann einen neuen.

Einen ganz ähnlichen Ablauf hat auch das CSMA/CD-Verfahren. Zunächst überwacht die Station das Über­tra­gungs­me­di­um. Solange dieses belegt ist, wird die Über­wa­chung fort­ge­führt. Erst wenn das Medium frei ist, und zwar für eine bestimmte Zeit (im In­ter­frame Spacing), sendet die Station ein Da­ten­pa­ket. Wäh­rend­des­sen überwacht der Sender aber weiterhin das Über­wa­chungs­me­di­um, um Da­ten­kol­li­sio­nen zu entdecken. Sollte bis zum Über­tra­gungs­en­de kein anderer Teil­neh­mer versuchen, seine Daten über das Medium zu schicken, und somit auch keine Kollision entstehen, ist die Über­tra­gung er­folg­reich.

Fakt

Kol­li­sio­nen re­sul­tie­ren in einer Gleich­span­nungs­ver­schie­bung auf dem Kabel. So ist es für die Stationen auch möglich, die Kol­li­sio­nen zu erkennen.

Wird aber hingegen eine Kollision entdeckt, bricht der Teil­neh­mer die Über­tra­gung sofort ab und sendet statt­des­sen ein Stör­si­gnal (JAM-Signal), damit auch alle anderen Stationen die Kollision erkennen. Nun wartet der Teil­neh­mer eine zufällige Zeitdauer (Backoff) und versucht die Über­tra­gung erneut. Der Backoff muss zufällig sein, damit nicht direkt die nächste Kollision entsteht. Da beide Stationen einen zu­fäl­li­gen Wert wählen, ist die Wahr­schein­lich­keit, dass beide erneut zur gleichen Zeit einen Trans­port­ver­such starten, gering.

Die Über­tra­gungs­ver­su­che werden dabei gezählt. Sollten auch die folgenden Versuche scheitern und das Maximum der Versuche (16) erreicht sein, meldet die Station den Fehler an die nächst­hö­he­re Netz­werk­schicht und bricht dann die Über­tra­gung endgültig ab. Da es höchst un­wahr­schein­lich ist, dass ein Netz­teil­neh­mer das Maximum bei einem normalen Vorgang erreicht, kann man in einem solchen Fall von einem Fehler im System ausgehen.

Fakt

Der Ethernet-Stau­auf­lö­sungs­me­cha­nis­mus Binary Ex­po­nen­ti­al Backoff wird ein­ge­setzt, um dau­er­haf­te Kol­li­sio­nen zu ent­schär­fen. Bevor dieser nach einer Kollision einen neuen Versuch startet, muss ein Teil­neh­mer eine Zeit lang warten. Bei dieser Zeitdauer handelt es sich immer um ein zu­fäl­li­ges Viel­fa­ches der so­ge­nann­ten Slotzeit. Die Slotzeit ist abhängig von der Über­tra­gungs­ra­te und liegt bei wenigen Mi­kro­se­kun­den. Der Bereich der möglichen Viel­fa­chen ver­dop­pelt sich mit jedem ge­schei­ter­ten Versuch, sodass die Wahr­schein­lich­keit einer gleich­zei­ti­gen Über­tra­gung ex­po­nen­ti­ell geringer wird.

Kol­li­sio­nen

Um zu erkennen, ob eine Kollision eintritt, überprüft die Station gleich­zei­tig, ob das gesendete Signal mit dem auf dem Über­tra­gungs­me­di­um identisch ist. Wenn dies nicht der Fall sein sollte, überträgt eine andere Station zeit­gleich und ver­fälscht so das Signal auf dem Bus. Solche Kol­li­sio­nen treten re­gel­mä­ßig auf und gehören zum normalen Betrieb eines Local Area Networks (LAN). Mit der Größe des Netz­wer­kes steigt aber auch die Wahr­schein­lich­keit, dass es zu Kol­li­sio­nen kommt. Größe bezieht sich in diesem Fall nicht nur auf die Anzahl der Teil­neh­mer, sondern auch auf die Länge der Über­tra­gungs­we­ge.

Durch lange Leitungen kann es eher passieren, dass ein Teil­neh­mer bereits ein Signal los­ge­schickt hat, dieses aber noch nicht von einem anderen Teil­neh­mer fest­ge­stellt werden konnte. Auch dies führt daher zu mehr Kol­li­sio­nen und macht das Netzwerk insgesamt langsamer.

Was ist eine Kol­li­si­ons­do­mä­ne?

Als Kol­li­si­ons­do­mä­ne versteht man den Bereich eines Netzwerks, in dem sich Teil­neh­mer ein Über­tra­gungs­me­di­um teilen. Zugriff erhalten die Teil­neh­mer über das CSMA/CD-Verfahren. Dabei darf die Kol­li­si­ons­do­mä­ne aber eine bestimmte Größe nicht über­schrei­ten: Netze können nicht beliebig ver­grö­ßert werden, wenn weiterhin das Kol­li­si­ons­ver­fah­ren wirksam bleiben soll. Der Grund hierfür liegt in der Ge­schwin­dig­keit der Über­tra­gung und im Weg, den diese nehmen muss.

Fakt

Netz­werk­pro­to­kol­le lassen sich nach dem OSI-Re­fe­renz­mo­dell in sieben abstrakte Schichten un­ter­glie­dern. In der obersten Schicht, der An­wen­dungs­schicht (Ap­pli­ca­ti­on Layer), werden Funk­tio­nen für An­wen­dun­gen be­reit­ge­stellt, womit auch Da­ten­ein­ga­be und -ausgabe für Nutzer möglich ist. Darunter folgen bei­spiels­wei­se noch Schichten für Transport (hier findet man z. B. TCP) und Ver­mitt­lung (hier befindet sich das Internet Protocol). In der untersten Schicht (Physical Layer) geht es darum, die Bits der Computer in ein phy­si­ka­li­sches Signal, das zum Über­tra­gungs­me­di­um passt, zu über­set­zen. Auf dieser Ebene befindet sich auch die Kol­li­si­ons­do­mä­ne.

Damit CSMA/CD funk­tio­niert, müssen Feh­ler­mel­dun­gen in einer be­stimm­ten Zeit alle Teil­neh­mer der Kol­li­si­ons­do­mä­ne erreichen: Ein Da­ten­pa­ket läuft von einem Ende der Domäne zum anderen, wo dann eventuell eine Kollision auftritt. Das ent­spre­chen­de Signal muss die erste Station erreichen, bevor diese mit der voll­stän­di­gen Über­tra­gung des Da­ten­pa­kets fertig ist. Ansonsten erkennt die Station nicht, dass die über­tra­gen­den Daten bereits be­schä­digt sind, hält die Über­tra­gung für er­folg­reich und das Da­ten­pa­ket geht verloren. Solche Vorfälle werden „späte Kol­li­sio­nen“ genannt und führen zum Verlust von Daten.

Mit diesem Wissen und den In­for­ma­tio­nen über die ver­wen­de­te Netz­werk­tech­no­lo­gie lässt sich dann die maximale Größe einer Kol­li­si­ons­do­mä­ne berechnen. Geht man von einem klas­si­schen Halb­du­plex-Ethernet-Netzwerk aus, hat dies eine Da­ten­über­tra­gungs­ra­te von 10 Mbit/s. Das kleinste Da­ten­pa­ket, welches dem­entspre­chend die kürzeste Zeit für die voll­stän­di­ge Über­tra­gung in Anspruch nimmt und damit der extremste Fall ist, hat eine Größe von 512 Bit (64 Byte). Daraus ergibt sich eine Slotzeit von 51,2 μs (Mi­kro­se­kun­den). Die Slotzeit be­schreibt die Dauer, die ein Signal bis zum Ende der Kol­li­si­ons­do­mä­ne und wieder zurück brauchen darf.

Daten in Netz­wer­ken werden aber nicht mit Licht­ge­schwin­dig­keit durch den luft­lee­ren Raum geschickt. Man ist an die phy­si­schen Ge­ge­ben­hei­ten des Über­tra­gungs­me­di­ums gebunden. Mit einem Ver­kür­zungs­fak­tor (engl. „Nominal Velocity of Pro­pa­ga­ti­on“, NVP), gibt man daher an, wie viel Prozent der Licht­ge­schwin­dig­keit in dem Medium erreicht wird. So haben die für lokale Netzwerke typischen Twisted-Pair-Kabel einen NVP-Wert von 0,6 und die etwas älteren Ko­axi­al­ka­bel einen Wert von 0,77. Daten können also 180.000 km/s (60 %) oder ca. 230.000 km/s (77 %) der Licht­ge­schwin­dig­keit erreichen.

Aus allen Daten lässt sich so die maximale Aus­deh­nung einer Kol­li­si­ons­do­mä­ne berechnen, um die Wirk­sam­keit vom CSMA/CD zu ga­ran­tie­ren:

  • Ge­schwin­dig­keit der Daten * Dauer der Sendung = das Doppelte der maximalen Länge
  • 230.000 km/s * 0,0000512s = 11,776 km

Eine Kol­li­si­ons­do­mä­ne in einem Netzwerk, das auf Ko­axi­al­ka­beln aufgebaut ist, darf also höchstens eine Aus­brei­tung von 5,89 km haben. Bei der Be­rech­nung muss man be­rück­sich­ti­gen, dass der Weg der Signale in beide Rich­tun­gen be­trach­tet werden muss. Auch durch die Zwi­schen­schal­tung von Si­gnal­ver­stär­kern (Repeatern) kann die maximale Größe einer Kol­li­si­ons­do­mä­ne nicht erweitert werden, da diese keinen Einfluss auf das CSMA/CD-Verfahren haben.

Wie kann man Kol­li­sio­nen ver­hin­dern?

Generell kann man bei Halb­du­plex-Systemen Kol­li­sio­nen nicht gänzlich vermeiden. Sie sind ein­ge­plan­te Störungen und CSMA/CD sorgt dafür, dass Kol­li­sio­nen zu keinen Problemen bei der Über­tra­gung führen. Dies gilt al­ler­dings nur für den Da­ten­ver­lust. Die Über­tra­gungs­ge­schwin­dig­keit nimmt durch viele Kol­li­sio­nen ab. Wie entstehen zu viele Kol­li­sio­nen? Durch zu viele Teil­neh­mer in einer Kol­li­si­ons­do­mä­ne steigt die Zahl der Kol­li­sio­nen und damit die Anzahl der Ver­zö­ge­run­gen. In sehr schlech­ten Fällen kann es dazu kommen, dass nur noch 30 Prozent der ei­gent­li­chen Ge­schwin­dig­keit erreicht werden.

Damit es nicht so weit kommt, lohnt es sich, kleinere Kol­li­si­ons­do­mä­nen zu bilden. Dafür muss das Netzwerk auf­ge­teilt werden. Hierfür verwendet man Switches oder Bridges – beide arbeiten auf der Basis von MAC. Media Access Control funk­tio­niert auf der zweiten (also nächst­hö­he­ren) OSI-Schicht, der Si­che­rungs­schicht (Data Link). Dabei ist es sinnvoll, die Teilnetze so zu bilden, dass Stationen zu­sam­men­lie­gen, die ohnehin viel mit­ein­an­der kom­mu­ni­zie­ren müssen. So ver­hin­dert man, dass Engpässe an den Bridges den Ge­schwin­dig­keits­ge­winn wieder zu­nich­te­ma­chen.

Halb­du­plex vs. Voll­du­plex

In der Netz­werk­tech­nik wird zwischen Halb­du­plex und Voll­du­plex un­ter­schie­den. Beide Modelle hängen mit der ver­wen­de­ten Technik zusammen. Grund­sätz­lich be­zeich­net Duplex im Kontext von Netz­wer­ken oder anderen Kom­mu­ni­ka­ti­ons­tech­ni­ken die Mög­lich­kei­ten in Bezug auf die Da­ten­über­mitt­lung. So lässt Halb­du­plex eine Über­tra­gung zu einem Zeitpunkt immer nur in eine Richtung zu. Bei Voll­du­plex hingegen kann eine Station jederzeit sowohl senden als auch empfangen.

Darüber hinaus kennt die Netz­werk­tech­nik auch noch Simplex und Dual-Simplex. Ersteres lässt eine Über­tra­gung nur in eine Richtung zu, und das zu jedem Zeitpunkt. Ein gutes Beispiel hierfür ist der Rundfunk. Dort ist es nur möglich zu senden, niemals zu empfangen. Dual-Simplex hingegen ent­spricht eher dem Prinzip von Voll­du­plex: Zu jedem Zeitpunkt ist sowohl Senden als auch Empfangen möglich. Im Gegensatz zu Voll­du­plex geschieht dies aber über zwei ver­schie­de­ne Wege.

Die Un­ter­schei­dung zwischen Halb­du­plex und Voll­du­plex hat eine deutliche Aus­wir­kung auf das CSMA/CD-Verfahren: Gerade der Umstand, dass bei Halb­du­plex immer nur eine Über­tra­gung möglich ist, fordert eine Maßnahme, Kol­li­sio­nen zu vermeiden. Greifbar wird dies, wenn man sich den Über­tra­gungs­ka­nal als ein­spu­ri­ge Straße vorstellt. Kommt Verkehr gleich­zei­tig aus beiden Rich­tun­gen, führt dies zu einer Kollision. Voll­du­plex hingegen ist jederzeit zwei­spu­rig. Der Verkehr kann aus beiden Rich­tun­gen flüssig an­ein­an­der vorbei laufen. Deshalb ist in Netz­wer­ken, die Voll­du­plex einsetzen, keine Carrier Sense Multiple Access / Collision Detection notwendig: Kol­li­sio­nen können nicht auftreten.

Die Duplex-Art ist an die tech­ni­schen Be­din­gun­gen geknüpft und ganz konkret an die ver­wen­de­ten Ka­bel­ar­ten. Netzwerke, die mit Ko­axi­al­ka­beln verbunden sind, können nur im Halb­du­plex-Modus laufen. Erst mit der Ein­füh­rung von Twisted-Pair- und Glas­fa­ser­ka­beln war Full­du­plex möglich. Parallel dazu bedeutet dies auch, dass Fast Ethernet (100 Mbit/s) und Gigabit Ethernet (1 Gbit/s) über­wie­gend als Full-Duplex-Netzwerke rea­li­siert werden und somit CSMA/CD nur noch eine geringe Rolle in der Praxis spielt.

CSMA/CD vs. CSMA/CA

Neben der Er­wei­te­rung von Carrier Sense Multiple Access durch Collision Detection kann der Me­di­en­zu­gang auch durch Collision Avoidance zu CSMA/CA erweitert werden. Letzteres ist vor allem im Hinblick auf drahtlose Ver­bin­dun­gen nötig. CSMA/CD funk­tio­niert aus ver­schie­de­nen Gründen nicht gut in Funk­net­zen. Zentral hierbei ist das Hidden-Station-Problem. Dies tritt auf, wenn zwei Stationen sich ge­gen­sei­tig nicht wahr­neh­men, aber gleich­zei­tig mit einer dritten Station in der Mitte kom­mu­ni­zie­ren – was un­wei­ger­lich zu Kol­li­sio­nen führt.

CSMA/CA hingegen versucht – wie der Name sagt – Kol­li­sio­nen zu vermeiden, statt diese nur zu erkennen. Im Falle einer Kollision wird ein ent­spre­chen­des Protokoll etabliert. So gesehen handelt es sich bei CSMA/CA um eine Anpassung von CSMA/CD an ein anderes Über­tra­gungs­me­di­um.

Zum Hauptmenü