Rapid Spanning Tree Protocol Daniel Boháč (BOH0042), Jakub Prášil (PRA0044) Abstrakt: Tento dokument popisuje vlastnosti a principy funkce protokolu RSTP včetně jeho předchůdce STP. Součástí dokumentu je také ukázková topologie a konfigurace, která byla otestována na přepínačích značky Cisco. Klíčová slova: STP, RSTP, BPDU, Cisco, redundance
1 Úvod...............................................................................................................................2 2 Teoretická část................................................................................................................2 2.1 Vznik smyček..........................................................................................................2 2.2 Následky smyček....................................................................................................2 2.3 Spanning Tree Protocol (STP)................................................................................3 2.3.1 Princip funkce STP.........................................................................................3 2.3.2 Bridge Protocol Data Units (BPDU)...............................................................3 2.3.3 Stavy portů......................................................................................................4 2.3.4 Doplňující mechanismy urychlující konvergenci...........................................5 2.3.5 Cena linek........................................................................................................6 2.4 Rapid Spanning Tree Protocol (RSTP)...................................................................6 2.4.1 Změny vůči STP..............................................................................................6 3 Praktická část................................................................................................................11 3.1 Podpora RSTP na Cisco switchích........................................................................11 3.2 Topologie...............................................................................................................11 3.3 Konfigurace...........................................................................................................12 3.4 Analýza přenesených dat.......................................................................................13 3.4.1 Spuštění RSTP..............................................................................................13 3.4.2 Přerušení linky mezi SW1 ↔ SW2...............................................................15 4 Závěr.............................................................................................................................16 5 Použitá literatura...........................................................................................................16 6 Příloha...........................................................................................................................17 6.1 Wireshark soubory................................................................................................17 6.2 Screeny ze zařízení...............................................................................................17 6.2.1 Výpis #show spanning-tree z jednotlivých switchů (před přerušením linky SW1 ↔ SW2)........................................................................................................17 6.2.2 Výpis #show spanning-tree z jednotlivých switchů (po přerušením linky SW1 ↔ SW2)........................................................................................................20
duben 2015
1/21
1 Úvod Mnoho organizací se v moderní době stále více spoléhá na počítačové sítě, které jsou často nutností pro efektivní činnost organizace. Pokud dojde k nedostupnosti sítě, nebo její části, může to pro danou organizaci znamenat vážné problémy. Z tohoto důvodu se v takových sítích využívá redundance, která umožňuje využití záložních prvků sítě v případě, kdy původní prvky selžou. Cílem redundantní topologie je tedy eliminace výpadku sítě v případě selhání určitého prvku této sítě. Redundance ale umožňuje vznik smyček. Tyto smyčky pak mohou způsobit řadu problémů, které mohou v kritických případech rovněž způsobit nedostupnost sítě. Z tohoto důvodu vznikl Spanning Tree Protocol (STP) a jeho nástupce Rapid Spanning Tree Protocol (RSTP), jejichž cílem je odstranění smyček z přepínané sítě.
2 Teoretická část 2.1 Vznik smyček V lokálních sítích dochází ke vzniku smyček ze dvou hlavních důvodů. Prvním je neodborná manipulace, při které obsluha omylem propojí špatné porty, nebo např. připojí do sítě přepínač místo stanice. Druhým, velmi důležitým důvodem je dříve zmíněná redundance, která kromě zvýšené spolehlivosti sítě poskytuje také možnost vyvažování zátěže, což umožňuje dosažení vyšší propustnosti sítě.
Obrázek 1: Topologie se smyčkou
2.2 Následky smyček Pokud se v síti vyskytují smyčky, mohou způsobit řadu problémů [2]: ● Broadcastové bouře – Množství broadcastů postupně roste, až dosáhnou kritického množství a dojde k zahlcení sítě. ●
Nestabilita tabulky MAC adres a problémy s konektivitou – Z důvodu existence smyčky je zpráva doručena na přepínač z více portů. Přepínač je tak nucen stále měnit adresu zdroje zprávy. Z tohoto důvodu pak může dojít k nedoručení zprávy.
●
Několikanásobné doručení – Opakem předchozího problému je několikanásobné doručení zprávy, která z důvodu existence smyčky koluje v síti stále dokola.
duben 2015
2/21
2.3 Spanning Tree Protocol (STP) Jedná se o síťový protokol, který byl standardizován organizací IEEE pod označením 802.1D. Důvodem jeho vzniku je vytvoření virtuální topologie v rámci přepínané sítě, ve které je eliminována existence smyček. Toho je docíleno využitím poznatků z teorie grafů. Přepínaná síť je reprezentovatelná ohodnoceným grafem, ve kterém algoritmus Spanning Tree Algorithm (STA) hledá jeho kostru. Kostra grafu je stromem, který neobsahuje žádnou kružnici. Protokol STP zablokuje linky, které nejsou součástí vytvořeného stromu, čímž je ponechána jediná cesta mezi libovolnými uzly sítě a smyčky jsou proto eliminovány.
2.3.1 Princip funkce STP Přepínanou síť lze vyobrazit jako graf, jehož uzly přestavují přepínače, nebo LAN segmenty a jehož hrany jsou tvořeny rozhraními, propojující přepínače se síťovými segmenty. Za účelem eliminace smyček STA vytvoří kostru grafu, která je vypočtena na základně následujícího postupu: 1. Výběr root switche – Logický kořen topologie, který je zvolen na základně nejnižší hodnoty Bridge ID. Tento identifikátor je tvořen kombinací konfigurovatelné priority přepínače (2B) a jeho MAC adresy (6B). Výchozí hodnota priority je nastavena na 32768 a lze ji překonfigurovat pouze na násobky hodnoty 4096. Při porovnávání Bridge ID jsou vždy nejprve analyzovány priority a MAC adresy jsou porovnávány pouze v případě, kdy jsou si priority rovny. Jako kořenový most je zvolen přepínač s nejnižší hodnotou priority. V případě, že mají přepínače stejnou prioritu, je zvolen ten s nejnižší MAC adresou. Všechny porty kořenového mostu jsou ve stavu forwarding a jsou typu designated. Původní standard 802.1D rovněž umožňuje, aby měl kořenový most více portů na stejném LAN segmentu. V tomto případě je port s nejnižším Port ID zvolen jako designated pro daný segment a nastaven do stavu forwarding. Ostatní porty jsou označeny jako non-designated a nastaveny do blokujícího stavu. 2. Zjišťování nejlepších cest, volba portů root a designated – Po zvolení root switche, každý přepínač zjistí cenu všech možných cest k tomuto switchi a vybere tu s nejnižší cenou. Cena cesty je vždy sumou cen všech segmentů na dané cestě. Port propojující přepínač s touto cestou je označen jako root port (RP). Přepínače na síťovém segmentu rovněž zjišťují, který přepínač má nejnižší cenu cesty ze síťového segmentu k root switchi. Port propojující tento přepínač k síťovému segmentu je označen jako designated port (DP). 3. Blokace ostatních cest ke kořenu – Každý port, který není ve stavu root port, nebo designated port musí být zablokován. Jedná se tedy o blocked port (BP). Ne vždy je ale možné rozhodnout o stavu portů na základě výše popsaných pravidel. Proto byly definovány mechanismy jak rozhodnout v případě nerozhodnutelného výsledku. V případě, kdy na přepínači existuje více cest s nejnižší cenou, je zvolena ta, jejíž sousední přepínač má nižší Bridge ID. V případě, kdy je podle předchozích pravidel nemožné rozhodnout např. o tom, který port bude v roli DP, zvolí se jako designated ten port, který má nejnižší hodnotu Port ID. Identifikátor Port ID je tedy použit pro konečné rozhodnutí, pokud předchozí metody selžou. Tento identifikátor je tvořen prioritou (4b) a číslem rozhraní (12b).
2.3.2 Bridge Protocol Data Units (BPDU) Vzhledem k tomu, že si switche potřebují vzájemně vyměňovat informace, aby mohly rozhodnout o rolích portů a provést volbu root switche, využívá STP přeposílání zvláštního typu rámců, které jsou přijímány i blokovanými porty. Tyto rámce jsou označovány BPDU a obsahují tyto informace:
duben 2015
3/21
Pole
Velikost [B]
Protocol ID
2
Protocol version
1
BPDU type
1
Flags
1
Root BID
8
Root path cost
4
Sender BID
8
Sender port ID
2
Message age
2
Max age
2
Hello time
2
Forward delay
2
Tabulka 1: Pole BPDU Rámce BPDU používají adresu portu jako zdrojovou MAC adresu a odesílají se na multicast adresu 01:80:C2:00:00:00. Pokud v přepínané síti dojde k určité změně, např. dojde k výpadku linky, nebo naopak bude nová linka připojena, switche si tyto informace vyměňují prostřednictvím BPDU, čímž dojde k rekalkulaci STA algoritmu a vytvoření nové kostry grafu. Definovány jsou celkem tři typy BPDU rámců: ● Konfigurační BPDU – Využívají se při výpočtu kostry grafu a pro poskytnutí těchto informací všem přepínačům. ●
Topology Change Notification (TCN) – Informace o změně v síťové topologii.
●
Topology Change Acknowledgment (TCA) – Potvrzení příjmu zprávy TCN.
Výchozí hodnota pro periodické vysílání BPDU rámců je dvě sekundy.
2.3.3 Stavy portů Při konvergenci sítě porty prostupují určitými stavy, mezi kterými je definován časový interval. Spanning Tree Protocol definuje následující stavy: ● Blocking – Kdyby byl tento port aktivní, způsobil by smyčku v síti. Nepřeposílají se přes něj žádná uživatelská data, ale stále se přijímají BPDU rámce. ●
Listening – Switch přijímá i zasílá BPDU a vyčkává na informace, které by způsobily návrat portu do blokujícího stavu. Ve stavu listening nedochází k naplňování tabulky MAC adres a nepřeposílají se datové rámce.
●
Learning – V tomto stavu port stále nepřeposílá rámce, ale již naplňuje tabulku MAC adres podle přijatých rámců.
●
Forwarding – Port umožňuje příjem i odesílání dat, ale stále se monitorují BPDU, které by donutily přejít port do blokujícího stavu v případě smyčky.
●
Disabled – Port je vypnut.
duben 2015
4/21
Stav portu Blocking
Vlastnosti portu
Max age
15
Forward delay 1
15
Forward delay 2
Posílá i přijímá BPDU, učí se MAC adresy.
↓ Forwarding
20 Posílá i přijímá BPDU.
↓ Learning
Interval
Přijímá pouze BPDU.
↓ Listening
Čas [s]
Posílá i přijímá vše (BPDU i uživatelská data)
Tabulka 2: Stavy portů a jejich vlastnosti Síť je konvergovaná v okamžik, kdy jsou všechny porty ve stavu forwarding nebo blocking. Tato doba je standardně nejvýše 50 sekund viz. hodnoty časové prodlevy v tabulce č. 2. Ke konvergenci sítě dochází při změně topologie, či konfiguraci STP. Na následujícím obrázku je znázorněna posloupnost stavů. Každý port musí projít z blocking stavu přes listening a learning stavy do stavu forwarding. Pro rychlejší konvergenci je možnost využití PortFast s důsledkem vynechání stavů listening a learning.
Obrázek 2: Stavy portů Převzato z: http://www.ciscopress.com/articles/article.asp?p=1728837
2.3.4 Doplňující mechanismy urychlující konvergenci Vzhledem k tomu, že doba konvergence padesát sekund u standardního STP protokolu je v moderních sítích nedostatečná, byly vytvořeny následující proprietární mechanismy, jak tuto dobu zkrátit: ● PortFast – V případě aktivace funkce PortFast na portu switche, dojde k okamžitému přechodu do stavu forwarding a vynechání stavů listening a learning. Tato funkce je využívána na portech, ke kterým je připojena koncová stanice, která nemůže způsobit smyčku v síti. ●
UplinkFast – Pokud dojde k výpadku primární linky, je funkcí UplinkFast umožněn rychlý přechod do stavu forwarding na alternativní lince vynecháním stavů listening a learning. Tento přechod trvá přibližně 1 – 5 sekund.
●
BackboneFast – Tato funkce umožňuje eliminaci MaxAge intervalu v případě, kdy dojde k výpadku nepřímo připojené linky k root switchi. Pro potvrzení ztráty konektivity s root switchem skrz root port využívá zvláštní typ PDU zvaných Root Link Query.
duben 2015
5/21
2.3.5 Cena linek Cena linky určuje, která z cest bude využita při vzniku smyček. Upřednostňuje se ta s nejnižší hodnotou. Linky jsou ohodnocovány podle šířky pásma. Na zařízeních Cisco jsou defaultně využity 16-bitové ceny linky s možností přepnutí na 32-bit. Pro změnu velikosti rozsahu cen se používá příkaz spanning-tree pathcost method long. Důvodem rozšíření rozsahu na 32-bitů je použití rychlejších sítí, než tomu bylo při zavedení STP protokolu [5]. Šířka pásma
Cena (16-bit)
Cena (32-bit)
10 Mbps
100
2000000
100 Mbps
19
200000
1 Gbps
4
20000
N X 1Gbps
3
10000
10 Gbps
2
2000
100 Gbps
N/A
200
1 Tbps
N/A
20
10 Tbps
N/A
2
Tabulka 3: Cena linek podle šířky pásma
2.4 Rapid Spanning Tree Protocol (RSTP) Hlavní nevýhodou protokolu STP je dlouhá doba konvergence, která dosahuje hodnot 30 – 50 sekund [1]. Vzhledem k tomu, že si moderní směrovací protokoly začínají konkurovat s přepínanou technologií a dokáží nalézt alternativní cesty v kratším čase, bylo potřeba STP vylepšit. Proto byl vyvinut protokol RSTP, který značně snižuje dobu konvergence při změnách v síti. Protokol RSTP je obvykle schopen zkonvergovat v době trojnásobku Hello time intervalu (2s), nebo v řádu milisekund po výpadku fyzické linky. Základní princip a terminologie je obdobná jako u standardního STP, díky toho je RSTP zpětně kompatibilní s protokolem STP, ovšem v případě využití této zpětné kompatibility jsou ztraceny výhody, které RSTP přináší.
2.4.1 Změny vůči STP Role portů Původní root a designated role jsou v RSTP zachovány, avšak blokovaný port je rozdělen na backup (záložní) a alternate (náhradní) port. Rozdělení rolí portů je v RSTP následující [3][4]: ● Root port – Port přijímající nejlepší BPDU na přepínači. Jedná se o port, který je z pohledu ceny nejblíže k root switchi. Root switch je jediný, který nemá žádný root port. ●
Designated port – Port odesílající nejlepší BPDU na segmentu, ke kterému je připojen.
●
Alternate port – Blokovaný port, který slouží jako alternativní cesta k root switchi v případě výpadku původní cesty.
duben 2015
6/21
Obrázek 3: Alternate port ●
Backup port – Blokovaný port, který slouží jako záložní cesta k danému segmentu. Principiálně se jedná o zálohu designated portu.
Obrázek 4: Backup port Stavy portů V protokolu RSTP došlo k redukci stavů portů. Existují zde celkem tři, jelikož stavy disabled, blocking a listening z původního standardu 802.1D byly sjednoceny do stavu discarding. Vlastnosti všech stavů jsou znázorněny v tabulce č. 4. Stav portu STP (802.1D)
Stav portu RSTP (802.1w)
Port je součástí aktivní topologie
Port se učí MAC adresy
Disabled
Discarding
Ne
Ne
Blocking
Discarding
Ne
Ne
Listening
Discarding
Ano
Ne
Learning
Learning
Ano
Ano
Forwarding
Forwarding
Ano
Ano
Tabulka 4: Porovnání stavů portů Typy linek Protokol RSTP rozděluje linky do kategorií point-to-point, shared, edge. Dosažení rychlého přechodu do stavu forwarding pak umožňuje na hraničních (edge) portech a point-to-point linkách. Typ linky je automaticky zjištěn z duplexního módu daného portu. Porty, které fungují v módu full-duplex, jsou nastaveny jako point-to-point, zatímco porty fungující v módu half-duplex jsou nastaveny jako shared. Toto automatické nastavení lze překonfigurovat manuálním nastavením typu linky. duben 2015
7/21
Nový BPDU formát Původní STP využívalo pouze 0. a 7. flag bit pro zaznamenání Topology change (TC) a Topology change ACK (TCA). Změnou v RSTP je využití vnitřních bitů 1-6. Nový formát BPDU nese označení verze 2, tudíž switche rozeznávají, jestli se jedná o BPDU protokolu STP nebo RSTP. Switche bez podpory RSTP nerozumí druhé verzi BPDU, tudíž tyto zprávy zahazují. Nový formát BPDU slouží k rozeznávání stavu portu a nese v sobě informace proposal/agreement mechanismu dispute. Na obrázku č.5 je znázorněn význam jednotlivých bitů.
Obrázek 5: Nový BPDU formát. Převzato z: http://www.cisco.com/c/en/us/support/docs/lan-switching/spanning-tree-protocol/24062-146.html
Změna zpracování BPDU Rámce BPDU jsou v RSTP vysílány každý hello-time interval (2s), zatímco u standardního STP generovaly všechny non-root swtiche BPDU tehdy, když byl BPDU přijat na jejich root port. Pokud na libovolném portu switche nebude doručen BPDU 3x za sebou, dojde ke ztrátě spojení. BPDU jsou tedy použity také jako mechanizmus pro udržení spojení. Další změnou je, že v případě výpadku linky na root portu se switch chová jako root switch a tuto informaci rozešle na ostatní porty. Ostatní switche informaci zachytí a zašlou na svůj root port zprávu, prostřednictvím které zjistí, zda-li je root switch dostupný. V případě kladné odpovědi zašlou zpět informaci o tom, že je root switch stále dostupný přes tento swtitch. Původní switch, jehož linka selhala, přestane vysílat informaci, že je root a přizpůsobí se nové topologii. Tento mechanismus (inferior BPDU) je zobrazen na obrázku č. 6.
Obrázek 6: Inferior BPDU
duben 2015
8/21
Konvergence prostřednictvím RSTP Oba porty na lince mezi switchem A a root switchem jsou ihned po jejich zapnutí ve stavu designated blocking. Nyní začne vyjednávání mezi switchem A a root switchem. Jakmile switch A příjme BPDU od root switche, zablokuje své non-edge designated porty. Tato operace je označována jako synchronizace. Následně si podle informací z BPDU nastaví root switch port do stavu forwarding. Na grafu níže je vyobrazen výsledek tohoto procesu. Linka mezi switchem A a root switchem je zablokována a oba switche si vyměňují BPDU [3].
Obrázek 7: Konvergence sítě (krok 1) Jakmile switch A zablokuje své non-edge designated porty, linka mezi switchem A a root switchem je nastavena do forwarding stavu, čímž dojde k situaci zobrazené na obrázku č. 8.
Obrázek 8: Konvergence sítě (krok 2) Jak je zřejmé, není možné, aby vznikla smyčka, jelikož místo blokace linky nad switchem A jsou nyní blokovány linky pod ním. V této fázi nově zablokované porty na switchi A také vyjednávají rychlý přechod do forwarding stavu s jejich sousedními porty na switchi A a C. Poté je opět provedena synchronizace. Vzhledem k tomu, že switch B má pouze hraniční (edge) porty, nebude blokovat žádnou linku. Switch C má navíc linku ke switchi D, kterou zablokuje, čímž se topologie dostává do stavu zobrazeném na obrázku č. 9.
Obrázek 9: Konvergence sítě (krok 3) duben 2015
9/21
Nyní je dosaženo konečné topologie sítě, za čas potřebný k tomu, aby BPDU prošly stromem. Při této rychlé konvergenci nebylo třeba využití žádných časovačů. Aby mohl tento mechanizmus přechodu fungovat, je třeba, aby byly linky mezi přepínači ve stavu point-to-point, nikoli shared.
Mechanismus dispute (Proposal/Agreement) V případě, že STA označí port jako designated, u původního STP musí standardně čekat 2x 15s než se přepne do forwarding stavu. Tento stav odpovídá designated blocking portu u RSTP. Mechanismus dispute si popíšeme na následujícím obrázku č.10. Na příkladu vysvětlíme rychlý přechod do forwarding stavu. Po vytvoření linky mezi switchi Root a A zůstávají oba porty v designated blocking stavu, dokud neobdrží BPDU od sousedního switche. Když je designated port ve stavu discarding nebo learning odešle BPDU s nastaveným proposal bitem. Oba switche tedy odešlou BPDU s nastaveným proposal bitem. BPDU Root switche má vyšší prioritu. Switch A po přijetí zprávy s vyšší prioritou provede synchronizaci. To znamená zablokování všech portů kromě edge portů (zde smyčka nevznikne). V tomto případě by byly blokovány alternate a designate porty vedoucí ze switche A. Port, který směřuje k Root switchi se nastaví jako root port. Následně je odblokován a odesílá se přes něj zpráva agreement. Ihned jakmile Root switch obdrží agreement zprávu, nastavuje příslušný port do stavu forwarding.
Obrázek 10: Mechanismus dispute Když nastane připojení switche B na designated port switche A, opakuje se znovu obdobný postup jako tomu bylo mezi Root a A. Mechanismus proposal/agreement nespoléhá na žádné časovače, čímž je zajištěna rychlejší konvergence sítě od root switche až po okraj topologie. V případě, že zařízení zašle požadavek proposal a následně neobdrží odpověď agreement přejde zpět k pomalejšímu vyřizování pomocí standardního mechanismu STP.
duben 2015
10/21
3 Praktická část 3.1 Podpora RSTP na Cisco switchích Tabulka č. 5 zachycuje seznam switchů firmy Cisco s verzí IOS podporující RSTP. Pro správnou funkci musí všechny switche v síti podporovat RSTP. Catalyst Platform
MST s RSTP
RPVST+ (PVRST+)
Catalyst 2900 XL / 3500 XL
Nepodporuje
Nepodporuje
Catalyst 2940
12.1(20)EA2
12.1(20)EA2
Catalyst 2950/2955/3550
12.1(9)EA1
12.1(13)EA1
Catalyst 2970/3750
12.1(14)EA1
12.1(14)EA1
Catalyst 3560
12.1(19)EA1
12.1(19)EA1
Catalyst 3750 Metro
12.1(14)AX
12.1(14)AX
Catalyst 2948G-L3/4908G-L3
Nepodporuje
Nepodporuje
Catalyst 4000/2948G/2980G (CatOS)
7.1
7.5
Catalyst 4000/4500 (IOS)
12.1(12c)EW
12.1(19)EW
Catalyst 5000/5500
Nepodporuje
Nepodporuje
Catalyst 6000/6500
7.1
7.5
Catalyst 6000/6500 (IOS)
12.1(11b)EX, 12.1(13)E, 12.2(14)SX
12.1(13)E
Catalyst 8500
Nepodporuje
Nepodporuje
Tabulka 5: Podpora RSTP
3.2 Topologie Použité zařízení: ● 5x switch (SW1 – SW5)
SW1 ↔ Root
SW2 ↔ A
SW3 ↔ B
SW4 ↔ C
SW5 ↔ D
●
2x hub (Hub1, Hub2) – využito pro odchytávání provozu na linkách mezi switchi.
●
2x počítač – zachycení komunikace z hubů pomocí Wiresharku.
duben 2015
11/21
Obrázek 11: Topologie sítě
3.3 Konfigurace SW1 (Root) SW1(config)#spanning-tree mode rapid-pvst SW1(config)#spanning-tree vlan 1 priority 4096 SW1(config-if)#spanning-tree link-type point-to-point (FE 0/1-2) SW1(config-if)#spanning-tree cost 10 (FE 0/1) SW1(config-if)#spanning-tree cost 500 (FE 0/2) SW2 (A) SW2(config)#spanning-tree mode rapid-pvst SW2(config)#spanning-tree vlan 1 priority 8192 SW2(config-if)#spanning-tree link-type point-to-point (FE 0/1-3) SW2(config-if)#spanning-tree cost 10 (FE 0/1-3) SW3 (B) SW3(config)#spanning-tree mode rapid-pvst SW3(config)#spanning-tree vlan 1 priority 12288 SW3(config-if)#spanning-tree link-type point-to-point (FE 0/1) SW3(config-if)#spanning-tree cost 10 (FE 0/1) SW4 (C) SW4(config)#spanning-tree mode rapid-pvst SW4(config)#spanning-tree vlan 1 priority 16384 SW4(config-if)#spanning-tree link-type point-to-point (FE 0/1,3) SW4(config-if)#spanning-tree cost 10 (FE 0/1,3) SW5 (D) SW5(config)#spanning-tree mode rapid-pvst SW5(config)#spanning-tree vlan 1 priority 20480 SW5(config-if)#spanning-tree link-type point-to-point (FE 0/1-2) SW5(config-if)#spanning-tree cost 10 (FE 0/2) SW1(config-if)#spanning-tree cost 500 (FE 0/1)
duben 2015
12/21
3.4 Analýza přenesených dat 3.4.1 Spuštění RSTP RSTP jsme spustili postupně na všech switchích, a to od přístupových po root switch. Jelikož jsme spouštěli nejdříve switche s nejvyšším ID, změna root switche proběhla při každém spuštění následujícího zařízení.
Analýza na switchi Na switchi zjistíme podstatné informace o STP pomocí příkazu #show spanning-tree. Z výpisu snadno vyčteme informace o root switchi a switchi, na kterém se nacházíme. Dále je zde uvedeno role, stav, cena a typ portů. V našem případě vyčteme podle priority a mac adresy, že se nacházíme na root switchi. Hodnota priority je 4096+1 (číslo vlan). V tabulce portů můžeme vidět Fa0/2 s horší cenou linky 500, kterou jsme uměle navýšili za účelem upřednostnění cesty přes port Fa0/1. VLAN0001 Spanning tree enabled protocol rstp Root ID Priority 4097 Address 001a.6dde.6580 This bridge is the root Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec Bridge ID Priority 4097 (priority 4096 sys-id-ext 1) Address 001a.6dde.6580 Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec Aging Time 300 sec Interface Role Sts Cost Prio.Nbr Type --------------------------------------------------------------------------Fa0/1 Desg FWD 10 128.1 P2p Fa0/2 Desg FWD 500 128.2 P2p
Analýza z počítače pomocí síťového analyzátoru Wireshark Pomocí dvou hubů umístěných na linky mezi SW1 ↔ SW5 a SW1 ↔ SW2 jsme zachytili konvergenci topologie při postupném spouštění zařízení až k root prvku. Tok zpráv probíhal dle teoretických předpokladů. Při každém spuštění dalšího switche se pomocí Topology change zpráv vyjednal nový root switch jelikož jsme záměrně aktivovali RSTP na switchích s lepší prioritou. V tomto případě je preferována linka Fa0/1 vycházející z root switche. Přímá cesta k SW5 je blokována z důvodu vyšší ceny. Při výpadku linky Fa0/1 se použije záložní linka s vyšší cenou. Na obrázku č. 12 vidíme detailní výpis BPDU zachyceného pomocí wiresharku mezi SW1 a SW5 po spuštění RSTP na SW1. Ze zachyceného rámce lze vyčíst zdrojová MAC adresa (port FA0/2 SW1) a cílová multicast MAC adresa 01:80:C2:00:00:00. Zajímavější je pro nás výpis STP protokolu. Zde je jasně vidět rozpoznání BPDU verze 2 (RSTP) a následně rozepsané BDPU flags po jednotlivých bitech. Z těchto bitů vyčteme, že port je v roli designated také se uvádí jeho stav forwarding a learning. Poslední bit označuje, že se jedná o zprávu Topology Change.
duben 2015
13/21
Obrázek 12: BPDU - Topology change notification V předchozím případě je popsán TCN BPDU, který obsahuje informace o změně topologie. Odpovědí na tuto zprávu je TCA, která se v případě RSTP nezasílá z důvodu urychlení konvergence sítě. V RSTP je TCA zachováno pouze pro zpětnou kompatibilitu s STP. Obrázek č.13 zobrazuje flag bity z konfiguračního BPDU, které je zasíláno po zkonvergování sítě. Zprávy jsou zasílány periodicky každé 2s (hello-time). Slouží k detekcím změn v topologii. Další dvě pole označují root switch, kterým je SW1 s nejnižší prioritou v naší topologii (4096) a prioritu zdrojového switche SW1 (4096).
Obrázek 13: BPDU - Configuration Mimo tyto typy BPDU jsou na počátku konvergence zasílány proposal/agreement zprávy mechanismu dispute. duben 2015
14/21
3.4.2 Přerušení linky mezi SW1 ↔ SW2 V této části jsme administrativně zakázali port Fa0/1 na Root switchi (SW1). Tím jsme způsobili přerušení linky vedoucí ke switchi A (SW2). Ve wiresharku jsme sledovali průběh topology change zpráv, ze kterých vyplývá použití záložní cesty s vyšší cenou. Detailní výpis zpráv zde neuvádíme, jelikož jsou zprávy obdobné jako v předchozí analýze. Celou analýzu zachycenou analyzátorem Wireshark naleznete v příloze. Změna je snadno rozpoznatelná na switchi, protože se změní role portů na zařízeních, které tvořily smyčku. Na následujícím #show spanning-tree výpisu z SW2 vidíme změnu cesty k rootu z Fa0/1 na port Fa0/3 (původní výpis před změnou Obrázek č. 14 v příloze). Tímto způsobem se změnily tabulky na všech switchích ve smyčce (ostatní výpisy v příloze). VLAN0001 Spanning tree enabled protocol rstp Root ID Priority 4097 Address 001a.6dde.6580
Cost Port Hello Time Bridge ID Priority Address Hello Time Aging Time
520 3 (FastEthernet0/3) 2 sec Max Age 20 sec Forward Delay 15 sec 8193 (priority 8192 sys-id-ext 1) 001a.6dde.6400 2 sec Max Age 20 sec Forward Delay 15 sec 300 sec
Interface Role Sts Cost Prio.Nbr Type --------------------------------------------------------------------------Fa0/1 Desg FWD 10 128.1 P2p Fa0/2 Desg FWD 10 128.2 P2p Fa0/3 Root FWD 10 128.3 P2p
Tato změna v topologii zapříčinila změnu v použití zablokované linky s vyšší cenou na SW5 k propojení s Root switchem.
duben 2015
15/21
4 Závěr Při vytváření projektu jsme si dle teoretických znalostí vytvořili topologii a následně ji prakticky ověřili v laboratoři. V praktickém řešení jsme vytvořili propojení switchů obsahující smyčku. Na tomto řešení zprovoznili RSTP protokol a upravili jeho konfiguraci, jak bylo popsáno v kapitole Konfigurace. Celou tuto konfiguraci se podařilo analyzovat pomocí programu Wireshark, kde jsme sledovali průběh komunikace mezi switchi. Dále jsme analyzovali změnu topologie způsobenou přerušení preferované linky mezi SW1 a SW2. Cíle tohoto projektu se nám podařilo splnit. Vypracováním jsme si prověřili naše znalosti protokolu RSTP, jeho konfigurace a vlastností.
5 Použitá literatura [1] Rapid spanning tree protocol. [online]. [cit. 2015-05-02]. Dostupné z: http://www.samuraj-cz.com/clanek/cisco-ios-10-rapid-spanning-tree-protocol/ [2] Cisco IOS, spanning tree protocol. [online]. [cit. 2015-05-02]. Dostupné z: http://www.samuraj-cz.com/clanek/cisco-ios-9-spanning-tree-protocol/ [3] Spanning-tree-protocol. [online]. [cit. 2015-05-02]. Dostupné z: http://www.cisco.com/c/en/us/support/docs/lan-switching/spanning-treeprotocol/24062-146.html [4] Rapid spanning tree protocol tutorial. [online]. [cit. 2015-05-02]. Dostupné z: http://www.9tut.com/rapid-spanning-tree-protocol-rstp-tutorial [5] Spanning tree long path cost. [online]. [cit. 2015-05-02]. Dostupné z: http://www.networkworld.com/article/2229866/cisco-subnet/cisco-subnetspanning-tree-long-path-cost.html
duben 2015
16/21
6 Příloha 6.1 Wireshark soubory Přibalené .pcap soubory: ● stp1.pcap – SW1 ↔ SW2 spuštění RSTP ●
stp2.pcap – SW1 ↔ SW5 spuštění RSTP
●
stp3.pcap – SW2 ↔ SW4 vypojení linky SW1 ↔ SW2
●
stp4.pcap – SW1 ↔ SW5 vypojení linky SW1 ↔ SW2
6.2 Screeny ze zařízení 6.2.1 Výpis #show spanning-tree z jednotlivých switchů (před přerušením linky SW1 ↔ SW2)
Obrázek 14: SW1 - show spanning-tree
Obrázek 15: SW2 - show spanning-tree duben 2015
17/21
Obrázek 16: SW3 - show spanning-tree
Obrázek 17: SW4 - show spanning-tree
duben 2015
18/21
Obrázek 18: SW5 - show spanning-tree
duben 2015
19/21
6.2.2 Výpis #show spanning-tree z jednotlivých switchů (po přerušením linky SW1 ↔ SW2)
Obrázek 19: SW2 - show spanning-tree
Obrázek 20: SW4 - show spanning-tree
duben 2015
20/21
Obrázek 21: SW5 - show spanning-tree
duben 2015
21/21