Skip to content

[DRAFT] docs: SONiC SNMP NMS compliance reference — Entity MIB, Sensor MIB, Interface MIB, Traps & pytest blueprint#375

Closed
thongal-upscale wants to merge 5 commits into
sonic-net:masterfrom
thongal-upscale:thongal_nms_snmp1
Closed

[DRAFT] docs: SONiC SNMP NMS compliance reference — Entity MIB, Sensor MIB, Interface MIB, Traps & pytest blueprint#375
thongal-upscale wants to merge 5 commits into
sonic-net:masterfrom
thongal-upscale:thongal_nms_snmp1

Conversation

@thongal-upscale
Copy link
Copy Markdown

Summary

This PR adds compliance.md — a comprehensive SNMP compliance reference document for SONiC, targeted at NMS/test engineers who need to understand what is implemented, what is missing, and how to write external pytest validation scripts against live devices.

What's in the document

  • SONiC System Architecture — full Mermaid block diagram of all containers with color coding; docker-snmp and mgmt-framework highlighted as primary NMS-facing containers
  • SNMP Subsystem Deep Dive — two-layer AgentX architecture (net-snmp master + sonic_ax_impl Python subagent + FRR subagent), MIB tree overview
  • SNMP Operations Primer — sequence diagrams for GET / GETNEXT / GETBULK / Trap / AgentX registration flows
  • Interface MIB (RFC 1213 / RFC 2863) — per-OID compliance table, data source map, known placeholders (ifLastChange=0, ifLinkUpDownTrapEnable=2)
  • Entity MIB (RFC 2737) — physical entity tree diagram, 9-digit OID encoding scheme, per-column compliance table including known gaps (firmware version, line cards, entLogicalTable)
  • Entity Sensor MIB (RFC 3433) — full sensor data pipeline diagram (hardware → pmon → STATE_DB → subagent → OID), type/scale/precision reference table for all sensor classes
  • Alarms & Traps — current state (linkDown disabled, no YANG model for trap sinks, entConfigChange missing), prioritized gap list
  • Compliance Gap Summary — quadrant chart + P0–P3 prioritized gap table
  • External pytest Testing Blueprint — runnable conftest.py, SnmpClient utility, and test modules for all MIBs with xfail markers for known gaps

Test plan

  • Render Mermaid diagrams in GitHub preview and verify all diagrams display correctly
  • Run pytest suite against a live SONiC device: pytest tests/ --snmp-host <DUT_IP> --community public -v
  • Verify known-gap xfail tests are correctly skipped/marked
  • Review compliance tables for accuracy against current sonic_ax_impl source

Notes

  • This is a draft PR — content review and feedback welcome before merge
  • Branch: thongal_nms_snmp1
  • Based on analysis of sonic-snmpagent commit 329f1cca and sonic-buildimage main

Made with Cursor

thongal-upscale and others added 2 commits May 19, 2026 13:38
Add upscaleai/compliance.md on branch thongal_nms_snmp1.

The document covers:
- Full SONiC system architecture block diagram (Mermaid, colored)
  highlighting docker-snmp and mgmt-framework containers
- SNMP two-layer AgentX architecture deep dive
- SNMP operations primer with sequence diagrams (GET/GETNEXT/GETBULK/Trap/AgentX)
- Interface MIB (RFC 1213 / RFC 2863) compliance analysis with per-OID status
- Entity MIB (RFC 2737) compliance analysis including physical tree diagram
  and 9-digit OID encoding scheme
- Entity Sensor MIB (RFC 3433) full pipeline diagram and sensor type/scale/
  precision reference table
- Alarms and Traps gap analysis
- Prioritized compliance gap summary (P0–P3)
- External pytest testing blueprint with runnable test modules for all MIBs,
  xfail markers for known gaps, and CI integration guidance

Intended audience: medium-to-advanced NMS/test engineers validating SONiC
SNMP compliance and writing external pytest scripts against live devices.

Co-authored-by: Cursor <cursoragent@cursor.com>
Move compliance.md to repo root for discoverability.
Covers Entity MIB, Sensor MIB, Interface MIB, Traps/Alarms,
SONiC architecture diagrams, gap analysis, and pytest blueprint.

Co-authored-by: Cursor <cursoragent@cursor.com>
@linux-foundation-easycla
Copy link
Copy Markdown

linux-foundation-easycla Bot commented May 19, 2026

CLA Not Signed

thongal-upscale and others added 3 commits May 19, 2026 13:41
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
@mssonicbld
Copy link
Copy Markdown
Collaborator

/azp run

3 similar comments
@mssonicbld
Copy link
Copy Markdown
Collaborator

/azp run

@mssonicbld
Copy link
Copy Markdown
Collaborator

/azp run

@mssonicbld
Copy link
Copy Markdown
Collaborator

/azp run

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants