sonic-mgmt
sonic-mgmt copied to clipboard
Leverage the fanout's ASIC to send PFC storm
Currently, the PFC storm is sent using packet socket on the host CPU, which causes some drawbacks
- There is strict timing requirement, which can not be guaranteed
- The more ports under PFC storm, the higher probability that the timing requirement is not satisfied
We will leverage the fanout's ASIC to send PFC storm
- Use SDK API to enable lossless traffic, set xoff to 0, and setup mappings for the PGs and the corresponding IEEE priorities
After the change, the pfc related test case which is using onxy as fanout will send the pfc frame with ASIC instead of using the CPU. New docker storm docker need to be build with the Docker file provided in this PR.
Description of PR
Summary: Fixes # (issue)
Type of change
- [ ] Bug fix
- [ ] Testbed and Framework(new/improvement)
- [x] Test case(new/improvement)
Back port request
- [ ] 201911
- [ ] 202012
- [ ] 202205
- [x] 202305
- [x] 202311
- [x] 202405
Approach
What is the motivation for this PR?
To make the pfc related test case much more stable.
How did you do it?
Change sending pfc frame with CPU to ASIC on the onxy fanout.
How did you verify/test it?
Run the pfc related test case on the setup which has onxy fanout, test case could pass stablly.