Resumo

  • A RFC 9790 desaconselha identificar o payload MPLS apenas pelos quatro primeiros bits após a pilha. 0x4 e 0x6 podem coincidir com IPv4 e IPv6, mas também podem iniciar um quadro não IP ou um Post-Stack Header.
  • O significado correto vem do contexto associado aos rótulos anteriores. Para balanceamento, uma Entropy Label ou FAT Pseudowire Label explícita é evidência melhor do que campos lidos de um formato apenas presumido.
  • Registro, Control Word e rótulo de entropia reduzem ambiguidades; nenhum deles comprova sozinho implementação, caminho escolhido, equilíbrio, ordem de pacotes ou resultado para o cliente.

O mecanismo de encaminhamento encontra o Bottom-of-Stack e lê 0100 no próximo nibble. O código legado o chama de versão IPv4, busca endereços e portas nos deslocamentos esperados e envia esses bytes ao hash de ECMP.

Mas o pacote carrega um quadro Ethernet por pseudowire. 0100 é só o início do MAC de destino. O equipamento não detectou IP; converteu semelhança em identidade e deixou essa hipótese escolher um caminho físico.

A RFC 9790 organiza apenas dezesseis valores. Sua contribuição operacional é separar três coisas que a automação costuma fundir: o que foi observado, o que o contexto permite interpretar e o que de fato aconteceu.

O nibble prova somente a própria presença

Um pacote MPLS contém cabeçalho de camada 2, uma sequência de Label Stack Entries, possivelmente um Post-Stack Header e, depois, um pacote embutido opcional. O bit de fundo da pilha marca o último rótulo. Ele não declara a estrutura seguinte.

O Post-stack First Nibble é a metade superior do primeiro octeto após a pilha. Num IPv4 sem PSH, coincide com a versão 4; no IPv6, com 6. Se houver um quadro Ethernet, Control Word, canal associado ou outro PSH, os bits pertencem a essa estrutura.

A pilha MPLS não possui identificador geral de payload. Segundo a RFC 9790, a interpretação depende do contexto criado pelo plano de controle ou de gerenciamento para a LSE anterior ou para o grupo de LSEs. Uma captura prova que apareceu 0x4; não prova IPv4.

Essa é uma fronteira de realidade. Bits são observação. O vínculo de serviço fornece contexto. O parser aplica uma gramática. A tabela de encaminhamento produz efeito. Nenhuma etapa herda automaticamente a autoridade da seguinte.

Uma conveniência virou política invisível

O atalho tinha uma utilidade: o quíntuplo IP distribui fluxos melhor do que apenas o rótulo superior. Muitos equipamentos tratam 4 como IPv4 e 6 como IPv6, leem os campos presumidos e, para outros valores, voltam ao hash da pilha.

Quando a premissa falha, a precisão também falha. Um endereço MAC Ethernet pode começar por 4 ou 6. A RFC 8469 registra que há endereços atribuídos nesses intervalos e que a randomização de MAC torna o caso frequente. Sem PW Control Word, um roteador intermediário pode dissecar Ethernet como se fosse IP.

Bytes sem relação passam a representar “fluxo”. Pacotes que precisam permanecer ordenados podem cair em membros diferentes, ou receber classificação diferenciada baseada em campos inventados. A hipótese não fica no diagnóstico: ela muda o tráfego.

O contexto está nos rótulos anteriores

A RFC 9790 troca a pergunta. Em vez de “com que esses quatro bits se parecem?”, pergunta “o que o vínculo dos rótulos permite que venha agora?”. Quando o payload não é IPv4 nem IPv6, deve haver um PSH cujo PFN não seja 0x4 nem 0x6.

O Control Word de pseudowire funciona como separador para mecanismos antigos. Não autentica o emissor nem valida o quadro; apenas evita uma confusão conhecida. Seu alcance pequeno é uma qualidade, não uma fraqueza.

O registro da IANA reutiliza valores deliberadamente. 0x0 aparece em DetNet, NSH e PW; 0x1 em vários canais associados. O contexto do rótulo de serviço distingue os formatos. Tratar PFN como um tipo global único apagaria a arquitetura que o registro documenta.

