# Token Ring

Token Ring ist eine Vernetzungstechnik für Computernetzwerke, festgelegt in der Spezifikation IEEE 802.5. Sie definiert Kabeltypen und Signalisierung für die Bitübertragungsschicht, Paketformate und Protokolle für die Medienzugriffskontrolle (Media Access Control, MAC)/Sicherungsschicht des OSI-Modells. Sie ist eine der beiden Realisierungsformen des Token-Passing-Verfahrens.
Die Token-Ring-Technik wurde praktisch vollständig von den verschiedenen Ethernet-Varianten verdrängt. Sie wird technisch nicht weiterentwickelt und hat in der Netztechnik keine Bedeutung mehr.

## Geschichte
### Implementierungen

Erste Implementierungen waren Cambridge Ring und StarNET der englischen Firma Procom.
1981 führte Apollo Computer sein 12 Mbit/s Apollo Token Ring (ATR) und 1984 Proteon das 10 Mbit/s ProNet-10 Token Ring Netz ein.
Token Ring wurde am IBM Zurich Research Laboratory Mitte 1980 weiterentwickelt und war lange Zeit Standard bei Netzen von IBM und damit auch bei allen, die Rechner von IBM einsetzten. IBM weicht in Einzelheiten vom Standard IEEE 802.5 ab.
Seit IBM, Hauptvertreter des Token-Ring-Verfahrens, aufgrund des Aufkommens günstiger Ethernet-Vernetzungstechnik die Vermarktung und den Vertrieb von Token Ring beendet hat, gilt diese Technik als veraltet.

## Übertragung (technisch)

Grundprinzip ist die kollisionsfreie Übertragung der Datenpakete zwischen den einzelnen Stationen.
Der Name Token Ring rührt daher, dass das Netz mit dem Token-Passing-Zugriffsverfahren arbeitet und dem Aufbau einer logischen Ring-Topologie entspricht. Die Anschlussart an das Medium ist damit aktiv (beispielsweise im Gegensatz zum passiven Ethernet), das heißt, die Netzstationen beteiligen sich fortwährend aktiv an der Weitergabe des Tokens (siehe unten) und werden nicht nur dann aktiv, wenn sie selbst senden wollen. Token-Passing ist ein Protokoll der Schicht 2 (Datensicherungsschicht) im OSI-Modell.
Der verwendete Leitungscode ist der differentielle Manchester-Code.

## Topologie-Eigenschaften

Die logische Topologie von Token Ring ist ein Ring. Eingesetzt wurden aber sogenannte MAUs (= Multistation Access Unit, auch MSAU, deutsch RLV = Ringleitungsverteiler) oder auch CAUs (Controlled Access Unit), die eine sternförmige (bei Verwendung mehrerer Ringleitungsverteiler eine Stern-Ring) Verkabelung ermöglichen. Diese Verteiler sind nur soweit intelligent, als dass sie nicht belegte Ports bzw. mit ausgeschalteten Stationen belegte Ports durchschleifen, um den Ring zu erhalten. Im Vergleich zum Ethernet-Switch, der eine Kollisionserkennung verlangt, sind die Anforderungen an den Verteiler minimal. Es wurden auch Switches für Übertragungsgeschwindigkeiten von 4, 16 oder auch 100 Mbit/s hergestellt.

## Übertragung (logisch)

Ein Token kreist bei Token-Ring-Netzen über den Ring: Das Token wird stets von einem Knoten an den nächsten weitergereicht. Selbst im Leerlauf geben die Stationen das Paket fortwährend weiter.
Möchte nun ein Computer Daten versenden, wartet er, bis das Token ihn erreicht hat, dann hängt er seine Nutzdaten daran an. Zugleich ergänzt er das Token um Steuersignale und setzt außerdem das Token-Bit von 0 (für „freies Token“) auf 1, aus dem Frei-Token wird also ein Datenrahmen.
Nach dem Vorgang setzt der Computer den Datenrahmen wieder auf den Ring, wo dieser genau wie das Frei-Token zuvor von den einzelnen Knoten weitergereicht wird. Jeder Rechner prüft, ob das Paket an ihn adressiert ist, und setzt es anderenfalls zurück auf den Ring. Erhält der vorgesehene Empfänger den an ihn adressierten Datenrahmen, kopiert er die Nutzdaten und quittiert den Datenempfang. Der Sender erhält die Quittung und sendet das Token mit den nächsten Nutzdaten oder setzt ein Frei-Token auf den Ring. Dabei darf ein Sender das Token nur eine bestimmte Zeit für sich in Anspruch nehmen, bevor er es wieder freigeben muss. Dadurch wird jedem Knoten in einem Ring garantiert, dass er nach Ablauf dieser festgelegten Zeit ("Token Holding Time") in einem Ring senden darf.

## Aufbau des Token-Frames

Ein freies Token besteht aus drei Bytes mit folgendem Aufbau:
| Startbegrenzer (SD, Start Delimiter): | J K 0 J K 0 0 0 |
| Zugriffskontrolle (AC, Access Control): | P P P T M R R R |
| Endbegrenzer (ED, End Delimiter): | J K 1 J K 1 I E |
* J und K bedeuten Codeverletzungen im differentiellen Manchester-Code, d. h. in der Taktmitte tritt kein Polaritätswechsel auf.
* I – Zwischenrahmenbit – 1: weitere Rahmen folgen; 0: letzter Rahmen
* E – Fehlerbit – 0: am Anfang; 1: Falls Fehler entdeckt wurde
* P – Zugriffspriorität
* T – Tokenbit – 0: freies Token; 1: Rahmen (Frame)
* M – Monitorbit – 1: Monitor 0: Erzeuger
* R – Reservierungsbit – Das nächste Token wird mit diesem Bit im Prioritätsbit erzeugt

## Arten von Token Ring

* Single Frame: Tokenfreigabe nach Erhalt des letzten Bits des eigenen Frames.
* Single Token: Tokenfreigabe nach Erhalt des ersten Bits des eigenen Frames.
* Multiple Frame: Tokenfreigabe nach Senden des letzten Bits des eigenen Frame.

## Fehlersituationen

Fehlersituationen im Token Ring werden in der Regel von einer sogenannten Monitorstation (AM, Activity Monitor) behoben. Dieser AM muss nicht zwingend der Server sein, es ist meist vielmehr der Adapter, der das erste Token generiert hat. Das kann auch eine ganz normale Workstation sein:
* Verlust des Tokens: Nach dem Ablauf einer Kontrollzeit (Timeout) erzeugt die Monitorstation ein neues Frei-Token.
* Endlos kreisendes Paket: Fällt eine Senderstation aus, noch bevor sie das von ihr gesendete Paket vom Ring genommen hat, würde es ohne Fehlerbehandlung endlos kreisen. Um das zu verhindern, setzt die Monitorstation das M-Bit im AC-Bereich des Tokens (s. o.), wenn das Token bei ihr vorbeikommt. Erhält die Station dasselbe Token wieder, ohne dass der Empfänger es vom Netz genommen hat, vernichtet die Monitorstation das Token und erzeugt ein neues Frei-Token.
* Doppeltes Token: Die sendende Station bricht ab, sobald sie ein fremdadressiertes Token erhält.
* Ausfall des Monitors: Fällt ausgerechnet die oben genannte Monitorstation aus, handeln die verbleibenden Stationen untereinander einen neuen Monitor aus.
* Ausfall einer Netzschnittstelle: Bei Einsatz eines Ringleitungsverteilers überbrückt dieser die betroffene Stelle.