CSMA/CA – Carrier Sense Multiple Access / Collision Avoidance

Abkürzung: CSMA/CA

CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance) ist das Zugriffsverfahren des WLAN. Es regelt, wer wann senden darf, wenn sich viele Stationen einen Funkkanal teilen — und zwar durch Vermeiden von Kollisionen, nicht durch deren Erkennung.

Warum Vermeidung und nicht Erkennung

Im kabelgebundenen Ethernet gab es ein verwandtes Verfahren, das Kollisionen erkannte: Eine Station hörte während des Sendens mit, bemerkte ein gleichzeitiges Signal und brach ab.

Im Funk ist das nicht möglich, der Grund dafür ist physikalisch. Eine Funkstation sendet mit erheblicher Leistung aus der eigenen Antenne; das Signal einer entfernten Station ist dagegen um Größenordnungen schwächer. Während des Sendens ist der eigene Empfänger praktisch blind — sie könnte eine Kollision nicht wahrnehmen, selbst wenn sie es versuchte.

Daraus folgt der ganze Aufbau des Verfahrens: Weil der Fehler nicht erkannt werden kann, muss er von vornherein unwahrscheinlich gemacht werden. Und weil nichts mitgehört wird, braucht jede Übertragung eine Bestätigung — sonst wüsste der Sender nie, ob sie angekommen ist.

Der Ablauf beim Senden

Eine Station, die senden will, geht in folgenden Schritten vor:

  1. Hören. Ist der Kanal belegt, wird gewartet, bis er frei ist.
  2. Festen Abstand abwarten. Nach dem Freiwerden verstreicht eine normierte Wartezeit, bevor überhaupt etwas geschehen darf.
  3. Zufällig weiter warten. Danach wählt die Station eine zufällige Anzahl von Zeitscheiben und zählt diese herunter — nur solange der Kanal frei bleibt. Wird er belegt, hält der Zähler an und läuft später weiter.
  4. Senden, wenn der Zähler null erreicht.
  5. Auf die Bestätigung warten. Der Empfänger quittiert nach einem kürzeren Abstand als dem aus Schritt 2 — dadurch kommt ihm niemand dazwischen.

Bleibt die Bestätigung aus, gilt die Übertragung als gescheitert. Die Station verdoppelt den Bereich, aus dem sie ihre Zufallszahl zieht, und versucht es erneut. Dieses Verdoppeln ist der Grund, warum ein überfüllter Kanal nicht zusammenbricht, sondern nur langsamer wird: Je mehr Fehlversuche, desto weiter streuen die Wartezeiten.

Der zufällige Rückzug ist dabei der Kern von CSMA/CA. Würden alle Stationen nach dem Freiwerden sofort senden, kollidierten sie zuverlässig bei jeder Gelegenheit.

Die verdeckte Station

Das Verfahren hat eine eingebaute Schwäche: Es setzt voraus, dass jede Station jede andere hört.

Zwei Stationen können aber beide den Zugangspunkt erreichen, ohne sich gegenseitig zu hören — weil eine Wand dazwischen steht oder die Entfernung zu groß ist. Jede hält den Kanal für frei, während die andere sendet. Beide Signale treffen beim Zugangspunkt zusammen, und beide sind verloren.

Dagegen gibt es ein zweistufiges Verfahren: Die sendewillige Station fragt kurz an, der Zugangspunkt antwortet mit einer Freigabe. Diese Freigabe hören alle Stationen in seiner Reichweite, auch die, die den Anfragenden nicht hören. Sie enthält die Dauer der folgenden Übertragung, und für diese Zeit halten sich alle zurück.

Der Preis sind zwei zusätzliche Nachrichten je Übertragung, weshalb das Verfahren meist nur für große Rahmen eingeschaltet wird — bei kurzen kostet es mehr, als es einbringt.

Warum der Durchsatz unter der Nennrate bleibt

Hier gibt CSMA/CA die Antwort auf die häufigste Frage zum WLAN-Durchsatz. Die aufgedruckte Rate ist die Geschwindigkeit, mit der Bits über die Luft gehen, solange gesendet wird. Vom Rest der Zeit bleibt nichts für Daten:

  • die festen Abstände vor jeder Übertragung
  • die zufälligen Wartezeiten, die mit der Zahl der Stationen zunehmen
  • die Bestätigung jedes einzelnen Rahmens, samt ihrem eigenen Abstand
  • die Verwaltungsnachrichten des Zugangspunkts
  • Wiederholungen bei Störungen

In der Summe kommt bei einem einzelnen Nutzer in guter Lage etwa die Hälfte der Nennrate als Nutzdatenrate an; mit mehreren aktiven Stationen deutlich weniger.

Daraus folgt der zweite Punkt, der oft falsch verstanden wird: Alle Stationen eines Funkkanals teilen sich die Sendezeit — auch die, die an verschiedenen Zugangspunkten hängen, solange diese denselben Kanal verwenden. Ein zusätzlicher Zugangspunkt auf demselben Kanal verdoppelt nicht die Kapazität, er halbiert sie für beide.

Was den Kanal zusätzlich bremst

Langsame Stationen bremsen alle. Ein Gerät am Rand der Reichweite überträgt mit niedriger Rate und belegt für dieselbe Datenmenge entsprechend länger den Kanal. Diese Zeit fehlt allen anderen.

Fremde Netze zählen mit. Das Verfahren macht keinen Unterschied zwischen dem eigenen und einem benachbarten Netz auf demselben Kanal: Belegt ist belegt. Die Kanalwahl ist deshalb kein Feinschliff, sondern der größte Hebel.

Störquellen ohne WLAN wirken ebenfalls. Mikrowellen, Funkkameras und andere Geräte im selben Band belegen den Kanal, ohne sich an das Verfahren zu halten.

Abgrenzung

CSMA/CD ist das Gegenstück aus dem kabelgebundenen Ethernet, das Kollisionen erkennt statt vermeidet. Mit geschalteten Netzen und Vollduplexbetrieb ist es dort bedeutungslos geworden.

ALOHA ist der historische Vorläufer: senden und bei fehlender Bestätigung nach zufälliger Wartezeit wiederholen, ohne vorher zu hören. Das Verfahren zeigt, warum das Hören vor dem Senden den entscheidenden Unterschied macht.

Die Koordinierte Vergabe durch den Zugangspunkt ist der Gegenentwurf: Statt um den Kanal zu konkurrieren, teilt eine zentrale Stelle Sendezeiten zu. In neueren WLAN-Generationen gibt es Verfahren, die in diese Richtung gehen.

Der WLAN-Durchsatz ist das Ergebnis, dessen Abstand zur Nennrate dieses Verfahren erklärt.

Quellen

  • IEEE Std 802.11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications
  • IEEE Std 802.11, Abschnitt zur Distributed Coordination Function
  • IEEE Std 802.3: Ethernet (zum Vergleich mit CSMA/CD)

Erstellt: · Überarbeitet: