-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Link event damping HLD #1071
Link event damping HLD #1071
Conversation
f155e8e
to
b639396
Compare
ba82678
to
2244eee
Compare
@zhangyanzhao Please add me as the reviewer. |
@Ashish1805 where do we stands with this HLD? |
please accept the invitation. |
This HLD was reviewed in SONiC community on 10/18/2022. |
Deferred from 202211 release. |
@Ashish1805 can you please help to add the code PRs as agreed in community? Also, please sign the EasyCLA, that is required before you can submit PRs. Thanks. |
HLD was reviewed in community on 10/18/2022. Keep a record |
This PR contains the HLD for link event damping. Co-authored-by: Mike Beresford <[email protected]> Signed-off-by: Ashish Singh <[email protected]>
Hi @venkatmahalingam, Can you please take a look at the PR when get some time? Thank you. |
@eddyk-nvidia As based on the comments provided I have updated the PR, can you please take a look at the PR when you get some time? Thank you. |
Hi @lguohan, did we answer your question on why not using LUA script or do you have more question on that? Thank you. |
Hi @prgeor, Can you please take a look at the PR when get some time? Thank you. |
@Ashish1805 Ack. I should have my comments by 4/5 |
link event damping timer events. - Handler in the class will be used to handle the timer event of link event dampers. HLD: sonic-net/SONiC#1071
link event damping timer events. - Handler in the class will be used to handle the timer event of link event dampers. HLD: sonic-net/SONiC#1071
- Class to handle the port state change event callback from SAI and sending the events to syncd main thread for processing by link event damper. Depends on: sonic-net#1297 HLD: sonic-net/SONiC#1071
damping config attr. - Adding serialization/deserialization logic for link event damping config so that when libsai is sending link event damping algo and config to syncd for set request, it uses serialization logic to serialize the requested data before sending the set request and when syncd receives the link event damping port attribute set request, it uses the deserialization logic to deserialize the data. HLD: sonic-net/SONiC#1071
…1312) Handler in the class will be used to handle the timer event of link event dampers. HLD: sonic-net/SONiC#1071
- Class to handle the port state change event callback from SAI and sending the events to syncd main thread for processing by link event damper. Depends on: #1297 HLD: sonic-net/SONiC#1071
link event damper. - Link event damper running on each port will have its own SelectableTimer. This class helps create a mapping of SelectableTimer and object that created the SelectableTimer so that when timer is fired, proper EventHandler object can be invoked. HLD: sonic-net/SONiC#1071
link event damper. - Link event damper running on each port will have its own SelectableTimer. This class helps create a mapping of SelectableTimer and object that created the SelectableTimer so that when timer is fired, proper EventHandler object can be invoked. HLD: sonic-net/SONiC#1071
link event damper. - Link event damper running on each port will have its own SelectableTimer. This class helps create a mapping of SelectableTimer and object that created the SelectableTimer so that when timer is fired, proper EventHandler object can be invoked. HLD: sonic-net/SONiC#1071
damping config attr. - Adding serialization/deserialization logic for link event damping config so that when libsai is sending link event damping algo and config to syncd for set request, it uses serialization logic to serialize the requested data before sending the set request and when syncd receives the link event damping port attribute set request, it uses the deserialization logic to deserialize the data. HLD: sonic-net/SONiC#1071
damping config attr. - Adding serialization/deserialization logic for link event damping config so that when libsai is sending link event damping algo and config to syncd for set request, it uses serialization logic to serialize the requested data before sending the set request and when syncd receives the link event damping port attribute set request, it uses the deserialization logic to deserialize the data. HLD: sonic-net/SONiC#1071
damping config attr. - Adding serialization/deserialization logic for link event damping config so that when libsai is sending link event damping algo and config to syncd for set request, it uses serialization logic to serialize the requested data before sending the set request and when syncd receives the link event damping port attribute set request, it uses the deserialization logic to deserialize the data. HLD: sonic-net/SONiC#1071
…nt (#1322) damping config attr. - Adding serialization/deserialization logic for link event damping config so that when libsai is sending link event damping algo and config to syncd for set request, it uses serialization logic to serialize the requested data before sending the set request and when syncd receives the link event damping port attribute set request, it uses the deserialization logic to deserialize the data. HLD: sonic-net/SONiC#1071
- This supports the link event damping config and algorithm set API. - Sends the link event damping config from libsai to syncd main thread. HLD: sonic-net/SONiC#1071
- This supports the link event damping config and algorithm set API. - Sends the link event damping config from libsai to syncd main thread. HLD: sonic-net/SONiC#1071
- Adding per port link event damper class that manages the internal behavior and workings of link event damping logic on a port where link event damping config is enabled. - This class keeps track of damping timer, current port state, post damping advertised port state and relevant debug counters per port. HLD: sonic-net/SONiC#1071
- Adding per port link event damper class that manages the internal behavior and workings of link event damping logic on a port where link event damping config is enabled. - This class keeps track of damping timer, current port state, post damping advertised port state and relevant debug counters per port. HLD: sonic-net/SONiC#1071
- This supports the link event damping config and algorithm set API. - Sends the link event damping config from libsai to syncd main thread. HLD: sonic-net/SONiC#1071
- This supports the link event damping config and algorithm set API. - Sends the link event damping config from libsai to syncd main thread. HLD: sonic-net/SONiC#1071 Signed-off-by: Ashish Singh <[email protected]>
- This supports the link event damping config and algorithm set API. - Sends the link event damping config from libsai to syncd main thread. HLD: sonic-net/SONiC#1071 Signed-off-by: Ashish Singh <[email protected]>
@Ashish1805 , @royyi8, @mint570 , could you please add the following to complete the feature?
|
- This supports the link event damping config and algorithm set API. - Sends the link event damping config from libsai to syncd main thread. HLD: sonic-net/SONiC#1071 Signed-off-by: Ashish Singh <[email protected]>
- This supports the link event damping config and algorithm set API. - Sends the link event damping config from libsai to syncd main thread. HLD: sonic-net/SONiC#1071 Signed-off-by: Ashish Singh <[email protected]>
- This supports the link event damping config and algorithm set API. - Sends the link event damping config from libsai to syncd main thread. HLD: sonic-net/SONiC#1071 Signed-off-by: Ashish Singh <[email protected]>
@royyi8, gentle reminder. Can you please provide a plan for the above? We need sonic-mgmt tests to validate the feature |
This PR contains the HLD for link event damping.
Following PRs are being added to support the syncd implemented link-event damping: