Resumo
- Em RFC 9524, o Replication-SID aciona uma lista de ramos local a um nó SR. Raiz, trânsito, folha e Bud têm estados corretos de formatos diferentes.
- Segmentos corretos isoladamente podem formar um grafo incorreto. Um ciclo multiplica pacotes até o MPLS TTL ou o IPv6 Hop Limit terminar.
- A afirmação “árvore ativa” requer três recibos na mesma versão: grafo dirigido verificado contra ciclos, leitura do estado instalado e observação de entrega nas folhas pretendidas.
Quando todas as caixas verdes escondem um ciclo
Considere a raiz A replicando para B e C. B ainda conserva um ramo da geração anterior apontando para A. A encontra seu Replication-SID, B também, e ambos resolvem os próximos saltos. Os comandos foram aceitos, portanto cada dispositivo pode responder com sucesso. Vistos em conjunto, porém, os ramos formam um ciclo.
RFC 9524 descreve a consequência sem eufemismo. O provisionamento incorreto de Replication segments pode produzir uma cadeia em loop, especialmente quando os nós SR são configurados sem plano de controle. As cópias criam uma tempestade até o MPLS TTL, no SR-MPLS, ou o IPv6 Hop Limit, no SRv6, chegar a zero. O limite de vida interrompe o pacote; não certifica a topologia.
Esse caso revela uma falha de autoridade. O recibo de um equipamento prova que ele aceitou e executou seu estado. Não pode, sozinho, falar pelos estados dos demais equipamentos nem garantir que a composição seja completa, acíclica e vinculada ao serviço pretendido.
O identificador é um endereço para estado local
O Replication segment é uma construção lógica local no nó de replicação. Ele liga esse nó a um conjunto de nós a jusante. Sua identidade é a tupla <Replication-ID, Node-ID>, enquanto o Replication-SID é o identificador do plano de dados: label no SR-MPLS ou SID no SRv6.
Quando ativo, o SID seleciona o Replication state local. Esse estado é conceitualmente uma lista de ramos. Cada ramo contém o nó a jusante, o Replication-SID a jusante e a forma de alcançá-lo. Pode ser interface e próximo salto, caminho com restrições, lista de SIDs ou SR Policy. O estado pode ser configurado localmente ou programado por um plano de controle.
Logo, o número do SID não representa a árvore comprimida. Seu significado depende do nó proprietário, papel, geração, ramos e intervalo de validade. Um inventário que guarda apenas o SID preserva o índice, mas perde o conteúdo que ele selecionava naquele momento.
Lista vazia não significa sempre falha
A lista de ramos pode estar vazia. Numa folha não há necessidade de replicar adiante, embora seu Replication-SID ainda possa identificar o serviço multiponto. RFC 9524 mantém o nome Replication segment por generalização. O nó Bud, por sua vez, é simultaneamente replicador e folha: cria cópias para baixo e entrega uma cópia localmente.
Portanto, o mesmo valor — zero ramos — pode ser correto numa folha prevista e fatal numa raiz ou trânsito. Verificar somente se o estado existe não resolve a ambiguidade. Exigir pelo menos um ramo em todos os casos também erra. O controle precisa comparar papel esperado, ramos esperados, estado lido e ação observada.
Essa comparação expira. Se uma folha vira Bud ou o conjunto de destinos muda, a interpretação anterior deixa de valer, ainda que o número do SID continue igual.
Como os dois planos de dados usam a lista
No SR-MPLS, o nó retira o Replication-SID ativo e cria uma cópia por ramo do estado local. Em cada cópia, empilha o Replication-SID a jusante e os labels necessários ao caminho. A entrega local em folhas e Buds continua dependente de configuração local.
No SRv6, End.Replicate consulta o estado pela parte funcional do SID. Se não houver estado, descarta. O nó verifica e reduz o Hop Limit, processa informação SRH permitida e produz uma cópia para cada ramo. Cada cópia recebe o Replication-SID a jusante como destino e, quando necessário, uma lista de segmentos.
Essas operações comprovam uma afirmação estreita: um nó encontrou uma versão de estado e a executou. Não demonstram que o próximo nó possuía estado correspondente, que todas as folhas eram alcançáveis, que nenhum ramo retornava a um ancestral ou que o pacote estava associado ao contexto VPN correto.
Costurar segmentos cria outro objeto
Replication segments podem ser costurados na raiz, em nós intermediários e nas folhas para formar uma árvore ponto a multiponto. RFC 9524 deixa o procedimento de costura para outras especificações. Ainda assim, determina que uma cadeia provisionada localmente não deve formar loop e que a especificação de plano de controle deve prevenir loops ou detectá-los e mitigá-los em estado estável.
RFC 9960 formalizou depois a SR P2MP Policy: raiz, conjunto de folhas e candidate paths. Um candidate path pode instanciar um P2MP tree instance, e um controlador programa os Replication segments que o compõem. RFC 10018 conectou essas árvores aos procedimentos de MVPN e EVPN.
São cinco níveis relacionados. Replication-SID é o identificador local; Replication state é o plano local de ramos; tree instance é a composição entre nós; intenção de serviço define raiz, folhas e contexto; entrega observada informa quais cópias chegaram. O sucesso num nível não herda a autoridade dos seguintes.
TTL é fusível, não auditor de grafo
Dizer que o loop é tolerável porque o TTL termina confunde contenção com correção. Se uma passagem cria várias cópias, a quantidade total depende do fator de ramificação, vida inicial e posição do ciclo. Uma tempestade limitada ainda pode afetar toda a infraestrutura durante sua existência.
O SRv6 também permite um IPv6 Hop Limit Threshold. O nó descarta abaixo do limiar e registra de forma limitada. O mecanismo ajuda a reduzir, entre outros riscos, uma tempestade de mensagens ICMPv6 quando nós comuns reduzem o Hop Limit a zero. Ao mesmo tempo, o valor deve deixar o pacote alcançar a folha legítima mais distante.
O limiar responde a uma pergunta de execução: ainda há vida suficiente? A análise de ciclos responde a uma pergunta estrutural: alguma sequência de ramos retorna a um estado anterior? Nem o limiar comprova completude, nem detecta um ramo indevido que não feche ciclo.
Uma resposta de ping não revela a árvore
RFC 9524 permite ping ao Replication-SID de uma folha ou Bud. Ao atravessar um nó de replicação intermediário, o Echo Request pode ser copiado a outras folhas, que o descartam por checksum incompatível com seus endereços. O traceroute convencional da árvore também não está disponível, pois o caminho replicado não gera os ICMPv6 Time Exceeded habituais.
Uma resposta confirma alcance até um respondente sob aquele estado. Não enumera ramos, não prova ausência de loop e não confirma entrega a todas as folhas. Evidência OAM precisa guardar alvo, tempo, geração e limites da observação.
Três recibos para uma única promoção
O recibo de grafo contém versão de serviço e policy, raiz, folhas esperadas, restrições, grafo dirigido calculado e resultado da detecção de ciclos nessa versão exata. Cada aresta resolve para nó proprietário, Replication-SID a jusante e objeto de alcance.
O recibo de instalação vem de todos os nós afetados: geração, papel, SID local, lista de ramos, indicador de entrega local e horário efetivo. Numa atualização gradual, a ordem também é evidência. Duas versões finais seguras podem criar temporariamente um loop ou buraco negro quando misturadas.
O recibo de resultado relaciona pacotes de entrada, cópias criadas, contadores por ramo, descartes por TTL ou Hop Limit e observações de cada folha. Uma folha recebendo não representa o conjunto. Se cópias por entrada crescem sem aumento dos destinos previstos, há um fato novo a investigar.
Os três sustentam uma frase precisa: esta versão calculou este grafo; estes nós instalaram estados compatíveis; neste intervalo, estas folhas apresentaram estes resultados. A frase é limitada o bastante para ser testada e revogada.
Fontes
- Informações do RFC 9524
- RFC 9524 em HTML
- RFC 9524 em texto
- RFC 9524 em XML
- Registro no IETF Datatracker
- API do IETF Datatracker
- RFC 8402: arquitetura Segment Routing
- RFC 8660: SR-MPLS
- RFC 8754: IPv6 Segment Routing Header
- RFC 8986: programação de rede SRv6
- RFC 7988: MVPN com BIER
- RFC 6513: multicast em VPNs IP MPLS/BGP
- RFC 7432: EVPN baseado em BGP MPLS
- RFC 9960: SR P2MP Policy
- RFC 10018: MVPN e EVPN com SR P2MP e IR
- Heng Lu: Reality Layers
- Heng Lu: Running-Code Primacy
- Heng Lu: Minimum Initial Specification
Fontes
- https://www.rfc-editor.org/info/rfc9524
- https://www.rfc-editor.org/rfc/rfc9524.html
- https://www.rfc-editor.org/rfc/rfc9524.txt
- https://www.rfc-editor.org/rfc/rfc9524.xml
- https://datatracker.ietf.org/doc/rfc9524/
- https://datatracker.ietf.org/api/v1/doc/document/rfc9524/
- https://www.rfc-editor.org/rfc/rfc8402.html
- https://www.rfc-editor.org/rfc/rfc8660.html
- https://www.rfc-editor.org/rfc/rfc8754.html
- https://www.rfc-editor.org/rfc/rfc8986.html
- https://www.rfc-editor.org/rfc/rfc7988.html
- https://www.rfc-editor.org/rfc/rfc6513.html
- https://www.rfc-editor.org/rfc/rfc7432.html
- https://www.rfc-editor.org/rfc/rfc9960.html
- https://www.rfc-editor.org/rfc/rfc10018.html
- https://heng.lu/on-reality-layers-symbolic-power-and-why-clarity-feels-so-hostile/
- https://heng.lu/running-code-primary-the-patch-needed-to-preserve-the-internet-original-design/
- https://heng.lu/minimum-initial-specification-localized-future-decision-voluntary-adoption-internet-coordination-system/
Briefing para membros
Contexto aprofundado do perfil
Faça login com o nível de assinatura correto para desbloquear o briefing completo e as notas das fontes.
Apenas para Strategic Circle
Strategic Circle
Aberto a todos os leitores. Desbloqueie Briefings de perfil após se inscrever e fazer login.
Junte-se ao Strategic CircleSomente para Leadership Alliance
Leadership Alliance
Para proprietários e gestores qualificados de ativos de PI; faça login para desbloquear os briefings da Leadership Alliance.
Junte-se ao Leadership Alliance
