Funciones de puente con PVLAN
En este tema se describe cómo se implementa el puente en los enrutadores de la serie MX que le ayudarán a comprender las mejoras únicas involucradas en la implementación de procedimientos de puente PVLAN. Considere dos puertos en un dominio de puente con los puertos respectivos en diferentes FPC y diferentes motores de reenvío de paquetes. Cuando un paquete entra en un puerto, el siguiente es el flujo, suponiendo que es un paquete etiquetado:
Como proceso inicial, se realiza una búsqueda en VLAN para determinar qué dominio puente forma el paquete. El resultado de la búsqueda identifica el identificador de dominio de puente (bd_id), el identificador de grupo de malla (mg_id). Con estos parámetros, se descubre otra información relacionada configurada para este dominio de puente.
Se realiza una búsqueda de dirección MAC de origen (SMAC) para averiguar si estas direcciones MAC se han aprendido o no. Si no es una dirección aprendida, se envía un paquete MLP (ruta para inundar el tráfico a los chips de aprendizaje MAC) a todos los demás motores de reenvío de paquetes que se asignan con este dominio de puente. Además, también se envía un paquete MLP al host.
Una búsqueda de dirección MAC de destino (DMAC) mediante la tupla (ID de dominio de puente, VLAN y dirección MAC de destino).
Si se observa una coincidencia para la dirección MAC, el resultado de la búsqueda apunta al siguiente salto de salida. El motor de reenvío de paquetes de salida se utiliza para reenviar el paquete.
Si se produce una pérdida durante la búsqueda, el siguiente salto de inundación se determina utilizando el ID de grupo de malla para inundar el paquete.
Las siguientes dos condiciones importantes se consideran en el puente PVLAN: Solo se permite el reenvío de un puerto específico a otro puerto. Se produce una caída de paquetes en la interfaz de salida después de atravesar y consumir el ancho de banda de la estructura. Para evitar que el tráfico caiga, la decisión sobre si es necesario descartar el paquete llega antes de atravesar la estructura, ahorrando así el ancho de banda de la estructura durante los ataques DoS. Debido a que existen varios dominios de puente superpuestos, lo que indica que el mismo puerto (promiscuo o vínculo de interconmutador) aparece como miembro en varios dominios de puente, las direcciones MAC aprendidas en un puerto deben ser visibles para los puertos de otro dominio de puente. Por ejemplo, una dirección MAC aprendida en un puerto promiscuo debe ser visible tanto para un puerto aislado (dominio puente aislado) como para un puerto comunitario (dominio puente comunitario) en los distintos dominios puente comunitarios.
Para resolver este problema, se utiliza una VLAN compartida para puentes PVLAN. En el modelo de VLAN compartida, todos los MAC aprendidos en todos los puertos se almacenan en el mismo dominio de puente (VLAN BD principal) y en la misma VLAN (VLAN principal). Cuando se realiza la búsqueda de VLAN para el paquete, también se utilizan el puerto PVLAN, el dominio del puente PVLAN y la etiqueta o ID PVLAN. Los siguientes procesos ocurren con una metodología VLAN compartida:
Se realiza una búsqueda en la dirección MAC de origen (SMAC) para averiguar si esta dirección MAC se ha aprendido o no. Si no es una dirección aprendida, se envía un paquete MLP (ruta para inundar el tráfico a los chips de aprendizaje MAC) a todos los demás motores de reenvío de paquetes que se asignan con este dominio de puente. Además, también se envía un paquete MLP al host.
Una búsqueda de dirección MAC de destino (DMAC) mediante la tupla (ID de dominio de puente, VLAN y dirección MAC de destino).
Si se observa una coincidencia para la dirección MAC, el resultado de la búsqueda apunta al siguiente salto de salida. El motor de reenvío de paquetes de salida se utiliza para reenviar el paquete.
Si se produce una pérdida durante la búsqueda, el siguiente salto de inundación se determina utilizando el ID de grupo de malla para inundar el paquete.
Si se produce una coincidencia, el ID de grupo se deriva de la tabla de búsqueda de VLAN y se realiza la siguiente validación para aplicar el reenvío de VLAN principal:
Steps Source Destination Action Step 1 0 {*} Permit Step 2 {*} 0 Permit Step 3 1 1 Drop Step 4 X <-> Y (X > 1 and Y > 1 and X ≠ Y Drop
Aquí, {*} es un comodín en notación de expresión regular que se refiere a cualquier valor. El paso 1 garantiza que se permita todo reenvío desde puertos de enlace promiscuo o entre conmutadores a cualquier otro puerto. El paso 2 garantiza que se permita todo reenvío desde cualquier puerto a puertos de enlace promiscuo o de interconmutador. El paso 3 garantiza que se descarte cualquier puerto aislado a otro puerto aislado. El paso 4 garantiza que el reenvío de puertos de la comunidad solo se permita dentro de la misma comunidad (X == Y) y se elimine cuando esté a través de la comunidad (X ≠ Y).