Na internetu je možné najít mnoho materiálů o protokolu RSTP. V rámci tohoto článku navrhuji porovnat protokol RSTP s proprietárním protokolem od – Extended Ring Redundancy.
Podrobnosti o implementaci RSTP
Obecné informace
Doba konvergence – 1-10 s
Možné topologie – jakákoli
Existuje rozšířené přesvědčení, že RSTP umožňuje spojit switche pouze v kruhu:

Ale RSTP umožňuje spojování switchů libovolným způsobem. Například s takovou topologií si RSTP poradí.

Princip činnosti
RSTP redukuje jakoukoli topologii na strom. Jeden ze switchů se stává centrem topologie – kořenovým switchem. Kořenový switch propouští největší množství dat.
Princip činnosti RSTP je následující:
- napájení se dodává do switchů;
- vybírá se kořenový switch;
- ostatní switche určují nejrychlejší cestu k kořenovému switchi;
- zbývající kanály se blokují a stávají se záložními.
Výběr kořenového switche
Switche s RSTP si vyměňují BPDU pakety. BPDU je servisní paket, který obsahuje informace RSTP. BPDU může mít dva typy:
- Configuration BPDU.
- Topology Change Notification.
Configuration BPDU se používá pro budování topologie. Odesílá jej pouze kořenový switch. Configuration BPDU obsahuje:
- identifikátor odesílatele (Bridge ID);
- identifikátor kořenového switche (Root Bridge ID);
- identifikátor portu, ze kterého byl tento paket odeslán (Port ID);
- náklady na cestu k kořenovému switchi (Root Path Cost).
Topology Change Notification může odeslat jakýkoli switch. Odesílají se v případě změny topologie.
Po zapnutí se všechny switche považují za kořenové. Začnou posílat BPDU pakety. Jakmile switch obdrží BPDU s menším Bridge ID než jeho vlastní, přestane se považovat za kořenový.
Bridge ID se skládá ze dvou hodnot – MAC adresy a priorita bridge. MAC adresu nemůžeme změnit. Priorita bridge je ve výchozím nastavení 32768. Pokud nebudeme měnit prioritu bridge, stane se kořenovým přepínačem ten s nejnižší MAC adresou. Přepínač s nejnižší MAC adresou je nejstarší a možná ne nejvýkonnější. Doporučuje se ručně určit kořenový přepínač topologie. K tomu je třeba na kořenovém přepínači nastavit malou prioritu bridge (například 0). Lze také určit záložní kořenový přepínač tím, že mu přiřadíme o něco vyšší prioritu bridge (například 4096).

Volba cesty k kořenovému přepínači
Kořenový přepínač šíří do všech aktivních portů pakety BPDU. BPDU má pole Path Cost. Path Cost označuje náklady cesty. Čím vyšší jsou náklady cesty, tím déle trvá přenos paketu. Když BPDU prochází portem, do pole Path Cost se přidávají náklady. Přidané číslo se nazývá náklady portu.

K Path Cost se přidává určité hodnota při průchodu BPDU přes jakýkoli port. Tato hodnota, kterou přidáváme, se nazývá náklady portu (Port Cost) a může být určena jak ručně, tak automaticky. Náklady portu lze stanovit jak ručně, tak automaticky.
Když má nekorenový přepínač několik alternativních cest k kořenovému, vybere si tu nejrychlejší. Porovnává Path Cost těchto cest. Ten port, ze kterého přišlo BPDU s nejnižšími náklady na cestu, se stává kořenovým portem (Root Port).



