Funciones de puente con PVLAN
En este tema, se describe cómo se implementa el puente en enrutadores serie MX que ayudará a comprender las mejoras únicas que implica la implementación de procedimientos de puente de PVLAN. Considere dos puertos en un dominio de puente con los puertos respectivos en FPC diferentes y motores de reenvío de paquetes diferentes. Cuando un paquete entra en un puerto, el siguiente es el flujo, suponiendo que se trata de un paquete etiquetado:
Como proceso inicial, se realiza una búsqueda de VLAN para determinar qué dominio de puente forma el paquete. El resultado de la búsqueda identifica el id de dominio de puente (bd_id), el id 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 se ha aprendido o no esta dirección MAC. Si no es una dirección aprendida, se envía un paquete MLP (ruta para inundar el tráfico a 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 falla durante la búsqueda, el siguiente salto de inundación se determina mediante el ID de grupo de malla para inundar el paquete.
Las siguientes dos condiciones significativas se consideran en el puente de PVLAN: Solo se permite el reenvío de puerto específico a otro. 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 la caída del tráfico, la decisión sobre si es necesario soltar el paquete llega antes de atravesar la estructura, lo que ahorra el ancho de banda de la estructura durante los ataques DoS. Dado que existen varios dominios de puente superpuestos, lo que indica que el mismo puerto (vínculo promiscuo o interswitch) 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 de puente aislado) como para un puerto comunitario (dominio de puente comunitario) en los distintos dominios de puente de comunidad.
Para resolver este problema, se utiliza una VLAN compartida para puentes PVLAN. En el modelo de VLAN compartida, todas las MAC aprendidas 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 de puente PVLAN y la etiqueta o id de PVLAN. Los siguientes procesos se producen con una metodología de VLAN compartida:
Se realiza una búsqueda de dirección MAC de origen (SMAC) para averiguar si se ha aprendido o no esta dirección MAC. Si no es una dirección aprendida, se envía un paquete MLP (ruta para inundar el tráfico a 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 falla durante la búsqueda, el siguiente salto de inundación se determina mediante 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 la notación de expresión regular que se refiere a cualquier valor. El paso 1 garantiza que todo el reenvío desde los puertos promiscuos o de vínculo de conmutación a cualquier otro puerto está permitido. El paso 2 garantiza que todo reenvío desde cualquier puerto a puertos de enlace promiscuos o interswitch está permitido. El paso 3 garantiza que cualquier puerto aislado a otro puerto aislado se caiga. El paso 4 garantiza que el reenvío de puerto comunitario solo se permita dentro de la misma comunidad (X == Y) y se caiga cuando se trata de una comunidad completa (X ≠ Y).
