sonic-net / sonic-platform-daemons

Platform module daemons for SONiC
Other
25 stars 159 forks source link

[SmartSwitch] Add implementation for the DPU chassis daemon. #554

Closed oleksandrivantsiv closed 3 weeks ago

oleksandrivantsiv commented 3 weeks ago

Description

Implement the Chassis daemon that runs on the Smart Switch DPU is responsible for maintaining the DPU state in the CHASSIS_STATE_DB. DB schema is defined in Smart Switch PMON HLD.

Motivation and Context

Provide up-to-date DPU data and control plane states in the CHASSIS_STATE_DB.

How Has This Been Tested?

The new functionality is fully covered with the UT provided in this PR.

Additional Information (Optional)

prgeor commented 3 weeks ago

@rameshraghupathy can you review

oleksandrivantsiv commented 3 weeks ago

The limitation of pull model is that it is limited by the polling interval. Increasing the polling frequency may cause additional overhead. Potential chances of missing pulse events less than the polling interval.

I'll provide a subscription-based implementation for the platforms that don't require special handling of the data plane and control plane statuses in a separate PR.

This PR is to unblock the integration and allow the DPU to post its state to the CHASSIS_STATE_DB.