7.7. ip6

7.7.1. 10ge2p1x710-dot1q-ip6base-ndrpdr suite

RFC2544: Pkt throughput IPv6 routing with IEEE 802.1Q test cases

  • [Top] Network Topologies: TG-DUT1-DUT2-TG 3-node circular topology with single links between nodes.

  • [Enc] Packet Encapsulations: Eth-IPv6 for IPv6 routing. IEEE 802.1Q tagging is applied on link between DUT1 and DUT2.

  • [Cfg] DUT configuration: DUT1 and DUT2 are configured with IPv6 routing and two static IPv6 /64 route entries. DUT1 and DUT2 are tested with ${nic_name}.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library.

Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 253 flows per flow-group) with all packets containing Ethernet header, IPv6 header with IP protocol=61 and static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: RFC2544.

*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR
| ... | NIC_Intel-X710 | ETH | IP6FWD | BASE | DOT1Q | IP6BASE | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | dot1q-ip6base
|
| Suite Setup | Setup suite topology interfaces | performance
| Suite Teardown | Tear down suite | performance
| Test Setup | Setup test | performance
| Test Teardown | Tear down test | performance
|
| Test Template | Local Template
|
| 
*** Variables ***
| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so
| ${crypto_type}= | ${None}
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${nic_txq_size}= | 0
| ${nic_pfs}= | 2
| ${nic_vfs}= | 0
| ${osi_layer}= | L3
| ${overhead}= | ${4}
| ${subid}= | 10
| ${tag_rewrite}= | pop-1
# TG subnets used by T-Rex
| ${tg_if1_net}= | 2001:1::0
| ${tg_if2_net}= | 2001:2::0
# Traffic profile:
| ${traffic_profile}= | trex-stl-3n-ethip6-ip6src253

7.7.1.1. Local Template

  • [Cfg] Each DUT runs IPv6 routing with VLAN and uses ${phy_cores} physical core(s) for worker threads.

  • [Ver] Measure NDR and PDR values using MLRsearch algorithm.

Arguments: - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). Type: integer, string - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues, default value: ${None}. Type: integer


Set Test Variable  \${frame_size}
Given Set Max Rate And Jumbo
  And Add worker threads to all DUTs  ${phy_cores}  ${rxq}
  And Pre-initialize layer driver  ${nic_driver}
  And Apply startup configuration on all VPP DUTs
 When Initialize layer driver  ${nic_driver}
  And Initialize layer interface
  And Initialize IPv6 forwarding with VLAN dot1q sub-interfaces in circular topology  ${tg_if1_net}  ${tg_if2_net}  ${subid}  ${tag_rewrite}
 Then Find NDR and PDR intervals using optimized search

7.7.1.2. 78B-1c-dot1q-ip6base-ndrpdr


frame_size=${78}  phy_cores=${1}

7.7.1.3. 78B-2c-dot1q-ip6base-ndrpdr


frame_size=${78}  phy_cores=${2}

7.7.1.4. 78B-4c-dot1q-ip6base-ndrpdr


frame_size=${78}  phy_cores=${4}

7.7.1.5. 1518B-1c-dot1q-ip6base-ndrpdr


frame_size=${1518}  phy_cores=${1}

7.7.1.6. 1518B-2c-dot1q-ip6base-ndrpdr


frame_size=${1518}  phy_cores=${2}

7.7.1.7. 1518B-4c-dot1q-ip6base-ndrpdr


frame_size=${1518}  phy_cores=${4}

7.7.1.8. 9000B-1c-dot1q-ip6base-ndrpdr


frame_size=${9000}  phy_cores=${1}

7.7.1.9. 9000B-2c-dot1q-ip6base-ndrpdr


frame_size=${9000}  phy_cores=${2}

7.7.1.10. 9000B-4c-dot1q-ip6base-ndrpdr


frame_size=${9000}  phy_cores=${4}

7.7.1.11. IMIX-1c-dot1q-ip6base-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${1}

7.7.1.12. IMIX-2c-dot1q-ip6base-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${2}

7.7.1.13. IMIX-4c-dot1q-ip6base-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${4}

7.7.2. 10ge2p1x710-ethip6-ip6base-adlalwlistbase-ndrpdr suite

RFC2544: Pkt throughput IPv6 allowlist test cases

  • [Top] Network Topologies: TG-DUT1-DUT2-TG 3-node circular topology with single links between nodes.

  • [Enc] Packet Encapsulations: Eth-IPv6 for IPv6 routing.

  • [Cfg] DUT configuration: DUT1 and DUT2 are configured with IPv6 routing, two static IPv6 /64 routes and IPv6 ADL security allowlist ingress /64 filter entries applied on links TG - DUT1 and DUT2 - TG. DUT1 and DUT2 tested with ${nic_name}.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library.

Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 253 flows per flow-group) with all packets containing Ethernet header, IPv6 header and static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: RFC2544.

*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR
| ... | NIC_Intel-X710 | ETH | IP6FWD | FEATURE | ADLALWLIST | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip6-ip6base-adlalwlistbase
|
| Suite Setup | Setup suite topology interfaces | performance
| Suite Teardown | Tear down suite | performance
| Test Setup | Setup test | performance
| Test Teardown | Tear down test | performance
|
| Test Template | Local Template
|
| 
*** Variables ***
| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | adl_plugin.so
| ${crypto_type}= | ${None}
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${nic_txq_size}= | 0
| ${nic_pfs}= | 2
| ${nic_vfs}= | 0
| ${osi_layer}= | L3
| ${overhead}= | ${0}
# Traffic profile:
| ${traffic_profile}= | trex-stl-3n-ethip6-ip6src253

7.7.2.1. Local Template

  • [Cfg] DUT runs IPv6 routing and allowlist filters config with ${phy_cores} phy core(s).

  • [Ver] Measure NDR and PDR values using MLRsearch algorithm.

Arguments: - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). Type: integer, string - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues, default value: ${None}. Type: integer


Set Test Variable  \${frame_size}
Given Set Max Rate And Jumbo
  And Add worker threads to all DUTs  ${phy_cores}  ${rxq}
  And Pre-initialize layer driver  ${nic_driver}
  And Apply startup configuration on all VPP DUTs
 When Initialize layer driver  ${nic_driver}
  And Initialize layer interface
  And Initialize IPv6 forwarding in circular topology
  And Add Fib Table  ${dut1}  1  ipv6=${TRUE}
  And Vpp Route Add  ${dut1}  2001:1::  64  vrf=1  local=${TRUE}
  And Add Fib Table  ${dut2}  1  ipv6=${TRUE}
  And Vpp Route Add  ${dut2}  2001:2::  64  vrf=1  local=${TRUE}
  And ADL Add allowlist Entry  ${dut1}  ${DUT1_${int}1}[0]  ip6  1
  And ADL Add allowlist Entry  ${dut2}  ${DUT2_${int}2}[0]  ip6  1
  And ADL interface enable or disable  ${dut1}  ${DUT1_${int}1}[0]  enable
  And ADL interface enable or disable  ${dut2}  ${DUT2_${int}2}[0]  enable
 Then Find NDR and PDR intervals using optimized search

7.7.2.2. 78B-1c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=${78}  phy_cores=${1}

7.7.2.3. 78B-2c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=${78}  phy_cores=${2}

7.7.2.4. 78B-4c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=${78}  phy_cores=${4}

7.7.2.5. 1518B-1c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=${1518}  phy_cores=${1}

7.7.2.6. 1518B-2c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=${1518}  phy_cores=${2}

7.7.2.7. 1518B-4c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=${1518}  phy_cores=${4}

7.7.2.8. 9000B-1c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=${9000}  phy_cores=${1}

7.7.2.9. 9000B-2c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=${9000}  phy_cores=${2}

7.7.2.10. 9000B-4c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=${9000}  phy_cores=${4}

7.7.2.11. IMIX-1c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${1}

7.7.2.12. IMIX-2c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${2}

7.7.2.13. IMIX-4c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${4}

7.7.3. 10ge2p1x710-ethip6-ip6base-iacldstbase-ndrpdr suite

RFC2544: Pkt throughput IPv6 iAcl whitelist test cases

  • [Top] Network Topologies: TG-DUT1-DUT2-TG 3-node circular topology with single links between nodes.

  • [Enc] Packet Encapsulations: Eth-IPv6 for IPv6 routing.

  • [Cfg] DUT configuration: DUT1 and DUT2 are configured with IPv6 routing, two static IPv6 /64 routes and IPv6 iAcl security whitelist ingress /64 filter entries applied on links TG - DUT1 and DUT2 - TG. DUT1 and DUT2 tested with ${nic_name}.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library.

Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 253 flows per flow-group) with all packets containing Ethernet header, IPv6 header and generated payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: RFC2544.

*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR
| ... | NIC_Intel-X710 | ETH | IP6FWD | FEATURE | IACLDST | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip6-ip6base-iacldstbase
|
| Suite Setup | Setup suite topology interfaces | performance
| Suite Teardown | Tear down suite | performance
| Test Setup | Setup test | performance
| Test Teardown | Tear down test | performance | classify
|
| Test Template | Local Template
|
| 
*** Variables ***
| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so
| ${crypto_type}= | ${None}
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${nic_txq_size}= | 0
| ${nic_pfs}= | 2
| ${nic_vfs}= | 0
| ${osi_layer}= | L3
| ${overhead}= | ${0}
# Traffic profile:
| ${traffic_profile}= | trex-stl-3n-ethip6-ip6src253