É a lógica da Minimum Initial Specification de Heng Lu: a camada comum guarda só valores, referências e restrições necessários à interoperabilidade. Cada nó valida localmente com o estado que possui. O registro coordena significado, mas não inspeciona o pacote nem certifica o efeito.

Os dois registros respondem a perguntas distintas

IP Version Numbers registra versões dentro de cabeçalhos IP. Post-Stack First Nibble registra tipos de PSH. A interseção em 4 e 6 existe apenas por compatibilidade histórica.

O novo registro cobre os dezesseis valores e usa Standards Action para futuras atribuições. Isso torna ocupação e referência auditáveis. Uma linha da IANA, porém, comprova apenas o estado documental: não prova o formato do pacote presente, a implementação da placa ou a configuração em produção.

Publicação não é implantação. O registro descreve uma convenção; não testemunha um fluxo que nunca viu.

A entropia deve ser criada onde há conhecimento

A RFC 9790 recomenda um rótulo dedicado, como a Entropy Label da RFC 6790 ou a FAT Pseudowire Label da RFC 6391. Na entrada, antes do encapsulamento, o roteador conhece o serviço e o pacote original. Ele escolhe campos legítimos, calcula o valor e o coloca na pilha.

Na RFC 6790, o rótulo reservado 7 é a Entropy Label Indicator e vem imediatamente antes da Entropy Label. Os nós de trânsito usam a pilha sem fingir que entendem o conteúdo interno. A borda informada produz o sinal; o núcleo usa um valor explícito.

Isso não promete distribuição perfeita. Sinalização de capacidade, profundidade de pilha e qualidade do hash ainda contam. Fluxos grandes podem colidir. O rótulo prova o valor transportado, não utilização uniforme, latência contratada ou ausência de reordenação.

O modo FAT de pseudowire é opcional, e caminho único permanece o padrão. As pontas sinalizam capacidade ou recebem provisionamento estático idêntico. Encontrar uma Flow Label não comprova acordo bilateral nem uso em todos os trânsitos.

Desaconselhado não significa removido

A RFC 9790 atualiza a RFC 4928 e proíbe a dedução por PFN em novas implementações e implantações. Ela preserva o comportamento legado e pede evidência sobre equipamentos comercializados ou instalados antes de uma futura obsolescência.

A norma muda o limite de projeto; não reprograma ASICs existentes. Uma rota pode misturar placas e versões com comportamentos distintos. “Deprecated” não é observação de campo, assim como “legado” não é licença permanente.

Um recibo completo separa pilha e BoS, octeto seguinte, vínculo de rótulos, formato e registro aplicáveis, hardware e parser, Entropy/FAT Label ou entradas alternativas, membro escolhido, ordem/perda/latência e resultado do cliente. A captura cobre as primeiras camadas; telemetria e testes repetidos cobrem as últimas.

O mérito da RFC 9790 é retirar dos quatro bits a autoridade que nunca tiveram. Sistemas confiáveis não fazem um símbolo governar o pacote; fazem cada inferência apresentar sua prova.

Fontes

  1. RFC 9790 — IANA Registry and Processing Recommendations for the First Nibble Following a Label Stack
  2. RFC 4928 — Avoiding Equal Cost Multipath Treatment in MPLS Networks
  3. RFC 3032 — MPLS Label Stack Encoding
  4. RFC 4385 — Pseudowire Emulation Edge-to-Edge Control Word
  5. RFC 6790 — The Use of Entropy Labels in MPLS Forwarding
  6. RFC 6391 — Flow-Aware Transport of Pseudowires over an MPLS Packet Switched Network
  7. RFC 8469 — Recommendation to Use the Ethernet Control Word
  8. IANA — Post-Stack First Nibble
  9. Heng Lu — Running-Code Primacy
  10. Heng Lu — Minimum Initial Specification, Localized Future Decision, and Voluntary Adoption
  11. Heng Lu — On Reality Layers, Symbolic Power, and Why Clarity Feels So Hostile