Podstawy

🟢 EGZAMIN6 min czytaniaPostęp: 42/233

STP (Spanning Tree Protocol) — pętle w sieci i jak je usuwać

Nieukończona

Postępy nie są zapisywane. Zarejestruj się lub zaloguj, aby śledzić postępy w kursach.

Co wnosi ta lekcja

Zrozumienie, co się dzieje w sieci przy pętli L2 (broadcast storm, awaria), jak STP przerywa pętlę i buduje drzewo; stany portów, zbieżność, PortFast i wersje (RSTP, PVST); bez definicji encyklopedycznej, bez komend CLI.

STP (Spanning Tree Protocol)

Ta lekcja uczy rozumienia działania sieci przy redundantnych łączach — nie definicji protokołu. Najpierw zobaczysz, co się dzieje, gdy sieć wpada w pętlę; dopiero potem pojawia się mechanizm ratunkowy.

1. Scenariusz z życia — awaria sieci

Administrator łączy dwa przełączniki dwoma kablami: „żeby było szybciej i bezpieczniej”. Redundancja i większa przepustowość — sensowny cel.

Po kilku sekundach:

  • sieć przestaje działać
  • DHCP przestaje odpowiadać — komputery nie dostają adresów
  • CPU switchy sięgają 100%
  • pingi skaczą lub nie dochodzą
  • cała firma staje

Przyczyna: pętla warstwy 2. Dwa kable między dwoma switchami tworzą pętlę. Ruch rozgłoszeniowy (broadcast) jest wysyłany na wszystkie porty. Switch A wysyła ramkę na port do switcha B; B odbiera i znowu wysyła na wszystkie porty, w tym z powrotem do A. Ramka krąży w kółko, przy każdej rundzie jest kopiowana. To broadcast storm: lawina ramek, która w krótkim czasie zatłacza sieć i obciąża przełączniki. W warstwie 2 nie ma TTL — ramka może krążyć w nieskończoność.

Dopiero w tym momencie pojawia się rozwiązanie: mechanizm, który sztucznie „przerywa” pętlę, blokując jeden z portów, ale zostawiając drugi kabel w rezerwie na wypadek awarii. To właśnie robi STP (Spanning Tree Protocol).

2. Co naprawdę dzieje się w sieci (mechanizm)

Switch nie zna topologii sieci. Gdy dostaje ramkę broadcast (albo unicast do nieznanego MAC), flooduje ją — wysyła na wszystkie porty oprócz źródłowego. W pętli ta sama ramka wraca do switcha z innego portu. Switch traktuje ją jak nową i znowu flooduje. Każda ramka się powiela: z jednej robią się dwie, z dwóch cztery — lawina wykładnicza. W warstwie 3 (IP) jest pole TTL — po określonej liczbie skoków pakiet jest odrzucany. W warstwie 2 (Ethernet) TTL nie istnieje. Ramka w pętli krąży bez końca, aż sieć się zapcha.

STP = sztuczne zablokowanie jednego z kabli. Przełączniki dogadują się (przez ramki BPDU), który port ma być zablokowany. Przez zablokowany port nie przechodzi ruch użytkowników. Pętla znika. Drugi kabel fizycznie zostaje — gdy pierwszy padnie, STP odblokuje drugi i sieć wróci do działania.

3. Jak STP podejmuje decyzję

Sieć z wieloma łączami ma zostać ułożona w logiczne drzewo: jedna ścieżka między dowolnymi dwoma punktami, zero pętli. Do tego służą cztery pojęcia.

  • Root bridge (korzeń). Jeden przełącznik w sieci jest wybrany jako punkt odniesienia. Wszystkie ścieżki są liczone względem niego. Wybór na podstawie identyfikatora (priorytet + MAC) — nie opisujemy tu konfiguracji, ważne: jest jeden „korzeń”.
  • Root port. Na każdym przełączniku (oprócz roota) jeden port prowadzi w stronę root bridge — to root port. Przez niego idzie najlepsza ścieżka do korzenia.
  • Designated port. Port, który przekazuje ruch „w dół” drzewa — w stronę innych switchy lub hostów. Na danym segmencie łącza tylko jeden port jest designated; drugi koniec łącza może być zablokowany.
  • Blocked port (zablokowany). Port, który tworzyłby pętlę. STP go blokuje — nie przekazuje ruchu użytkowników. Pętla nie powstaje. Po awarii innego łącza ten port może zostać odblokowany i przejąć ruch.

Efekt: z wielu kabli powstaje jedno logiczne drzewo. Nadmiarowe łącza nie znikają — są tylko zablokowane do momentu, gdy będą potrzebne.

4. Stany portów i zbieżność

Port w STP nie przełącza się od razu z „zablokowany” na „działa”. Przechodzi przez stany:

  • Blocking — nie przekazuje ruchu użytkowników, tylko nasłuchuje BPDU.
  • Listening — przygotowanie do przekazywania; nadal nie uczy się adresów MAC.
  • Learning — uczy się adresów MAC (buduje tablicę), ale jeszcze nie przekazuje ruchu użytkowników.
  • Forwarding — pełna praca: przekazuje ruch.

