Spolehlivost nedílná a často opomíjená součást bezpečnosti 3. díl: Media Redundancy Protocol 11/2016; Autor: Ing. Vilém Jordán, PCD, certifikovaný designer dle ČSN ISO /IEC 27001:2014 V minulém díle jsme přednesli úvahy o polárním potápění. Nyní navážeme dalšími metodami, jak problematiku spolehlivosti vylepšit. Nedílnou součástí množiny metod zvyšování spolehlivosti sítí MCN je redundance. Myšlenka a princip redundance je zřejmě stará jako lidstvo. Aniž bychom si to uvědomovali, je prakticky všude kolem nás. Uveďme pouze několik příkladů. Počínaje dálnicí (více jízdních pruhů v jednom směru) přes dvoukolejné tratě, zastupitelnost pracovníků v zaměstnání až po mnohoženství (existuje prý i mnohomužství). I v oboru ICT rovněž není žádnou novinkou. V případě systémů pro řízení kritických aplikací tj. kritické komunikační infrastruktury je důležitá nejen redundance vlastních řídicích systémů, ale především redundance komunikačních kanálů mezi těmito systémy. Komunikační infrastruktura je nejchoulostivější a nejzranitelnější. Z pohledu celkového systému vykazuje největší chybovost a poruchovost. To je důvodem, proč se tomto a následujících dílech budeme zabývat problematikou redundancí při komunikaci. Mezi řešení používaná především v komerčních systémech patří agregace linek (LACP - Link Aggregation Control Protocol - IEEE ad), STP (Spanning Tree Protocol) a RSTP (Rapid Spanning Tree Protocol). Popisem těchto protokolů se zabývat nebudeme, protože principy jejich funkce jsou obecně známy a na internetu k nim nalezneme dostatek informací. Navíc STP a RSTP se v MCN sítích prakticky nepoužívají. Jediné co musíme zdůraznit u RSTP je ta skutečnost, že rámce zaslané během fáze rekonfigurace RSTP topologie by mohly být zkopírovány a/nebo dorazí k příjemci v nesprávném pořadí. Pokud je to pro řízenou aplikaci nepřijatelné, musíme použít pomalejší STP nebo zvolit jinou metodu obsluhy záložních tras. Media Redundancy Protocol je jedním z prvních protokolů určených pro řízení redundance v kritických průmyslových aplikacích. Byl vyvinut v roce 1998 a mezinárodním standardem se stal v březnu 2008. Je definován v normě IEC 62439-2, která popisuje průmyslové standardy pro vysokou dostupnost Ethernet sítí. je určen pouze pro topologii Ring. RM 1 2 3
umožňuje řídit kruhovou síť, která má až 50 zařízení (Switche nebo jiná zařízení, např. řídící jednotky apod.), a zaručuje plně deterministické chování při rekonfigurace kruhu na záložní trasu. Časový limit pro rekonfigurace lze nastavit na 500ms nebo 200ms. Typická doba přepnutí na záložní trasu je obvykle poloviční až čtvrtinová. U nastavení 200ms to je mezi 50 a 60ms. je protokol linkové vrstvy. Používá podobné mechanismy jako RTSP, např. mazání záznamů v FDB, nastavení portů do stavu blocking, forwarding atd. Všechna zařízení v kruhu musí podporovat protokol. Jedno ze zařízení v kruhu je definováno jako Media Redundancy Manager (MRM), ostatní jsou definována jako Media Redundancy Client (MRC). pracuje na 2. vrstvě OSI modelu (linková vrstva) nad přístupem k MAC adresám. používá následující status portů: Blocking Disabled Forwarding non-connected Poznámka: při volbě doby rekonfigurace 200ms nemusí zajistit ve všech případech potřebnou stabilitu sítě dle Vašich požadavků (obdobný problém jako u RSTP). Pokud je to pro řízenou aplikaci nepřijatelné, je nutné nastavit dobu rekonfigurace na 500ms. Každý uzel vyžaduje Switch se dvěma Ring-porty, které jsou zapojeny do kruhu. Jeden z těchto Switchů má funkci Media Redundancy Manager (MRM). MRM monitoruje i řídí kruh a reaguje na případné selhání sítě. Monitoring provádí tím způsobem, že posílá Ethernet redundancy test frames DU (testovací rámce) přes jeden ring-port a na druhém kontroluje jejich přijetí. Následně proces opakuje v opačném směru. DU je funkční obdoba RSTP BPDU. Za normálního stavu (bez závad) je jeden z těchto portů ve stavu Blocking, tj. přijímá pouze DU. Na logické úrovni převádí fyzický kruh na lineární strukturu pro běžný síťový provoz. Tím zabraňuje vzniku smyček. V případě selhání přenosu (MRM neobdrží vyslané testovací rámce např. v důsledku selhání zařízení nebo vadné trasy), MRM otevře dříve blokovaný ring-port pro normální provoz. Tím budou všechna zařízení dostupná přes sekundární síťovou cestu. Upozornění: V kruhu může být aktivován pouze jediný MRM
Management (service) (protokol) 802.1 Bridge linková vrstva MEDIUM ACCESS MEDIUM ACCESS fyzická fyzická fyzická vrstva test paket MRM test paket redundatní linka MRC MRC MRC aktivní port blokovaný port Všechny ostatní uzly v kruhu mají úlohu Media Redundancy Client (MRC). MRC přeposílá testovací rámce od MRM z jednoho svého ring-portu na druhý. Také reaguje na jakékoliv přijaté rámce rekonfigurace (změna topologie) z MRM, detekuje změny stavu svých portů a oznamuje tuto skutečnost MRM. Pokud nastane takový stav, že zpráva o změně od MRC dojde na MRM dříve než bylo detekováno selhání Ringu testovacím rámcem, je provedena detekce na základě této zprávy od MRC. Tím je zajištěno, že přechod komunikace MRM z primární na sekundární cestu proběhne vždy v nejkratším možném čase. Poznámka: Obecně je MRM nazýván také Ring Manager (RM). V Ringu jsou např. aktivní linky 1, 2 a 3. Linka 4 je blokována (Stand-by) ze strany RM. Při poruše linky 1 se aktivuje druhý Ring-port RM. Linka 4 bude aktivní a linka 1 bude blokována. I po odstranění závady zůstane linka 1 v režimu Stand-by a linka 4 bude aktivní. Na RM se tedy u Ring-portů vzájemně zaměnily statusy (blocking a forwarding).
Princip RSTP vs. RSTP posílá BPDU z uzlu do uzlu (Switche). Jde tedy o komunikaci typu point to point. V každém uzlu je BPDU analyzováno a případně provedeny dle obsahu potřebné operace. Tím vzniká v každém uzlu zpoždění, které závisí na rychlosti procesoru příslušného Switche, implementaci RSTP, na dalších současně zpracovávaných protokolech atd. S počtem Switchů v síti narůstá úměrně i zpoždění. port port port port RSTP RSTP RSTP MAC MAC MAC MAC L1 L1 L1 L1 funkce přepínání - přenos point to point => komunikace RSTP BPDU mezi sousedními Switchi L1 fyzická vrstva - zpoždění při zpracování v každém Switchi - velikost zpoždění závislá na implementaci a aplikaci v každém Switchi - každý další Switch přidává další zpoždění V případě jsou testovací rámce ihned přeposílány na druhý Ring-port bez jakéhokoliv zpoždění vytvořeného analýzou procesoru. Zpoždění na Switchi odpovídá pouze zpoždění průchodu několika elektronickými obvody (řádově v ns). Proto celkové zpoždění v kruhu nemá natolik strmou závislost na počtu Switchů jako u RSTP. port port port port MAC MAC MAC MAC L1 L1 L1 L1 funkce přepínání - okamžité přesměrování ve Switchi DU - velikost zpoždění téměř nezávislá L1 fyzická vrstva na počtu Switchů v kaskádě - zpoždění je závislé pouze na implementaci v MRM
Srovnání vlastností a RSTP Popis RSTP Smyčky NE + jsou možné - Duplikáty paketů NE + jsou možné - Pevná doba rekonfigurace ANO + NE - Doba rekonfigurace vs. počet Switchů v Ringu Řízení rekonfigurace založené na fyzickém spojení téměř nezávislá + roste úměrně s počtem ANO + ANO + - Řízení rekonfigurace založené na linkové vrstvě ANO + ano, ale pomalé - Náročnost implementace nízká + střední - Kombinace a RSTP V některých případech musíme použít kombinaci protokolu a RSTP. Důvodem může být nejen ta skutečnost, že některá zařízení nemusí podporovat protokol, ale i potřeba odlišné topologie než je Ring. Výhodou protokolu je to, že může pracovat v režimu kompatibility s RSTP. Pro snadnější pochopení řešení uveďme jednoduchý příklad konkrétního řešení. Režim kompatibility zařízení s RSTP nám umožňuje kombinovat oba protokoly a jsou zachovány rychlé spínací časy v Ringu. Průměr RSTP závisí na "Max Age". To se vztahuje na zařízení mimo Ring. Kombinace RSTP a předpokládá, že kořenový Bridge i zálohování kořenového Bridge se nachází v Ringu. S5 S6 1.1 1.2 1.1 1.2 Ring RM 1.1 1.2 1.1 1.2 S1 1.3 1.3 RSTP Ring 1.1 1.1 S2 1.2 1.2 S3 S4 RM Ring Manager S2 RSTP Root Bridge S1 RSTP Backup Root Bridge
Provedeme konfiguraci na všech zařízeních v Ringu a zapojíme redundantní linky v Ringu. Režim kompatibility s RSTP aktivujeme pouze na portech určených k připojení RSTP Ringu, tj. u Switche S1 port 1.3 a u S2 také port 1.3. U ostatních portů Ringu deaktivujeme režim kompatibility s RSTP na portech připojených pouze k Ringu. Aktivace protokolu RSTP na RSTP portech RSTP Ringu (S3: 1.1 s 1.2, S4: 1.1 s 1.2) a také portech Ringu (S1: 1.3 a S2: 1.3). Nakonfigurujeme RSTP kořenový Bridge a záložní RSTP kořenový Bridge v Ringu. - nastavte priority. - máte-li větší průměr RSTP než je určen přednastavenou hodnotou Max Age= 20, upravte Max Age a Forward Delay odpovídajícím způsobem. Aktivujte v celé RSTP síti protokol RSTP a zapněte na režim kompatibility v Ringu. Po konfiguraci všech zúčastněných zařízení, připojte redundantní RSTP připojení k MPR Ringu. Konfigurace Switchů v síti s kombinací a RSTP dle předcházejícího obrázku. Parametr S1 S2 S3 S4 S5 S6 settings Ring redundancy - - Ring port 1 1.1 1.1 - - 1.1 1.1 Ring port 2 1.2 1.2 - - 1.2 1.2 Port Ringu pro připojení RSTP sítě 1.3 1.3 - - - - Redundancy Manager mode On Off - - Off Off operation On On - - On On RSTP settings Pro každý RSTP port: STP State Enable On On On On On On Protocol Configuration: 4096 0 32768 32768 32768 32768 priority (S2<S1<S3 a S2<S1<S4] RSTP: Global: Operation On On On On On On RSTP: Global: kompatibility On On - - On On Upozornění: Ring většinou neumožňuje agregovat linky mezi uzly kruhu do jednoho Trunku. Nelze tedy zvětšit šířku pásma. Zdroje: Jordán V., Ondrák V.: Infrastruktura komunikačních systémů II., Kritické aplikace, Akademické nakladatelství CERM, s.r.o., 2015, ISBN 978-80-214-5240-4