{"id":55847,"date":"2020-01-30T00:00:00","date_gmt":"2020-01-29T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/acl-kommutatorov-v-detalyah"},"modified":"2020-02-18T14:04:00","modified_gmt":"2020-02-18T11:04:00","slug":"acl-kommutatorov-v-detalyah","status":"publish","type":"post","link":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/acl-kommutatorov-v-detalyah","title":{"rendered":"Detalles de ACL en conmutadores","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Las ACL (Listas de Control de Acceso) en dispositivos de red pueden implementarse tanto a nivel de hardware como a nivel de software, o, dicho de manera m\u00e1s com\u00fan, como ACL basadas en hardware y software. Y si las ACL basadas en software son f\u00e1ciles de entender \u2014 son reglas que se almacenan y procesan en la memoria RAM (es decir, en el Plano de Control), con todas las limitaciones que esto conlleva, en esta art\u00edculo vamos a analizar c\u00f3mo se implementan y funcionan las ACL basadas en hardware. Como ejemplo, utilizaremos los conmutadores de la serie ExtremeSwitching de Extreme Networks.<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de ACL en conmutadores\" src=\"\/wp-content\/uploads\/2020\/01\/1be325a0b6ed23e1e64f9a635dd77ce1.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n <noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nDado que nos interesa principalmente las ACL basadas en hardware, es fundamental para nosotros entender la implementaci\u00f3n interna del Plano de Datos, o los chipsets utilizados (ASIC). Todos los modelos de conmutadores de Extreme Networks est\u00e1n construidos sobre ASIC de Broadcom, por lo que la mayor parte de la informaci\u00f3n que se presenta a continuaci\u00f3n tambi\u00e9n ser\u00e1 aplicable a otros conmutadores disponibles en el mercado y que utilizan ASIC similares.<\/p>\n<p>Como se puede ver en la imagen anterior, el trabajo de las ACL en el chipset est\u00e1 a cargo del \u201cContentAware Engine\u201d, separado en \u201cingress\u201d y \u201cegress\u201d. Arquitect\u00f3nicamente son iguales, pero \u201cegress\u201d es menos escalable y funcional. F\u00edsicamente, ambos \u201cContentAware Engine\u201d consisten en memoria TCAM m\u00e1s l\u00f3gica asociada, y cada regla ACL, ya sea usuario o del sistema, es una simple m\u00e1scara de bits (bit-mask) escrita en esta memoria. Por eso, el procesamiento del tr\u00e1fico por el chipset se lleva a cabo paquete por paquete y sin degradaci\u00f3n del rendimiento.<\/p>\n<p>F\u00edsicamente, la misma TCAM Ingress\/Egress se divide l\u00f3gicamente en varios segmentos (dependiendo de la cantidad de memoria disponible y de la plataforma), los llamados \u201cACL slices\u201d. Por ejemplo, lo mismo ocurre con un solo HDD f\u00edsico en su computadora port\u00e1til, cuando crea varios discos l\u00f3gicos en \u00e9l \u2013 C:&gt;, D:&gt;. Cada ACL slice, a su vez, consiste en celdas de memoria, en forma de \u201cfilas\u201d donde se escriben las \u201crules\u201d (reglas\/m\u00e1scaras de bits).<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de ACL en conmutadores\" src=\"\/wp-content\/uploads\/2020\/01\/9cb85f7f1ea86fa53142a9665f98651b.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nLa divisi\u00f3n de la TCAM en ACL slices tiene una l\u00f3gica espec\u00edfica. En cada uno de los ACL slices individuales solo se pueden escribir \u201crules\u201d compatibles entre s\u00ed. Si alguna de las \u201crules\u201d no es compatible con la anterior, se escribir\u00e1 en el siguiente ACL slice, independientemente de cu\u00e1ntas filas libres para \u201crules\u201d queden en el anterior. <\/p>\n<p>\u00bfDe d\u00f3nde proviene entonces esta compatibilidad o incompatibilidad de las reglas ACL? La cuesti\u00f3n es que una \"fila\" de TCAM, donde se graban las \"reglas\", tiene una longitud de 232 bits y se divide en varios campos: Fixed, Field1, Field2, Field3. Los 232 bits o 29 bytes de memoria TCAM son m\u00e1s que suficientes para grabar una m\u00e1scara de bits de una direcci\u00f3n MAC o IP espec\u00edfica, pero son considerablemente menos que el encabezado completo de un paquete Ethernet. En cada ACL-slice, el ASIC realiza una b\u00fasqueda independiente utilizando la m\u00e1scara de bits establecida en F1-F3. En general, esta b\u00fasqueda puede realizarse en los primeros 128 bytes del encabezado Ethernet. En realidad, es precisamente porque la b\u00fasqueda puede realizarse en 128 bytes, mientras que solo se pueden grabar 29 bytes, que para una b\u00fasqueda correcta debe establecerse un desplazamiento (offset) relativo al inicio del paquete. El offset para cada ACL-slice se establece al grabar la primera regla, y si al grabar una regla posterior se detecta la necesidad de otro offset, esa regla se considera incompatible con la primera y se graba en el siguiente ACL-slice.<\/p>\n<p>La tabla a continuaci\u00f3n muestra el orden de compatibilidad de las condiciones que se escriben en el ACL. Cada fila individual contiene las m\u00e1scaras de bits que son compatibles entre s\u00ed, y las que son incompatibles con otras filas.<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de ACL en conmutadores\" src=\"\/wp-content\/uploads\/2020\/01\/a8cff880d3f588d17e5f583b638ff03f.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nCada paquete individual procesado por el ASIC inicia una b\u00fasqueda paralela en cada ACL-slice. La verificaci\u00f3n se realiza hasta el primer coincidencia en el ACL-slice, pero se permite m\u00faltiples coincidencias para el mismo paquete en diferentes ACL-slices. Cada \"regla\" individual tiene una acci\u00f3n correspondiente que debe ejecutarse en caso de una coincidencia de condici\u00f3n (m\u00e1scara de bits). Si se produce una coincidencia en varios ACL-slices, se toma una decisi\u00f3n en el bloque \"Resoluci\u00f3n de Conflictos de Acci\u00f3n\" en base a la prioridad del ACL-slice sobre qu\u00e9 acci\u00f3n realizar. Si el ACL tiene tanto \"acci\u00f3n\" (permitir \/ negar) como \"modificador de acci\u00f3n\" (contar \/ QoS \/ registrar \/ ...), en caso de m\u00faltiples coincidencias, solo se ejecutar\u00e1 la \"acci\u00f3n\" m\u00e1s prioritaria, mientras que todos los \"modificadores de acci\u00f3n\" se ejecutar\u00e1n.<\/p>\n<p><img decoding=\"async\" alt=\"Detalles de ACL en conmutadores\" src=\"\/wp-content\/uploads\/2020\/01\/c6556c6484e2850f7532462cf195e8c0.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/documentation.extremenetworks.com\/PDFs\/EXOS\/ACL_Solutions_Guide.pdf\">\"Gu\u00eda de Soluciones de ACL\"<\/a><\/noindex> con informaci\u00f3n m\u00e1s detallada sobre el funcionamiento de ACL disponible p\u00fablicamente en el sitio <noindex><a rel=\"nofollow\" href=\"http:\/\/extremenetworks.com\">extremenetworks.com<\/a><\/noindex>. Cualquier pregunta que surja o permanezca se puede dirigir siempre a los empleados de nuestra oficina \u2013 <noindex><a rel=\"nofollow\" href=\"mailto:cis@extremenetworks.com\">cis@extremenetworks.com<\/a><\/noindex>.<br \/>\n<br \/>Fuente: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/extremenetworks\/blog\/486070\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>ACL (Access Control List) \u043d\u0430 \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430\u0445 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u043a\u0430\u043a \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e, \u0442\u0430\u043a \u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e, \u0438\u043b\u0438 \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u0435\u0439 \u0433\u043e\u0432\u043e\u0440\u044f hardware \u0438 software-based ACL. \u0418 \u0435\u0441\u043b\u0438 \u0441 software-based ACL \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u0432\u0441\u0451 \u043f\u043e\u043d\u044f\u0442\u043d\u043e, \u2014 \u044d\u0442\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u0438 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0432 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 (\u0442.\u0435. \u043d\u0430 Control Plane), \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u0432\u044b\u0442\u0435\u043a\u0430\u044e\u0449\u0438\u043c\u0438 \u043e\u0442\u0441\u044e\u0434\u0430 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f\u043c\u0438, \u0442\u043e \u043a\u0430\u043a \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-55847","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"ACL (Access Control List) \u043d\u0430 \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430\u0445 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u043a\u0430\u043a \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e, \u0442\u0430\u043a \u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e, \u0438\u043b\u0438 \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u0435\u0439 \u0433\u043e\u0432\u043e\u0440\u044f hardware \u0438 software-based ACL.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/acl-kommutatorov-v-detalyah\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47ACL \u043a\u043e\u043c\u043c\u0443\u0442\u0430\u0442\u043e\u0440\u043e\u0432 \u0432 \u0434\u0435\u0442\u0430\u043b\u044f\u0445 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"ACL (Access Control List) \u043d\u0430 \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430\u0445 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u043a\u0430\u043a \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e, \u0442\u0430\u043a \u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e, \u0438\u043b\u0438 \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u0435\u0439 \u0433\u043e\u0432\u043e\u0440\u044f hardware \u0438 software-based ACL.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/acl-kommutatorov-v-detalyah\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-01-29T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:04:00+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47 Detalles de las ACL de los switches | ProHoster","description":"Las ACL (Listas de Control de Acceso) en dispositivos de red se pueden implementar tanto de forma hardware como software, o, m\u00e1s com\u00fanmente, como ACL basadas en hardware y software.","canonical_url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/acl-kommutatorov-v-detalyah","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"es_ES","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47ACL \u043a\u043e\u043c\u043c\u0443\u0442\u0430\u0442\u043e\u0440\u043e\u0432 \u0432 \u0434\u0435\u0442\u0430\u043b\u044f\u0445 | ProHoster","og:description":"ACL (Access Control List) \u043d\u0430 \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430\u0445 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u043a\u0430\u043a \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e, \u0442\u0430\u043a \u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e, \u0438\u043b\u0438 \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u0435\u0439 \u0433\u043e\u0432\u043e\u0440\u044f hardware \u0438 software-based ACL.","og:url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/acl-kommutatorov-v-detalyah","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-01-29T21:00:00+00:00","article:modified_time":"2020-02-18T11:04:00+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"55847","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 19:35:41","updated":"2022-09-29 07:17:30","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/55847","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/comments?post=55847"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/55847\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=55847"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=55847"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=55847"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}