Przejście przez te stany trwa (w klasycznym STP ok. 30 sekund). Dlatego po włączeniu sieci lub po awarii i przełączeniu STP sieć „wraca” dopiero po kilkudziesięciu sekundach — przełączniki muszą się zbiec (ustalić drzewo, przejść listening → learning → forwarding). Użytkownik przy komputerze widzi: „brak sieci”, a po ok. 30 sekundach nagle wszystko działa. To nie błąd — to czas zbieżności STP.

5. RSTP i PVST — po co istnieją wersje

Klasyczne STP było wolne. Zbieżność trwała długo, co przy awariach łączy oznaczało długi przestój. Powstał Rapid STP (RSTP) — szybsze przejście portów do stanu forwarding, szybsza reakcja na zerwanie łącza. Sens ten sam: jedno drzewo, brak pętli; zmienia się czas i sposób negocjacji.

PVST (Per-VLAN Spanning Tree) to wariant, w którym każde VLAN ma osobne drzewo. Dzięki temu można np. kierować ruch różnych VLAN-ów różnymi ścieżkami i lepiej wykorzystać redundantne łącza. Nie chodzi o historię żadnego producenta — o problem: jedno drzewo dla całej sieci vs osobne drzewo per VLAN.

6. PortFast — dlaczego komputer startuje 30 sekund

Port do którego podłączony jest host (komputer, drukarka) nie powinien tworzyć pętli — to urządzenie końcowe, nie drugi switch. Mimo to domyślnie port przechodzi przez stany STP (blocking → listening → learning → forwarding). Komputer po włączeniu czeka na DHCP i logowanie do domeny, a port przez kilkadziesiąt sekund nie przekazuje ruchu. Efekt: wolny start, opóźnione pobranie adresu IP, opóźnione logowanie.

PortFast (lub odpowiednik u innych producentów) to ustawienie portu „do hosta”: port od razu wchodzi w stan forwarding, bez oczekiwania na zbieżność STP. Stosuje się je tylko na portach do urządzeń końcowych. Na portach do innych switchy PortFast się nie włącza — tam pętla jest możliwa i STP musi działać normalnie. Dzięki PortFast komputer dostaje adres z DHCP i loguje się do domeny od razu po włączeniu.

7. Myślenie administratora

Zasady projektowe:

  • Redundancja ≠ chaos. Wiele kabli między switchami daje zapas, ale bez kontroli pętli sieć pada. Redundancja musi iść w parze z mechanizmem usuwania pętli (STP lub wariant).
  • Każda pętla musi być kontrolowana. Gdzie są redundantne łącza, tam musi działać STP (lub RSTP, MSTP itd.). Wyłączenie STP „żeby było szybciej” przy fizycznej pętli kończy się awarią.
  • STP to mechanizm bezpieczeństwa sieci, nie wydajności. Jego celem jest uniknięcie broadcast storm i zatrzymania sieci. Nie przyspiesza ruchu — pozwala bezpiecznie mieć zapasowe łącza.

8. Zapamiętaj — fakty egzaminowe

  • Dwa (lub więcej) kable między switchami bez STP → pętla L2 → broadcast storm → sieć przestaje działać, DHCP nie odpowiada, CPU 100%, firma stoi.
  • W warstwie 2 nie ma TTL; ramka w pętli krąży w nieskończoność; switch flooduje broadcast, ramki wracają i powielają się — lawina wykładnicza.
  • STP sztucznie blokuje jeden z portów w pętli; sieć staje się logicznym drzewem: root bridge, root port, designated port, blocked port.
  • Stany portu: blocking → listening → learning → forwarding; dlatego sieć „wraca” po ok. 30 sekundach — to czas zbieżności STP.
  • RSTP = szybsza zbieżność; PVST = osobne drzewo per VLAN. Bez historii producentów — rozwiązanie problemu wolnego STP i wielu VLAN-ów.
  • PortFast na portach do hostów — port od razu w forwarding; szybszy start komputera, DHCP i logowanie do domeny; nie stosować na portach do switchy.
  • Redundancja wymaga STP; każda pętla musi być kontrolowana; STP to bezpieczeństwo sieci (brak stormu), nie optymalizacja wydajności.
  • Logika STP jest wspólna dla przełączników różnych producentów — różnią się nazwy i interfejs, nie sens.

Zapamiętaj

  • Scenariusz: dwa kable między switchami → pętla → sieć pada, DHCP nie działa, CPU 100%; dopiero potem STP jako ratunek.
  • Mechanizm: switch flooduje broadcast, ramki wracają, powielanie → lawina; brak TTL w L2; STP = zablokowanie jednego kabla.
  • STP: root bridge, root port, designated port, blocked port — sieć = logiczne drzewo z wielu kabli.
  • Stany: blocking → listening → learning → forwarding; dlaczego sieć wraca po ~30 s.
  • RSTP = szybsze; PVST = drzewo per VLAN. PortFast = port do hosta od razu w forwarding (szybszy DHCP i logowanie).
  • Redundancja ≠ chaos; każda pętla kontrolowana przez STP; STP = bezpieczeństwo, nie wydajność.

Sprawdź się

Notatki (opcjonalnie)