7.7.3.1. Local Template

  • [Cfg] DUT runs IPv6 routing and whitelist filters config with ${phy_cores} phy core(s).

  • [Ver] Measure NDR and PDR values using MLRsearch algorithm.

Arguments: - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). Type: integer, string - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues, default value: ${None}. Type: integer


Set Test Variable  \${frame_size}
Given Set Max Rate And Jumbo
  And Add worker threads to all DUTs  ${phy_cores}  ${rxq}
  And Pre-initialize layer driver  ${nic_driver}
  And Apply startup configuration on all VPP DUTs
 When Initialize layer driver  ${nic_driver}
  And Initialize layer interface
  And Initialize IPv6 forwarding in circular topology
${table_idx}  ${skip_n}  ${match_n}=  And Vpp Creates Classify Table L3  ${dut1}  ip6  dst  ffff:ffff:ffff:ffff:ffff:ffff:ffff:0
  And Vpp Configures Classify Session L3  ${dut1}  permit  ${table_idx}  ${skip_n}  ${match_n}  ip6  dst  2001:2::0
  And Vpp Enable Input Acl Interface  ${dut1}  ${DUT1_${int}1}[0]  ip6  ${table_idx}
${table_idx}  ${skip_n}  ${match_n}=  And Vpp Creates Classify Table L3  ${dut2}  ip6  dst  ffff:ffff:ffff:ffff:ffff:ffff:ffff:0
  And Vpp Configures Classify Session L3  ${dut2}  permit  ${table_idx}  ${skip_n}  ${match_n}  ip6  dst  2001:1::0
  And Vpp Enable Input Acl Interface  ${dut2}  ${DUT2_${int}2}[0]  ip6  ${table_idx}
 Then Find NDR and PDR intervals using optimized search

7.7.3.2. 78B-1c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=${78}  phy_cores=${1}

7.7.3.3. 78B-2c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=${78}  phy_cores=${2}

7.7.3.4. 78B-4c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=${78}  phy_cores=${4}

7.7.3.5. 1518B-1c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=${1518}  phy_cores=${1}

7.7.3.6. 1518B-2c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=${1518}  phy_cores=${2}

7.7.3.7. 1518B-4c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=${1518}  phy_cores=${4}

7.7.3.8. 9000B-1c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=${9000}  phy_cores=${1}

7.7.3.9. 9000B-2c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=${9000}  phy_cores=${2}

7.7.3.10. 9000B-4c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=${9000}  phy_cores=${4}

7.7.3.11. IMIX-1c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${1}

7.7.3.12. IMIX-2c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${2}

7.7.3.13. IMIX-4c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${4}

7.7.4. 10ge2p1x710-ethip6-ip6base-ndrpdr suite

RFC2544: Pkt throughput IPv6 routing test cases

  • [Top] Network Topologies: TG-DUT1-DUT2-TG 3-node circular topology with single links between nodes.

  • [Enc] Packet Encapsulations: Eth-IPv6 for IPv6 routing.

  • [Cfg] DUT configuration: DUT1 and DUT2 are configured with IPv6 routing and two static IPv6 /64 route entries. DUT1 and DUT2 tested with ${nic_name}.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library.

Test packets are generated by TG. on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 253 flows per flow-group) with all packets containing Ethernet header, IPv6 header and static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: RFC2544.

*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR
| ... | NIC_Intel-X710 | ETH | IP6FWD | BASE | IP6BASE | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip6-ip6base
|
| Suite Setup | Setup suite topology interfaces | performance
| Suite Teardown | Tear down suite | performance
| Test Setup | Setup test | performance
| Test Teardown | Tear down test | performance
|
| Test Template | Local Template
|
| 
*** Variables ***
| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so
| ${crypto_type}= | ${None}
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${nic_txq_size}= | 0
| ${nic_pfs}= | 2
| ${nic_vfs}= | 0
| ${osi_layer}= | L3
| ${overhead}= | ${0}
# Traffic profile:
| ${traffic_profile}= | trex-stl-3n-ethip6-ip6src253

7.7.4.1. Local Template

  • [Cfg] DUT runs IPv6 routing config. Each DUT uses ${phy_cores} physical core(s) for worker threads.

  • [Ver] Measure NDR and PDR values using MLRsearch algorithm.

Arguments: - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). Type: integer, string - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues, default value: ${None}. Type: integer


Set Test Variable  \${frame_size}
Given Set Max Rate And Jumbo
  And Add worker threads to all DUTs  ${phy_cores}  ${rxq}
  And Pre-initialize layer driver  ${nic_driver}
  And Apply startup configuration on all VPP DUTs
 When Initialize layer driver  ${nic_driver}
  And Initialize layer interface
  And Initialize IPv6 forwarding in circular topology
 Then Find NDR and PDR intervals using optimized search

7.7.4.2. 78B-1c-ethip6-ip6base-ndrpdr


frame_size=${78}  phy_cores=${1}

7.7.4.3. 78B-2c-ethip6-ip6base-ndrpdr


frame_size=${78}  phy_cores=${2}

7.7.4.4. 78B-4c-ethip6-ip6base-ndrpdr


frame_size=${78}  phy_cores=${4}

7.7.4.5. 1518B-1c-ethip6-ip6base-ndrpdr


frame_size=${1518}  phy_cores=${1}

7.7.4.6. 1518B-2c-ethip6-ip6base-ndrpdr


frame_size=${1518}  phy_cores=${2}

7.7.4.7. 1518B-4c-ethip6-ip6base-ndrpdr


frame_size=${1518}  phy_cores=${4}

7.7.4.8. 9000B-1c-ethip6-ip6base-ndrpdr


frame_size=${9000}  phy_cores=${1}

7.7.4.9. 9000B-2c-ethip6-ip6base-ndrpdr


frame_size=${9000}  phy_cores=${2}

7.7.4.10. 9000B-4c-ethip6-ip6base-ndrpdr


frame_size=${9000}  phy_cores=${4}

7.7.4.11. IMIX-1c-ethip6-ip6base-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${1}

7.7.4.12. IMIX-2c-ethip6-ip6base-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${2}

7.7.4.13. IMIX-4c-ethip6-ip6base-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${4}

7.7.5. 10ge2p1x710-ethip6-ip6scale200k-ndrpdr suite

RFC2544: Pkt throughput IPv6 routing test cases

  • [Top] Network Topologies: TG-DUT1-DUT2-TG 3-node circular topology with single links between nodes.

  • [Enc] Packet Encapsulations: Eth-IPv6 for IPv6 routing.

  • [Cfg] DUT configuration: DUT1 and DUT2 are configured with IPv6 routing and 2x100k static IPv6 /64 route entries. DUT1 and DUT2 tested with ${nic_name}.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library.

Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 100k flows per flow-group) with all packets containing Ethernet header, IPv6 header with IP and static payload. MAC addresses are matching MAC addresses of the TG node interfaces. Incrementing of IP.dst (IPv6 destination address) field is applied to both streams.

  • [Ref] Applicable standard specifications: RFC2544.

*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR
| ... | NIC_Intel-X710 | ETH | IP6FWD | SCALE | FIB_200K | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip6-ip6scale200k
|
| Suite Setup | Setup suite topology interfaces | performance
| Suite Teardown | Tear down suite | performance
| Test Setup | Setup test | performance
| Test Teardown | Tear down test | performance
|
| Test Template | Local Template
|
| 
*** Variables ***
| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so
| ${crypto_type}= | ${None}
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${nic_txq_size}= | 0
| ${nic_pfs}= | 2
| ${nic_vfs}= | 0
| ${osi_layer}= | L3
| ${overhead}= | ${0}
| ${rts_per_flow}= | ${100000}
# Traffic profile:
| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}

7.7.5.1. Local Template

  • [Cfg] DUT runs IPv6 routing config. Each DUT uses ${phy_cores} physical core(s) for worker threads.

  • [Ver] Measure NDR and PDR values using MLRsearch algorithm.

Arguments: - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). Type: integer, string - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues, default value: ${None}. Type: integer


Set Test Variable  \${frame_size}
Given Set Max Rate And Jumbo
  And Add worker threads to all DUTs  ${phy_cores}  ${rxq}
  And Pre-initialize layer driver  ${nic_driver}
  And Apply startup configuration on all VPP DUTs
 When Initialize layer driver  ${nic_driver}
  And Initialize layer interface
  And Initialize IPv6 forwarding with scaling in circular topology  ${rts_per_flow}
 Then Find NDR and PDR intervals using optimized search

7.7.5.2. 78B-1c-ethip6-ip6scale200k-ndrpdr


frame_size=${78}  phy_cores=${1}

7.7.5.3. 78B-2c-ethip6-ip6scale200k-ndrpdr


frame_size=${78}  phy_cores=${2}

7.7.5.4. 78B-4c-ethip6-ip6scale200k-ndrpdr


