Podrobně přepínejte seznamy ACL

Seznamy ACL (Access Control List) na síťových zařízeních mohou být implementovány jak v hardwaru, tak v softwaru, nebo častěji řečeno, v hardwarových a softwarových ACL. A pokud by mělo být vše jasné se softwarovými ACL – to jsou pravidla, která jsou uložena a zpracována v RAM (tj. v řídicí rovině), se všemi z toho vyplývajícími omezeními, pak pochopíme, jak jsou hardwarové ACL implementovány a fungují naše článek. Jako příklad použijeme přepínače z řady ExtremeSwitching od Extreme Networks.

Podrobně přepínejte seznamy ACL

Vzhledem k tomu, že se zajímáme o hardwarové ACL, má pro nás prvořadý význam interní implementace datové roviny neboli samotné používané čipové sady (ASIC). Všechny přepínače Extreme Networks jsou postaveny na Broadcom ASIC, a proto většina níže uvedených informací bude platit i pro ostatní přepínače na trhu, které jsou implementovány na stejných ASIC.

Jak je vidět z obrázku výše, „ContentAware Engine“ je přímo zodpovědný za provoz ACL v čipové sadě, zvlášť za „vstup“ a „výstup“. Architektonicky jsou stejné, pouze „výstup“ je méně škálovatelný a méně funkční. Fyzicky jsou oba „ContentAware Engines“ pamětí TCAM plus doprovodná logika a každé uživatelské nebo systémové pravidlo ACL je jednoduchá bitová maska ​​zapsaná do této paměti. Čipová sada proto zpracovává provoz paket po paketu a bez snížení výkonu.

Fyzicky je stejný Ingress/Egress TCAM rozdělen logicky do několika segmentů (v závislosti na velikosti samotné paměti a platformy), tzv. „ACL slices“. Totéž se například stane s fyzicky stejným HDD na vašem notebooku, když na něm vytvoříte několik logických jednotek - C:>, D:>. Každý ACL-slice se zase skládá z paměťových buněk ve formě „řetězců“, kde jsou zapsána „pravidla“ (pravidla/bitové masky).

Podrobně přepínejte seznamy ACL
Rozdělení TCAM na ACL-slice má za sebou jistou logiku. V každém z jednotlivých segmentů ACL lze zapsat pouze „pravidla“, která jsou vzájemně kompatibilní. Pokud některé z „pravidel“ není kompatibilní s předchozím, bude zapsáno do dalšího řezu ACL, bez ohledu na to, kolik volných řádků pro „pravidla“ zbývá v předchozím.

Odkud tedy pochází tato kompatibilita nebo nekompatibilita pravidel ACL? Faktem je, že jeden „řádek“ TCAM, kde jsou zapsána „pravidla“, má délku 232 bitů a je rozdělen do několika polí - Fixed, Field1, Field2, Field3. 232bitová nebo 29bajtová paměť TCAM je dostatečná pro zaznamenání bitové masky konkrétní MAC nebo IP adresy, ale mnohem méně než plná hlavička ethernetového paketu. V každém jednotlivém segmentu ACL provádí ASIC nezávislé vyhledávání podle bitové masky nastavené v F1-F3. Obecně lze toto vyhledávání provést pomocí prvních 128 bajtů ethernetové hlavičky. Ve skutečnosti právě proto, že vyhledávání lze provádět přes 128 bajtů, ale lze zapsat pouze 29 bajtů, pro správné vyhledávání musí být nastaven offset vzhledem k začátku paketu. Offset pro každý ACL-slice je nastaven, když je do něj zapsáno první pravidlo, a pokud se při zápisu následujícího pravidla zjistí potřeba dalšího offsetu, pak je takové pravidlo považováno za nekompatibilní s prvním a je zapsáno do další ACL řez.

Níže uvedená tabulka ukazuje pořadí kompatibility podmínek uvedených v ACL. Každý jednotlivý řádek obsahuje vygenerované bitové masky, které jsou vzájemně kompatibilní a nekompatibilní s jinými řádky.

Podrobně přepínejte seznamy ACL
Každý jednotlivý paket zpracovaný ASIC spustí paralelní vyhledávání v každém ACL segmentu. Kontrola se provádí až do první shody v řezu ACL, ale pro stejný paket v různých řezech ACL je povoleno více shod. Každé jednotlivé „pravidlo“ má odpovídající akci, která musí být provedena, pokud je podmínka (bitová maska) splněna. Pokud dojde ke shodě v několika řezech ACL najednou, pak se v bloku „Action Conflict Resolution“ na základě priority řezu ACL rozhodne, kterou akci provést. Pokud ACL obsahuje jak „akce“ (povolit/zakázat), tak „akce-modifikátor“ (count/QoS/log/…), pak v případě více shod bude provedena pouze „akce“ s vyšší prioritou, zatímco „akce“ -modifikátor“ bude vše dokončeno. Níže uvedený příklad ukazuje, že oba čítače budou zvýšeny a bude provedeno „zakázat“ s vyšší prioritou.

Podrobně přepínejte seznamy ACL
„Průvodce řešeními ACL“ s podrobnějšími informacemi o fungování ACL ve veřejné doméně na webu Extremenetworks.com. Jakékoli otázky, které vyvstanou nebo přetrvávají, se vždy můžete zeptat zaměstnanců naší kanceláře - [chráněno e-mailem].

Zdroj: www.habr.com

Přidat komentář