Spanning Tree Protocol: Unterschied zwischen den Versionen
Zeile 64: | Zeile 64: | ||
:* Dies führt zu einer schleifenfreien logischen Topologie, bei der zwischen zwei Rechnern im Netz immer nur ein aktiver Pfad besteht. | :* 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 | |||
{| class="wikitable sortable options" | |||
|- | |||
! 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 === | |||
{| class="wikitable sortable" | |||
! 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 | |||
{| class="wikitable options" | |||
! Portzustand !! Beschreibung | |||
|- | |||
| Disabled || Verwirft Frames; lernt keine Adressen; empfängt und verarbeitet keine BPDUs | |||
|- | |||
| Blocking || Verwirft Frames; lernt keine Adressen; empfängt und verarbeitet BPDUs | |||
|- | |||
| Listening || Verwirft Frames; lernt keine Adressen; empfängt, verarbeitet und überträgt BPDUs | |||
|- | |||
| Learning || Verwirft Frames; lernt Adressen; empfängt, verarbeitet und überträgt BPDUs | |||
|- | |||
| Forwarding || Leitet Frames weiter, lernt Adressen; empfängt, verarbeitet und überträgt BPDUs | |||
|} | |||
; Für diesen Zustandsübergang werden in der Standardkonfiguration 50 Sekunden benötigt | |||
=== Timer === | |||
; Zeitspanne in der ein Port in einem Zustand verweilt | |||
* wird durch Timer bestimmt | |||
* Nur die Root-Bridge kann die Einstellungen verändern | |||
* Drei Timer beeinflussen den Zustandswechsel und damit die Ausführungsgeschwindigkeit des Algorithmus | |||
{| class="wikitable options" | |||
|- | |||
! 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 | |||
|} | |||
== Syntax == | == Syntax == | ||
=== Optionen === | === Optionen === |
Version vom 16. April 2023, 14:53 Uhr
Spanning Tree Protocol - Schleifenunterdrückung bei redundanten Verbindungen zwischen Bridges oder Switches topic - Kurzbeschreibung
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

- IEEE 802.1D
- 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
Portzustand | Beschreibung |
---|---|
Disabled | Verwirft Frames; lernt keine Adressen; empfängt und verarbeitet keine BPDUs |
Blocking | Verwirft Frames; lernt keine Adressen; empfängt und verarbeitet BPDUs |
Listening | Verwirft Frames; lernt keine Adressen; empfängt, verarbeitet und überträgt BPDUs |
Learning | Verwirft Frames; lernt Adressen; empfängt, verarbeitet und überträgt BPDUs |
Forwarding | Leitet Frames weiter, lernt Adressen; empfängt, verarbeitet und überträgt BPDUs |
- Für diesen Zustandsübergang werden in der Standardkonfiguration 50 Sekunden benötigt
Timer
- Zeitspanne in der ein Port in einem Zustand verweilt
- wird durch Timer bestimmt
- Nur die Root-Bridge kann die Einstellungen verä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 |
Syntax
Optionen
Parameter
Umgebungsvariablen
Exit-Status
Anwendungen
Fehlerbehebung
Konfiguration
Dateien
Siehe auch
Unterseiten
Sicherheit
Dokumentation
RFC
Man-Pages
Info-Pages
Links
Einzelnachweise
Projekt
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] (PDF; 1,2 MB)
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
Testfrage 5
TMP
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
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 |