Two read paths for counters
There are deliberately two ways to read usage, and they behave differently:
- The accounting view (
GET /bng/sessions) is the billing-grade snapshot, refreshed on the interim cadence. Use it for reconciliation and per-subscriber detail. - The telemetry view (
GET /bng/counters,GET /bng/counters/{ip}) is a pure read straight from the data plane — it takes no locks and triggers no save, so you can poll it as fast as you like for live dashboards without slowing the control plane. Large counters cross the API as decimal strings so they never lose precision.
Structured JSON logs go to stdout (pipe them to your log collector or SIEM); Prometheus is scraped from /metrics; and the authoritative request/response shapes live in the generated OpenAPI spec, not in this document.
Scope and Caveats
Two different kinds of boundary apply to this box, and it helps to keep them apart. Scope decisions are deliberate choices about what the Quantum IPoE BNG product line is and is not — they are stable and will not change from release to release. Caveats are specific to this Community-Edition Alpha build — they describe where the running software stops short of the full product design today, and each has a defined path to being filled.