Configuração de VPLS: guia prático para provedores
Configuração de VPLS: é montar uma rede de camada 2 entre vários pontos usando o backbone MPLS do provedor, como se todas as filiais de um cliente estivessem ligadas no mesmo switch. Os roteadores fecham pseudowires entre si e aprendem os endereços MAC de cada ponto pelo próprio tráfego.
Resumo
- O VPLS entrega ao cliente uma LAN entre filiais, e o roteamento entre elas continua com o próprio cliente.
- Cada roteador do serviço fecha um pseudowire com todos os outros e aprende os MACs pelo tráfego que passa.
- O MTU do núcleo precisa de folga para as etiquetas, ou os pacotes grandes do cliente somem sem aviso.
- Limite de MAC e controle de broadcast por serviço evitam que o laço de um cliente afete os demais.
Para que serve o VPLS no provedor?
O VPLS serve para vender interligação de filiais em camada 2 e para transportar VLANs entre POPs sem esticar a rede de switches pelo backbone. Cada serviço fica isolado dos outros, mesmo passando pelos mesmos roteadores.
Para o cliente corporativo, o serviço parece um switch gigante: a matriz e as filiais ficam na mesma rede, com os mesmos endereços, e o roteador ou o firewall do cliente decide o que passa entre elas.
O VPLS depende de um backbone MPLS funcionando, tema da implantação de MPLS para provedores. Sem MPLS estável, o VPLS herda os problemas, e uma oscilação no roteamento interno vira queda no serviço do cliente.
| Sinalização | Como os pontos se conhecem | Quando usar |
|---|---|---|
| LDP (RFC 4762) | Cada vizinho configurado à mão | Poucos pontos por serviço |
| BGP (RFC 4761) | Descoberta automática pelo BGP | Muitos pontos ou muitos serviços |
As peças de um serviço VPLS
Todo serviço VPLS tem as mesmas quatro peças, com nomes que mudam um pouco entre fabricantes. Conhecer cada uma ajuda a ler qualquer configuração.
- PE: o roteador do provedor onde o cliente se liga, normalmente o roteador do POP.
- CE: o equipamento do cliente, que enxerga só uma porta Ethernet comum.
- Instância virtual: a tabela de MAC própria de cada serviço, chamada de VFI ou VSI conforme a marca.
- Pseudowire: o túnel MPLS entre dois PEs, que leva os quadros do cliente de um ponto ao outro.
Como funciona a configuração de VPLS?
Cada PE do serviço fecha um pseudowire com todos os outros PEs, formando uma malha, e liga essa malha à porta do cliente por uma instância virtual. O quadro do cliente entra, ganha etiquetas MPLS e sai do outro lado como Ethernet de novo.
Entrada
O quadro chega ao PE
A porta do cliente recebe o quadro na VLAN combinada e o entrega à instância virtual do serviço.
Decisão
A instância procura o MAC
Se conhece o destino, escolhe um pseudowire; se não conhece, copia o quadro para todos.
Transporte
O núcleo leva por rótulo
O quadro recebe o rótulo do serviço e o rótulo de transporte e cruza o backbone sem ser aberto.
Saída
O PE remoto entrega
O PE do outro lado tira as etiquetas, aprende o MAC de origem e entrega o quadro ao cliente.
O aprendizado acontece nos dois sentidos: a resposta do cliente remoto ensina ao primeiro PE em qual pseudowire está aquele MAC.
Aprendizado de MAC por inundação
O VPLS aprende endereços como um switch comum: olha o MAC de origem de cada quadro que chega e anota de onde ele veio. Até aprender, ele inunda o quadro para todos os pontos do serviço.
Isso funciona bem com poucos pontos e poucos MACs. Com muitos, a inundação ocupa banda no núcleo e a tabela de cada PE cresce, o que explica por que o limite de MAC por serviço é obrigatório.
Split horizon: a regra que impede o laço
Na malha completa, o quadro que chega por um pseudowire nunca é reenviado para outro pseudowire, só para as portas locais do cliente. Essa regra dispensa o spanning tree dentro do núcleo.
Se o split horizon estiver desligado, um broadcast dá voltas entre os PEs e vira tempestade dentro do serviço. Em alguns fabricantes a regra é automática; em outros, como veremos no RouterOS, precisa ser ligada à mão.
Decisões de desenho antes de configurar
O VPLS escala bem até certo ponto, e as decisões de desenho definem onde fica esse limite. MTU, limite de MAC e numeração dos serviços precisam estar resolvidos antes do primeiro cliente.
- MTU do backbone folgado: o quadro do cliente ganha etiquetas MPLS.
- Limite de MAC por serviço: evita que um cliente encha a tabela do roteador.
- Malha completa ou hierárquica: H-VPLS quando há muitos pontos.
- Storm control na porta do cliente: o broadcast dele vai a todos os pontos.
- Numeração de serviços documentada: VPN ID ligado ao contrato.
A conta do MTU no núcleo
O cliente envia pacotes de 1500 bytes e espera que cheguem inteiros. No núcleo, esse pacote ganha o cabeçalho Ethernet original e as etiquetas MPLS, e o total passa bastante de 1500.
| Parte | Bytes | Observação |
|---|---|---|
| Pacote IP do cliente | 1500 | O que o cliente espera transportar |
| Cabeçalho Ethernet do cliente | 14 | Vai junto no pseudowire, sem o FCS |
| Etiqueta de VLAN do cliente | 4 | Quando a VLAN é preservada |
| Rótulo do serviço | 4 | Identifica o pseudowire |
| Rótulo de transporte | 4 ou mais | Cresce com proteção rápida e engenharia de tráfego |
| Control word | 4 | Opcional, depende da configuração |
A soma passa de 1530 bytes, e por isso os enlaces do núcleo costumam rodar com MTU jumbo [CONFIRMAR no manual do fabricante]. A folga vale para todo enlace entre dois PEs, inclusive os que passam por canais DWDM.
Um único switch de rede com MTU padrão no meio do caminho basta para quebrar o serviço. Por isso a conferência de MTU percorre salto por salto, e não só as pontas.
Malha completa ou H-VPLS
Na malha completa, cada PE fecha um pseudowire com cada um dos outros, e o número de túneis cresce muito rápido. Com dez PEs no mesmo serviço, já são 45 pseudowires.
O H-VPLS divide o serviço em dois níveis: os PEs da ponta fecham um pseudowire só até um PE central, e apenas os centrais formam a malha. Fica mais leve, mas o PE central vira ponto de atenção no desenho.
Configuração de VPLS passo a passo
A configuração de VPLS passo a passo começa pelo núcleo pronto e termina no teste com o cliente. O exemplo cria um VPLS com sinalização LDP entre três roteadores, com o cliente entregue na VLAN 100.
- Núcleo: confira roteamento interno, LDP ou segment routing e MTU em todos os enlaces entre os PEs.
- Numeração: reserve o VPN ID do serviço na planilha, ligado ao contrato do cliente.
- Instância: crie a instância virtual em cada PE, com o mesmo VPN ID e os loopbacks dos outros PEs.
- Porta: configure a porta do cliente na VLAN combinada e ligue-a ao bridge-domain do serviço.
- Proteções: aplique limite de MAC e storm control na porta do cliente.
- Teste: valide com o cliente, ponto a ponto, antes de liberar o serviço.
l2vpn vfi context VPLS-CLIENTE-ACME
vpn id 100
member 10.255.0.2 encapsulation mpls
member 10.255.0.3 encapsulation mpls
!
interface GigabitEthernet0/0/1
description CLIENTE-ACME-MATRIZ
service instance 100 ethernet
encapsulation dot1q 100
!
bridge-domain 100
member GigabitEthernet0/0/1 service-instance 100
member vfi VPLS-CLIENTE-ACMENos roteadores 2 e 3, os membros apontam para os outros dois loopbacks. O VPN ID é o mesmo nos três.
No RouterOS 7
Crie uma interface em /interface/vpls para cada vizinho, com o mesmo vpls-id, e coloque essas interfaces e a porta do cliente na mesma bridge. Habilite horizon na bridge para evitar laço entre os pseudowires.
Seu núcleo MPLS está pronto para VPLS?
A Táquion Tech implanta o MPLS no backbone, migra os circuitos de camada 2 para VPLS e testa cada ponto do serviço antes de entregar ao cliente.
Exemplo: matriz e duas filiais na mesma LAN
Um cliente tem a matriz ligada ao POP central e duas filiais em POPs de cidades vizinhas. Ele quer as três unidades na mesma rede, com o próprio firewall da matriz fazendo a saída para a internet.
- Entrega: cada unidade recebe uma porta no roteador do POP mais próximo, na VLAN 100.
- Malha: os três PEs fecham pseudowires entre si, todos com o VPN ID 100.
- Proteção: a porta de cada unidade aceita um número limitado de MACs e tem limite de broadcast.
- Aceite: o cliente faz ping entre as unidades com pacotes de 1500 bytes, sem fragmentar.
Para o cliente, as filiais passam a enxergar o servidor da matriz como se estivessem no mesmo prédio. Para o provedor, o serviço ocupa só rótulos no núcleo, sem nenhuma VLAN atravessando o POP de passagem.
VPLS, circuito ponto a ponto ou EVPN?
Com dois pontos, um circuito ponto a ponto resolve com menos estado na rede. Com vários pontos e poucos serviços, o VPLS atende bem; com muitos pontos ou cliente ligado a dois roteadores, o EVPN passa a valer o esforço.
| Situação | Serviço indicado | Por quê |
|---|---|---|
| Dois pontos, um cliente | Circuito ponto a ponto | Um pseudowire só, sem tabela de MAC |
| Três a poucas dezenas de pontos | VPLS | Simples de operar e suportado por quase todo roteador com MPLS |
| Muitos pontos ou muitos serviços | VPLS com BGP ou EVPN | A descoberta automática evita configurar cada vizinho |
| Cliente ligado a dois PEs | EVPN | O VPLS mantém só um caminho ativo por vez |
Com muitos pontos, cada roteador mantém pseudowires com todos os outros e aprende MAC por inundação. Veja a implantação de EVPN para redes que estão crescendo nessa direção.
Para transporte só em switches, sem MPLS, a configuração de QinQ pode bastar. E se o núcleo ainda vai escolher como distribuir rótulos, a implantação de segment routing mostra a alternativa ao LDP.
Erros comuns na configuração de VPLS
Os problemas de VPLS costumam aparecer como pacote grande perdido ou laço entre pontos. Quase todos têm origem no desenho, não no comando.
Evite
- MTU do backbone sem folga para as etiquetas.
- Split horizon desligado, criando laço entre pseudowires.
- Nenhum limite de MAC por serviço.
- Broadcast do cliente sem controle.
- VPN ID diferente em algum dos pontos.
- Membro faltando num dos PEs, deixando um ponto que só fala com parte do serviço.
O MTU curto é o erro mais confuso para o cliente: o ping comum passa, a página abre, mas a transferência de arquivos trava e a VPN dele cai. O teste com pacote de 1500 bytes e sem fragmentação pega o problema na entrega.
O membro faltando também engana. Dois pontos se falam, o terceiro fala só com um deles, e o chamado chega como problema do equipamento do cliente.
Checklist de validação
Confira os pseudowires em todos os PEs e teste com o cliente antes de dar o serviço por entregue. O teste de MTU é o que mais encontra problema escondido.
Confira em cada serviço VPLS
- Todos os pseudowires estão ativos.
- Os MACs dos pontos aparecem na tabela do serviço.
- Ping de 1500 bytes sem fragmentação passa entre os pontos.
- O cliente vê os outros pontos como se estivessem no mesmo switch.
- O limite de MAC e o storm control estão aplicados em cada porta.
- O VPN ID está anotado na planilha, ligado ao contrato.
Qualquer item sem marca é motivo para segurar a entrega e corrigir o serviço.
show l2vpn vfi name VPLS-CLIENTE-ACME
show l2vpn atom vc
show bridge-domain 100
show mpls ldp neighborA Táquion Tech configura os serviços VPLS durante a implantação do MPLS, com a planilha de serviços, o teste de MTU e a validação de cada ponto registrados.
Perguntas frequentes sobre configuração de VPLS
Quando usar VPLS em vez de VPN de camada 3?
Quando o cliente quer fazer o próprio roteamento e manter as filiais na mesma rede. A VPN de camada 3 entrega rotas prontas, e o provedor passa a participar do roteamento do cliente.
Preciso de MPLS para fazer VPLS?
Sim. O VPLS usa pseudowires MPLS entre os roteadores, e sem rótulos no núcleo não há como montar o serviço.
Qual sinalização escolher, LDP ou BGP?
LDP é mais simples com poucos pontos, porque cada vizinho é configurado à mão. BGP descobre os pontos sozinho e escala melhor quando o número de serviços cresce.
VPLS funciona entre marcas diferentes?
Sim, é padronizado nas RFCs 4761 e 4762. Teste antes, porque detalhes de MTU, control word e etiquetas variam entre fabricantes.
Quantos MACs liberar por serviço?
Depende do tamanho da rede do cliente, e o número deve ser combinado na contratação. O importante é existir um limite, para que um laço no cliente não encha a tabela do roteador.
Serviços ligados a este guia
- Implantação de MPLS para provedores Backbone e switching
- Projeto de rede metro ethernet para provedores Backbone e switching