frame_size=${78}  phy_cores=${4}

7.7.5.5. 1518B-1c-ethip6-ip6scale200k-ndrpdr


frame_size=${1518}  phy_cores=${1}

7.7.5.6. 1518B-2c-ethip6-ip6scale200k-ndrpdr


frame_size=${1518}  phy_cores=${2}

7.7.5.7. 1518B-4c-ethip6-ip6scale200k-ndrpdr


frame_size=${1518}  phy_cores=${4}

7.7.5.8. 9000B-1c-ethip6-ip6scale200k-ndrpdr


frame_size=${9000}  phy_cores=${1}

7.7.5.9. 9000B-2c-ethip6-ip6scale200k-ndrpdr


frame_size=${9000}  phy_cores=${2}

7.7.5.10. 9000B-4c-ethip6-ip6scale200k-ndrpdr


frame_size=${9000}  phy_cores=${4}

7.7.5.11. IMIX-1c-ethip6-ip6scale200k-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${1}

7.7.5.12. IMIX-2c-ethip6-ip6scale200k-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${2}

7.7.5.13. IMIX-4c-ethip6-ip6scale200k-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${4}

7.7.6. 10ge2p1x710-ethip6-ip6scale200k-rnd-ndrpdr suite

RFC2544: Pkt throughput IPv6 routing test cases

  • [Top] Network Topologies: TG-DUT1-DUT2-TG 3-node circular topology with single links between nodes.

  • [Enc] Packet Encapsulations: Eth-IPv6 for IPv6 routing.

  • [Cfg] DUT configuration: DUT1 and DUT2 are configured with IPv6 routing and 2x100k static IPv6 /64 route entries. DUT1 and DUT2 tested with ${nic_name}.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library.

Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 100k flows per flow-group) with all packets containing Ethernet header, IPv6 header with IP and static payload. MAC addresses are matching MAC addresses of the TG node interfaces. Randomization of IP.dst (IPv6 destination address) field is applied to both streams.

  • [Ref] Applicable standard specifications: RFC2544.

*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR
| ... | NIC_Intel-X710 | ETH | IP6FWD | IP6_RND | SCALE | FIB_200K
| ... | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip6-ip6scale200k-rnd
|
| Suite Setup | Setup suite topology interfaces | performance
| Suite Teardown | Tear down suite | performance
| Test Setup | Setup test | performance
| Test Teardown | Tear down test | performance
|
| Test Template | Local Template
|
| 
*** Variables ***
| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so
| ${crypto_type}= | ${None}
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${nic_txq_size}= | 0
| ${nic_pfs}= | 2
| ${nic_vfs}= | 0
| ${osi_layer}= | L3
| ${overhead}= | ${0}
| ${rts_per_flow}= | ${100000}
# Traffic profile:
| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-rnd

7.7.6.1. Local Template

  • [Cfg] DUT runs IPv6 routing config. Each DUT uses ${phy_cores} physical core(s) for worker threads.

  • [Ver] Measure NDR and PDR values using MLRsearch algorithm.

Arguments: - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). Type: integer, string - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues, default value: ${None}. Type: integer


Set Test Variable  \${frame_size}
Given Set Max Rate And Jumbo
  And Add worker threads to all DUTs  ${phy_cores}  ${rxq}
  And Pre-initialize layer driver  ${nic_driver}
  And Apply startup configuration on all VPP DUTs
 When Initialize layer driver  ${nic_driver}
  And Initialize layer interface
  And Initialize IPv6 forwarding with scaling in circular topology  ${rts_per_flow}
 Then Find NDR and PDR intervals using optimized search

7.7.6.2. 78B-1c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=${78}  phy_cores=${1}

7.7.6.3. 78B-2c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=${78}  phy_cores=${2}

7.7.6.4. 78B-4c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=${78}  phy_cores=${4}

7.7.6.5. 1518B-1c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=${1518}  phy_cores=${1}

7.7.6.6. 1518B-2c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=${1518}  phy_cores=${2}

7.7.6.7. 1518B-4c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=${1518}  phy_cores=${4}

7.7.6.8. 9000B-1c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=${9000}  phy_cores=${1}

7.7.6.9. 9000B-2c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=${9000}  phy_cores=${2}

7.7.6.10. 9000B-4c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=${9000}  phy_cores=${4}

7.7.6.11. IMIX-1c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${1}

7.7.6.12. IMIX-2c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${2}

7.7.6.13. IMIX-4c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${4}

7.7.7. 10ge2p1x710-ethip6-ip6scale20k-ndrpdr suite

RFC2544: Pkt throughput IPv6 routing test cases

  • [Top] Network Topologies: TG-DUT1-DUT2-TG 3-node circular topology with single links between nodes.

  • [Enc] Packet Encapsulations: Eth-IPv6 for IPv6 routing.

  • [Cfg] DUT configuration: DUT1 and DUT2 are configured with IPv6 routing and 2x10k static IPv6 /64 route entries. DUT1 and DUT2 tested with ${nic_name}.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library.

Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 10k flows per flow-group) with all packets containing Ethernet header, IPv6 header with IP and static payload. MAC addresses are matching MAC addresses of the TG node interfaces. Incrementing of IP.dst (IPv6 destination address) field is applied to both streams.

  • [Ref] Applicable standard specifications: RFC2544.

*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR
| ... | NIC_Intel-X710 | ETH | IP6FWD | SCALE | FIB_20K | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip6-ip6scale20k
|
| Suite Setup | Setup suite topology interfaces | performance
| Suite Teardown | Tear down suite | performance
| Test Setup | Setup test | performance
| Test Teardown | Tear down test | performance
|
| Test Template | Local Template
|
| 
*** Variables ***
| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so
| ${crypto_type}= | ${None}
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${nic_txq_size}= | 0
| ${nic_pfs}= | 2
| ${nic_vfs}= | 0
| ${osi_layer}= | L3
| ${overhead}= | ${0}
| ${rts_per_flow}= | ${10000}
# Traffic profile:
| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}

7.7.7.1. Local Template

  • [Cfg] DUT runs IPv6 routing config. Each DUT uses ${phy_cores} physical core(s) for worker threads.

  • [Ver] Measure NDR and PDR values using MLRsearch algorithm.

Arguments: - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). Type: integer, string - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues, default value: ${None}. Type: integer


Set Test Variable  \${frame_size}
Given Set Max Rate And Jumbo
  And Add worker threads to all DUTs  ${phy_cores}  ${rxq}
  And Pre-initialize layer driver  ${nic_driver}
  And Apply startup configuration on all VPP DUTs
 When Initialize layer driver  ${nic_driver}
  And Initialize layer interface
  And Initialize IPv6 forwarding with scaling in circular topology  ${rts_per_flow}
 Then Find NDR and PDR intervals using optimized search

7.7.7.2. 78B-1c-ethip6-ip6scale20k-ndrpdr


frame_size=${78}  phy_cores=${1}

7.7.7.3. 78B-2c-ethip6-ip6scale20k-ndrpdr


frame_size=${78}  phy_cores=${2}

7.7.7.4. 78B-4c-ethip6-ip6scale20k-ndrpdr


frame_size=${78}  phy_cores=${4}

7.7.7.5. 1518B-1c-ethip6-ip6scale20k-ndrpdr


frame_size=${1518}  phy_cores=${1}

7.7.7.6. 1518B-2c-ethip6-ip6scale20k-ndrpdr


frame_size=${1518}  phy_cores=${2}

7.7.7.7. 1518B-4c-ethip6-ip6scale20k-ndrpdr


frame_size=${1518}  phy_cores=${4}

7.7.7.8. 9000B-1c-ethip6-ip6scale20k-ndrpdr


frame_size=${9000}  phy_cores=${1}

7.7.7.9. 9000B-2c-ethip6-ip6scale20k-ndrpdr


frame_size=${9000}  phy_cores=${2}

7.7.7.10. 9000B-4c-ethip6-ip6scale20k-ndrpdr


frame_size=${9000}  phy_cores=${4}

7.7.7.11. IMIX-1c-ethip6-ip6scale20k-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${1}

7.7.7.12. IMIX-2c-ethip6-ip6scale20k-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${2}

7.7.7.13. IMIX-4c-ethip6-ip6scale20k-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${4}

7.7.8. 10ge2p1x710-ethip6-ip6scale20k-rnd-ndrpdr suite

RFC2544: Pkt throughput IPv6 routing test cases

  • [Top] Network Topologies: TG-DUT1-DUT2-TG 3-node circular topology with single links between nodes.

  • [Enc] Packet Encapsulations: Eth-IPv6 for IPv6 routing.

  • [Cfg] DUT configuration: DUT1 and DUT2 are configured with IPv6 routing and 2x10k static IPv6 /64 route entries. DUT1 and DUT2 tested with ${nic_name}.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library.

Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 10k flows per flow-group) with all packets containing Ethernet header, IPv6 header with IP and static payload. MAC addresses are matching MAC addresses of the TG node interfaces. Randomization of IP.dst (IPv6 destination address) field is applied to both streams.

  • [Ref] Applicable standard specifications: RFC2544.

