Resumo

  • O BMP substitui screen scraping por snapshots e mudanças estruturadas, mas cada feed representa router, instância, peer, família, etapa de RIB e modo específicos.
  • Route Monitoring pode comprimir a história; Route Mirroring pode preservar PDUs e ainda assim amostrar, perder mensagens e consumir recursos; Loc-RIB pode ser filtrado e não é a FIB.
  • Uma conclusão responsável registra direitos e descontinuidades, protege os dados e correlaciona recepção, policy, seleção, exportação, hardware e pacotes sem transformar o collector em oráculo.

Um dashboard de incidente afirma que uma rota chegou, passou pelo import filter e saiu para um cliente. Depois, descobre-se que a chegada veio de Adj-RIB-In pre-policy, a seleção de um Loc-RIB filtrado sem o VRF relevante e a saída de uma inferência sobre peer group, não do post-policy Adj-RIB-Out da sessão. Cada registro BMP era verdadeiro; a ligação causal, não.

A RFC 7854 criou o BGP Monitoring Protocol para oferecer acesso contínuo às RIBs sem raspar telas CLI. Um router envia por TCP estado, lifecycle dos peers e estatísticas a uma ou mais estações. A especificação limita a autoridade: BMP não é routing protocol. A estação observa, não escolhe reachability, e toda configuração fica no router.

A RFC 4271 separa as etapas. Pre-policy Adj-RIB-In contém o que o peer anunciou antes do julgamento local. Post-policy input contém o resultado após filtros e alterações, antes da seleção. Loc-RIB contém o que o Decision Process escolheu. Adj-RIB-Out contém rotas para peers específicos.

Presença na primeira etapa prova recepção naquele session epoch. Não prova aceitação, best path, recursion, instalação, exportação ou packet use. Cada avanço exige outra observação.

BMP dispõe de Peer Up/Down, Initiation/Termination, Statistics Report, Route Monitoring e Route Mirroring. O modo normal inicia com snapshot por peer e segue com anúncios e withdraws incrementais. O dump não tem ordem obrigatória e termina com End-of-RIB.

Snapshot e mudanças avançam ao mesmo tempo. O collector precisa remover uma rota retirada depois do dump ou ignorar um withdraw que chegou antes do objeto. EOR fecha o epoch inicial, não garante completude futura. TCP gap, queue overflow, restart, identity collision ou decode failure podem tornar a réplica obsoleta.

Route Monitoring é state-oriented. Várias mudanças podem virar apenas o estado final por state compression. Isso protege o router, mas remove ordem intermediária. O PDU gerado pode ter encoding distinto e timestamps podem estar indisponíveis ou ter precisão dependente da implementação.

Route Mirroring serve quando importam bytes exatos ou um PDU malformed tratado segundo RFC 7606. Mas mirroring não significa lossless: pode haver sampling e Messages Lost. Full fidelity pode exigir buffers sem limite, atrapalhar UPDATE e retardar convergence. Observabilidade não deve prejudicar o roteamento.

Prova de perda atravessa producer, transport e collector: queue depth, compression, drops, epochs, resets, backpressure, ingest sequence, decode, storage commit e replay watermark. Duas estações com a mesma queue ou parser bug não são independentes.

O flag L distingue Adj-RIB-In pre/post. Uma auditoria de import compara ambos no mesmo peer, AFI/SAFI e epoch. Subtrair contagens de etapas diferentes não mede policy.

A RFC 8671 adiciona Adj-RIB-Out e o flag O. Post-policy output deve representar o efetivamente transmitido após filtros, modificações e atributos formados no envio. É a melhor testemunha BMP para egress policy.

Pre-policy output mostra só a elegibilidade anterior para aquele peering type, não necessariamente todo Loc-RIB. IBGP, RR client, EBGP, confederation e route server aplicam regras prévias. Next hop e outros atributos podem estar vazios antes da transmissão.

O audit correto é um diff por peer, família e epoch. Cada remoção ou mudança é ligada à active policy e, quando necessário, comparada à visão do receiver. Update group é eficiência de implementação; Admin Label é metadata local, não prova universal de relação.

