ACLlarni batafsil o'zgartiring

Tarmoq qurilmalaridagi ACL (Kirishni boshqarish ro'yxati) apparat va dasturiy ta'minotda, yoki kengroq aytganda, apparat va dasturiy ta'minotga asoslangan ACLlarda amalga oshirilishi mumkin. Va agar dasturiy ta'minotga asoslangan ACLlar bilan hamma narsa aniq bo'lishi kerak bo'lsa - bular RAMda (ya'ni Boshqarish tekisligida) saqlanadigan va qayta ishlanadigan qoidalar bo'lib, barcha cheklovlar bilan bog'liq bo'lsa, biz apparatga asoslangan ACLlar qanday amalga oshirilishini tushunamiz va o'z ishimizni tushunamiz. maqola. Misol tariqasida, biz ExtremeSwitching seriyasidagi Extreme Networks kalitlaridan foydalanamiz.

ACLlarni batafsil o'zgartiring

Biz apparatga asoslangan ACL-larga qiziqqanimiz sababli, Data Plane-ning ichki amalga oshirilishi yoki ishlatiladigan haqiqiy chipsetlar (ASIC) biz uchun katta ahamiyatga ega. Barcha Extreme Networks kommutator liniyalari Broadcom ASIC-larida qurilgan va shuning uchun quyida keltirilgan ma'lumotlarning aksariyati xuddi shu ASIC-larda amalga oshiriladigan bozordagi boshqa kalitlarga ham tegishli bo'ladi.

Yuqoridagi rasmdan ko'rinib turibdiki, "ContentAware Engine" chipsetdagi ACL larning ishlashi uchun "kirish" va "chiqish" uchun alohida javobgardir. Arxitektura jihatidan ular bir xil, faqat "chiqish" kamroq miqyosli va kamroq funktsionaldir. Jismoniy jihatdan ikkala "ContentAware Dvigatellari" ham TCAM xotirasi va unga qo'shiladigan mantiqdir va har bir foydalanuvchi yoki tizimning ACL qoidasi ushbu xotiraga yozilgan oddiy bit niqobidir. Shuning uchun chipset trafik paketini paketlar bo'yicha va unumdorlikni pasaytirmasdan qayta ishlaydi.

Jismoniy jihatdan bir xil Ingress/Egress TCAM, o'z navbatida, mantiqiy ravishda "ACL tilimlari" deb ataladigan bir nechta segmentlarga (xotiraning o'zi va platformaning hajmiga qarab) bo'linadi. Misol uchun, noutbukda bir nechta mantiqiy drayverlarni yaratganingizda, xuddi shu narsa jismonan bir xil HDD bilan sodir bo'ladi - C:>, D:>. Har bir ACL tilim, o'z navbatida, "qoidalar" (qoidalar/bit maskalari) yoziladigan "satrlar" ko'rinishidagi xotira hujayralaridan iborat.

ACLlarni batafsil o'zgartiring
TCAM ning ACL-bo'limlariga bo'linishi ma'lum bir mantiqqa ega. ACL-bo'limlarining har birida faqat bir-biriga mos keladigan "qoidalar" yozilishi mumkin. Agar "qoidalar" dan birortasi oldingisiga mos kelmasa, oldingisida "qoidalar" uchun qancha bo'sh satr qolganidan qat'i nazar, u keyingi ACL-tilimga yoziladi.

ACL qoidalarining bu mosligi yoki nomuvofiqligi qayerdan kelib chiqadi? Gap shundaki, "qoidalar" yozilgan bitta TCAM "chiziq" uzunligi 232 bitga ega va bir nechta maydonlarga bo'lingan - Fixed, Field1, Field2, Field3. 232 bit yoki 29 bayt TCAM xotirasi ma'lum bir MAC yoki IP-manzilning bit niqobini yozib olish uchun etarli, ammo to'liq Ethernet paket sarlavhasidan ancha kam. Har bir alohida ACL-bo'limida ASIC F1-F3-da o'rnatilgan bit-maskaga muvofiq mustaqil qidiruvni amalga oshiradi. Umuman olganda, bu qidiruv Ethernet sarlavhasining birinchi 128 bayti yordamida amalga oshirilishi mumkin. Aslida, qidiruv 128 baytdan ortiq amalga oshirilishi mumkinligi sababli, faqat 29 bayt yozish mumkin, to'g'ri qidirish uchun paketning boshiga nisbatan ofset o'rnatilishi kerak. Har bir ACL-bo'limi uchun ofset birinchi qoida yozilganda o'rnatiladi va agar keyingi qoidani yozishda boshqa ofsetga ehtiyoj aniqlansa, bunday qoida birinchisiga mos kelmaydigan deb hisoblanadi va unga yoziladi. keyingi ACL tilim.

Quyidagi jadvalda ACLda ko'rsatilgan shartlarning muvofiqligi tartibi ko'rsatilgan. Har bir alohida satrda bir-biriga mos keladigan va boshqa satrlar bilan mos kelmaydigan yaratilgan bit-maskalar mavjud.

ACLlarni batafsil o'zgartiring
ASIC tomonidan qayta ishlangan har bir alohida paket har bir ACL bo'limida parallel qidiruvni amalga oshiradi. Tekshirish ACL tilidagi birinchi o'yingacha amalga oshiriladi, biroq turli ACL tilimlarida bir xil paket uchun bir nechta mos kelishiga ruxsat beriladi. Har bir alohida "qoida" shart (bit-maska) mos kelsa, bajarilishi kerak bo'lgan tegishli harakatga ega. Agar bir vaqtning o'zida bir nechta ACL-bo'laklarida mos keladigan bo'lsa, u holda "Harakat nizolarni hal qilish" blokida, ACL-tilimning ustuvorligidan kelib chiqqan holda, qaysi harakatni bajarish to'g'risida qaror qabul qilinadi. Agar ACL ikkala "harakat" (ruxsat berish/rad etish) va "harakat o'zgartiruvchisi" (count/QoS/log/...) bo'lsa, u holda bir nechta mos kelganda faqat yuqoriroq "harakat" bajariladi, "harakat" esa -modifier” hammasi yakunlanadi. Quyidagi misol shuni ko'rsatadiki, ikkala hisoblagich ham ko'payadi va yuqoriroq ustuvorlik "rad etish" bajariladi.

ACLlarni batafsil o'zgartiring
"ACL yechimlari bo'yicha qo'llanma" veb-saytda ACL ning umumiy mulkda ishlashi haqida batafsil ma'lumot bilan extremenetworks.com. Har qanday paydo bo'lgan yoki qolgan savollarni har doim bizning ofis xodimlarimizga berishingiz mumkin - [elektron pochta bilan himoyalangan].

Manba: www.habr.com

a Izoh qo'shish