*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR
| ... | NIC_Intel-X710 | ETH | IP6FWD | IP6_RND | SCALE | FIB_20K
| ... | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip6-ip6scale20k-rnd
|
| Suite Setup | Setup suite topology interfaces | performance
| Suite Teardown | Tear down suite | performance
| Test Setup | Setup test | performance
| Test Teardown | Tear down test | performance
|
| Test Template | Local Template
|
| 
*** Variables ***
| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so
| ${crypto_type}= | ${None}
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${nic_txq_size}= | 0
| ${nic_pfs}= | 2
| ${nic_vfs}= | 0
| ${osi_layer}= | L3
| ${overhead}= | ${0}
| ${rts_per_flow}= | ${10000}
# Traffic profile:
| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-rnd

7.7.8.1. Local Template

  • [Cfg] DUT runs IPv6 routing config. Each DUT uses ${phy_cores} physical core(s) for worker threads.

  • [Ver] Measure NDR and PDR values using MLRsearch algorithm.

Arguments: - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). Type: integer, string - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues, default value: ${None}. Type: integer


Set Test Variable  \${frame_size}
Given Set Max Rate And Jumbo
  And Add worker threads to all DUTs  ${phy_cores}  ${rxq}
  And Pre-initialize layer driver  ${nic_driver}
  And Apply startup configuration on all VPP DUTs
 When Initialize layer driver  ${nic_driver}
  And Initialize layer interface
  And Initialize IPv6 forwarding with scaling in circular topology  ${rts_per_flow}
 Then Find NDR and PDR intervals using optimized search

7.7.8.2. 78B-1c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=${78}  phy_cores=${1}

7.7.8.3. 78B-2c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=${78}  phy_cores=${2}

7.7.8.4. 78B-4c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=${78}  phy_cores=${4}

7.7.8.5. 1518B-1c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=${1518}  phy_cores=${1}

7.7.8.6. 1518B-2c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=${1518}  phy_cores=${2}

7.7.8.7. 1518B-4c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=${1518}  phy_cores=${4}

7.7.8.8. 9000B-1c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=${9000}  phy_cores=${1}

7.7.8.9. 9000B-2c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=${9000}  phy_cores=${2}

7.7.8.10. 9000B-4c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=${9000}  phy_cores=${4}

7.7.8.11. IMIX-1c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${1}

7.7.8.12. IMIX-2c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${2}

7.7.8.13. IMIX-4c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${4}

7.7.9. 10ge2p1x710-ethip6-ip6scale2m-ndrpdr suite

RFC2544: Pkt throughput IPv6 routing test cases

  • [Top] Network Topologies: TG-DUT1-DUT2-TG 3-node circular topology with single links between nodes.

  • [Enc] Packet Encapsulations: Eth-IPv6 for IPv6 routing.

  • [Cfg] DUT configuration: DUT1 and DUT2 are configured with IPv6 routing and 2x1M static IPv6 /64 route entries. DUT1 and DUT2 tested with ${nic_name}.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library.

Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 1M flows per flow-group) with all packets containing Ethernet header, IPv6 header with IP and static payload. MAC addresses are matching MAC addresses of the TG node interfaces. Incrementing of IP.dst (IPv6 destination address) field is applied to both streams.

  • [Ref] Applicable standard specifications: RFC2544.

*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR
| ... | NIC_Intel-X710 | ETH | IP6FWD | SCALE | FIB_2M | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip6-ip6scale2m
|
| Suite Setup | Setup suite topology interfaces | performance
| Suite Teardown | Tear down suite | performance
| Test Setup | Setup test | performance
| Test Teardown | Tear down test | performance
|
| Test Template | Local Template
|
| 
*** Variables ***
| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so
| ${crypto_type}= | ${None}
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${nic_txq_size}= | 0
| ${nic_pfs}= | 2
| ${nic_vfs}= | 0
| ${osi_layer}= | L3
| ${overhead}= | ${0}
| ${rts_per_flow}= | ${1000000}
# Traffic profile:
| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}

7.7.9.1. Local Template

  • [Cfg] DUT runs IPv6 routing config. Each DUT uses ${phy_cores} physical core(s) for worker threads.

  • [Ver] Measure NDR and PDR values using MLRsearch algorithm.

Arguments: - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). Type: integer, string - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues, default value: ${None}. Type: integer


Set Test Variable  \${frame_size}
Given Set Max Rate And Jumbo
  And Add worker threads to all DUTs  ${phy_cores}  ${rxq}
  And Pre-initialize layer driver  ${nic_driver}
  And Apply startup configuration on all VPP DUTs
 When Initialize layer driver  ${nic_driver}
  And Initialize layer interface
  And Initialize IPv6 forwarding with scaling in circular topology  ${rts_per_flow}
 Then Find NDR and PDR intervals using optimized search

7.7.9.2. 78B-1c-ethip6-ip6scale2m-ndrpdr


frame_size=${78}  phy_cores=${1}

7.7.9.3. 78B-2c-ethip6-ip6scale2m-ndrpdr


frame_size=${78}  phy_cores=${2}

7.7.9.4. 78B-4c-ethip6-ip6scale2m-ndrpdr


frame_size=${78}  phy_cores=${4}

7.7.9.5. 1518B-1c-ethip6-ip6scale2m-ndrpdr


frame_size=${1518}  phy_cores=${1}

7.7.9.6. 1518B-2c-ethip6-ip6scale2m-ndrpdr


frame_size=${1518}  phy_cores=${2}

7.7.9.7. 1518B-4c-ethip6-ip6scale2m-ndrpdr


frame_size=${1518}  phy_cores=${4}

7.7.9.8. 9000B-1c-ethip6-ip6scale2m-ndrpdr


frame_size=${9000}  phy_cores=${1}

7.7.9.9. 9000B-2c-ethip6-ip6scale2m-ndrpdr


frame_size=${9000}  phy_cores=${2}

7.7.9.10. 9000B-4c-ethip6-ip6scale2m-ndrpdr


frame_size=${9000}  phy_cores=${4}

7.7.9.11. IMIX-1c-ethip6-ip6scale2m-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${1}

7.7.9.12. IMIX-2c-ethip6-ip6scale2m-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${2}

7.7.9.13. IMIX-4c-ethip6-ip6scale2m-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${4}

7.7.10. 10ge2p1x710-ethip6-ip6scale2m-rnd-ndrpdr suite

RFC2544: Pkt throughput IPv6 routing test cases

  • [Top] Network Topologies: TG-DUT1-DUT2-TG 3-node circular topology with single links between nodes.

  • [Enc] Packet Encapsulations: Eth-IPv6 for IPv6 routing.

  • [Cfg] DUT configuration: DUT1 and DUT2 are configured with IPv6 routing and 2x1M static IPv6 /64 route entries. DUT1 and DUT2 tested with ${nic_name}.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library.

Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 1M flows per flow-group) with all packets containing Ethernet header, IPv6 header with IP and static payload. MAC addresses are matching MAC addresses of the TG node interfaces. Randomization of IP.dst (IPv6 destination address) field is applied to both streams.

  • [Ref] Applicable standard specifications: RFC2544.

*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR
| ... | NIC_Intel-X710 | ETH | IP6FWD | IP6_RND | SCALE | FIB_2M
| ... | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip6-ip6scale2m-rnd
|
| Suite Setup | Setup suite topology interfaces | performance
| Suite Teardown | Tear down suite | performance
| Test Setup | Setup test | performance
| Test Teardown | Tear down test | performance
|
| Test Template | Local Template
|
| 
*** Variables ***
| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so
| ${crypto_type}= | ${None}
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${nic_txq_size}= | 0
| ${nic_pfs}= | 2
| ${nic_vfs}= | 0
| ${osi_layer}= | L3
| ${overhead}= | ${0}
| ${rts_per_flow}= | ${1000000}
# Traffic profile:
| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-rnd

7.7.10.1. Local Template

  • [Cfg] DUT runs IPv6 routing config. Each DUT uses ${phy_cores} physical core(s) for worker threads.

  • [Ver] Measure NDR and PDR values using MLRsearch algorithm.

Arguments: - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). Type: integer, string - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues, default value: ${None}. Type: integer


Set Test Variable  \${frame_size}
Given Set Max Rate And Jumbo
  And Add worker threads to all DUTs  ${phy_cores}  ${rxq}
  And Pre-initialize layer driver  ${nic_driver}
  And Apply startup configuration on all VPP DUTs
 When Initialize layer driver  ${nic_driver}
  And Initialize layer interface
  And Initialize IPv6 forwarding with scaling in circular topology  ${rts_per_flow}
 Then Find NDR and PDR intervals using optimized search

7.7.10.2. 78B-1c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=${78}  phy_cores=${1}

7.7.10.3. 78B-2c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=${78}  phy_cores=${2}

7.7.10.4. 78B-4c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=${78}  phy_cores=${4}

7.7.10.5. 1518B-1c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=${1518}  phy_cores=${1}

7.7.10.6. 1518B-2c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=${1518}  phy_cores=${2}

7.7.10.7. 1518B-4c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=${1518}  phy_cores=${4}

7.7.10.8. 9000B-1c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=${9000}  phy_cores=${1}

7.7.10.9. 9000B-2c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=${9000}  phy_cores=${2}