A RFC 9069 adiciona monitoramento direto de Loc-RIB. Inferi-lo via outro router introduzia export policy, aggregation e correlação frágil. Peer Type 3 representa uma instância Loc-RIB, com distinguisher, router ID e nome de VRF/table.

Essa identidade é namespace. Tabelas global em routers diferentes não são o mesmo objeto. Peer Up emulado, capabilities, address families e lifecycle precisam acompanhar a instância.

Loc-RIB pode ser filtrado. A RFC exige F flag quando só um subset é enviado. O claim passa de “todas as rotas selecionadas” para “subset autorizado”. Filtrar protege privacidade e escala; perder o contrato faz ausência parecer inexistência.

Loc-RIB também pode state-compress. Feed quieto pode significar estabilidade, churn sem troca de winner, compressão ou reporting failure. E Loc-RIB não é FIB: recursion pode falhar, hardware instalar menos ECMP, line card atrasar e túnel ou proteção mudar o packet path.

A RFC 9972, de maio de 2026, acrescenta gauges para input pre/post, Loc-RIB e output pre/post, além de damping, limits, licences e estados RPKI. Gauge é valor de um instante, não event history. Tipos dependem de feature e schedule.

Global count e soma por AFI/SAFI podem divergir por race ou partial failure. A inconsistência vira warning, não correção silenciosa. Clear e overflow geram discontinuity. Durante GR/LLGR, o producer pode reduzir reporting para preservar convergence; silêncio em crise é ambíguo.

Produtos atuais mostram o custo. Cisco IOS XE documenta multiple stations, pacing, buffers e delays. IOS XR oferece vistas simultâneas em releases/plataformas indicadas, com scan interval. Junos expõe memory limit e management instance. O inventário deve provar o comportamento de cada plataforma.

Security faz parte da evidência. Full RIB pode revelar L3VPN, peers e policy effects. Sem mutual authentication, alguém pode imitar router ou station; sem confidentiality, ler ou alterar o feed. A RFC 7854 recomenda IPsec tunnel mode com pre-shared keys quando necessário. TCP sozinho não oferece identidade ou segredo.

O desenho moderno acrescenta endpoint inventory, encryption, tenant separation, least privilege, retention, tamper-evident storage e revocation. Revogar uma estação não deve derrubar BGP nem destruir prova de outra parte autorizada.

Quatro artefatos sustentam produção. A entitlement matrix lista router, instance, peer, AFI/SAFI, station, stages, L/O/F, filter, cadence, compression e buffer. O health ledger guarda TCP epoch, Peer Up/Down, EOR, timestamp, queue, loss, lag e commits. Sentinel prefixes atravessam os diffs de policy. A prova cross-plane conecta winner, recursion, FIB/ASIC, interface e pacote.

Rollout testa accept/reject, rewrite, best change, export suppression, flaps, backpressure, loss, filtered view, zero timestamp, counter reset e restart, medindo CPU, memória, latência e convergence. Rollback reduz scan, mirroring, filter ou collector sem reset BGP e mostra coverage gap explícito.

Separe routing policy, producer capacity, telemetry custody, security audit e forwarding verification. O operador do collector não deve definir o feed, ocultar gaps e certificar sua própria conclusão.

A especificação inicial mínima de Heng Lu favorece um formato comum fino sem delegar seleção. Stage, filter, cadence, station e revocation permanecem decisões locais. Running-code primacy ordena configuration, BMP record, collector DB, Loc-RIB, FIB e packet; nenhuma camada baixa toma emprestada a autoridade da alta.

Soberania prática controla quais rotas saem, quem as correlaciona, quanto persistem, como se detecta alteração e como o acesso termina. O BMP é excelente testemunha quando declara sua jurisdição.

O monitor viu uma rota. A pergunta é qual, em que etapa e instância, após que compressão ou perda, sob qual filtro e confirmada por qual pacote.

Fontes