-
Notifications
You must be signed in to change notification settings - Fork 0
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
Local ARS HLD #5
base: master
Are you sure you want to change the base?
Conversation
doc/ARS/Local_ARS_HLD.md
Outdated
|
||
**Existing Forwarding Decision Model** | ||
|
||
Today, the routing protocol or SDN controller decides the reachability of a given destination and finds all possible paths. These paths may be equal cost or unequal cost. Decision to choose one of the paths from all available paths is done in the switch pipeline based on a computed hash. This path selection is static in nature based on the packet fields. Hash based selection doesn't take into account the dynamic state of the local or end-to-end path. |
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.
The decision to choose of one the paths...
doc/ARS/Local_ARS_HLD.md
Outdated
|
||
Today, the routing protocol or SDN controller decides the reachability of a given destination and finds all possible paths. These paths may be equal cost or unequal cost. Decision to choose one of the paths from all available paths is done in the switch pipeline based on a computed hash. This path selection is static in nature based on the packet fields. Hash based selection doesn't take into account the dynamic state of the local or end-to-end path. | ||
|
||
Control plane protocols exist for traffic engineering a path but involves a control plane decision that is very slow to react to changing traffic patterns in the network or state of interfaces. |
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.
traffic engineering paths, but involves control plane decisions that are very slow...
doc/ARS/Local_ARS_HLD.md
Outdated
|
||
Control plane protocols exist for traffic engineering a path but involves a control plane decision that is very slow to react to changing traffic patterns in the network or state of interfaces. | ||
|
||
Adaptive Routing System (ARS) allows dynamically selection of the best available path for data packets based on real-time network conditions. This approach helps to mitigate congestion, optimize resource utilization, and improve overall network performance. |
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.
allows dynamic selections of the best...
doc/ARS/Local_ARS_HLD.md
Outdated
|
||
Adaptive Routing System (ARS) allows dynamically selection of the best available path for data packets based on real-time network conditions. This approach helps to mitigate congestion, optimize resource utilization, and improve overall network performance. | ||
|
||
No standard exists, but there are industry consesus for general approach. |
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.
is an industry consensus
doc/ARS/Local_ARS_HLD.md
Outdated
|
||
No standard exists, but there are industry consesus for general approach. | ||
|
||
Following illustrates common operation of ARS, in which two paths are considered - one shortest (minimal) and another (non-minimal), when forwarding trafficto the destination. When shortest path becomes congested, alternative will be used. |
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.
- The following illustrates the common operation of ARS
- traffic to
- the alternative
doc/ARS/Local_ARS_HLD.md
Outdated
arsorch - it is an orchestration agent that handles the configuration requests from CONFIG_DB or APPL_DB. It is responsible for creating the SAI ARS profile and configuring SAI ARS object. | ||
|
||
#### Orchdaemon | ||
orchdaemon - it is the main orchestration agent, which handles all Redis DB's updates, then calls appropriate orchagent, the new arsorch should be registered inside an orchdaemon. |
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.
The orchdaemon
doc/ARS/Local_ARS_HLD.md
Outdated
##### ARS_PORIFLE | ||
|
||
``` | ||
container ARS_PORIFLE { |
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.
ARS_PROFILE
doc/ARS/Local_ARS_HLD.md
Outdated
container ARS_OBJECT { | ||
|
||
list ARS_OBJECT_LIST { | ||
key "profile_name ars_name"; |
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.
two keys?
doc/ARS/Local_ARS_HLD.md
Outdated
##### ACL_RULE changes | ||
|
||
``` | ||
container sonic-acl { |
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.
remove all here except for the new leaf
length 1..255; | ||
} | ||
} | ||
... |
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.
remove extra "```"
|
||
| Revision | Date | Author | Change Description | | ||
| -------- | ----------- | ---------------- | ------------------ | | ||
| 1.0 | Dec 01 2024 | Vladimir Kuk | Initial proposal | |
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.
Please add Marvell somewhere to the revision.
} | ||
``` | ||
|
||
#### Config DB Enhancements |
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.
Please fix formatting issues in "Config DB Enhancements"
doc/ARS/Local_ARS_HLD.md
Outdated
|
||
### Warmboot and Fastboot Design Impact | ||
|
||
Warmboot for SWSS container will be supported. |
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.
If there is no delay or impact on warmboot, that should be mentioned here.
doc/ARS/Local_ARS_HLD.md
Outdated
|
||
### Restrictions/Limitations | ||
|
||
Due to hw resources allocations, all ARS configuration must be done prior to routing configuration.??????????? |
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.
Let's remove the ???????????
If this is an issue, let's move it to the "Open/Action items" section.
Signed-off-by: Vladimir Kuk <[email protected]>
Signed-off-by: Vladimir Kuk <[email protected]>
Signed-off-by: Vladimir Kuk <[email protected]>
initial version