ACL-switchar i detalj

ACL (Access Control List) pÄ nÀtverksenheter kan implementeras bÄde hÄrdvaru- och mjukvarubaserat, eller mer vanligt uttryckt hardware och software-based ACL. Om mjukvarubaserade ACL Àr tydliga, det vill sÀga regler som lagras och behandlas i RAM (det vill sÀga pÄ Control Plane), med alla dÀrav följande begrÀnsningar, sÄ kommer vi att undersöka hur hÄrdvarubaserade ACL implementeras och fungerar i vÄr artikel. Vi kommer att anvÀnda switchar frÄn ExtremeSwitching-serien frÄn Extreme Networks som exempel.

ACL-switchar i detalj

Eftersom vi Àr intresserade av just hÄrdvarubaserade ACL Àr den interna implementeringen av Data Plane, eller de anvÀndna chipp med ASIC, av största vikt för oss. Switchar i alla serier frÄn Extreme Networks Àr byggda pÄ ASIC frÄn Broadcom, och dÀrför gÀller den mesta av informationen nedan Àven för andra switchar pÄ marknaden som Àr implementerade med liknande ASIC.

Som man kan se i bilden ovan Àr det "ContentAware Engine" som direkt ansvarar för operationen av ACL i chippet, uppdelat i ingÄng och utgÄng. Arkitekturellt Àr de identiska, men "egress" Àr mindre skalbar och mindre funktionell. Fysiskt Àr bÄda "ContentAware Engine" TCAM-minne plus tillhörande logik, och varje anvÀndar- eller systemregel för ACL Àr en enkel bitmask (bit-mask) som skrivs in i detta minne. Det Àr just dÀrför som behandlingen av trafik av chippet sker paket för paket utan prestandaförsÀmring.

Fysiskt delas samma Ingress/Egress TCAM logiskt upp i flera segment (beroende pĂ„ minnesmĂ€ngd och plattform), sĂ„ kallade "ACL slices". Till exempel sker samma sak med en fysisk hĂ„rddisk i din laptop nĂ€r du skapar flera logiska enheter – C:>, D:>. Varje ACL-slice bestĂ„r i sin tur av minnesceller i form av "rader" dĂ€r "rules" (regler/bitmasker) skrivs in.

ACL-switchar i detalj
Uppdelningen av TCAM i ACL-slices bygger pÄ en viss logik. I varje separat ACL-slice kan endast kompatibla "rules" skrivas. Om nÄgot av "rules" inte Àr kompatibelt med det föregÄende, kommer det att skrivas i nÀsta ACL-slice i ordningen, oavsett hur mÄnga lediga rader för "rules" som finns kvar i det föregÄende.

VarifrĂ„n kommer dĂ„ denna kompatibilitet eller inkompatibilitet av ACL-regler? Tanken Ă€r att en "rad" TCAM, dĂ€r "regler" skrivs, har en lĂ€ngd av 232 bitar och delas upp i flera fĂ€lt – Fixed, Field1, Field2, Field3. 232 bitar eller 29 byte TCAM-minne Ă€r mer Ă€n tillrĂ€ckligt för att skriva en bitmask för en viss MAC- eller IP-adress, men Ă€r betydligt mindre Ă€n hela Ethernet-paketets rubrik. I varje enskild ACL-slice utför ASIC en oberoende uppslagning baserat pĂ„ de instĂ€llda bitmaskerna i F1-F3. I allmĂ€nhet kan denna uppslagning göras i de första 128 byte av Ethernet-rubriken. Just pĂ„ grund av att sökningen kan göras i 128 byte, medan endast 29 byte kan skrivas, mĂ„ste en förskjutning (offset) stĂ€llas in relativt paketets början för en korrekt uppslagning. Förskjutningen för varje ACL-slice stĂ€lls in vid skrivningen av den första regeln, och om det vid skrivning av en efterföljande regel upptĂ€cks ett behov av en annan förskjutning, anses detta regel inkompatibelt med den första och skrivs in i nĂ€sta ACL-slice.

I tabellen nedan ges ordningen för kompatibiliteten av villkor som skrivs in i ACL. Varje enskild rad innehÄller de bitmasker som Àr kompatibla med varandra och inkompatibla med andra rader.

ACL-switchar i detalj
Varje enskilt paket som behandlas av ASIC startar en parallell uppslagning i varje ACL-slice. Kontrollen görs till den första matchningen i ACL-slice, men flera matchningar för samma paket i olika ACL-slice tillĂ„ts. Varje enskild "regel" har en motsvarande Ă„tgĂ€rd som mĂ„ste utföras vid en matchning av villkoren (bitmask). Om en matchning sker i flera ACL-slices, fattas beslutet om vilken Ă„tgĂ€rd som ska utföras i blocket “Action Conflict Resolution” baserat pĂ„ prioriteten av ACL-slice. Om det i ACL Ă€r angivet bĂ„de “action” (permit/deny) och “action-modifier” (count/QoS/log/
), kommer endast den mer prioriterade “action” att utföras vid flera matchningar, medan alla “action-modifier” kommer att genomföras. I exemplet nedan visas att bĂ„da rĂ€knarna ökas och den mer prioriterade “deny” utförs.

ACL-switchar i detalj
“ACL Solutions Guide” med mer detaljerad information om hur ACL fungerar tillgĂ€nglig pĂ„ webbplatsen extremenetworks.com. Eventuella uppkomna eller kvarstĂ„ende frĂ„gor kan alltid stĂ€llas till medarbetarna pĂ„ vĂ„rt kontor – cis@extremenetworks.com.

KĂ€lla: habr.com

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster