Spanning Tree Protocol: Unterschied zwischen den Versionen
Zeile 136: | Zeile 136: | ||
=== Topologie-Erkennung === | === Topologie-Erkennung === | ||
; Portzustände | ; Portzustände | ||
Um die logische Netzwerktopologie kennenzulernen, durchläuft jeder ''Trunk-Port'' folgende Zustände | Um die logische Netzwerktopologie kennenzulernen, durchläuft jeder ''Trunk-Port'' folgende Zustände | ||
* Für diesen Zustandsübergang werden in der Standardkonfiguration 50 Sekunden benötigt | |||
{| class="wikitable options big" | {| class="wikitable options big" |
Version vom 4. Februar 2024, 13:31 Uhr
Spanning Tree Protocol - Schleifenunterdrückung bei redundanten Verbindungen zwischen Bridges oder Switches
Beschreibung
STP (Spanning Tree Protocol) | |||||
---|---|---|---|---|---|
Familie: | Inter-Switch-Kommunikation | ||||
Einsatzgebiet: | Management von logischen Ethernet-Verbindungen | ||||
Protokollstapel: | Netzzugang | STP | |||
Ethernet | |||||
Standards: | IEEE-Normen 802.1D, 802.1w, 802.1s, IEEE 802.1aq, IEEE 802.1Q |
- Spanning-Tree unterdrückt kreisende Ethernet-Frames
- Identifiziert Mehrfachwege
- indem er Topologien mit redundanten Wegen durch eine logische Blockierung bestimmter Pfade in eine Baumtopologie überführt, die keine Schleifen besitzt
- Dazu werden auf den Switches mit redundante Verbindungen zu anderen Switches bis auf eine blockiert
- Bei Ausfall der primären Verbindung können diese aktiviert
- Erzeugen so ein hohes Maß an Fehlertoleranz

- Redundante Wege
- Ausgehend von einem "Root"-Punkt wird nur ein Weg aktiviert
- Switch-Infrastrukturen
- Rechnernetzwerke können mit einer Vielzahl von Switches aufgebaut werden
- Eindeutiger Datenpfad
- Pakete eindeutig weiterleiten
- Ethernet-Technologie muss sicherstellen, dass
- zwischen zwei Rechnern jeweils nur ein Datenpfad existiert
- Vermeidung von Broadcast-Stürmen
- Wird nur erreicht, wenn ein Algorithmus existiert, der die Schleifenfreiheit der Topologie sicherstellt
- Der Spanning Tree–Algorithmus (STA) wurde von Radia Perlman entworfen und 1990 als IEEE 802.1D standardisiert
- Voraussetzung für die Funktionsfähigkeit dieses Konzeptes ist, dass der aufspannende Baum für den Nutzer vollkommen transparent erstellt werden kann.
- Als einzige Aktion muss der Spanning-Tree-Algorithmus auf den Switches aktiviert sein.
- Bridge Protocol Data Unit (BPDU)
Austausch von Konfigurationsnachrichten
- Multicast-Paket
- standardmäßig alle zwei Sekunden
- nicht unerhebliche Netzlast
- Redundanz
- Einerseits ist Redundanz in einem Netz besonders wichtig, weil damit Netzwerke fehlertolerant werden.
- Redundante Topologien schützen vor unerwünschten Ausfallzeiten im Netz aufgrund von Fehlern einer einzigen Verbindung, eines Anschlusses oder einer Netzeinheit.
- Andererseits wird durch diese Redundanz in der Topologie die Möglichkeit für die fehlerhafte Doppelübertragungen von Informationen eröffnet.
- Dem entgegenwirkt STP (Spanning Tree Protocol), indem es redundante Wege zwar erlaubt, aber immer nur genau einen Weg aktiv hält.
- Dies führt zu einer schleifenfreien logischen Topologie, bei der zwischen zwei Rechnern im Netz immer nur ein aktiver Pfad besteht.
Aufspannen des Baumes
- Ablauf
Schritt | Option |
---|---|
1 | Einschalten („Power up“) aller Bridges |
2 | Alle Bridges stellen ihre Ports auf „Blocked“ |
3 | Jede Bridge nimmt an, sie sei die Root-Bridge, und sendet ihre Bridge ID an eine bestimmte Multicast-Gruppe |
4 | Die Bridge mit der kleinsten Bridge-ID (besteht aus Bridge Priority & MAC-Adresse) wird zur Root-Bridge |
5 | Die Root-Bridge sendet sogenannte Konfigurations-BPDUs (Bridge Protocol Data Unit) aus |
6 | Jede Bridge bestimmt den Port mit den kleinsten Pfadkosten zur Root-Bridge als Root-Port (Bei Ports mit gleichen Kosten gewinnt die kleinere Port-ID) |
7 | Die Designated Bridge wird festgelegt, dies ist die Bridge mit dem Root-Port |
Wahl der Root-Bridge
- Bestimmung erfolgt anhand der Bridge ID
- Kleinste Bridge ID gewinnt
- Bei gleichen Bridge IDs entscheidet die kleinere MAC-Adresse
Festlegung der Root-Ports
- Jede Nicht-Root-Brücke muss einen Root Port ausweisen
- wird durch den billigsten/schnellsten Weg der in Richtung Root Brücke zeigt ermittelt
Bestimmung der Designated-Ports
- Jedes Segment hat einen Designated-Port
- Die Root Bridge hat nur Designated Ports
- Wegekosten '0'
- Jedem Root-Port liegt ein Designated-Port' gegenüber
- Auf Segmenten ohne Root-Port entscheiden die geringsten Wegekosten darüber
- Sind die Wegekosten gleich, entscheidet die kleinste MAC Adresse welcher Switch den Designated-Port erhält
- Dem Designated-Port liegt auf diesem Segment dann ein Blocked-Port gegenüber
Zuordnung einer Bridge pro LAN
- Zuordnung ist entscheidend, um entsehende Schleifen zu verhindern
Wenn nur eine Bridge an ein spezielles LAN angebunden ist, ist die Wahl einfach:
- Der Port, der zu diesem LAN gehöhrt wird ihm auch global zugeordnet.
- Haben mehrere Bridges einen direkten Zugang zu einem LAN, wird der Port ausgewählt, welcher die geringsten Kosten bei einer Verknüpfung mit der Root-Bridge verursacht.
- Hat die dem LAN zugewiesene Bridge mehrere Ports in diesem LAN, so wird der Port mit der geringsten Priorität genutzt.
Pfadkosten
Bandbreite | STP-Kosten |
---|---|
10 MBit/s | 100 |
16 MBit/s | 62 |
100 MBit/s | 19 |
200 MBit/s | 12 |
622 MBit/s | 6 |
1 GBit/s | 4 |
10 GBit/s | 2 |
20+ GBit/s | 1 |
Eine 40- und eine 100-GBit-Verbindung haben in Summe die gleichen Wegekosten, wie eine 10-GBit Verbindung
- hier würde es Sinn machen, die Ports einzeln zu konfigurieren
Topologie-Erkennung
- Portzustände
Um die logische Netzwerktopologie kennenzulernen, durchläuft jeder Trunk-Port folgende Zustände
- Für diesen Zustandsübergang werden in der Standardkonfiguration 50 Sekunden benötigt
Zustand | Beschreibung |
---|---|
Disabled |
|
Blocking |
|
Listening |
|
Learning |
|
Forwarding |
|
Timer
- Zeitspanne in der ein Port in einem Zustand verweilt
Durch Timer festgelegt
- Nur die Root-Bridge kann die Einstellungen ändern
- Drei Timer beeinflussen den Zustandswechsel und damit die Ausführungsgeschwindigkeit des Algorithmus
Timer | Beschreibung |
---|---|
Hello timer | Legt fest, wie oft das Netzwerkgerät Hallo-Nachrichten an andere Netzwerkgeräte sendet |
Maximum age timer | Legt fest, wie lange Protokollinformationen, die an einem Port empfangen werden, vom Netzwerkgerät gespeichert werden |
Forward Delay | Vorwärtsverzögerung ist die Zeit, die im Zuhör- und Lernzustand verbracht wird. Standardmäßig 15 Sekunden, kann jedoch auf einen Wert zwischen 4 und 30 Sekunden einstellen werden |
Bridge Protocol Data Unit (BPDU)
- Dateneinheit, die Briges/Switches austauschen, um Spanning Tree zu verwalten
2 Byte | 1 Byte | 1 Byte | 1 Byte | 8 Byte | 2 Byte | 2 Byte | 2 Byte | 2 Byte | 2 Byte | 2 Byte | 2 Byte |
---|---|---|---|---|---|---|---|---|---|---|---|
Protocol ID | Version | Message Type | Flags | Root ID | Cost of Path | Bridge ID | Port-ID | Message Age | Max age | Hello timer | Forward Delay |
Feld | Beschreibung |
---|---|
Flags |
siehe #Topologieänderungen |
Root Bridge ID | ID der Root Bridge |
Root Path Cost | Kosten für den kürzesten Weg von der Sendebrücke zur Wurzelbrücke
|
Bridge ID | ID der Sendebrücke |
Port ID | Port-ID
|
Message Age | Zeit, seit die Root-Bridge die Informationen in dieser BPDU generiert hat |
Max Age | Maximale Lebensdauer für Konfigurations-BPDUs |
Hello Time | Timeout benutzt von Hello timer |
Forward Delay | Timeout benutzt von Forward Delay timer |
Bridge ID | Ist eine "Kennung" (8 Byte) die sich aus einer sogenannten Priority (2 Byte -> 2^16 Bit -> max. 65.536) und der MAC-Adresse (6 Byte) des Switch zusammensetzt |
Topologie
STP
RSTP
- Funktionen wie STP
- schnellere Konvergenz
- Bei signalisierten Topologie Änderungen, wird die vorhandene Netzstruktur weiter genutzt, während ein Alternativpfad berechnet wird
- Erst anschließend wird ein neuer Baum zusammengestellt
MSTP

- Multiple Spanning Tree Protocol (MSTP)
- Erweiterung von RSTP
- Ermöglicht mit VLANs verschiedene Instanzen des Spannbaums
- Für ein VLAN oder eine Gruppe von VLANs können unabhängige STP-Instanzen gebildet werden
- die innerhalb eines LANs jeweils eigene unterschiedliche Spannbäume nutzen
CIST
- Common Internal Spanning Tree
- Umfasst alle LANs, STP- und RSTP-Bridges und MSTP-Regionen in einem Netzwerk
- Das CIST bestimmt automatisch die MST-Regionen in einem Netzwerk und definiert die Root-Bridge (Switch) und den designierten Port für jede Region
- Der CIST umfasst den Common Spanning Tree (CST), den Internal Spanning Tree (IST) innerhalb jeder Region und alle multiplen Spanning-Tree-Instanzen (MSTIs) in einer Region
Anhang
Siehe auch
Dokumentation
RFC
Links
Weblinks
- https://de.wikipedia.org/wiki/Spanning_Tree_Protocol
- https://www.admin-magazin.de/Das-Heft/2014/03/Wie-organisiert-Spanning-Tree-ein-Ethernet-Netzwerk
- http://www.bbs-1.de/bbs1/umat/netze/netz7.html
- https://www.tp-link.com/us/configuration-guides/configuring_spanning_tree/
- Appendix E: Broadcasts in Switched LAN Internetworks [1]
- Defense Against the DoS/DDoS Attacks on Cisco Routers [2] (Memento vom 21. Juni 2011 im Internetarchive) (englisch)
- Disassociation Broadcast Attack Using ESSID Jack [3]
- The Broadcast Storm Problem in a Mobile Ad Hoc Network [4]
Testfragen
Warum wird das Spanning Tree Protocol eingesetzt?
- Vermeidung von Schleifen in Netzwerken mit redundanten Verbindungen
- Vermeidung von Broadcaststürmen
- STP verhindert dies durch logische Pfade und blockieren von entsprechenden Ports der Switches oder Bridges
Wie wird die Root-Brigde ermittelt?
- Eine Root Bridge wird anhand Ihrer Bridge ID ermittelt
- Die Bridge mit der niedrigsten Brigde ID' wird Root Bridge
Wie kann die Wahl der Root Bridge beeinflusst werden?
- Man kann die Priorität der Bridge in 4096 Schritten ändern
- Standardmäßig hat eine Bridge im Werkszustand eine Priorität von 32768
- Diese kann z. B. senken
Pfadkosten: Etage01 zu Core = 10Gbit -> 10.000.000.000 / 10GBit = Pfadkosten 1 Gesamt Pfadkosten Port 25 = 1
Etage01 über Etage02 = 1Gbit -> 10.000.000.000 / 1Gbit = Pfadkosten 10 Etage02 zu Core = 10Gbit -> 10.000.000.000 / 10Gbit = Pfadkosten 1 Gesamt Pfadkosten Port 26 = 11
Welcher Port wird deaktiviert?
Port 26 wird deaktiviert, da Pfadkosten > Pfadkosten Port 25
TMP
Mehrere Switches in einem Netzwerk
Bei frühen Switches musste die Verbindung mehrerer Geräte meistens entweder über einen speziellen Uplinkport oder über ein gekreuztes Kabel (crossover cable) erfolgen, neuere Switches wie auch alle Gigabit-Ethernet Switches beherrschen Auto-MDI(X), sodass diese auch ohne spezielle Kabel miteinander gekoppelt werden können
- Oft, aber nicht notwendigerweise sind Uplink-Ports in einer schnelleren oder höherwertigen (Ethernet-)Übertragungstechnik realisiert als die anderen Ports (z. B. Gigabit-Ethernet statt Fast Ethernet oder Glasfaserkabel anstatt Twistedpair-Kupferkabel)
- Im Unterschied zu Hubs können nahezu beliebig viele Switches miteinander verbunden werden
- Die Obergrenze hat hier nichts mit einer maximalen Kabellänge zu tun, sondern hängt von der Größe der Adresstabelle (SAT) ab
- Bei aktuellen Geräten der Einstiegsklasse sind oft 500 Einträge (oder mehr) möglich, das begrenzt die maximale Anzahl von Knoten (~Rechnern) auf ebendiese 500
- Kommen mehrere Switches zum Einsatz, so begrenzt das Gerät mit der kleinsten SAT die maximale Knotenanzahl
- Hochwertige Geräte können mit vielen tausend Adressen umgehen
- Läuft im Betrieb eine zu kleine Adresstabelle über, so müssen wie beim MAC-Flooding alle nicht zuzuordnenden Frames an alle anderen Ports weitergeleitet werden, folglich kann die Übertragungsleistung drastisch einbrechen

- Zur Steigerung der Ausfallsicherheit können bei vielen Geräten Verbindungen redundant aufgebaut werden
- Dabei werden der mehrfache Transport von Broadcasts und Switching-Schleifen durch den per Spanning Tree Protocol (STP) aufgebauten Spannbaum verhindert
- Eine andere Möglichkeit, ein Netz mit Schleifen redundant zu machen und gleichzeitig die Leistung zu steigern, ist das Meshing (IEEE 802.1aq – engl.: Shortest Path Bridging)
- Hier dürfen beliebige Schleifen zwischen meshing-fähigen Geräten gebildet werden; zur Leistungssteigerung können dann für Unicast-Datenverkehr (ähnlich wie beim Trunking) alle Schleifen (auch Teilschleifen) weiter genutzt werden (es wird kein einfacher Spannbaum gebildet). Multicast und Broadcast müssen vom Meshing-Switch gesondert behandelt werden und dürfen nur auf einer der zur Verfügung stehenden vermaschten Verbindungen weitergeschickt werden
Wenn in einem Netzwerk Switches ohne weitere Vorkehrungen mit sich selbst verbunden oder mehrere Switches zyklisch in einer Schleife miteinander verbunden werden, entsteht eine Schleife, eine sogenannte Switching-Loop
- Durch endloses Doppeln und Kreisen von Datenpaketen führt solch eine fehlerhafte Vernetzung in der Regel zu einem Totalausfall des Netzwerks
Eine bessere Nutzung von mehrfach ausgeführten Verbindungen (Links) ist die Port-Bündelung (englisch: Vorlage:Lang, Vorlage:Lang, Vorlage:Lang – je nach Hersteller), wodurch bis zu acht [2009] gleichartige Verbindungen parallel geschaltet werden können, um die Geschwindigkeit zu steigern
- Dieses Verfahren beherrschen professionelle Switches, die auf diese Weise untereinander, von Switch zu Switch oder aber von Switch zu Server verbunden werden können
- Ein Standard ist mit LACP definiert (zuerst IEEE 802.3ad, später IEEE 802.1AX), das Zusammenschalten von Switches verschiedener Hersteller kann allerdings manchmal problematisch sein
- Außer einigen herstellerspezifischen Protokollen existieren auch nicht ausgehandelte, sogenannte statische Bündel
- So eine Portbündelung ist ebenfalls auf mehrere Links zwischen zwei Geräten beschränkt; drei oder mehr Switches zum Beispiel in einem aktiven Ring zu verbinden, ist damit nicht möglich
- Ohne STP bildet sich entweder eine Switching-Schleife oder Frames erreichen nicht zuverlässig ihr Ziel, mit STP wird einer der Links blockiert und erst mit SPB können alle Links tatsächlich verwendet werden
- Stacking
Stacking ist im Switching-Umfeld eine Technik, um mehrere unabhängige stacking-fähige Switches zu einem gemeinsamen logischen Switch mit höherer Portanzahl zusammen zu stellen und mit einem gemeinsamen Management zu konfigurieren
- Stacking-fähige Switches bieten besondere Ports, die sogenannten Stacking-Ports, welche üblicherweise mit besonders hoher Übertragungsrate und geringer Latenzzeit arbeiten
- Beim Stacking werden die Switches, die in der Regel vom selben Hersteller und aus derselben Modellreihe stammen müssen, mit einem speziellen Stack-Kabel miteinander verbunden
- Eine Stacking-Verbindung ist normalerweise die schnellste Verbindung zwischen mehreren Switches und überträgt neben Daten auch Managementinformationen
- Solche Schnittstellen können durchaus teurer sein als Standard-HighSpeed-Ports, die natürlich ebenfalls als Uplinks genutzt werden können; Uplinks sind immer möglich, aber: nicht alle Switches unterstützen das Stacking