Skiptu um ACL í smáatriðum

ACLs (Access Control List) á nettækjum er hægt að útfæra bæði í vélbúnaði og hugbúnaði, eða almennt talað, vélbúnaðar- og hugbúnaðarbundin ACL. Og ef allt ætti að vera skýrt með hugbúnaðartengd ACL - þetta eru reglur sem eru geymdar og unnar í vinnsluminni (þ.e.a.s. á Control Plane), með öllum þeim takmörkunum sem fylgja því, þá munum við skilja hvernig vélbúnaðartengd ACL er útfærð og vinna okkar grein. Sem dæmi munum við nota rofa úr ExtremeSwitching seríunni frá Extreme Networks.

Skiptu um ACL í smáatriðum

Þar sem við höfum áhuga á vélbúnaðartengdum ACL, er innri útfærsla gagnaplansins, eða raunverulegu flísasettin (ASIC) sem notuð eru, afar mikilvæg fyrir okkur. Allar Extreme Networks rofalínur eru byggðar á Broadcom ASIC og því munu flestar upplýsingarnar hér að neðan eiga við um aðra rofa á markaðnum sem eru innleiddir á sömu ASICs.

Eins og sést á myndinni hér að ofan er „ContentAware Engine“ beint ábyrg fyrir rekstri ACLs í kubbasettinu, sérstaklega fyrir „inngang“ og „útgang“. Byggingarfræðilega séð eru þau eins, aðeins „útgangur“ er minna stigstærð og minna hagnýtur. Líkamlega eru báðar „ContentAware vélar“ TCAM minni auk meðfylgjandi rökfræði, og hver notandi eða ACL regla kerfisins er einföld bitagríma sem er skrifuð í þetta minni. Þess vegna vinnur kubbasettið umferðarpakka fyrir pakka og án þess að frammistöðurýrni.

Líkamlega er sama Ingress/Egress TCAM aftur skipt rökrétt í nokkra hluta (fer eftir magni minnis sjálfs og vettvangsins), svokallaðar „ACL sneiðar“. Til dæmis gerist það sama með líkamlega sama HDD á fartölvunni þinni þegar þú býrð til nokkur rökrétt drif á henni - C:>, D:>. Hver ACL-sneið samanstendur af minnishólfum í formi „strengja“ þar sem „reglur“ (reglur/bitagrímur) eru skrifaðar.

Skiptu um ACL í smáatriðum
Skipting TCAM í ACL-sneiðar hefur ákveðna rökfræði að baki. Í hverri einstöku ACL-sneiðum er aðeins hægt að skrifa „reglur“ sem eru samhæfðar hver annarri. Ef einhver af „reglunum“ er ekki samhæfð við þá fyrri, þá verður hún skrifuð á næstu ACL-sneið, óháð því hversu margar lausar línur fyrir „reglur“ eru eftir í þeirri fyrri.

Hvaðan kemur þá þessi samhæfni eða ósamrýmanleiki ACL reglna? Staðreyndin er sú að ein TCAM „lína“, þar sem „reglur“ eru skrifaðar, hefur lengd 232 bita og er skipt í nokkra reiti - Fixed, Field1, Field2, Field3. 232 bita eða 29 bæta TCAM minni er nóg til að taka upp bitagrímu tiltekins MAC eða IP tölu, en mun minna en fullur Ethernet pakkahausinn. Í hverri einstakri ACL-sneið framkvæmir ASIC sjálfstæða uppflettingu í samræmi við bitamaskuna sem er sett í F1-F3. Almennt er hægt að framkvæma þessa uppflettingu með því að nota fyrstu 128 bæti Ethernet haussins. Reyndar, einmitt vegna þess að hægt er að framkvæma leitina yfir 128 bæti, en aðeins er hægt að skrifa 29 bæti, þarf að stilla offset miðað við upphaf pakkans til að leita rétta. Frávikið fyrir hverja ACL-sneið er stillt þegar fyrsta reglan er skrifuð á hana, og ef, þegar síðari reglu er rituð, uppgötvast þörf fyrir aðra offset, þá er slík regla talin ósamrýmanleg þeirri fyrstu og er skrifuð í næsta ACL-sneið.

Taflan hér að neðan sýnir samhæfnisröð skilyrðanna sem tilgreind eru í ACL. Hver einstök lína inniheldur myndaðar bitagrímur sem eru samhæfar hver við aðra og ósamrýmanlegar öðrum línum.

Skiptu um ACL í smáatriðum
Hver einstakur pakki sem ASIC vinnur úr rekur samhliða leit í hverri ACL-sneið. Athugunin er framkvæmd fram að fyrstu samsvörun í ACL-sneiðinni, en margar samsvörun eru leyfðar fyrir sama pakkann í mismunandi ACL-sneiðum. Hver einstök „regla“ hefur samsvarandi aðgerð sem þarf að framkvæma ef ástandið (bitamaska) er samsvörun. Ef samsvörun á sér stað í nokkrum ACL-sneiðum í einu, þá er tekin ákvörðun í „Action Conflict Resolution“ reitnum, byggt á forgangi ACL-sneiðarinnar, hvaða aðgerð á að framkvæma. Ef ACL inniheldur bæði „aðgerð“ (leyfa/hafna) og „aðgerðabreytandi“ (count/QoS/log/…), þá verður aðeins „aðgerð“ með hærri forgang framkvæmt, ef um margar samsvörun er að ræða, en „aðgerð“ -modifier“ verður allt lokið. Dæmið hér að neðan sýnir að báðir teljararnir verða auknir og „neita“ með hærri forgang verður keyrt.

Skiptu um ACL í smáatriðum
„ACL lausnaleiðbeiningar“ með ítarlegri upplýsingum um rekstur ACL í almenningseigu á vefsíðunni extremenetworks.com. Allar spurningar sem vakna eða eru eftir má alltaf beina til starfsmanna skrifstofu okkar - [netvarið].

Heimild: www.habr.com

Bæta við athugasemd