Skip to content
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

Proposed ECMP Next Hop CLI Show Cmd Output Format #659

Merged
merged 7 commits into from
Jan 20, 2021
113 changes: 108 additions & 5 deletions doc/ecmp/fine_grained_next_hop_hld.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# SONiC Fine Grained ECMP
# High Level Design Document
### Rev 1.2
### Rev 1.3

# Table of Contents
* [List of Tables](#list-of-tables)
Expand Down Expand Up @@ -39,7 +39,8 @@
| 0.1 | 04/24/2020 | Anish Narsian | Initial version |
| 1.0 | 05/22/2020 | Anish Narsian | Incorporated review comments |
| 1.1 | 05/26/2020 | Anish Narsian | Add test plan |
| 1.2 | 10/23/2020 | Anish Narsian | Interface nh oper state handler |
| 1.2 | 10/21/2020 | Kavin Kamaraj | Add fgnhg CLI output format |
| 1.3 | 10/23/2020 | Anish Narsian | Interface nh oper state handler |


# About this Manual
Expand Down Expand Up @@ -191,11 +192,113 @@ CLI commands:
config fg nhg prefix <add/del> <fg-nhg-group-name> <prefix>
config fg nhg member <add/del> <fg-nhg-group-name> <next-hop-ip>
show fg nhg group <fg-nhg-group-name/all>
show fg nhg hash-view <fg-nhg-group-name> (shows the current hash bucket view of fg nhg)
show fg nhg active-hops <fg-nhg-group-name> (shows which set of next-hops are active)
show fgnhg hash-view <fg-nhg-group-name> (shows the current hash bucket view of fg nhg)
show fgnhg active-hops <fg-nhg-group-name> (shows which set of next-hops are active)
```
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we also add details about cli output for 'show fg nhg group'?


Show CLI commands of ```show fg nhg hash-view``` and ```show fg nhg active-hops``` are implemented as a view of the state db table described in section 2.2
### 2.3.1 CLI 'show fgnhg hash-view <fg-nhg-group-name>' Output Format
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

image
This does not show up as expected when viewed as markdown in the reader, maybe a markdown syntax issue, can you please fix the same

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Addressed and made some more changes within section description

```

NOTE: <fg-nhg-group-name> is an optional parameter containing the user-defined alias of nhg ipv4 or nhg ipv6
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggest that we reword this to say NOTE: <fg-nhg-group-name> is an optional parameter containing the user-defined alias defined via FG_NHG entry

found in 'FG_NHG_PREFIX' section of config dB. If specified, the output will display either ipv4 next hops and banks
or ipv6 next hops and banks accordingly. If it is not specified, by default both ipv4 and ipv6 next hops and banks
are displayed as shown below:


+-----------------+--------------------+----------------+
| FG_NHG_PREFIX | Next Hop | Hash buckets |
+=================+====================+================+
| 100.50.25.12/32 | 200.200.200.4 | 0 |
| | | 1 |
| | | 2 |
| | | 3 |
| | | 4 |
| | | 5 |
| | | 6 |
| | | 7 |
| | | 8 |
| | | 9 |
| | | 10 |
| | | 11 |
| | | 12 |
| | | 13 |
| | | 14 |
| | | 15 |
+-----------------+--------------------+----------------+
| 100.50.25.12/32 | 200.200.200.5 | 16 |
| | | 17 |
| | | 18 |
| | | 19 |
| | | 20 |
| | | 21 |
| | | 22 |
| | | 23 |
| | | 24 |
| | | 25 |
| | | 26 |
| | | 27 |
| | | 28 |
| | | 29 |
| | | 30 |
| | | 31 |
+-----------------+--------------------+----------------+
| fc:5::/128 | 200:200:200:200::4 | 0 |
| | | 1 |
| | | 2 |
| | | 3 |
| | | 4 |
| | | 5 |
| | | 6 |
| | | 7 |
| | | 8 |
| | | 9 |
| | | 10 |
| | | 11 |
| | | 12 |
| | | 13 |
| | | 14 |
| | | 15 |
+-----------------+--------------------+----------------+
| fc:5::/128 | 200:200:200:200::5 | 16 |
| | | 17 |
| | | 18 |
| | | 19 |
| | | 20 |
| | | 21 |
| | | 22 |
| | | 23 |
| | | 24 |
| | | 25 |
| | | 26 |
| | | 27 |
| | | 28 |
| | | 29 |
| | | 30 |
| | | 31 |
+-----------------+--------------------+----------------+
```

### 2.3.2 CLI 'show fgnhg active-hops' Output Format
```
NOTE: 'fg-nhg-group-name' is an optional parameter containing the user-defined alias of nhg ipv4 or nhg ipv6
found in 'FG_NHG_PREFIX' section of config dB. If specified, the output will display either ipv4 active next hops
or ipv6 active next hops accordingly. If it is not specified, by default both ipv4 and ipv6 active next hops
are displayed as shown below:


+-----------------+--------------------+
| FG_NHG_PREFIX | Active Next Hops |
+=================+====================+
| 100.50.25.12/32 | 200.200.200.4 |
| | 200.200.200.5 |
+-----------------+--------------------+
| fc:5::/128 | 200:200:200:200::4 |
| | 200:200:200:200::5 |
+-----------------+--------------------+
```


Show CLI commands of ```show fgnhg hash-view``` and ```show fgnhg active-hops``` are implemented as a view of the state db table described in section 2.2


## 2.4 Orchestration Agent
Expand Down