7.7.10.10. 9000B-4c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=${9000}  phy_cores=${4}

7.7.10.11. IMIX-1c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${1}

7.7.10.12. IMIX-2c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${2}

7.7.10.13. IMIX-4c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${4}

7.7.11. 2n1l-10ge2p1x710-dot1q-ip6base-ndrpdr suite

RFC2544: Pkt throughput IPv6 routing with IEEE 802.1Q test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.

  • [Enc] Packet Encapsulations: Eth-IPv6 for IPv6 routing. IEEE 802.1Q tagging is applied on link between DUT1-if2 and TG-if2.

  • [Cfg] DUT configuration: DUT1 is configured with IPv6 routing two static IPv6 /64 route entries. DUT1 is tested with ${nic_name}.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library.

Test packets are generated by TG on links to DUT1. TG traffic profile contains two L3 flow-groups (flow-group per direction, 253 flows per flow-group) with all packets containing Ethernet header, IPv6 header with IP protocol=61 and static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: RFC2544.

*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR
| ... | NIC_Intel-X710 | ETH | IP6FWD | BASE | DOT1Q | IP6BASE | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | dot1q-ip6base
|
| Suite Setup | Setup suite topology interfaces | performance
| Suite Teardown | Tear down suite | performance
| Test Setup | Setup test | performance
| Test Teardown | Tear down test | performance
|
| Test Template | Local Template
|
| 
*** Variables ***
| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so
| ${crypto_type}= | ${None}
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${nic_txq_size}= | 0
| ${nic_pfs}= | 2
| ${nic_vfs}= | 0
| ${osi_layer}= | L3
| ${overhead}= | ${4}
| ${subid}= | 10
| ${tag_rewrite}= | pop-1
# TG subnets used by T-Rex
| ${tg_if1_net}= | 2001:1::0
| ${tg_if2_net}= | 2001:2::0
# Traffic profile:
| ${traffic_profile}= | trex-stl-2n-dot1qip6asym-ip6src253

7.7.11.1. Local Template

  • [Cfg] Each DUT runs IPv6 routing with VLAN and uses ${phy_cores} physical core(s) for worker threads.

  • [Ver] Measure NDR and PDR values using MLRsearch algorithm.

Arguments: - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). Type: integer, string - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues, default value: ${None}. Type: integer


Set Test Variable  \${frame_size}
Given Set Max Rate And Jumbo
  And Add worker threads to all DUTs  ${phy_cores}  ${rxq}
  And Pre-initialize layer driver  ${nic_driver}
  And Apply startup configuration on all VPP DUTs
 When Initialize layer driver  ${nic_driver}
  And Initialize layer interface
 When Initialize IPv6 forwarding with VLAN dot1q sub-interfaces in circular topology  ${tg_if1_net}  ${tg_if2_net}  ${subid}  ${tag_rewrite}
 Then Find NDR and PDR intervals using optimized search

7.7.11.2. 78B-1c-dot1q-ip6base-ndrpdr


frame_size=${78}  phy_cores=${1}

7.7.11.3. 78B-2c-dot1q-ip6base-ndrpdr


frame_size=${78}  phy_cores=${2}

7.7.11.4. 78B-4c-dot1q-ip6base-ndrpdr


frame_size=${78}  phy_cores=${4}

7.7.11.5. 1518B-1c-dot1q-ip6base-ndrpdr


frame_size=${1518}  phy_cores=${1}

7.7.11.6. 1518B-2c-dot1q-ip6base-ndrpdr


frame_size=${1518}  phy_cores=${2}

7.7.11.7. 1518B-4c-dot1q-ip6base-ndrpdr


frame_size=${1518}  phy_cores=${4}

7.7.11.8. 9000B-1c-dot1q-ip6base-ndrpdr


frame_size=${9000}  phy_cores=${1}

7.7.11.9. 9000B-2c-dot1q-ip6base-ndrpdr


frame_size=${9000}  phy_cores=${2}

7.7.11.10. 9000B-4c-dot1q-ip6base-ndrpdr


frame_size=${9000}  phy_cores=${4}

7.7.11.11. IMIX-1c-dot1q-ip6base-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${1}

7.7.11.12. IMIX-2c-dot1q-ip6base-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${2}

7.7.11.13. IMIX-4c-dot1q-ip6base-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${4}

7.7.12. 2n1l-10ge2p1x710-ethip6-ip6base-adlalwlistbase-ndrpdr suite

RFC2544: Pkt throughput IPv6 allowlist test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.

  • [Enc] Packet Encapsulations: Eth-IPv6 for IPv6 routing.

  • [Cfg] DUT configuration: DUT1 is configured with IPv6 routing, two static IPv6 /64 routes and IPv6 ADL security allowlist ingress /64 filter entries applied on links TG - DUT1. DUT1 is tested with ${nic_name}.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library.

Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 253 flows per flow-group) with all packets containing Ethernet header, IPv6 header and static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: RFC2544.

*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR
| ... | NIC_Intel-X710 | ETH | IP6FWD | FEATURE | ADLALWLIST | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip6-ip6base-adlalwlistbase
|
| Suite Setup | Setup suite topology interfaces | performance
| Suite Teardown | Tear down suite | performance
| Test Setup | Setup test | performance
| Test Teardown | Tear down test | performance
|
| Test Template | Local Template
|
| 
*** Variables ***
| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so | adl_plugin.so
| ${crypto_type}= | ${None}
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${nic_txq_size}= | 0
| ${nic_pfs}= | 2
| ${nic_vfs}= | 0
| ${osi_layer}= | L3
| ${overhead}= | ${0}
# Traffic profile:
| ${traffic_profile}= | trex-stl-2n-ethip6-ip6src253

7.7.12.1. Local Template

  • [Cfg] DUT runs IPv6 routing and allowlist filters config with ${phy_cores} phy core(s).

  • [Ver] Measure NDR and PDR values using MLRsearch algorithm.

Arguments: - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). Type: integer, string - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues, default value: ${None}. Type: integer


Set Test Variable  \${frame_size}
Given Set Max Rate And Jumbo
  And Add worker threads to all DUTs  ${phy_cores}  ${rxq}
  And Pre-initialize layer driver  ${nic_driver}
  And Apply startup configuration on all VPP DUTs
 When Initialize layer driver  ${nic_driver}
  And Initialize layer interface
  And Initialize IPv6 forwarding in circular topology
  And Add Fib Table  ${dut1}  1  ipv6=${TRUE}
  And Vpp Route Add  ${dut1}  2001:1::  64  vrf=1  local=${TRUE}
  And ADL Add allowlist Entry  ${dut1}  ${DUT1_${int}1}[0]  ip6  1
  And ADL interface enable or disable  ${dut1}  ${DUT1_${int}1}[0]  enable
 Then Find NDR and PDR intervals using optimized search

7.7.12.2. 78B-1c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=${78}  phy_cores=${1}

7.7.12.3. 78B-2c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=${78}  phy_cores=${2}

7.7.12.4. 78B-4c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=${78}  phy_cores=${4}

7.7.12.5. 1518B-1c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=${1518}  phy_cores=${1}

7.7.12.6. 1518B-2c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=${1518}  phy_cores=${2}

7.7.12.7. 1518B-4c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=${1518}  phy_cores=${4}

7.7.12.8. 9000B-1c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=${9000}  phy_cores=${1}

7.7.12.9. 9000B-2c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=${9000}  phy_cores=${2}

7.7.12.10. 9000B-4c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=${9000}  phy_cores=${4}

7.7.12.11. IMIX-1c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${1}

7.7.12.12. IMIX-2c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${2}

7.7.12.13. IMIX-4c-ethip6-ip6base-adlalwlistbase-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${4}

7.7.13. 2n1l-10ge2p1x710-ethip6-ip6base-iacldstbase-ndrpdr suite

RFC2544: Pkt throughput IPv6 iAcl whitelist test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.

  • [Enc] Packet Encapsulations: Eth-IPv6 for IPv6 routing.

  • [Cfg] DUT configuration: DUT1 is configured with IPv6 routing, two static IPv6 /64 routes and IPv6 iAcl security whitelist ingress /64 filter entries applied on links TG - DUT1. DUT1 is tested with ${nic_name}.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library.

Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 253 flows per flow-group) with all packets containing Ethernet header, IPv6 header and generated payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: RFC2544.

*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR
| ... | NIC_Intel-X710 | ETH | IP6FWD | FEATURE | IACLDST | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip6-ip6base-iacldstbase
|
| Suite Setup | Setup suite topology interfaces | performance
| Suite Teardown | Tear down suite | performance
| Test Setup | Setup test | performance
| Test Teardown | Tear down test | performance | classify
|
| Test Template | Local Template
|
| 
*** Variables ***
| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so
| ${crypto_type}= | ${None}
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${nic_txq_size}= | 0
| ${nic_pfs}= | 2
| ${nic_vfs}= | 0
| ${osi_layer}= | L3
| ${overhead}= | ${0}
# Traffic profile:
| ${traffic_profile}= | trex-stl-2n-ethip6-ip6src253

