CSMA/CD und Kollisionen (Ethernet)

CSMA/CD (Carrier Sense Multiple Access with Collision Detection) ist ein Zugriffsverfahren von Ethernet, um auf das Übertragungsmedium zugreifen zu können. Dabei spielt die Behandlung von Kollisionen bei der Signalübertragung ein große Rolle.

CSMA/CD - Carrier Sense Multiple Access with Collision Detection

Ablauf von CSMA/CD

Das ursprüngliche Ethernet entspricht einer Bus-Topologie an der mehrere Stationen angeschlossen sind (Multiple Access). Es dürfen alle Stationen die Signale auf dem Bus lesen, aber es dürfen nicht alle Stationen gleichzeitig senden. Welche der angeschlossenen Stationen senden darf, wird durch das CSMA/CD-Verfahren bestimmt.

Alle Stationen hören permanent das Übertragungsmedium ab (Carrier Sense). Sie können zwischen einem freien und einem besetzten Übertragungsmedium unterscheiden. Bei einem freien Übertragungsmedium darf gesendet werden. Will eine Station senden, prüft sie, ob der Bus frei ist. Ist er frei, so beginnt die Station zu senden. Das bedeutet, sie legt das Datensignal auf den Bus.

Während der Signalübertragung überprüft die Station, ob das gesendete Signal mit dem Signal auf dem Bus identisch ist. Entspricht das gesendete Signal nicht dem abgehörten Signal, dann hat eine andere Station gleichzeitig gesendet. Die beiden Signale überlagern sich. Diesen Zustand auf dem Übertragungsmedium bezeichnet man als Kollision. Durch prüfen des Zustands auf der Leitung kann diese Kollision erkannt werden (Collision Detection).

Wurde eine Kollision erkannt wird die Übertragung abgebrochen. Der Sender, der das Störsignal zuerst entdeckt, sendet ein spezielles Signal, damit alle anderen Stationen wissen, dass das Netzwerk blockiert ist. Nach einer zufälligen Wartezeit wird wieder geprüft, ob der Bus frei ist. Ist das der Fall, wird von neuem gesendet. Der Vorgang wird so oft wiederholt, bis die Daten ohne Kollision übertragen wurden.

Konnte die Übertragung ohne Kollisionserkennung beendet werden, dann gilt die Übertragung als erfolgreich. Kamen die Daten aus irgendwelchen Gründen beim Empfänger nicht an, dann müssen diese Daten durch Protokolle, wie z. B. TCP, neu angefordert werden. Tritt dies häufiger auf, werden mehr Datenpakete gesendet. Das drückt auf die effektive Übertragungsgeschwindigkeit des Netzwerks.

Kollisionen

Kollisionen gehören im Halbduplex-Betrieb zum normalen Betriebsablauf. Sie sind nicht als Störungen anzusehen. Allerdings werden Kollisionen zur Schwachstelle, wenn die Anzahl der Kollisionen überhand nimmt. Die Anzahl der Kollisionen nimmt zu, je mehr Stationen auf das Übertragungsmedium Zugriff haben.

Durch lange Leitungen, sehr viele Stationen und Repeater (Signalaufbereiter und -verstärker) entstehen je nach Ort der Einspeisung unterschiedliche Signallaufzeiten. Sie führen dazu, dass eine Station ein freies Übertragungsmedium feststellt und ihr Signal sendet, obwohl das Signal einer anderen Station bereits unterwegs ist. Es kommt zur Kollision, also der Überlagerung von zwei Signalen.

Durch CSMA/CD ergeben sich Grenzwerte für die maximale Signallaufzeit und die Rahmengröße. Beides darf nicht überschritten werden. Solange die Bandbreite von Ethernet nicht mehr als 30 Prozent ausgereizt wird, machen sich Kollisionen kaum bemerkbar. Mit steigender Belastung des Netzwerks nehmen aber auch die Kollisionen zu. Hier hilft nur, die Anzahl der Stationen zu reduzieren oder das gesamte Netzwerk in Teilnetz aufzuteilen.

Kollisionsdomäne

