Introducción a la tecnología VXLAN: red de tres capas para construir una red virtual de dos capas
La LAN extensible virtual VXLAN (Virtual Extensible LAN) es una tecnología de red superpuesta que encapsula la trama Ethernet de capa 2 original con UDP (MAC-in-UDP) y agrega un encabezado VXLAN de 8 bytes. encabezado UDP de 20 bytes, encabezado IP de 20 bytes y encabezado Ethernet de 14 bytes, máx.
En comparación con VLAN, VXLAN puede proporcionar una mejor escalabilidad y flexibilidad. Tiene principalmente las siguientes características:
Implementación flexible de aplicaciones: ¿Tramas Ethernet de capa 2 encapsuladas por VXLAN? 3 límites de red, lo que hace que la implementación de aplicaciones y redes sea más flexible, al tiempo que resuelve el problema de los conflictos de direcciones IP en entornos de red multiinquilino.
Mejor escalabilidad: el campo VLANID tradicional es de 12 bits y el número máximo de VLAN es 4096; VXLAN utiliza VNID (identificador de red VXLAN) de 24 bits, admitiendo un máximo de 16.000.000 de redes lógicas.
Mejore la utilización de la red: Ethernet tradicional utiliza STP para evitar bucles. STP hace que las rutas redundantes de la red se bloqueen en función de encabezados IP de capa 3, que pueden utilizar rutas de red de manera efectiva y admitir ECMP (. múltiples rutas de igual costo) y protocolos de agregación de enlaces.
¿VXLAN?
Punto final de túnel (VTEP). VXLAN utiliza equipos VTEP para encapsular y decapsular mensajes VXLAN, incluidos mensajes de solicitud ARP y mensajes de datos VXLAN normales. VTEP encapsula las tramas Ethernet originales a través de VXLAN y las envía al dispositivo VTEP par. El VTEP par recibe el mensaje VXLAN y luego lo desencapsula. El reenvío de acuerdo con el MAC original se puede implementar mediante un conmutador físico, un servidor físico u otro hardware o software que admita VXLAN.
ID de red virtual (VNI), VNI está encapsulado en el encabezado VXLAN, *** 24 bits, admite hasta 16.000.000 de redes lógicas.
La puerta de enlace VXLAN se utiliza para conectar la red VXLAN y la red VLAN tradicional. La puerta de enlace VXLAN implementa el mapeo entre VNI y VLAN ID. La puerta de enlace VXLAN es en realidad un dispositivo VTEP.
Los dispositivos VTEP deben unirse al mismo grupo de multidifusión, que se utiliza principalmente para el aprendizaje de direcciones del plano de control. ?
VXLAN utiliza UDP para encapsular tramas Ethernet completas (MAC-in-UDP), con un encabezado de encapsulación máximo de 50 bytes. El formato de mensaje específico es el siguiente:
MAC interna La MAC interna es la dirección MAC de la trama Ethernet original.
*** 8 bytes, actualmente usando un bit de identificación de 8 bits en Flags y un VNI (identificador de red Vxlan) de 24 bits, el resto no están definidos, pero deben configurarse en 0x0000 cuando se usen.
***8 bytes, el puerto de destino estándar asignado por IANA utiliza 4798, pero cada fabricante puede modificarlo según las necesidades y la suma de comprobación UDP debe establecerse en 0.
***20 bytes, la dirección IP de destino puede ser una dirección de unidifusión o una dirección de multidifusión. En el caso de unidifusión, la dirección IP de destino es la dirección IP del VTEP de destino; cuando se usa para el plano de control VXLAN, se usa la dirección de multidifusión.
IP externa: la dirección IP externa es la dirección IP de capa 3 después de la encapsulación VTEP. La IP de origen es la IP del dispositivo VTEP local. Cuando se usa para el plano de control, la IP de destino puede ser una multidifusión. La dirección IP de destino durante la planarización es la IP del dispositivo VTEP remoto.
***14 bytes en total, encabezado de trama Ethernet exterior. MAC externa La MAC externa es la MAC de Capa 2 encapsulada por VTEP. La MAC de origen es la MAC del dispositivo VTEP local. La MAC de destino puede ser la MAC del dispositivo VTEP remoto o la MAC del dispositivo de red de Capa 3. medio de la ruta de transmisión.
En la implementación de VXLAN, cuando el descubrimiento de ruta del plano de control se implementa a través de multidifusión, se utilizan túneles sin estado entre dispositivos VTEP y no se mantienen conexiones largas sin estado entre dispositivos VTEP. VXLAN necesita aprender la información de la dirección del dispositivo remoto a través del plano de control y crear entradas del plano de control localmente. La entrada de la tabla del plano de control consta de triples VNI, MAC de origen interno e IP de origen externo.
Una vez que el plano de control aprende la información de asignación de direcciones, el plano de reenvío es responsable de reenviar los datos reales. VTEP agrega un encabezado UDP a la trama de datos original. El nuevo encabezado no se eliminará hasta que llegue al destino. Los dispositivos de red en la ruta intermedia solo reenviarán datos según la dirección de destino en el encabezado del paquete externo.
Como se muestra en la figura anterior, el dispositivo terminal A necesita comunicarse con el dispositivo terminal B. El proceso de solicitud ARP es el siguiente:
1. El dispositivo terminal A envía una solicitud ARP a solicitar la dirección MAC del dispositivo terminal B. ;
2. VTEP-1 recibe la solicitud ARP enviada por el dispositivo terminal A. En este momento, VTEP-1 no tiene la entrada de asignación de dirección correspondiente al dispositivo terminal B. VTEP-1 encapsula la solicitud ARP en VXLAN. VNI está configurado en 10, external-src-ip es la IP de VTEP-1 y external-dst-ip es la dirección del grupo de multidifusión al que se unirá una vez completada la encapsulación. , se reenvía al grupo de multidifusión VXLAN;
3. VTEP -2. VTEP3 se une al mismo grupo de multidifusión. Todos los miembros del grupo recibirán el mensaje de multidifusión enviado por VTEP-1. El VNI coincide con el VNI local. Si coinciden, la solicitud ARP se enviará a la red local y se registrará al mismo tiempo. La relación correspondiente entre el VNI, la MAC interna y la IP externa se utiliza para construir una entrada en la tabla de asignación de direcciones del plano de control. . Si el VNI no coincide, el paquete se descarta.
4. Después de recibir la solicitud ARP, el dispositivo terminal B envía una respuesta ARP en modo unicast
5. Después de recibir la respuesta ARP del dispositivo terminal B, VTEP-2 realiza VXLAN; encapsulación En este momento, VTEP-2 ha construido una entrada de mapeo de direcciones del plano de control, que es encapsulada por VXLAN y enviada en modo unicast.
Outer-src-ip es la dirección IP de VTEP-2, external-dst-ip es la dirección IP de VTEP-1
6. VTEP-1 recibe el encapsulado; Después de la respuesta ARP, desencapsule y compare el VNI. Si hay una coincidencia, envíe la respuesta ARP al dispositivo terminal A. Al mismo tiempo, registre la relación correspondiente entre VNI, MAC interno e IP externo, y cree un plano de control. entrada de tabla;
7. En este momento, tanto VTEP-1 como VTEP-2 han construido con éxito la información de mapeo de direcciones del plano de control, y los datos VXLAN posteriores se transmiten entre VTEP-1 y VTEP-2 usando unidifusión.
4 Transmisión de datos VXLAN
1. Una vez completada la solicitud ARP, el dispositivo terminal A envía datos al dispositivo terminal B. VTEP-1 busca la entrada de la tabla de asignación de direcciones en el mensaje recibido. datos y convierte los datos originales. Los datos se encapsulan en VXLAN y se reenvían a VTEP-2;
2. Después de recibir el paquete de datos de VXLAN, VTEP-2 verifica si el VNI coincide con el VNI local. Si coincide, decapsula y reenvía la trama Ethernet original al equipo terminal B.
1. Al realizar el procesamiento ARP, para transmitir la transmisión a través de multidifusión, se debe configurar la asignación de VNI al grupo de multidifusión. Esta asignación pertenece a la capa de administración y se utiliza para establecer la administración entre VTEP. pasillo. El MAC de destino desconocido (destino MAC desconocido) también se encapsulará en multidifusión y el método de procesamiento es el mismo que el de transmisión.
2. Los paquetes VXLAN no se pueden fragmentar. Los dispositivos intermedios pueden fragmentar los paquetes VXLAN, pero VTEP descartará los paquetes fragmentados. Para garantizar que los paquetes VXLAN no estén fragmentados, el procesamiento del chip requiere modificar la MTU de todos los dispositivos. a lo largo del camino. El documento RFC no explica por qué VTEP debe descartar paquetes fragmentados.
3. La información de VLAN TAG se eliminará durante la encapsulación y desencapsulación, a menos que se configure específicamente lo contrario.
Lo anterior es la explicación teórica de Vxlan que le presentamos hoy. Espero que pueda inspirarlo. Si desea ser un excelente ingeniero de redes, ¡también desea obtener la certificación de Cisco! Pueden chatear en privado y comunicarse juntos ~