7.7.13.1. Local Template

  • [Cfg] DUT runs IPv6 routing and whitelist filters config with ${phy_cores} phy core(s).

  • [Ver] Measure NDR and PDR values using MLRsearch algorithm.

Arguments: - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). Type: integer, string - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues, default value: ${None}. Type: integer


Set Test Variable  \${frame_size}
Given Set Max Rate And Jumbo
  And Add worker threads to all DUTs  ${phy_cores}  ${rxq}
  And Pre-initialize layer driver  ${nic_driver}
  And Apply startup configuration on all VPP DUTs
 When Initialize layer driver  ${nic_driver}
  And Initialize layer interface
  And Initialize IPv6 forwarding in circular topology
${table_idx}  ${skip_n}  ${match_n}=  And Vpp Creates Classify Table L3  ${dut1}  ip6  dst  ffff:ffff:ffff:ffff:ffff:ffff:ffff:0
  And Vpp Configures Classify Session L3  ${dut1}  permit  ${table_idx}  ${skip_n}  ${match_n}  ip6  dst  2001:2::0
  And Vpp Enable Input Acl Interface  ${dut1}  ${DUT1_${int}1}[0]  ip6  ${table_idx}
  And Vpp Configures Classify Session L3  ${dut1}  permit  ${table_idx}  ${skip_n}  ${match_n}  ip6  dst  2001:1::0
  And Vpp Enable Input Acl Interface  ${dut1}  ${DUT1_${int}2}[0]  ip6  ${table_idx}
 Then Find NDR and PDR intervals using optimized search

7.7.13.2. 78B-1c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=${78}  phy_cores=${1}

7.7.13.3. 78B-2c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=${78}  phy_cores=${2}

7.7.13.4. 78B-4c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=${78}  phy_cores=${4}

7.7.13.5. 1518B-1c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=${1518}  phy_cores=${1}

7.7.13.6. 1518B-2c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=${1518}  phy_cores=${2}

7.7.13.7. 1518B-4c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=${1518}  phy_cores=${4}

7.7.13.8. 9000B-1c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=${9000}  phy_cores=${1}

7.7.13.9. 9000B-2c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=${9000}  phy_cores=${2}

7.7.13.10. 9000B-4c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=${9000}  phy_cores=${4}

7.7.13.11. IMIX-1c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${1}

7.7.13.12. IMIX-2c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${2}

7.7.13.13. IMIX-4c-ethip6-ip6base-iacldstbase-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${4}

7.7.14. 2n1l-10ge2p1x710-ethip6-ip6base-ndrpdr suite

Packet throughput IPv6 routing test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.

  • [Enc] Packet Encapsulations: Eth-IPv6 for IPv6 routing.

  • [Cfg] DUT configuration: DUT1 is configured with IPv6 routing and two static IPv6 /64 route entries. DUT1 is tested with ${nic_name}.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library.

Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 253 flows per flow-group) with all packets containing Ethernet header, IPv6 header with IP protocol=61 and static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: RFC2544.

*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR
| ... | NIC_Intel-X710 | ETH | IP6FWD | BASE | IP6BASE | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip6-ip6base
|
| Suite Setup | Setup suite topology interfaces | performance
| Suite Teardown | Tear down suite | performance
| Test Setup | Setup test | performance
| Test Teardown | Tear down test | performance
|
| Test Template | Local Template
|
| 
*** Variables ***
| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so
| ${crypto_type}= | ${None}
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${nic_txq_size}= | 0
| ${nic_pfs}= | 2
| ${nic_vfs}= | 0
| ${osi_layer}= | L3
| ${overhead}= | ${0}
# Traffic profile:
| ${traffic_profile}= | trex-stl-2n-ethip6-ip6src253

7.7.14.1. Local Template

  • [Cfg] DUT runs IPv6 routing config. Each DUT uses ${phy_cores} physical core(s) for worker threads.

  • [Ver] Measure NDR and PDR values using MLRsearch algorithm.

Arguments: - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). Type: integer, string - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues, default value: ${None}. Type: integer


Set Test Variable  \${frame_size}
Given Set Max Rate And Jumbo
  And Add worker threads to all DUTs  ${phy_cores}  ${rxq}
  And Pre-initialize layer driver  ${nic_driver}
  And Apply startup configuration on all VPP DUTs
 When Initialize layer driver  ${nic_driver}
  And Initialize layer interface
  And Initialize IPv6 forwarding in circular topology
 Then Find NDR and PDR intervals using optimized search

7.7.14.2. 78B-1c-ethip6-ip6base-ndrpdr


frame_size=${78}  phy_cores=${1}

7.7.14.3. 78B-2c-ethip6-ip6base-ndrpdr


frame_size=${78}  phy_cores=${2}

7.7.14.4. 78B-4c-ethip6-ip6base-ndrpdr


frame_size=${78}  phy_cores=${4}

7.7.14.5. 1518B-1c-ethip6-ip6base-ndrpdr


frame_size=${1518}  phy_cores=${1}

7.7.14.6. 1518B-2c-ethip6-ip6base-ndrpdr


frame_size=${1518}  phy_cores=${2}

7.7.14.7. 1518B-4c-ethip6-ip6base-ndrpdr


frame_size=${1518}  phy_cores=${4}

7.7.14.8. 9000B-1c-ethip6-ip6base-ndrpdr


frame_size=${9000}  phy_cores=${1}

7.7.14.9. 9000B-2c-ethip6-ip6base-ndrpdr


frame_size=${9000}  phy_cores=${2}

7.7.14.10. 9000B-4c-ethip6-ip6base-ndrpdr


frame_size=${9000}  phy_cores=${4}

7.7.14.11. IMIX-1c-ethip6-ip6base-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${1}

7.7.14.12. IMIX-2c-ethip6-ip6base-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${2}

7.7.14.13. IMIX-4c-ethip6-ip6base-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${4}

7.7.15. 2n1l-10ge2p1x710-ethip6-ip6scale200k-ndrpdr suite

RFC2544: Pkt throughput IPv6 routing test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.

  • [Enc] Packet Encapsulations: Eth-IPv6 for IPv6 routing.

  • [Cfg] DUT configuration: DUT1 is configured with IPv6 routing 2x100k static IPv6 /64 route entries. DUT1 is tested with ${nic_name}.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library.

Test packets are generated by TG on links to DUT1. TG traffic profile contains two L3 flow-groups (flow-group per direction, 100k flows per flow-group) with all packets containing Ethernet header, IPv6 header with IP and static payload. MAC addresses are matching MAC addresses of the TG node interfaces. Incrementing of IP.dst (IPv6 destination address) field is applied to both streams.

  • [Ref] Applicable standard specifications: RFC2544.

*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR
| ... | NIC_Intel-X710 | ETH | IP6FWD | SCALE | FIB_200K | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip6-ip6scale200k
|
| Suite Setup | Setup suite topology interfaces | performance
| Suite Teardown | Tear down suite | performance
| Test Setup | Setup test | performance
| Test Teardown | Tear down test | performance
|
| Test Template | Local Template
|
| 
*** Variables ***
| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so
| ${crypto_type}= | ${None}
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${nic_txq_size}= | 0
| ${nic_pfs}= | 2
| ${nic_vfs}= | 0
| ${osi_layer}= | L3
| ${overhead}= | ${0}
| ${rts_per_flow}= | ${100000}
# Traffic profile:
| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}

7.7.15.1. Local Template

  • [Cfg] DUT runs IPv6 routing config. Each DUT uses ${phy_cores} physical core(s) for worker threads.

  • [Ver] Measure NDR and PDR values using MLRsearch algorithm.

Arguments: - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). Type: integer, string - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues, default value: ${None}. Type: integer


Set Test Variable  \${frame_size}
Given Set Max Rate And Jumbo
  And Add worker threads to all DUTs  ${phy_cores}  ${rxq}
  And Pre-initialize layer driver  ${nic_driver}
  And Apply startup configuration on all VPP DUTs
 When Initialize layer driver  ${nic_driver}
  And Initialize layer interface
  And Initialize IPv6 forwarding with scaling in circular topology  ${rts_per_flow}
 Then Find NDR and PDR intervals using optimized search

7.7.15.2. 78B-1c-ethip6-ip6scale200k-ndrpdr


frame_size=${78}  phy_cores=${1}

7.7.15.3. 78B-2c-ethip6-ip6scale200k-ndrpdr


frame_size=${78}  phy_cores=${2}

7.7.15.4. 78B-4c-ethip6-ip6scale200k-ndrpdr


frame_size=${78}  phy_cores=${4}

7.7.15.5. 1518B-1c-ethip6-ip6scale200k-ndrpdr


frame_size=${1518}  phy_cores=${1}

7.7.15.6. 1518B-2c-ethip6-ip6scale200k-ndrpdr


frame_size=${1518}  phy_cores=${2}

7.7.15.7. 1518B-4c-ethip6-ip6scale200k-ndrpdr


frame_size=${1518}  phy_cores=${4}

7.7.15.8. 9000B-1c-ethip6-ip6scale200k-ndrpdr


frame_size=${9000}  phy_cores=${1}

7.7.15.9. 9000B-2c-ethip6-ip6scale200k-ndrpdr


frame_size=${9000}  phy_cores=${2}

