Skip to content

Commit

Permalink
Merge branch 'main' into TUN13
Browse files Browse the repository at this point in the history
  • Loading branch information
charantejag504 authored Jun 17, 2024
2 parents 3297fa6 + db82227 commit f3915ac
Show file tree
Hide file tree
Showing 43 changed files with 3,626 additions and 1,265 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/wiki.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,11 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
path: featureprofiles
- name: Checkout wiki
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
repository: "openconfig/featureprofiles.wiki"
path: featureprofiles.wiki
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,14 @@ platform_exceptions: {
isis_single_topology_required: true
}
}
platform_exceptions: {
platform: {
vendor: JUNIPER
}
deviations: {
isis_level_enabled: true
}
}
platform_exceptions: {
platform: {
vendor: ARISTA
Expand Down
92 changes: 92 additions & 0 deletions feature/bgp/admin_distance/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
# RT-1.34: BGP route-distance configuration

## Summary

BGP default-route-distance, external-route-distance and internal-route-distance (administrative distance) configuration.

## Testbed type

* https://github.com/openconfig/featureprofiles/blob/main/topologies/atedut_4.testbed

## Procedure

### Applying configuration

For each section of configuration below, prepare a gnmi.SetBatch with all the configuration items appended to one SetBatch. Then apply the configuration to the DUT in one gnmi.Set using the `replace` option

#### Initial Setup:

* Connect DUT port-1, 2 and 3 to ATE port-1, 2 and 3
* Configure IPv4/IPv6 addresses on the ports
* Create an IPv4 network i.e. ```ipv4-network-1 = 192.168.10.0/24``` attached to ATE port-1 and port-2
* Create an IPv6 network i.e. ```ipv6-network-1 = 2024:db8:64:64::/64``` attached to ATE port-1 and port-2
* Configure IPv4 and IPv6 IS-IS between DUT Port-2 and ATE Port-2
* /network-instances/network-instance/protocols/protocol/isis/global/config
* Advertise ```ipv4-network-1 = 192.168.10.0/24``` and ```ipv6-network-1 = 2024:db8:64:64::/64``` from ATE to DUT over the IPv4 and IPv6 IS-IS session on port-2

### RT-1.34.1 [TODO:https://github.com/openconfig/featureprofiles/issues/3050]
#### Validate traffic with modified eBGP Route-Distance of 5
* Configure IPv4 and IPv6 eBGP between DUT Port-1 and ATE Port-1
* /network-instances/network-instance/protocols/protocol/bgp/global/config
* /network-instances/network-instance/protocols/protocol/bgp/global/afi-safis/afi-safi/config/
* Advertise ```ipv4-network-1 = 192.168.10.0/24``` and ```ipv6-network-1 = 2024:db8:64:64::/64``` from ATE to DUT over the IPv4 and IPv6 eBGP session on port-1
* Configure Route-Distance of eBGP session on port-1 to 5
* /network-instances/network-instance/protocols/protocol/bgp/global/default-route-distance/config/external-route-distance
* Validate using gNMI Subscribe with mode 'ONCE' that the correct Route-Distance value of 5 is reported:
* /network-instances/network-instance/protocols/protocol/bgp/global/default-route-distance/state/external-route-distance
* Generate traffic from ATE port-3 towards ```ipv4-network-1 = 192.168.10.0/24``` and ```ipv6-network-1 = 2024:db8:64:64::/64```
* Verify that the traffic is received on port-1 of the ATE

### RT-1.34.2 [TODO:https://github.com/openconfig/featureprofiles/issues/3050]
#### Validate traffic with modified eBGP Route-Distance of 250
* Configure Route-Distance of eBGP session on port-1 to 250
* /network-instances/network-instance/protocols/protocol/bgp/global/default-route-distance/config/external-route-distance
* Validate using gNMI Subscribe with mode 'ONCE' that the correct Route-Distance value of 250 is reported:
* /network-instances/network-instance/protocols/protocol/bgp/global/default-route-distance/state/external-route-distance
* Generate traffic from ATE port-3 towards ```ipv4-network-1 = 192.168.10.0/24``` and ```ipv6-network-1 = 2024:db8:64:64::/64```
* Verify that the traffic is received on port-2 of the ATE

### RT-1.34.3 [TODO:https://github.com/openconfig/featureprofiles/issues/3050]
#### Validate traffic with modified iBGP Route-Distance of 5
* Replace IPv4 and IPv6 eBGP with IPv4 and IPv6 iBGP between DUT Port-1 and ATE Port-1
* /network-instances/network-instance/protocols/protocol/bgp/global/config
* /network-instances/network-instance/protocols/protocol/bgp/global/afi-safis/afi-safi/config/
* Advertise ```ipv4-network-1 = 192.168.10.0/24``` and ```ipv6-network-1 = 2024:db8:64:64::/64``` from ATE to DUT over the IPv4 and IPv6 iBGP session on port-1
* Configure Route-Distance of iBGP session on port-1 to 5
* /network-instances/network-instance/protocols/protocol/bgp/global/default-route-distance/config/internal-route-distance
* Validate using gNMI Subscribe with mode 'ONCE' that the correct Route-Distance value of 5 is reported:
* /network-instances/network-instance/protocols/protocol/bgp/global/default-route-distance/state/internal-route-distance
* Generate traffic from ATE port-3 towards ```ipv4-network-1 = 192.168.10.0/24``` and ```ipv6-network-1 = 2024:db8:64:64::/64```
* Validate that the traffic is received on port-1 of the ATE

### RT-1.34.4 [TODO:https://github.com/openconfig/featureprofiles/issues/3050]
#### Validate traffic with modified iBGP Route-Distance of 250
* Configure Route-Distance of iBGP session on port-1 to 250
* /network-instances/network-instance/protocols/protocol/bgp/global/default-route-distance/config/internal-route-distance
* Validate using gNMI Subscribe with mode 'ONCE' that the correct Route-Distance value of 250 is reported:
* /network-instances/network-instance/protocols/protocol/bgp/global/default-route-distance/state/internal-route-distance
* Generate traffic from ATE port-3 towards ```ipv4-network-1 = 192.168.10.0/24``` and ```ipv6-network-1 = 2024:db8:64:64::/64```
* Validate that the traffic is received on port-2 of the ATE

## OpenConfig Path and RPC Coverage

The below yaml defines the OC paths intended to be covered by this test. OC
paths used for test setup are not listed here.

```yaml
paths:
## Config paths
### Route-Distance
/network-instances/network-instance/protocols/protocol/bgp/global/default-route-distance/config/external-route-distance:
/network-instances/network-instance/protocols/protocol/bgp/global/default-route-distance/config/internal-route-distance:

## State paths
### Route-Distance
/network-instances/network-instance/protocols/protocol/bgp/global/default-route-distance/state/internal-route-distance:
/network-instances/network-instance/protocols/protocol/bgp/global/default-route-distance/state/external-route-distance:

rpcs:
gnmi:
gNMI.Set:
gNMI.Subscribe:
```
Original file line number Diff line number Diff line change
Expand Up @@ -355,3 +355,57 @@
## Required DUT platform

* FFF

## OpenConfig Path and RPC Coverage

The below yaml defines the OC paths intended to be covered by this test. OC
paths used for test setup are not listed here.

```yaml
paths:
## Config paths
/network-instances/network-instance/protocols/protocol/isis/global/config/level-capability:
/network-instances/network-instance/protocols/protocol/isis/levels/level/config/metric-style:
/routing-policy/policy-definitions/policy-definition/config/name:
/routing-policy/policy-definitions/policy-definition/statements/statement/config/name:
/routing-policy/policy-definitions/policy-definition/statements/statement/actions/config/policy-result:
/routing-policy/policy-definitions/policy-definition/statements/statement/actions/isis-actions/config/set-level:
/routing-policy/defined-sets/prefix-sets/prefix-set/config/name:
/routing-policy/defined-sets/prefix-sets/prefix-set/config/mode:
/routing-policy/defined-sets/prefix-sets/prefix-set/prefixes/prefix/config/ip-prefix:
/routing-policy/defined-sets/prefix-sets/prefix-set/prefixes/prefix/config/masklength-range:
/routing-policy/policy-definitions/policy-definition/statements/statement/conditions/match-prefix-set/config/match-set-options:
/routing-policy/policy-definitions/policy-definition/statements/statement/conditions/match-prefix-set/config/prefix-set:
/routing-policy/defined-sets/bgp-defined-sets/community-sets/community-set/config/community-set-name:
/routing-policy/defined-sets/bgp-defined-sets/community-sets/community-set/config/community-member:
/routing-policy/policy-definitions/policy-definition/statements/statement/actions/bgp-actions/set-community/reference/config/community-set-ref:
/network-instances/network-instance/table-connections/table-connection/config/address-family:
/network-instances/network-instance/table-connections/table-connection/config/src-protocol:
/network-instances/network-instance/table-connections/table-connection/config/dst-protocol:
/network-instances/network-instance/table-connections/table-connection/config/disable-metric-propagation:
/network-instances/network-instance/table-connections/table-connection/config/import-policy:

## State paths
/routing-policy/policy-definitions/policy-definition/state/name:
/routing-policy/policy-definitions/policy-definition/statements/statement/state/name:
/routing-policy/policy-definitions/policy-definition/statements/statement/actions/state/policy-result:
/routing-policy/policy-definitions/policy-definition/statements/statement/actions/isis-actions/state/set-level:
/routing-policy/defined-sets/prefix-sets/prefix-set/state/name:
/routing-policy/defined-sets/prefix-sets/prefix-set/state/mode:
/routing-policy/defined-sets/prefix-sets/prefix-set/prefixes/prefix/state/ip-prefix:
/routing-policy/defined-sets/prefix-sets/prefix-set/prefixes/prefix/state/masklength-range:
/routing-policy/policy-definitions/policy-definition/statements/statement/conditions/match-prefix-set/state/match-set-options:
/routing-policy/policy-definitions/policy-definition/statements/statement/conditions/match-prefix-set/state/prefix-set:
/network-instances/network-instance/table-connections/table-connection/state/import-policy:
/network-instances/network-instance/table-connections/table-connection/state/address-family:
/network-instances/network-instance/table-connections/table-connection/state/src-protocol:
/network-instances/network-instance/table-connections/table-connection/state/dst-protocol:
/network-instances/network-instance/table-connections/table-connection/state/disable-metric-propagation:
/routing-policy/defined-sets/bgp-defined-sets/community-sets/community-set/state/community-set-name:
/routing-policy/defined-sets/bgp-defined-sets/community-sets/community-set/state/community-member:

rpcs:
gnmi:
gNMI.Set:
gNMI.Subscribe:
```
Loading

0 comments on commit f3915ac

Please sign in to comment.