Kollisionsdomäne
Die Kollisionsdomäne (collision domain) umfasst ein Netzwerk oder auch nur ein Teilnetzwerk aus Leitungen, Stationen und Kopplungselementen der Schicht 1 (OSI-Referenzmodell). In der Kollisionsdomäne müssen die Kollisionen innerhalb einer bestimmten Zeit jede Station erreichen. Das ist die Bedingung, damit das CSMA/CD-Verfahren funktionieren kann. Ist die Kollisionsdomäne zu groß, dann besteht die Gefahr, dass sendende Stationen Kollision nicht bemerken können. Aus diesem Grund ist die maximale Anzahl der Station in einer Kollisionsdomäne auf 1023 Stationen begrenzt. Außerdem gilt, dass sich maximal zwei Repeater-Paare zwischen zwei beliebigen Stationen befinden dürfen.

Kollisionsdomäne
Um die Bedingungen für eine einwandfrei funktionierende Kollisionsdomäne einhalten zu können, wurde die 5-4-3-Repeater-Regel definiert: Es dürfen nicht mehr als fünf (5) Kabelsegmente verbunden sein. Dafür werden maximal vier (4) Repeater eingesetzt. An nur drei (3) Segmenten dürfen Endstationen angeschlossen sein.

Hinweis: Die Repeater-Regel gilt für 10Base2 und 10Base5 (Koaxialkabel-Netzwerk). In Twisted-Pair-Netzwerken muss man die Repeater-Regel nur beim Einsatz von Hubs beachten. Durch den konsequenten Einsatz von Switches und Routern geht man den Problemen durch das CSMA/CD-Verfahren aus dem Weg.

Wie kann man Kollisionen verhindern?

Grundsätzlich: Je weniger Stationen sich in einer Kollisionsdomäne befinden, desto weniger Kollisionen können auftreten.

Kollisionsdomäne
Um Kollisionen zu vermeiden und einen höheren Datendurchsatz zu erreichen, wird ein Netz auf der Schicht 2 in mehrere Teilnetze aufgeteilt. Bei der Zusammenstellung der Teilnetze ist es sinnvoll die Stationen in einem Teilnetz zusammenzuschließen, die viel miteinander kommunizieren.
Wenn man ein logisches Netz mit Switche oder Bridges aufteilt, entstehen mehrere Kollisionsdomänen. Innerhalb einer Kollisionsdomäne befindet sich dann eine einzelne Station, ein weiterer Switch oder ein Router in ein anderes Netz. Die Einrichtung von Kollisionsdomänen reduziert den Datenverlust durch Kollisionen. Das wiederum reduziert den Netzwerkverkehr, der durch wiederholte Übertragungen verursacht wird.

Kollisionsdomäne
Wenn man generell nur mit Switche arbeitet, wird der Begriff Kollisionsdomäne nicht mehr verwendet. In einem Switch bildet jeder Port und der mit einem Kabel verbundenen Station eine eigene Kollisionsdomäne. Es handelt sich dabei um eine Punkt-zu-Punkt-Verbindung. Der Switch sorgt dafür, dass nur die Datenpakete an den Port weiterleiten werden, über den die Ziel-MAC-Adresse des Pakets erreichbar ist.

Halbduplex und Vollduplex

Halbduplex-Ethernet basiert auf dem CSMA/CD-Verfahren. Es handelt sich dabei um das ursprüngliche Ethernet bis 10 MBit/s. Vollduplex-Ethernet ist eine Weiterentwicklung, die als Fast Ethernet bezeichnet wird und auf CSMA/CD verzichtet. Auch alle weiteren Ethernet-Entwicklungen arbeiten im Vollduplex-Betrieb. Die Stationen kommunizieren über Punkt-zu-Punkt-Verbindungen direkt miteinander.
Weil Fast Ethernet in der Regel im Vollduplex-Modus arbeitet und damit auf CSMA/CD verzichtet, ist eine zusätzliche Flusskontrolle erforderlich. Dafür gibt es einen eigenen Standard: IEEE 802.3x (Flow Control).

Übersicht: Ethernet