7.7.15.10. 9000B-4c-ethip6-ip6scale200k-ndrpdr


frame_size=${9000}  phy_cores=${4}

7.7.15.11. IMIX-1c-ethip6-ip6scale200k-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${1}

7.7.15.12. IMIX-2c-ethip6-ip6scale200k-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${2}

7.7.15.13. IMIX-4c-ethip6-ip6scale200k-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${4}

7.7.16. 2n1l-10ge2p1x710-ethip6-ip6scale200k-rnd-ndrpdr suite

RFC2544: Pkt throughput IPv6 routing test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.

  • [Enc] Packet Encapsulations: Eth-IPv6 for IPv6 routing.

  • [Cfg] DUT configuration: DUT1 is configured with IPv6 routing 2x100k static IPv6 /64 route entries. DUT1 is tested with ${nic_name}.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library.

Test packets are generated by TG on links to DUT1. TG traffic profile contains two L3 flow-groups (flow-group per direction, 100k flows per flow-group) with all packets containing Ethernet header, IPv6 header with IP and static payload. MAC addresses are matching MAC addresses of the TG node interfaces. Randomization of IP.dst (IPv6 destination address) field is applied to both streams.

  • [Ref] Applicable standard specifications: RFC2544.

*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR
| ... | NIC_Intel-X710 | ETH | IP6FWD | IP6_RND | SCALE | FIB_200K
| ... | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip6-ip6scale200k-rnd
|
| Suite Setup | Setup suite topology interfaces | performance
| Suite Teardown | Tear down suite | performance
| Test Setup | Setup test | performance
| Test Teardown | Tear down test | performance
|
| Test Template | Local Template
|
| 
*** Variables ***
| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so
| ${crypto_type}= | ${None}
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${nic_txq_size}= | 0
| ${nic_pfs}= | 2
| ${nic_vfs}= | 0
| ${osi_layer}= | L3
| ${overhead}= | ${0}
| ${rts_per_flow}= | ${100000}
# Traffic profile:
| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-rnd

7.7.16.1. Local Template

  • [Cfg] DUT runs IPv6 routing config. Each DUT uses ${phy_cores} physical core(s) for worker threads.

  • [Ver] Measure NDR and PDR values using MLRsearch algorithm.

Arguments: - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). Type: integer, string - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues, default value: ${None}. Type: integer


Set Test Variable  \${frame_size}
Given Set Max Rate And Jumbo
  And Add worker threads to all DUTs  ${phy_cores}  ${rxq}
  And Pre-initialize layer driver  ${nic_driver}
  And Apply startup configuration on all VPP DUTs
 When Initialize layer driver  ${nic_driver}
  And Initialize layer interface
  And Initialize IPv6 forwarding with scaling in circular topology  ${rts_per_flow}
 Then Find NDR and PDR intervals using optimized search

7.7.16.2. 78B-1c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=${78}  phy_cores=${1}

7.7.16.3. 78B-2c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=${78}  phy_cores=${2}

7.7.16.4. 78B-4c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=${78}  phy_cores=${4}

7.7.16.5. 1518B-1c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=${1518}  phy_cores=${1}

7.7.16.6. 1518B-2c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=${1518}  phy_cores=${2}

7.7.16.7. 1518B-4c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=${1518}  phy_cores=${4}

7.7.16.8. 9000B-1c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=${9000}  phy_cores=${1}

7.7.16.9. 9000B-2c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=${9000}  phy_cores=${2}

7.7.16.10. 9000B-4c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=${9000}  phy_cores=${4}

7.7.16.11. IMIX-1c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${1}

7.7.16.12. IMIX-2c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${2}

7.7.16.13. IMIX-4c-ethip6-ip6scale200k-rnd-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${4}

7.7.17. 2n1l-10ge2p1x710-ethip6-ip6scale20k-ndrpdr suite

RFC2544: Pkt throughput IPv6 routing test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.

  • [Enc] Packet Encapsulations: Eth-IPv6 for IPv6 routing.

  • [Cfg] DUT configuration: DUT1 is configured with IPv6 routing 2x10k static IPv6 /64 route entries. DUT1 is tested with ${nic_name}.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library.

Test packets are generated by TG on links to DUT1. TG traffic profile contains two L3 flow-groups (flow-group per direction, 10k flows per flow-group) with all packets containing Ethernet header, IPv6 header with IP and static payload. MAC addresses are matching MAC addresses of the TG node interfaces. Incrementing of IP.dst (IPv6 destination address) field is applied to both streams.

  • [Ref] Applicable standard specifications: RFC2544.

*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR
| ... | NIC_Intel-X710 | ETH | IP6FWD | SCALE | FIB_20K | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip6-ip6scale20k
|
| Suite Setup | Setup suite topology interfaces | performance
| Suite Teardown | Tear down suite | performance
| Test Setup | Setup test | performance
| Test Teardown | Tear down test | performance
|
| Test Template | Local Template
|
| 
*** Variables ***
| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so
| ${crypto_type}= | ${None}
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${nic_txq_size}= | 0
| ${nic_pfs}= | 2
| ${nic_vfs}= | 0
| ${osi_layer}= | L3
| ${overhead}= | ${0}
| ${rts_per_flow}= | ${10000}
# Traffic profile:
| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}

7.7.17.1. Local Template

  • [Cfg] DUT runs IPv6 routing config. Each DUT uses ${phy_cores} physical core(s) for worker threads.

  • [Ver] Measure NDR and PDR values using MLRsearch algorithm.

Arguments: - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). Type: integer, string - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues, default value: ${None}. Type: integer


Set Test Variable  \${frame_size}
Given Set Max Rate And Jumbo
  And Add worker threads to all DUTs  ${phy_cores}  ${rxq}
  And Pre-initialize layer driver  ${nic_driver}
  And Apply startup configuration on all VPP DUTs
 When Initialize layer driver  ${nic_driver}
  And Initialize layer interface
  And Initialize IPv6 forwarding with scaling in circular topology  ${rts_per_flow}
 Then Find NDR and PDR intervals using optimized search

7.7.17.2. 78B-1c-ethip6-ip6scale20k-ndrpdr


frame_size=${78}  phy_cores=${1}

7.7.17.3. 78B-2c-ethip6-ip6scale20k-ndrpdr


frame_size=${78}  phy_cores=${2}

7.7.17.4. 78B-4c-ethip6-ip6scale20k-ndrpdr


frame_size=${78}  phy_cores=${4}

7.7.17.5. 1518B-1c-ethip6-ip6scale20k-ndrpdr


frame_size=${1518}  phy_cores=${1}

7.7.17.6. 1518B-2c-ethip6-ip6scale20k-ndrpdr


frame_size=${1518}  phy_cores=${2}

7.7.17.7. 1518B-4c-ethip6-ip6scale20k-ndrpdr


frame_size=${1518}  phy_cores=${4}

7.7.17.8. 9000B-1c-ethip6-ip6scale20k-ndrpdr


frame_size=${9000}  phy_cores=${1}

7.7.17.9. 9000B-2c-ethip6-ip6scale20k-ndrpdr


frame_size=${9000}  phy_cores=${2}

7.7.17.10. 9000B-4c-ethip6-ip6scale20k-ndrpdr


frame_size=${9000}  phy_cores=${4}

7.7.17.11. IMIX-1c-ethip6-ip6scale20k-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${1}

7.7.17.12. IMIX-2c-ethip6-ip6scale20k-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${2}

7.7.17.13. IMIX-4c-ethip6-ip6scale20k-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${4}

7.7.18. 2n1l-10ge2p1x710-ethip6-ip6scale20k-rnd-ndrpdr suite

RFC2544: Pkt throughput IPv6 routing test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.

  • [Enc] Packet Encapsulations: Eth-IPv6 for IPv6 routing.

  • [Cfg] DUT configuration: DUT1 is configured with IPv6 routing 2x10k static IPv6 /64 route entries. DUT1 is tested with ${nic_name}.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library.

Test packets are generated by TG on links to DUT1. TG traffic profile contains two L3 flow-groups (flow-group per direction, 10k flows per flow-group) with all packets containing Ethernet header, IPv6 header with IP and static payload. MAC addresses are matching MAC addresses of the TG node interfaces. Randomization of IP.dst (IPv6 destination address) field is applied to both streams.

  • [Ref] Applicable standard specifications: RFC2544.

*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR
| ... | NIC_Intel-X710 | ETH | IP6FWD | IP6_RND | SCALE | FIB_20K
| ... | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip6-ip6scale20k-rnd
|
| Suite Setup | Setup suite topology interfaces | performance
| Suite Teardown | Tear down suite | performance
| Test Setup | Setup test | performance
| Test Teardown | Tear down test | performance
|
| Test Template | Local Template
|
| 
*** Variables ***
| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so
| ${crypto_type}= | ${None}
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${nic_txq_size}= | 0
| ${nic_pfs}= | 2
| ${nic_vfs}= | 0
| ${osi_layer}= | L3
| ${overhead}= | ${0}
| ${rts_per_flow}= | ${10000}
# Traffic profile:
| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-rnd

