Você está na página 1de 5

Com VXLAN (Virtual Extended LAN) é possível criar uma rede lógica entre VMs em diferentes redes,

isto é, é possível conectar duas ou mais redes de camada 3 fazendo com que elas operem como se
estivessem conectadas em uma rede da camada 2, ou seja, cada uma fazer parte da sua própria rede,
mas “dentro” do mesmo domínio.

Através de um identificador de 24 bits, é possível criar 16,7 milhões de redes utilizando VXLAN, um
número muito maior que o limite de 4096 das VLANs devido ao uso de um identificador de apenas 12
bits.

A VXLAN é uma rede de camada 2 sobreposta em uma rede de camada 3. Cada rede sobreposta é
chamada de segmento VXLAN e é identificada por um ID único de 24 bits chamado VNI - VXLAN
Network Identifier ou VXLAN ID. A identificação de uma máquina virtual é uma combinação do
endereço MAC e o VNI. Máquinas virtuais em VXLAN diferentes não podem comunicar umas com as
outras. O pacote original enviado pela máquina virtual na camada 2 é encapsulado em um cabeçalho
VXLAN que inclui o VNI associado ao segmento VXLAN que aquela máquina virtual pertence.

Fig.1 Representação VXLAN

Encapsulamento do quadro VXLAN


O encapsulamento VXLAN é baseado em IP e provê uma rede camada 2 virtual. O pacote camada 2
original enviado pelas máquinas virtuais é encapsulado em um cabeçalho que inclui o VNI associado
ao segmento VXLAN que a máquina virtual pertence. O VXLAN encapsula o MAC em um pacote
UDP, que permite a cada segmento de LAN ser estendido além da camada 3. O encapsulamento do
quadro é feito pela extremidade do túnel VXLAN, chamado VTEP (VXLAN Tunnel Endpoint).
Figura 2: Demonstração dos VETPs.

Um VTEP tem duas interfaces lógicas: Uplink e Downlink. O Uplink é responsável por receber os
quadros VXLAN e atua como uma extremidade do túnel com um endereço IP, usado para roteamento
dos quadros VXLAN encapsulados.

Os quadros VXLAN são enviados para o endereço IP atribuído ao VTEP de destino, o IP é colocado no
OUTER IP DA (Figura 4). O IP do VTEP que enviou o quadro está no OUTER IP SA (Figura 4). Os
pacotes recebidos pelo Uplink são mapeados do VXLAN ID (Figura 4) até uma VLAN e a carga do
quadro Ethernet é enviado como um quadro Ethernet 802.1Q. Durante este processo, o INNER MAC
SA (Figura 4) e o VXLAN ID são armazenados em uma tabela local. Pacotes recebidos no Downlink são
mapeadas para uma VXLAN ID usando a VLAN do quadro. Uma pesquisa é então efetuada na tabela
do VTEP camada 2, utilizando o VXLAN ID e o MAC de destino. Esta pesquisa fornece o endereço de IP
do VTEP de destino. O quadro é então encapsulado e enviado pela interface de Uplink.

Figura 3: VXLAN. Estão representadas 2 VXLAN com diferentes VNI, uma em rosa e outra em verde
O uso de datagramas IP pode ocasionar em eventuais perdas, e devido à falta de recuperação de
perdas - não há controle de estado e número de sequência por parte do TCP - o VXLAN necessita de
soluções alternativas. Isto pode ser contornado quando o protocolo usado acima do VXLAN é um
protocolo TCP padrão. O protocolo TCP usado acima do VXLAN enxerga a rede como uma rede física
padrão, fazendo a recuperação de perdas.

Figura 4: Quadro VXLAN.

Conforme ilustrado nas figuras de 5 a 11, o formato do quadro VXLAN é especificado. As figuras
respeitam a ordem do encapsulamento, sendo a figura 5 o cabeçalho mais externo.

Cabeçalho Ethernet

Figura 5: Cabeçalho Ethernet Externo

Outer Destination MAC Address (Endereço MAC de Destino) - Endereço MAC do VTEP de
destino, se é local. Ou, o dispositivo do próximo salto, geralmente um roteador, quando o VTEP de
destino está em uma rede camada 3 diferente.
VLAN - Opcional na implementação da VXLAN e é designado por um EtherType de 0x8100, associado
a uma etiqueta VLAN ID.
Ethertype - É definido por 0x0800 pois o pacote de carga é um pacote IPv4. O projeto VXLAN inicial
não inclui uma implementação IPv6, mas está previsto para o próximo projeto.

Cabeçalho IP

Figura 6: Cabeçalho IP Externo


Protocol (Protocolo) - Definido como 0x11, para indicar que o quadro contém um pacote UDP.
Outer Source Address (IP de origem) - Endereço IP do VTEP de origem.
Outer Destination Adress (IP de destino) - Endereço IP do VTEP de destino. Se este não for
conhecido, um processo de detecção tem de ser feito pelo VTEP de origem. Isto é feito da seguinte
maneira:

 O IP de destino é substituído pelo grupo de IP multicast correspondente à VNI da máquina


virtual de origem.
 Todos os VTEPs que se inscreveram no grupo de IP multicast recebem o quadro e
desencapsulam, obtendo o mapeamento de endereço MAC da máquina virtual de origem e
o host VTEP.
 O host VTEP da máquina virtual de destino envia respostas das máquinas virtuais ao VTEP
de origem usando o endereço IP de destino obtido com o quadro multicast original.
 O VTEP de origem acrescenta em suas tabelas o novo mapeamento do VTEP até o
endereço MAC da máquina virtual.

Cabeçalho UDP

Figura 7: Cabeçalho UDP Externo

Source Port (Porta de Origem) - Definido pelo VTEP transmissor.


VXLAN Port (Porta VXLAN) - IANA - Internet Assigned Numbers Authority (Autoridade para
Atribuição de Números da Internet) atribuído à porta VXLAN. Ainda não definido.
UDP Checksum (Soma de Verificação UDP) - Deve ser definido como 0x0000. Se o checksum não
é definido como 0x0000 pela VTEP transmissor, o VTEP receptor deve verificar o checksum e, se não
estiver correto, o quadro deve ser descartado.

Cabeçalho VXLAN

Figura 8: Cabeçalho VXLAN

VNI - Campo de 24 bits que serve como identificador da Rede VXLAN.


Reserved (Reservado) - Conjunto de campos de 24 bits e 8 bits que são reservados e definidos
como zero.

Cabeçalho Ethernet
Figura 9: Cabeçalho Ethernet Interno

Conteúdo do quadro

Figura 10: Conteúdo do quadro

Sequência verificadora

Figura 11: Sequência verificadora do quadro. Corresponde ao cabeçalho Ethernet externo.

Você também pode gostar