-
Notifications
You must be signed in to change notification settings - Fork 603
Link Down Debounce Feature #2284
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -3481,6 +3481,17 @@ typedef enum _sai_port_attr_t | |
| */ | ||
| SAI_PORT_ATTR_APSU_ISL_READY, | ||
|
|
||
| /** @brief Link down debounce time in microseconds | ||
| * | ||
| * 0 means no delay time so link down events are immediately delivered as usual | ||
| * This attribute overrides the switch level debounce configuration | ||
| * | ||
| * @type sai_uint32_t | ||
| * @flags CREATE_AND_SET | ||
| * @default 0 | ||
| */ | ||
| SAI_PORT_ATTR_LINK_DOWN_DEBOUNCE_TIMEOUT, | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. If the DOWN DEBOUNCE mechanism only delays the NOS-level notification, upper-layer applications and protocols may continue to assume the port is operationally UP, but packets could start experiencing drops in the data path.
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I checked various implementation documentation across vendors and looks like there debug counters maintain for link flaps. If there is a link flap observed NOS knows that there is a traffic loss during debounce. I will introduce debug counters for link flags during debounce. |
||
|
|
||
| /** | ||
| * @brief End of attributes | ||
| */ | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we slightly reword as: A non-zero value of this port attribute overrides the switch level debounce timeout.
The reason being that the default value of this port attr is 0 and can cause confusion.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have kept the wording consistent with the port up debounce. If you feel strongly then probably would be a good idea to change there as well.
I feel the wording is ok: if port is not configured then default of 0 is a no op as an override.