Skip to content

Branch Office Simulation — runbook do operador

Outras línguas: English · Português · Español

Status do escopo (pós-congelamento de escopo 2026-05-10) — Ver ARCHITECTURE.md para os 37 MÓDULOs canônicos + 7 Test Kinds + arquitetura de safety DOM/CPOS/PIE-PA. ADRs 0014, 0019-0025 cobrem adições pós-Freeze.

Resumo

Branch Office Simulation (BO) permite rodar os test plans existentes Q1-Q4 sob restrições reais de banda WAN — 100 Mbps cabo, 50/10 DSL, 1 Gbps fibra, qualquer coisa que o cliente tenha. O shaper fica no roteador VyOS-ISP e aplica rate limits bidirecionais e assimétricos no edge da operadora simulada, expondo o comportamento do NGFW sob condições reais de ISP.

Para o design completo, ver ADR 0008.

O que faz

Quando BO é habilitado num test plan, o test-run engine:

  1. Chama scripts/bo-shape.sh --down-mbps N --up-mbps M ANTES dos agentes
  2. O script faz kubectl exec no pod VyOS e aplica VyOS QoS:
  3. Shaper de egress em eth1 capando saída em --down-mbps
  4. Shaper de ingress em eth1 (via ifb0) capando entrada em --up-mbps
  5. Roda scripts/bo-verify.sh pra confirmar shaper aplicado E medir capacidade real vs solicitada (baseline iperf3 de 5s)
  6. Lança os agentes (browser-engine/synthetic-load) — eles batem no teto da banda
  7. No cleanup, chama scripts/bo-unshape.sh pra remover o shaping
  8. Annex J no relatório atesta a taxa solicitada vs medida + contadores por direção

Quando usar

  • Pré-venda: cliente diz "minhas filiais têm 100 Mbps fibra, NGFW vai aguentar?"
  • Capacity planning: provar que NGFW funciona na velocidade real do link
  • Regressão: pegar bugs de buffer/queueing que só aparecem sob pressão de banda
  • Rigor metodológico: cliente exige baseline RFC-2544/6349 sob a banda real

Input de banda

Free-form — sem presets fixos. Operador digita o valor exato que o ISP entrega.

Cenário Down Up
DSL rural / home office 25 Mbps 5 Mbps
Cabo SMB 100 Mbps 30 Mbps
MPLS mid-market 200 Mbps 200 Mbps
Fibra de filial 500 Mbps 500 Mbps
HQ regional dedicado 1 Gbps 1 Gbps
Datacenter peering 10 Gbps 10 Gbps

Apenas digite o que o cliente tem — sem mapeamento pra preset.

Como usar pelo dashboard

  1. Escolha um quadrante normalmente (Q1, Q2, Q3, Q4)
  2. No novo seletor Environment:
    Environment: ○ Datacenter (sem shaping, default atual)
                 ● Branch Office Simulation
                     Down: [_____] [Mbps▾]
                     Up:   [_____] [Mbps▾]
    
  3. Digite os valores de down + up
  4. Clique Run Test Plan

Dashboard valida (range, tipo), passa ao engine, engine cuida do resto.

CLI

scripts/bo-shape.sh --down-mbps 100 --up-mbps 30
scripts/bo-verify.sh
# Output:
#   Layer J — Branch Office Simulation: PASS
#   Configurado: down=100Mbps up=30Mbps
#   Medido     : down=98.7Mbps up=29.4Mbps (delta dentro de 5%)
scripts/bo-unshape.sh

O que NÃO está incluso

Por design, BO faz apenas bandwidth shaping. NÃO inclui no v4.4:

  • Injeção de latência — mascararia comportamento de latência do NGFW sob queueing com latência artificial. Trabalho futuro.
  • Injeção de packet loss — confundiria perda do ISP com buffer overrun do NGFW. Trabalho futuro.
  • Jitter — mesma razão. Trabalho futuro.
  • Per-flow shaping — shaper único global por direção.
  • AQM (fq_codel, cake) — usa HTB + bfifo plain pra expor o comportamento de buffer do NGFW, não inteligência de queue do VyOS.

Workflow do operador

Após cada test plan com BO

  1. Run completa OK → Annex J populado, sem ação necessária.
  2. Run aborta no verifier → checar dashboard preflight panel. Causas comuns:
  3. VyOS pod não acessível
  4. Taxa configurada acima da capacidade do NIC físico
  5. Verifier mediu >10% off (gating production bloqueia; observational avisa)

Bypass emergencial

export BO_GATING=observational
# Ou no UI: selecionar "Datacenter (no shaping)"

Default é production (bloqueia em falha). Override só quando entender PORQUÊ.

Composição com o resto da bancada

  • Q1-Q4 — ortogonal. Qualquer quadrante × qualquer banda.
  • Inspection Profile (v4.5) — ortogonal.
  • Annex G layer 5 (L2 BPDU) — independente.
  • NetFlow/IPFIX (v4.7) — compõe (BO + NetFlow mostra flow records sob banda).
  • SDWAN+Cloud On-Ramp (v4.8) — compõe profundamente (túnel SD-WAN pela mesma WAN shapeada).

Referências

  • ADR 0008 — docs/ADR/0008-branch-office-simulation.md
  • VyOS QoS docs — https://docs.vyos.io/en/latest/configuration/trafficpolicy/
  • Scripts — scripts/bo-shape.sh, bo-verify.sh, bo-unshape.sh (PR-B)
  • Annex J template — dashboard/templates/annex-j-branch-office.md.tmpl (PR-D)