Ceny portů, které jsou přiřazeny automaticky, lze zobrazit v tabulce:
Rychlost přenosu dat portu
Náklady portu
10 Mb/s
2 000 000
100 Mb/s
200 000
1 Gb/s
20 000
10 Gb/s
2 000
Role a stavy portů
Porty přepínače mají několik stavů a rolí.
Stavy portů (pro STP):
- Disabled – neaktivní.
- Blocking – poslouchá BPDU, ale nepřenáší. Data nepřenáší.
- Listening – poslouchá a přenáší BPDU. Data nepřenáší.
- Learning – poslouchá a přenáší BPDU. Připravuje se na přenos dat – plní tabulku MAC adres.
- Forwarding – přenáší data, poslouchá a přenáší BPDU.
Doba konvergence STP – 30-50 sekund. Po zapnutí přepínače procházejí všechny porty všemi stavy. V každém stavu je port po několik sekund. Z tohoto důvodu má STP tak dlouhou dobu konvergence. RSTP má méně stavů portů.
Stavy portů (pro RSTP):
- Discarding – neaktivní.
- Discarding – poslouchá BPDU, ale nepřenáší. Data nepřenáší.
- Discarding – poslouchá a přenáší BPDU. Data nepřenáší.
- Learning – poslouchá a přenáší BPDU. Připravuje se na přenos dat – plní tabulku MAC adres.
- Forwarding – přenáší data, poslouchá a přenáší BPDU.
- Ve RSTP jsou stavy Disabled, Blocking a Listening sloučeny do jednoho – Discarding.
Role portů:
- Root port – port, skrze který se přenášejí data. Slouží jako nejrychlejší cesta k root switchi.
- Designated port – port, skrze který se přenášejí data. Je definován pro každý segment LAN.
- Alternate port – port, skrze který se data nepřenášejí. Je alternativní cestou k root switchi.
- Backup port – port, skrze který se data nepřenášejí. Je záložní cestou pro segment, kde je již připojen jeden port s podporou RSTP. Backup port se používá, pokud jsou dva kanály switchi připojeny k jednomu segmentu (mysli hub).
- Disabled port – na tomto portu je RSTP vypnuto.
Výběr Root Portu je popsán výše. Jak se vybírá Designated port?
Nejprve si definujme, co je segment LAN. Segment LAN je kolizní doména. doménaPro switch nebo router každý port tvoří samostatnou kolizní doménu. Segment LAN je kanál mezi switchemi nebo routery. Pokud hovoříme o hubu, všechny porty hubu jsou v jedné kolizní doméně.
Na jeden segment je přiřazen pouze jeden Designated Port.
V případě segmentů, kde již existují Root Porty, je vše jasné. Druhý port segmentu se stává Designated Portem.

Zůstávají však záložní kanály, kde bude jeden Designated Port a jeden Alternate Port. Jak se budou vybírat? Designated Port se stane portem s nejmenším Path Cost k root switchi. Pokud jsou Path Costy stejné, pak Designated Port bude ten port, který se nachází na switchi s nejmenším Bridge ID. Pokud jsou i Bridge ID stejné, pak Designated Port se stane portem s nejmenším číslem. Druhý port bude Alternate.


Zůstává poslední otázka: kdy je portu přiřazena role Backup? Jak bylo již dříve zmíněno, Backup port se používá pouze v případě, že jsou dva kanály switchi připojeny k jednomu segmentu, tedy k hubu. V tomto případě se Designated Port vybírá přesně podle těchto kritérií:
- Nejmenší Path Cost k root switchi.
- Nejmenší Bridge ID.
- Nejmenší Port ID.
Maximální počet zařízení v síti.
Standard IEEE 802.1D neklade přísné požadavky na počet zařízení v LAN s RSTP. Standard doporučuje používat nejvýše 7 switchů na jednom větvi (ne více než 7 skoků), tedy maximálně 15 v kruhu. Při překročení této hodnoty se začíná zvyšovat doba konvergence sítě.
Podrobnosti implementace ERR.
Obecné informace
Doba konvergence
Doba konvergence ERR je 15 ms. Při maximálním počtu switchů v kruhu a existenci propojení kruhů - 18 ms.
Možné topologie
ERR nedovoluje volně spojovat zařízení jako RSTP. ERR má jasné topologie, které lze použít:
- Kruh
- Zdvojený kruh
- Propojení až tří kruhů

Kruh

Když jsou v ERR spojeny všechny switche do jednoho kruhu, je nutné na každém switchi nastavit porty, které se budou účastnit budování kruhu.
Dvojitý kruh

Switche mohou být spojeny do dvojitého kruhu, což výrazně zvyšuje spolehlivost kruhu.
Omezení dvojitého kruhu:
- Dvojitý kruh nemůže být použit pro propojení switchů s jinými kruhy. K tomu je nezbytné použít Ring Coupling.
- Dvojitý kruh nemůže být použit pro kruh propojení.


Propojení kruhů

