ACL мәндерін егжей-тегжейлі ауыстырыңыз

Желілік құрылғылардағы ACLs (Access Control List) аппараттық және бағдарламалық құралда да, әдетте аппараттық және бағдарламалық қамтамасыз ету негізіндегі ACL-де де жүзеге асырылуы мүмкін. Бағдарламалық жасақтамаға негізделген ACL-де бәрі түсінікті болуы керек болса - бұл барлық шектеулермен ЖЖҚ-да (яғни Басқару жазықтығында) сақталатын және өңделетін ережелер болса, онда біз аппараттық құралдарға негізделген ACL қалай іске асырылатынын түсінеміз және біздің мақала. Мысал ретінде біз ExtremeSwitching сериясынан Extreme Networks қосқыштарын қолданамыз.

ACL мәндерін егжей-тегжейлі ауыстырыңыз

Бізді аппараттық құралдарға негізделген ACL қызықтыратындықтан, деректер жазықтығының немесе пайдаланылатын нақты чипсеттердің (ASIC) ішкі іске асырылуы біз үшін өте маңызды. Барлық Extreme Networks коммутатор желілері Broadcom ASIC құрылғыларында құрастырылған, сондықтан төменде келтірілген ақпараттың көпшілігі нарықтағы сол ASIC құрылғыларында іске асырылатын басқа қосқыштар үшін де дұрыс болады.

Жоғарыдағы суреттен көріп отырғанымыздай, «ContentAware қозғалтқышы» чипсеттегі ACL жұмысына тікелей жауапты, «кіру» және «шығу» үшін бөлек. Архитектуралық жағынан олар бірдей, тек «шығу» аз масштабталады және аз функционалды. Физикалық тұрғыдан алғанда, «ContentAware қозғалтқыштарының» екеуі де TCAM жады және оған қоса берілетін логика және әрбір пайдаланушы немесе жүйенің ACL ережесі осы жадқа жазылған қарапайым бит маскасы болып табылады. Сондықтан чипсет трафик пакетін пакет бойынша және өнімділікті төмендетпей өңдейді.

Физикалық тұрғыдан бірдей Ingress/Egress TCAM, өз кезегінде, логикалық түрде бірнеше сегменттерге (жадтың өзі мен платформаның көлеміне байланысты), «ACL кесінділері» деп аталады. Мысалы, ноутбугыңыздағы физикалық бірдей HDD дискісінде бірнеше логикалық дискілерді жасағанда бірдей нәрсе болады - C:>, D:>. Әрбір ACL тілігі, өз кезегінде, «ережелер» (ережелер/бит маскалары) жазылатын «жолдар» түріндегі жад ұяшықтарынан тұрады.

ACL мәндерін егжей-тегжейлі ауыстырыңыз
TCAM-ды ACL-кесінділеріне бөлудің артында белгілі бір логика бар. Жеке ACL-кесінділерінің әрқайсысында тек бір-бірімен үйлесімді «ережелерді» жазуға болады. Егер «ережелердің» кез келгені алдыңғысымен үйлеспесе, алдыңғысында «ережелерге» қанша бос жол қалғанына қарамастан, ол келесі ACL-кесіндіге жазылады.

ACL ережелерінің бұл үйлесімділігі немесе сәйкессіздігі қайдан пайда болады? «Ережелер» жазылған бір TCAM «жолы» ұзындығы 232 бит және бірнеше өрістерге бөлінген - Fixed, Field1, Field2, Field3. 232 бит немесе 29 байт TCAM жады нақты MAC немесе IP мекенжайының бит-маскасын жазу үшін жеткілікті, бірақ толық Ethernet пакетінің тақырыбынан әлдеқайда аз. Әрбір жеке ACL кесіндісінде ASIC F1-F3 ішінде орнатылған бит маскасына сәйкес тәуелсіз іздеуді орындайды. Жалпы, бұл іздеуді Ethernet тақырыбының алғашқы 128 байты арқылы орындауға болады. Шындығында, іздеуді 128 байттан астам орындауға болатындықтан, бірақ тек 29 байт жазуға болатындықтан, дұрыс іздеу үшін пакеттің басына қатысты офсетті орнату керек. Әрбір ACL тілігі үшін ығысу оған бірінші ереже жазылған кезде орнатылады, ал егер келесі ережені жазу кезінде басқа ығысу қажеттілігі анықталса, онда мұндай ереже бірінші ережемен үйлеспейтін болып саналады және келесі ережеге жазылады. келесі ACL тілігі.

Төмендегі кестеде ACL-де көрсетілген шарттардың үйлесімділік реті көрсетілген. Әрбір жеке жолда бір-бірімен үйлесімді және басқа жолдармен үйлеспейтін жасалған бит маскалары бар.

ACL мәндерін егжей-тегжейлі ауыстырыңыз
ASIC өңдейтін әрбір жеке пакет әрбір ACL кесіндісінде параллельді іздеуді іске қосады. Тексеру ACL-кесіндідегі бірінші сәйкестікке дейін орындалады, бірақ әртүрлі ACL-кесінділерінде бір пакет үшін бірнеше сәйкестікке рұқсат етіледі. Әрбір жеке «ережеде» шарт (бит-маска) сәйкес болған жағдайда орындалуы тиіс сәйкес әрекет бар. Егер сәйкестік бірден бірнеше ACL-кесімдерінде орын алса, онда «Әрекет қақтығыстарын шешу» блогында ACL-кесіндісінің басымдылығы негізінде қандай әрекетті орындау керектігі туралы шешім қабылданады. Егер ACL құрамында «әрекет» (рұқсат ету/қабылдамау) және «әрекет-модификатор» (count/QoS/log/…) екеуі де болса, онда бірнеше сәйкестіктер болған жағдайда тек жоғарырақ басымдылықтағы «әрекет» орындалады, ал «әрекет» -модификатор» барлығы аяқталады. Төмендегі мысал екі есептегіштің де ұлғайтылатынын және жоғарырақ басымдылық «бас тарту» орындалатынын көрсетеді.

ACL мәндерін егжей-тегжейлі ауыстырыңыз
«ACL шешімдері бойынша нұсқаулық» веб-сайтта қоғамдық доменде ACL жұмысы туралы толығырақ ақпарат бар extremenetworks.com. Кез келген туындаған немесе қалған сұрақтарды біздің кеңсе қызметкерлеріне әрқашан қоюға болады - [электрондық пошта қорғалған].

Ақпарат көзі: www.habr.com

пікір қалдыру