STP - Spanning Tree Protocol / IEEE 802.1d / 802.1w
Das Spanning-Tree-Verfahren ist im Standard IEEE 802.1d für die MAC-Schicht spezifiziert. Es soll das Auftreten von doppelten Frames in einem geswitchten Ethernet-Netzwerk verhindern. Die doppelten Frames entstehen durch zwei oder mehr parallele Verbindungen zwischen zwei Switches. Frames, die mehrfach beim Empfänger ankommen, können zu einem Fehlverhalten führen.
Spanning Tree spannt das physikalische Netzwerk zu einem logischen Baum auf, in dem zu jedem Ziel nur ein einziger Weg existiert. Die Switches bzw. Bridges kommunizieren in einem Netzwerk mit Hilfe von BPDUs (Bridge Protocol Data Unit). Diese Konfigurationspakete werden als Multicast-Frames an die MAC-Adresse 01-80-C2-00-00-10 geschickt. Diese Frames werden alle 2 Sekunden an die nächste, tiefer gelegene Station (Bridge oder Switch) übermittelt. Auf diese Weise werden parallele Strecken erkannt und die optimale Strecke ermittelt. Man spricht dann von Prioritäten bzw. Wegkosten, die die Datenrate und Entfernung berücksichtigt. Ports mit nichtbevorzugten Strecken werden dann deaktiviert.
Fällt die bevorzugte Strecke aus, bleibt auch das BPDU-Frame aus, was zu einer Reorganisation des Netzwerks führt. Bei komplizierten Verschachtelungen wird der Baum (Spanning Tree) neu berechnet, was zu einer Verzögerung von bis zu 30 Sekunden oder mehr führen kann. Erst danach kann auf der redundanten Strecke die Übertragung fortgesetzt werden.
IEEE 802.1w / RSTP - Rapid Spanning Tree Protocol
Die relativ lange dauernde Neuberechnung des logischen Netzwerks ist für einen potentielle Angreifer, der ein Netzwerk lahm legen will, ein gefundenes Fressen. Nur ein einziges gefälschtes Spanning-Tree-Frame ist in der Lage eine Reorganisation auszulösen und das gesamte Netzwerk für 30 Sekunden oder mehr lahm zulegen.
Um dieses Szenario zu vermeiden, wurde unter IEEE 802.1w das abwärtskompatible RSTP, auch Fast Spanning Tree genannt, entwickelt. Es sieht vor, dass bei einem Ausfall einer Verbindung mit der bestehenden Netzwerkstruktur weitergearbeitet wird, bis eine alternative Strecke berechnet ist. Anschließend wird ein neuer logischer Baum erstellt und erst dann, innerhalb einer Sekunde, umgestellt.
Loop Detection
Manche einfache Switches ohne Spanning Tree haben eine Loop-Detection-Funktion. Dazu sendet der Switch alle paar Minuten ein Frame an eine bestimmte Adresse. Empfängt der Switch ein solches Frame mit seiner eigenen Adresse, existiert eine Schleife, die über eine LED signalisiert wird.
Eine Schleife wird so nicht verhindert, aber der Netzwerk-Administrator kann sie zumindest optisch erkennen.