Při propojení může být v síti maximálně 200 zařízení.
Propojení kruhů zahrnuje spojení ostatních kruhů do jednoho dalšího kruhu.
Pokud se kruh připojuje k kruhu propojení přes jeden switch, nazývá se to propojení kruhů přes jeden switch. Pokud se k kruhu propojení připojují dva switche z lokálního kruhu, pak to bude propojení přes dva switche.
Při propojení přes jeden switch se využijí oba porty zařízení. Doba konvergence v tomto případě bude přibližně 15-17 ms. Při takovém propojení bude switch propojení bodem selhání, neboť ztrátou tohoto switche ztrácíte zároveň celý kruh. Propojení přes dva switche to umožňuje předejít.


Je možné spojit zdvojené kruhy.

Path Control

Funkce Path Control umožňuje nastavit porty, přes které budou data přenášena v běžném režimu provozu. Pokud dojde k selhání kanálu a síť se přeorientuje na záložní topologii, po obnovení kanálu se síť přeorientuje zpět na určenou topologii.
Tato funkce umožňuje ušetřit na záložním kabelu. Navíc bude vždy známa používaná topologie pro troubleshooting.
Hlavní topologie se přepíná na záložní za 15 ms. Návratové přepnutí při obnovení sítě trvá přibližně 30 ms.
Omezení:
- Nelze použít spolu s Dual Ring.
- Funkce musí být zapnuta na všech přepínačích v síti.
- Jeden z přepínačů je nastaven jako hlavní Path Control.
- Automatické přepnutí na hlavní topologii po obnovení probíhá prostřednictvím 1 sekundy ve výchozím nastavení (tato hodnota lze změnit pomocí SNMP v rozsahu od 0 s do 99 s).
Princip činnosti

Princip fungování ERR
Pro příklad vezmeme šest přepínačů – 1-6. Přepínače jsou propojeny do kruhu. Každý přepínač používá dva porty pro připojení k kruhu a uchovává jejich stavy. Přepínače si navzájem přenášejí stavy portů. Tyto údaje zařízení používají pro nastavení výchozího stavu portů.

Porty mají pouze dvě role – Blocked a Forwarding.
Přepínač s nejvyššími MAC adresami blokuje svůj port. Všechny ostatní porty v kruhu přenášejí data.
Pokud blokovaný port přestane fungovat, stane se následující port s nejvyšší MAC adresou blokovaným.
Po spuštění začnou přepínače odesílat Ring Protocol Data Unit (R-PDU). R-PDU se přenáší pomocí multicastu. R-PDU je servisní zpráva, stejně jako BPDU v RSTP. R-PDU obsahuje stavy portů přepínače a jeho MAC adresu.
Algoritmus při selhání linky
Když dojde k selhání linky, přepínače odesílají R-PDU, aby oznámily změnu stavu portů.
Algoritmus při obnovení linky
Když je selhávaná linka opět uvedena do provozu, přepínače odesílají R-PDU, aby oznámily změnu stavu portů.
Přepínač s nejvyšší MAC adresou se stává novým kořenovým přepínačem.
Selhávaná linka se stává záložní.





Po obnovení zůstává jeden z portů linky blokovaný a druhý přechází do stavu forwarding. Blokovaným portem se stává port s nejvyšší rychlostí. Pokud jsou rychlosti stejné, blokovaným portem se stane port přepínače s nejvyšší MAC adresou. Tento princip umožňuje blokovat port, který přejde z stavu blocked do stavu forwarding maximální rychlostí.

Maximální počet zařízení v síti.
Maximální počet switchů v ERR kruhu – 200.
Interakce ERR a RSTP
RSTP lze používat v kombinaci s ERR. Ale kruh RSTP a kruh ERR se musí křížit pouze přes jeden switch.

Shrnutí
ERR je skvělou volbou pro organizaci standardních topologií. Například kruh nebo duplikační kruh.


Podobné topologie se často používají pro zálohování na průmyslových objektech.
Kromě toho lze pomocí ERR druhou topologii realizovat méně spolehlivým, ale levnějším způsobem. To lze provést pomocí duplikačního kruhu.

Není však vždy možné použít ERR. Existují dost exotické schémata. S jedním z našich klientů jsme testovali následující topologii.

V tomto případě není možné použít ERR. Pro takové schéma jsme použili RSTP. Klient měl přísné požadavky na čas konvergence – méně než 3 s. Abychom dosáhli této doby, bylo nutné jasně určit kořenové switche (hlavní a záložní), stejně jako náklady na porty ručně.
Výsledkem je, že ERR výrazně vyhrává na čase konvergence, ale nenabízí takovou flexibilitu, jakou nabízí RSTP.
Zdroj: habr.com
