Commit 39de280
committed
[swss]: IcmpOrch to support ICMP session offload to ASIC
<!--
Please make sure you have read and understood the contribution guildlines:
https://github.com/Azure/SONiC/blob/gh-pages/CONTRIBUTING.md
1. Make sure your commit includes a signature generted with `git commit -s`
2. Make sure your commit title follows the correct format: [component]: description
3. Make sure your commit message contains enough details about the change and related tests
4. Make sure your pull request adds related reviewers, asignees, labels
Please also provide the following information in this pull request:
-->
**What I did**
IcmpOrch for supporting hardware offloaded ICMP echo sessions.
Changes done here adds support for the SAI ICMP ECHO spec:
https://github.com/opencomputeproject/SAI/blob/master/doc/SAI-Proposal-ICMP-ECHO.md
A common template in saioffloadsession.h is added for handling sai offload sessions. BFD or any future offload session handling can be migrated to this template.
IcmpOrch will create sessions based on switch capability published in STATE_DB by switchcorch which is checked in IcmpOrch's constructor.
STATE_DB SWITCH_CAPABILITY:
```
"SWITCH_CAPABILITY|switch": {
"value": {
<snip>
...
"ICMP_OFFLOAD_CAPABLE": "true",
...
<snip>
}
},
```
**Why I did it**
ICMP echo sessions are used by LinkMgrd to monitor link state in Dual-ToR architecture and switch traffic.
Current software based ICMP echo sessions used by Linkprober in LinkMgrd limits the detection time and uses host network bandwidth.
Hardware based sessions will bring down the detection time and host network bandwidth is not used.
**How I verified it**
Tested the changes with DVS.
**Details if related**
ICMP echo table definitions: sonic-net/sonic-swss-common#980
ICMP echo SaiRedis changes: sonic-net/sonic-sairedis#15421 parent 1b4532d commit 39de280
File tree
12 files changed
+2372
-1
lines changed- orchagent
- tests
- mock_tests
12 files changed
+2372
-1
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
103 | 103 | | |
104 | 104 | | |
105 | 105 | | |
| 106 | + | |
106 | 107 | | |
107 | 108 | | |
108 | 109 | | |
| |||
0 commit comments