7.7.18.1. Local Template

  • [Cfg] DUT runs IPv6 routing config. Each DUT uses ${phy_cores} physical core(s) for worker threads.

  • [Ver] Measure NDR and PDR values using MLRsearch algorithm.

Arguments: - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). Type: integer, string - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues, default value: ${None}. Type: integer


Set Test Variable  \${frame_size}
Given Set Max Rate And Jumbo
  And Add worker threads to all DUTs  ${phy_cores}  ${rxq}
  And Pre-initialize layer driver  ${nic_driver}
  And Apply startup configuration on all VPP DUTs
 When Initialize layer driver  ${nic_driver}
  And Initialize layer interface
  And Initialize IPv6 forwarding with scaling in circular topology  ${rts_per_flow}
 Then Find NDR and PDR intervals using optimized search

7.7.18.2. 78B-1c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=${78}  phy_cores=${1}

7.7.18.3. 78B-2c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=${78}  phy_cores=${2}

7.7.18.4. 78B-4c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=${78}  phy_cores=${4}

7.7.18.5. 1518B-1c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=${1518}  phy_cores=${1}

7.7.18.6. 1518B-2c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=${1518}  phy_cores=${2}

7.7.18.7. 1518B-4c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=${1518}  phy_cores=${4}

7.7.18.8. 9000B-1c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=${9000}  phy_cores=${1}

7.7.18.9. 9000B-2c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=${9000}  phy_cores=${2}

7.7.18.10. 9000B-4c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=${9000}  phy_cores=${4}

7.7.18.11. IMIX-1c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${1}

7.7.18.12. IMIX-2c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${2}

7.7.18.13. IMIX-4c-ethip6-ip6scale20k-rnd-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${4}

7.7.19. 2n1l-10ge2p1x710-ethip6-ip6scale2m-ndrpdr suite

RFC2544: Pkt throughput IPv6 routing test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.

  • [Enc] Packet Encapsulations: Eth-IPv6 for IPv6 routing.

  • [Cfg] DUT configuration: DUT1 is configured with IPv6 routing 2x1M static IPv6 /64 route entries. DUT1 is tested with ${nic_name}.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library.

Test packets are generated by TG on links to DUT1. TG traffic profile contains two L3 flow-groups (flow-group per direction, 1M flows per flow-group) with all packets containing Ethernet header, IPv6 header with IP and static payload. MAC addresses are matching MAC addresses of the TG node interfaces. Incrementing of IP.dst (IPv6 destination address) field is applied to both streams.

  • [Ref] Applicable standard specifications: RFC2544.

*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR
| ... | NIC_Intel-X710 | ETH | IP6FWD | SCALE | FIB_2M | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip6-ip6scale2m
|
| Suite Setup | Setup suite topology interfaces | performance
| Suite Teardown | Tear down suite | performance
| Test Setup | Setup test | performance
| Test Teardown | Tear down test | performance
|
| Test Template | Local Template
|
| 
*** Variables ***
| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so
| ${crypto_type}= | ${None}
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${nic_txq_size}= | 0
| ${nic_pfs}= | 2
| ${nic_vfs}= | 0
| ${osi_layer}= | L3
| ${overhead}= | ${0}
| ${rts_per_flow}= | ${1000000}
# Traffic profile:
| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}

7.7.19.1. Local Template

  • [Cfg] DUT runs IPv6 routing config. Each DUT uses ${phy_cores} physical core(s) for worker threads.

  • [Ver] Measure NDR and PDR values using MLRsearch algorithm.

Arguments: - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). Type: integer, string - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues, default value: ${None}. Type: integer


Set Test Variable  \${frame_size}
Given Set Max Rate And Jumbo
  And Add worker threads to all DUTs  ${phy_cores}  ${rxq}
  And Pre-initialize layer driver  ${nic_driver}
  And Apply startup configuration on all VPP DUTs
 When Initialize layer driver  ${nic_driver}
  And Initialize layer interface
  And Initialize IPv6 forwarding with scaling in circular topology  ${rts_per_flow}
 Then Find NDR and PDR intervals using optimized search

7.7.19.2. 78B-1c-ethip6-ip6scale2m-ndrpdr


frame_size=${78}  phy_cores=${1}

7.7.19.3. 78B-2c-ethip6-ip6scale2m-ndrpdr


frame_size=${78}  phy_cores=${2}

7.7.19.4. 78B-4c-ethip6-ip6scale2m-ndrpdr


frame_size=${78}  phy_cores=${4}

7.7.19.5. 1518B-1c-ethip6-ip6scale2m-ndrpdr


frame_size=${1518}  phy_cores=${1}

7.7.19.6. 1518B-2c-ethip6-ip6scale2m-ndrpdr


frame_size=${1518}  phy_cores=${2}

7.7.19.7. 1518B-4c-ethip6-ip6scale2m-ndrpdr


frame_size=${1518}  phy_cores=${4}

7.7.19.8. 9000B-1c-ethip6-ip6scale2m-ndrpdr


frame_size=${9000}  phy_cores=${1}

7.7.19.9. 9000B-2c-ethip6-ip6scale2m-ndrpdr


frame_size=${9000}  phy_cores=${2}

7.7.19.10. 9000B-4c-ethip6-ip6scale2m-ndrpdr


frame_size=${9000}  phy_cores=${4}

7.7.19.11. IMIX-1c-ethip6-ip6scale2m-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${1}

7.7.19.12. IMIX-2c-ethip6-ip6scale2m-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${2}

7.7.19.13. IMIX-4c-ethip6-ip6scale2m-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${4}

7.7.20. 2n1l-10ge2p1x710-ethip6-ip6scale2m-rnd-ndrpdr suite

RFC2544: Pkt throughput IPv6 routing test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.

  • [Enc] Packet Encapsulations: Eth-IPv6 for IPv6 routing.

  • [Cfg] DUT configuration: DUT1 is configured with IPv6 routing 2x1M static IPv6 /64 route entries. DUT1 is tested with ${nic_name}.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library.

Test packets are generated by TG on links to DUT1. TG traffic profile contains two L3 flow-groups (flow-group per direction, 1M flows per flow-group) with all packets containing Ethernet header, IPv6 header with IP and static payload. MAC addresses are matching MAC addresses of the TG node interfaces. Randomization of IP.dst (IPv6 destination address) field is applied to both streams.

  • [Ref] Applicable standard specifications: RFC2544.

*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 2_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | NDRPDR
| ... | NIC_Intel-X710 | ETH | IP6FWD | IP6_RND | SCALE | FIB_2M
| ... | DRV_VFIO_PCI | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip6-ip6scale2m-rnd
|
| Suite Setup | Setup suite topology interfaces | performance
| Suite Teardown | Tear down suite | performance
| Test Setup | Setup test | performance
| Test Teardown | Tear down test | performance
|
| Test Template | Local Template
|
| 
*** Variables ***
| @{plugins_to_enable}= | dpdk_plugin.so | perfmon_plugin.so
| ${crypto_type}= | ${None}
| ${nic_name}= | Intel-X710
| ${nic_driver}= | vfio-pci
| ${nic_rxq_size}= | 0
| ${nic_txq_size}= | 0
| ${nic_pfs}= | 2
| ${nic_vfs}= | 0
| ${osi_layer}= | L3
| ${overhead}= | ${0}
| ${rts_per_flow}= | ${1000000}
# Traffic profile:
| ${traffic_profile}= | trex-stl-ethip6-ip6dst${rts_per_flow}-rnd

7.7.20.1. Local Template

  • [Cfg] DUT runs IPv6 routing config. Each DUT uses ${phy_cores} physical core(s) for worker threads.

  • [Ver] Measure NDR and PDR values using MLRsearch algorithm.

Arguments: - frame_size - Framesize in Bytes in integer or string (IMIX_v4_1). Type: integer, string - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues, default value: ${None}. Type: integer


Set Test Variable  \${frame_size}
Given Set Max Rate And Jumbo
  And Add worker threads to all DUTs  ${phy_cores}  ${rxq}
  And Pre-initialize layer driver  ${nic_driver}
  And Apply startup configuration on all VPP DUTs
 When Initialize layer driver  ${nic_driver}
  And Initialize layer interface
  And Initialize IPv6 forwarding with scaling in circular topology  ${rts_per_flow}
 Then Find NDR and PDR intervals using optimized search

7.7.20.2. 78B-1c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=${78}  phy_cores=${1}

7.7.20.3. 78B-2c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=${78}  phy_cores=${2}

7.7.20.4. 78B-4c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=${78}  phy_cores=${4}

7.7.20.5. 1518B-1c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=${1518}  phy_cores=${1}

7.7.20.6. 1518B-2c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=${1518}  phy_cores=${2}

7.7.20.7. 1518B-4c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=${1518}  phy_cores=${4}

7.7.20.8. 9000B-1c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=${9000}  phy_cores=${1}

7.7.20.9. 9000B-2c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=${9000}  phy_cores=${2}

7.7.20.10. 9000B-4c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=${9000}  phy_cores=${4}

7.7.20.11. IMIX-1c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${1}

7.7.20.12. IMIX-2c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${2}

7.7.20.13. IMIX-4c-ethip6-ip6scale2m-rnd-ndrpdr


frame_size=IMIX_v4_1  phy_cores=${4}