A maioria dos debates L2TP contra GRE desmorona pelo mesmo motivo: os nomes ficam em camadas diferentes do problema. Dois deles descrevem uma encapsulação que você configura nos seus próprios roteadores. Um descreve um serviço que outra pessoa vende para você. Comece pela carga útil que as extremidades precisam transportar e a comparação se torna uma lista curta de consequências em vez de uma briga de recursos.

Primeiro a carga útil, depois o protocolo

Na prática, a carga útil é uma de quatro coisas: uma sessão PPP, um quadro Ethernet bruto, um pacote IP ou um quadro MPLS entregue a um provedor. Cada uma impõe exigências diferentes ao endereçamento, ao tratamento de broadcast e à detecção de falhas. Se esta lista estiver errada, nenhum ajuste de encapsulação vai salvar o projeto.

PayloadNatural fitWhat it needs
PPP sessionL2TPv2UDP reachability, PPP negotiation on both ends
Ethernet frameL2TPv3 or VPWSPseudowire signalling, matched MTU on both sides
IP packetGRE, with IPsec alongsideRouted underlay, protocol type supported by both devices
MPLS frameVPWSProvider attachment circuits and demarcation points

Tudo o que fica fora destas linhas é acrescentado depois, como criptografia, compressão ou modelagem de tráfego. Escolha primeiro a linha.

L2TPv2 e L2TPv3 compartilham um nome e pouco mais

L2TPv2 existe para transportar sessões PPP por uma rede IP, por isso é lido como um protocolo de acesso remoto e não como um transporte genérico de quadros. L2TPv3 generaliza essa ideia: uma conexão de controle negocia sessões e cada sessão transporta uma conexão definida de camada 2 entre dois extremos IP. Mesmo nome de família, protocolo de controle diferente, modelo de sessão diferente. Um requisito que só diz L2TP está incompleto, e um modelo copiado da versão errada nem sequer vai negociar.

Se você precisa de PPP, o L2TPv2 é o único membro realista da família; se precisa de quadros Ethernet por um núcleo roteado, você está no território do L2TPv3.

Os detalhes do transporte diferem de formas que aparecem durante uma revisão de firewall. O L2TPv3 pode viajar diretamente sobre o protocolo IP 115 ou dentro de UDP, normalmente na porta 1701, enquanto o L2TPv2 fica em UDP 1701 com PPP lá dentro. Uma política escrita para uma versão pode parecer totalmente correta e ainda assim descartar a outra.

O GRE é um cabeçalho, não um serviço

O GRE envolve uma carga útil em um cabeçalho de quatro bytes com um campo opcional de chave e sequência e depois entrega o resultado ao IP para entrega. Não afirma nada sobre o significado da carga útil, por isso as implementações podem fazer túnel de IPv4, IPv6 ou Ethernet se esses tipos de protocolo forem suportados. Genérico não é o mesmo que universal: verifique o tipo de protocolo e o comportamento de fragmentação no dispositivo real.

O campo de chave é o que torna o GRE útil quando vários túneis compartilham um par de endereços de extremidade, porque o receptor demultiplexa por esse valor. O GRE sobre IPv4 custa cerca de 24 bytes antes de qualquer opção adicional, e isso começa a contar em links já dimensionados para quadros de 1500 bytes. Sozinho, o GRE não oferece confidencialidade, por isso o padrão habitual o combina com IPsec e deixa o IPsec ser dono da fronteira criptográfica. Essa combinação funciona, mas o orçamento de MTU então precisa cobrir os dois cabeçalhos.

O GRE também transporta multicast e broadcast pelo túnel quando a carga útil é Ethernet, algo que um túnel IP unicast simples não consegue fazer. É essa propriedade, e não a sigla, que costuma levar um projeto a escolhê-lo.

O VPWS é comprado, não configurado

Um serviço de linha privada virtual entrega um circuito ponto a ponto de camada 2 pela rede de um provedor. Seu circuito de conexão termina em um equipamento de borda do provedor, e o pseudofio através do núcleo pertence ao provedor. As perguntas que importam são operacionais: onde fica a demarcação, quem possui a primeira e a última milha e o que o provedor faz com quadros sobredimensionados.

É aqui que a comparação se inverte. O L2TPv3 e o GRE são coisas que você opera de ponta a ponta, por isso você os depura com suas próprias credenciais e suas próprias capturas. O VPWS é um contrato com uma entrega, por isso uma falha começa com um ticket em vez de uma captura de pacotes. Nenhum modelo vence por completo; eles falham em lugares diferentes, e a escolha depende de você querer ou não possuir a última milha.

A pilha de rótulos do pseudofio fica dentro da rede do provedor, por isso não altera sua aritmética de MTU como um cabeçalho de túnel visível.

Escolha uma linha e escreva-a

Registre a decisão como uma única frase com três partes: carga útil, encapsulação e proprietário do transporte. Depois acrescente os números que a tornam verificável.

Para cada candidato, anote a sobrecarga no fio, o maior quadro que o caminho aceita e o primeiro salto que relataria um problema de MTU. Confirme que ambas as extremidades suportam o tipo de protocolo ou de sessão que você escolheu, e não apenas o termo de marketing da ficha técnica. Decida como seria a multiplexação se no próximo ano aparecer um segundo circuito, porque as chaves GRE e os IDs de sessão L2TPv3 não são soluções intercambiáveis para esse problema. Depois envie um quadro sobredimensionado e um normal; esse par pega a maioria dos projetos que pareciam bons no papel.

Comparar túneis pelo nome continua a produzir discussões que ninguém consegue resolver. Compará-los por carga útil, sobrecarga e propriedade produz uma decisão em uma tarde, além das provas necessárias para defendê-la mais tarde.

Artigos relacionados