Ndërroni ACL-të në detaje

ACL-të (Lista e Kontrollit të Aksesit) në pajisjet e rrjetit mund të zbatohen si në harduer ashtu edhe në softuer, ose më shpesh, ACL të bazuara në harduer dhe softuer. Dhe nëse gjithçka duhet të jetë e qartë me ACL-të e bazuara në softuer - këto janë rregulla që ruhen dhe përpunohen në RAM (d.m.th. në Planin e Kontrollit), me të gjitha kufizimet që pasojnë, atëherë do të kuptojmë se si zbatohen ACL-të e bazuara në harduer dhe do të funksionojnë artikull. Si shembull, ne do të përdorim çelsat nga seria ExtremeSwitching nga Extreme Networks.

Ndërroni ACL-të në detaje

Meqenëse ne jemi të interesuar për ACL-të e bazuara në harduer, zbatimi i brendshëm i Planit të të Dhënave, ose çipave aktualë (ASIC) të përdorura, është i një rëndësie të madhe për ne. Të gjitha linjat e ndërrimit të rrjeteve ekstreme janë ndërtuar në Broadcom ASIC, dhe për këtë arsye shumica e informacionit të mëposhtëm do të jetë e vërtetë edhe për çelësat e tjerë në treg që janë implementuar në të njëjtat ASIC.

Siç mund të shihet nga figura e mësipërme, "ContentAware Engine" është drejtpërdrejt përgjegjës për funksionimin e ACL-ve në chipset, veçmas për "hyrje" dhe "dalje". Arkitekturisht, ato janë të njëjta, vetëm "dalja" është më pak e shkallëzueshme dhe më pak funksionale. Fizikisht, të dy "ContentAware Engines" janë memorie TCAM plus logjikë shoqëruese, dhe çdo rregull ACL i përdoruesit ose i sistemit është një maskë e thjeshtë bit e shkruar në këtë memorie. Kjo është arsyeja pse chipset përpunon trafikun paketë pas pakete dhe pa degradim të performancës.

Fizikisht, i njëjti Ingress/Egress TCAM, nga ana tjetër, ndahet logjikisht në disa segmente (në varësi të sasisë së vetë kujtesës dhe platformës), të ashtuquajturat "feta ACL". Për shembull, e njëjta gjë ndodh me fizikisht të njëjtin HDD në laptop kur krijoni disa disqe logjike në të - C:>, D:>. Çdo fetë ACL, nga ana tjetër, përbëhet nga qeliza të memories në formën e "stringave" ku shkruhen "rregullat" (rregullat/maskat e biteve).

Ndërroni ACL-të në detaje
Ndarja e TCAM në feta ACL ka një logjikë të caktuar pas saj. Në secilën prej pjesëve individuale ACL, mund të shkruhen vetëm "rregulla" që janë të pajtueshme me njëra-tjetrën. Nëse ndonjë nga "rregullat" nuk është i pajtueshëm me atë të mëparshëm, atëherë ai do të shkruhet në pjesën tjetër ACL, pavarësisht se sa rreshta të lirë për "rregullat" kanë mbetur në atë të mëparshme.

Nga vjen atëherë kjo përputhshmëri ose papajtueshmëri e rregullave të ACL? Fakti është se një "rresht" TCAM, ku shkruhet "rregullat", ka një gjatësi prej 232 bit dhe është i ndarë në disa fusha - Fixed, Field1, Field2, Field3. Memoria TCAM 232 bit ose 29 bit është e mjaftueshme për të regjistruar bit-maskën e një adrese specifike MAC ose IP, por shumë më pak se koka e plotë e paketës Ethernet. Në çdo pjesë individuale ACL, ASIC kryen një kërkim të pavarur sipas bit-maskut të vendosur në F1-F3. Në përgjithësi, ky kërkim mund të kryhet duke përdorur 128 bajtët e parë të kokës së Ethernetit. Në fakt, pikërisht për shkak se kërkimi mund të kryhet mbi 128 bajt, por mund të shkruhen vetëm 29 bajt, për një kërkim të saktë duhet të vendoset një kompensim në lidhje me fillimin e paketës. Kompensimi për çdo pjesë ACL vendoset kur i shkruhet rregulli i parë, dhe nëse, kur shkruani një rregull pasues, zbulohet nevoja për një kompensim tjetër, atëherë një rregull i tillë konsiderohet i papajtueshëm me të parin dhe i shkruhet feta tjetër ACL.

Tabela më poshtë tregon rendin e përputhshmërisë së kushteve të specifikuara në ACL. Çdo linjë individuale përmban bit-maska ​​të gjeneruara që janë të pajtueshme me njëra-tjetrën dhe të papajtueshme me linjat e tjera.

Ndërroni ACL-të në detaje
Çdo paketë individuale e përpunuar nga ASIC kryen një kërkim paralel në çdo pjesë ACL. Kontrolli kryhet deri në ndeshjen e parë në fetën ACL, por lejohen ndeshje të shumta për të njëjtën paketë në feta të ndryshme ACL. Çdo "rregull" individual ka një veprim përkatës që duhet të kryhet nëse kushti (bit-maskë) përputhet. Nëse një ndeshje ndodh në disa pjesë ACL në të njëjtën kohë, atëherë në bllokun "Action Conflict Resolution", bazuar në përparësinë e pjesës ACL, merret një vendim se cili veprim të kryhet. Nëse ACL përmban të dyja "veprim" (leje/refuzim) dhe "aksion-modifikues" (count/QoS/log/...), atëherë në rast të shumëpërputhjeve do të ekzekutohet vetëm "veprimi" me prioritet më të lartë, ndërsa "veprimi -modifier” do të plotësohet e gjitha. Shembulli i mëposhtëm tregon se të dy numëruesit do të shtohen dhe do të ekzekutohet "mohimi" me prioritet më të lartë.

Ndërroni ACL-të në detaje
"Udhëzuesi i zgjidhjeve ACL" me informacion më të detajuar në lidhje me funksionimin e ACL në domenin publik në faqen e internetit ekstremnetworks.com. Çdo pyetje që lind ose mbetet gjithmonë mund t'i bëhet stafit të zyrës sonë - [email mbrojtur].

Burimi: www.habr.com

Shto një koment