Carrier Sense Multiple Access/Collision Detection

Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 2. November 2004 um 11:32 Uhr durch 212.37.49.73 (Diskussion) (Problemstellung). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Carrier Sense Multiple Access / Collision Detection (CSMA/CD) (engl. ) ist ein Prinzip, das den Zugriff verschiedener Stationen auf ein gemeinsames Übertragungsmedium beschreibt (siehe auch: TDMA). Verwendung findet CSMA/CD beispielsweise im Bereich der Computernetzwerke beim Ethernet und ist dort als IEEE 802.3 standardisiert worden. Bei Wireless LANs wird ein ähnlicher Mechanismus namens CSMA/CA benutzt.

Problemstellung

Wenn unterschiedliche Sendestationen auf ein und demselben Übertagungsmedium (selbes Kabel oder gleiche Sendefrequenz) senden möchten, besteht die Gefahr, dass sich bei gleichzeitigem Sendebetrieb die beiden Signale überlagern und somit stören. Dies wird bei CSMA/CD nur zum Teil verhindert..........blubs und bla


Eine Übertragung geschieht immer in Blöcken bzw. Paketen. Diese Einheiten sind, je nach Netzwerkstandard, mit einer maximalen Länge, von z.B. 1518 Byte beim Ethernet, definiert. Zwischen den einzelnen Paketen gibt es Übertragungslücken, es wird kein endloser Datenstrom erzeugt.

Realisierung

Das Schema ist, verglichen mit Token Ring oder Master-kontrollierten Netzwerken, relativ simpel. Wenn ein Gerät Daten senden möchte, hält es sich an folgenden Ablauf:

  1. [Carrier Sense = auf Signal horchen] Zuerst muss das Medium überwacht werden.
  2. Wenn die Leitung frei ist, beginne mit der Übertragung, andernfalls weiter mit Schritt 5.
  3. [Informationsübertragung] Wenn eine Kollision entdeckt wird, beende die Datenübertragung und setze ein definiertes Störsignal (jam) auf die Leitung (um sicherzustellen, dass alle anderen Transceiver die Kollision erkennen), dann weiter mit Schritt 5.
  4. [Übertragung erfolgreich abgeschlossen] Erfolgsmeldung an höhere Netzwerkschichten, Übertragungsmodus verlassen.
  5. [Leitung ist belegt] Warten, bis die Leitung wieder frei ist.
  6. [Leitung ist gerade frei geworden] Noch eine zufällige Zeit (Backoff) abwarten, dann wieder bei Schritt 1 beginnen, wenn die maximale Anzahl von Übertragungsversuchen nicht überschritten wurde.
  7. [Maximale Anzahl von Übertragungsversuchen überschritten] Fehler an höhere Netzwerkschichten melden, Übertragungsmodus verlassen.

Da die Signale als Spannungspegel messbar sind, und eine Überlagerung eine Addition der Pegel bedeutet, wird eine Kollision von allen (auch den momentan unbeteiligten) Rechnern erkannt, da ein Schwellwert überschritten wird (Collision Detection = Kollisionserkennung). Die Kollision muss insbesondere vom Sender erkannt werden, damit er eine Sendewiederholung initiieren kann. Dazu muss die minimale Paketlänge so bemessen werden, dass die Übertragungsdauer ausreicht, um das Signal zweimal über die längste Distanz zu übertragen.

Probleme

Aufgrund dieser auftretenden Kollisionen ist es nicht möglich, die theoretische Übertragungskapazität voll auszuschöpfen. Je mehr Rechner sich im Netzwerk beteiligen, desto mehr Kollisionen treten auf. Und die Bandbreite sinkt somit deutlich.

Abhilfe schaffen beim Ethernet andere Übertragungs-Prinzipien (Token-Passing), der Einsatz von Switches, oder der Voll-Duplex-Betrieb.