dev_thruput - openconfig/featureprofiles GitHub Wiki
Test performance of interfaces using a "snake style topology" and IPv4 and IPv6 packet flows.
featureprofiles/topologies/atedut_2.testbed- ATE port1 - Used for traffic Source
- ATE port2 - Used for traffic Destination
| VLAN1 | VLAN2 | VLAN3 | VLAN4 | VLAN5 | VLAN6 |
|---|---|---|---|---|---|
| ATE1, DUT1, DUT2 | DUT3-DUT4 | DUT5-DUT6 | DUT7-DUT8 | DUT9-DUT10 | DUT11-DUT12 |
| VLAN12 | VLAN13 | VLAN14 | VLAN15 | VLAN16 | VLAN17 |
|---|---|---|---|---|---|
| DUT23, DUT24 | DUT25-DUT26 | DUT27-DUT28 | DUT29-DUT30 | DUT31-DUT32 | DUT33-DUT34-ATE2 |
ATE-PORT1, DUT-PORT1 & DUT-PORT2 ---> VLAN1
DUT-PORT3 & DUT-PORT4 ---> VLAN2
DUT-PORT5 & DUT-PORT6 ---> VLAN3
DUT-PORT7 & DUT-PORT8 ---> VLAN4
DUT-PORT9 & DUT-PORT10 ---> VLAN5
DUT-PORT11 & DUT-PORT12 ---> VLAN6
DUT-PORT13 & DUT-PORT14 ---> VLAN7
DUT-PORT15 & DUT-PORT16 ---> VLAN8
DUT-PORT17 & DUT-PORT18 ---> VLAN9
DUT-PORT19 & DUT-PORT20 ---> VLAN10
DUT-PORT21 & DUT-PORT22 ---> VLAN11
DUT-PORT23 & DUT-PORT24 ---> VLAN12
DUT-PORT25 & DUT-PORT26 ---> VLAN13
DUT-PORT27 & DUT-PORT28 ---> VLAN14
DUT-PORT29 & DUT-PORT30 ---> VLAN15
DUT-PORT31 & DUT-PORT32 ---> VLAN16
DUT-PORT33 & DUT-PORT34 & ATE-PORT2 ---> VLAN17
- Create 18 VLAN's on the DUT from VLAN1 to VLAN18 and are all configured as Access VLAN
- Assign IPv4, IPv6 addresses to ATE-PORT1, ATE-PORT2 ATE-PORT1 - IPv4 address 192.168.1.1/24; IPv6 address 2000:1:1:1::1/64 ATE-PORT1 - IPv4 address 193.168.1.1/24; IPv6 address 2001:1:1:1::1/64
- Traffic enters from ATE-PORT1 to DUT:PORT1 tagged/untagged and it is forwarded to DUT:PORT2 part of VLAN1. Then traffic is forwarded to DUT:PORT3 because it is back-back connected. Once it enters DUT:PORT3, traffic is forwarded to DUT:PORT4 and similar to the earlier scenario traffic enters into the DUT:PORT5 and follows same till we reach the DUT-PORT36 of VLAN18 which is connected to ATE-PORT2
- Traffic entering from ATE-PORT2 follows similar forwarding mechanism as shown in the previous step
- Create 6 traffic profiles as below
- Create ipv4 traffic profile which has following properties
- Frame size 64 bytes
- Line rate traffic (100%) / 595millon packets per second (pps)
- Create ipv4 traffic profile which has following properties
- Frame size mixed (64-1518) with an average packet size of 760bytes
- Line rate traffic (100%) / ~74million packets per second (pps)
- Create ipv4 traffic profile which has following properties
- Frame size 9000 bytes
- Line rate traffic (100%) / 5.5million packets per second (pps)
- Create ipv6 traffic profile which has following properties
- Frame size 64 bytes
- Line rate traffic (100%) / 595millon packets per second (pps)
- Create ipv6 traffic profile which has following properties
- Frame size mixed (64-1518) with an average frame size of 760
- Line rate traffic (100%) / ~74million packets per second (pps)
- Create ipv6 traffic profile which has following properties
- Frame size 9000 bytes
- Line rate traffic (100%) / 5.5million packets per second (pps)
{
"interfaces": {
"interface": [
{
"aggregation": {
"config": {
"lag-type": "LACP",
"min-links": 1
}
},
"config": {
"name": "ae0"
},
"name": "ae0"
},
{
"config": {
"loopback-mode": "FACILITY",
"name": "eth0"
},
"ethernet": {
"config": {
"aggregate-id": "ae0",
"duplex-mode": "FULL",
"port-speed": "SPEED_10GB"
}
},
"name": "eth0"
}
]
}
}- Start traffic profile "Traffic-ipv4-framesize-64bytes" described above
- Verify that each port on the device shows 400G in and out traffic statistics
- Verify that the traffic sent from ATE:PORT1 as source is recieved on ATE:PORT2 as destination
- Make sure there is 0 drop in packets
- Verify CPU utilization, Power utilization and it should be normal
- Start traffic profile "Traffic-ipv4-framesize-mixed" described above
- Verify that each port on the device shows 400G in and out traffic statistics
- Verify that the traffic sent from ATE:PORT1 as source is recieved on ATE:PORT2 as destination
- Make sure there is 0 drop in packets
- Verify CPU utilization, Power utilization and it should be normal
- Start traffic profile "Traffic-ipv4-framesize-jumbo-9000bytes" described above
- Verify that each port on the device shows 400G in and out traffic statistics
- Verify that the traffic sent from ATE:PORT1 as source is recieved on ATE:PORT2 as destination
- Make sure there is 0 drop in packets
- Verify CPU utilization, Power utilization and it should be normal
- Start traffic profile "Traffic-ipv6-framesize-64bytes" described above
- Verify that each port on the device shows 400G in and out traffic statistics
- Verify that the traffic sent from ATE:PORT1 as source is recieved on ATE:PORT2 as destination
- Make sure there is 0 drop in packets
- Verify CPU utilization, Power utilization and it should be normal
- Start traffic profile "Traffic-ipv6-framesize-mixed" described above
- Verify that each port on the device shows 400G in and out traffic statistics
- Verify that the traffic sent from ATE:PORT1 as source is recieved on ATE:PORT2 as destination
- Make sure there is 0 drop in packets
- Verify CPU utilization, Power utilization and it should be normal
- Start traffic profile "Traffic-ipv6-framesize-jumbo-9000bytes" described above
- Verify that each port on the device shows 400G in and out traffic statistics
- Verify that the traffic sent from ATE:PORT1 as source is recieved on ATE:PORT2 as destination
- Make sure there is 0 drop in packets
- Verify CPU utilization, Power utilization and it should be normal
The below YAML defines the OC paths intended to be covered by this test. OC paths used for test setup are not listed here.
openconfig_paths:
## Config paths
/interfaces/interface/config/name:
/interfaces/interface/config/description:
/interfaces/interface/config/enabled:
## Telemetry paths
/interfaces/interface/state/loopback-mode:
/interfaces/interface/state/counters/in-discards:
/interfaces/interface/state/counters/in-errors:
/interfaces/interface/state/counters/in-octets:
/interfaces/interface/state/counters/in-pkts:
/interfaces/interface/state/counters/in-unicast-pkts:
/interfaces/interface/state/counters/out-discards:
/interfaces/interface/state/counters/out-errors:
/interfaces/interface/state/counters/out-octets:
/interfaces/interface/state/counters/out-pkts:
/interfaces/interface/state/counters/out-unicast-pkts:
rpcs:
gnmi:
gNMI.Set:
gNMI.Subscribe:- FFF
- 32 PORTS CONNECTED B2B wired