[Link Event Damping] Add YANG model for dampening configuration - #26231
[Link Event Damping] Add YANG model for dampening configuration#26231DendroLabs wants to merge 4 commits into
Conversation
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
Adds 6 configuration leaves to the PORT_LIST in sonic-port.yang for the link event dampening feature (sonic-net/SONiC#1071): - link_event_damping_algorithm (disabled/aied/aied-monitor) - max_suppress_time - decay_half_life - suppress_threshold - reuse_threshold - flap_penalty The aied-monitor mode is a SONiC-specific enhancement recommended by RFC 7196 that calculates penalties without suppressing events, allowing safe parameter tuning in production. Signed-off-by: DendroLabs <info@dendrolabs.com>
- Add must constraint: decay_half_life <= max_suppress_time - Add must constraint: reuse_threshold <= suppress_threshold - Add valid and invalid test cases for dampening parameters Signed-off-by: DendroLabs <info@dendrolabs.com>
9320e1f to
3c025e0
Compare
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/easycla |
When a must constraint has a custom error-message, libyang outputs the custom message directly instead of the generic "Must condition not satisfied". Change eStrKey from "Must" to "None" so the test only checks for our custom error string. Signed-off-by: DendroLabs <info@dendrolabs.com>
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
Hi @qiluo-msft @praveen-li — friendly ping on this YANG model PR. The sairedis side is moving forward (sonic-net/sonic-sairedis#1798 merged, sonic-net/sonic-sairedis#1935 open for review), and this is the buildimage piece needed for link event damping. CI was green when submitted. Would appreciate a review when you get a chance. Thanks! |
dgsudharsan
left a comment
There was a problem hiding this comment.
Can you please add a sample configuration to sample_config_db.json as well as update Configuration.md?
|
@DendroLabs, please address comment. |
…elds Address review feedback on sonic-net#26231: add a link event damping sample to tests/files/sample_config_db.json and document the six new PORT attributes in doc/Configuration.md.
|
Thanks @dgsudharsan, good call. I added a sample link event damping configuration to the |
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
…elds Address review feedback on sonic-net#26231: add a link event damping sample to tests/files/sample_config_db.json and document the six new PORT attributes in doc/Configuration.md. Signed-off-by: DendroLabs <info@dendrolabs.com>
70100fc to
bc3488e
Compare
|
/azp run Azure.sonic-buildimage |
|
Azure Pipelines successfully started running 1 pipeline(s). |
Summary
Adds YANG model leaves to
sonic-port.yangfor the Link Event Damping feature (HLD: sonic-net/SONiC#1071).New leaves in PORT_LIST:
link_event_damping_algorithm-- string:disabled|aied|aied-monitor(default:"disabled")max_suppress_time-- uint32, seconds (default: 0)decay_half_life-- uint32, seconds (default: 0)suppress_threshold-- uint32, unitless penalty (default: 0)reuse_threshold-- uint32, unitless penalty (default: 0)flap_penalty-- uint32, unitless penalty (default: 0)The
aied-monitormode is a SONiC-specific enhancement recommended by RFC 7196 ("Calculate But Do Not Damp"). It calculates penalties and emits syslog messages but does NOT suppress link events, allowing operators to safely tune parameters in production before enabling full dampening. No other NOS vendor has implemented this.Related PRs:
Test plan
pyanglint)🤖 Generated with Claude Code