Skip to content

Commit 359f298

Browse files
committed
Test plan for next hop split
What is the motivation for this PR? This is the test plan for the next hop group split enhancement, as covered in PR 712 (sonic-net/SONiC#712)
1 parent 20638f6 commit 359f298

File tree

1 file changed

+71
-0
lines changed

1 file changed

+71
-0
lines changed
+71
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
# **Next Hop Split Test Plan**
2+
3+
- [Introduction](#introduction)
4+
- [Scope](#scope)
5+
- [Test Setup](#test-setup)
6+
- [Test Cases](#test-cases)
7+
8+
# Introduction
9+
10+
This is the test plan for the next hop group split enhancement
11+
12+
The PR covered in this test plan is [Next hop group split HLD PR 712](https://github.com/Azure/SONiC/pull/712)
13+
14+
## Scope
15+
16+
This test plan covers a new method of programming routes into APP_DB, where the next hop information is included in a separate NEXT_HOP_GROUP_TABLE referenced by the ROUTE_TABLE and LABEL_ROUTE_TABLE.
17+
18+
There is no support in the BGP container/fpmsyncd for this feature, so routes and next hop groups are all programmed directly into APP_DB by the test scripts.
19+
20+
# Test Setup
21+
22+
These test cases will be run in the T0 topology.
23+
24+
# Test Cases
25+
26+
The methods used to support these test cases will be very similar to the methods in test_static_route.py (for adding IP addresses and routes and for checking traffic).
27+
28+
## Test Case 1. IPv4 routes
29+
30+
### Test Objective
31+
Verify that IPv4 routes and next hop groups can be programmed and cause the correct data plane behaviour.
32+
33+
### Test Steps
34+
* Create an IPv4 next hop group with a single next hop
35+
* Create an IPv4 prefix route referencing the next hop
36+
* Create an IPv4 next hop group with multiple next hops
37+
* Update the route to reference the new next hop group
38+
39+
### Pass/Fail Criteria
40+
* After the route is created verify that traffic for the prefix is routed via the next hop
41+
* After the route is updated verify that traffic for the prefix is routed via a next hop in the group
42+
43+
## Test Case 2. IPv6 routes
44+
45+
### Test Objective
46+
Verify that IPv4 routes and next hop groups can be programmed and cause the correct data plane behaviour.
47+
48+
### Test Steps
49+
* Create an IPv6 next hop group with a single next hop
50+
* Create an IPv6 prefix route referencing the next hop
51+
* Create an IPv6 next hop group with multiple next hops
52+
* Update the route to reference the new next hop group
53+
54+
### Pass/Fail Criteria
55+
* After the route is created verify that traffic for the prefix is routed via the next hop
56+
* After the route is updated verify that traffic for the prefix is routed via a next hop in the group
57+
58+
## Test Case 3. MPLS routes
59+
60+
### Test Objective
61+
Verify that MPLS routes and next hop groups can be programmed and cause the correct data plane behaviour.
62+
63+
### Test Steps
64+
* Create an IPv4 next hop group with a single labeled next hop
65+
* Create a label route referencing the next hop
66+
* Create an IPv4 next hop group with multiple labeled next hops
67+
* Update the label route to reference the new next hop group
68+
69+
### Pass/Fail Criteria
70+
* After the route is created verify that traffic for the prefix is routed via the next hop
71+
* After the route is updated verify that traffic for the prefix is routed via a next hop in the group

0 commit comments

Comments
 (0)