6.3. flow¶
6.3.1. 2n1l-10ge2p1x710-ethip4-flow-ip4-gtpu-scapy suite¶
IP4_GTPU flow test cases
[Top] Network Topologies: TG-DUT1 2-node topology with one link between nodes.
[Enc] Packet Encapsulations: Eth-IP4-GTPU.
[Cfg] DUT configuration: DUT is configured with IP4_GTPU flow.
[Ver] TG verification: Verify if the flow action is correct.
*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY
| ... | NIC_Intel-X710 | ETH | IP4FWD | FLOW | GTPU | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip4-flow-ip4-gtpu
|
| Suite Setup | Setup suite topology interfaces | scapy
| Test Setup | Setup test
| Test Teardown | Tear down test | packet_trace | telemetry
|
| 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
| ${overhead}= | ${0}
| ${src_ip}= | 1.1.1.1
| ${dst_ip}= | 2.2.2.2
| ${teid}= | ${12345}
| ${rxq}= | ${4}
# Telemetry
| ${telemetry_profile}= | vppctl_test_teardown
6.3.1.1. Local Template¶
[Ver] Make TG send IP4-GTPU packet routed over DUT1 interfaces. Make VPP verify flow packet is correct.
Arguments: - frame_size - Framesize in Bytes in integer. Type: integer - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues. 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 with_trace=${True}
When Initialize layer driver ${nic_driver}
And Initialize layer interface
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip4 Gtpu Flow ${dut1} ${src_ip} ${dst_ip} teid=${teid} action=redirect-to-queue value=${${rxq}-1}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=GTPU src_ip=${src_ip} dst_ip=${dst_ip} value=${teid} action=redirect-to-queue action_value=${${rxq}-1}
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip4 Gtpu Flow ${dut1} ${src_ip} ${dst_ip} teid=${teid} action=drop
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=GTPU src_ip=${src_ip} dst_ip=${dst_ip} value=${teid} action=drop
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip4 Gtpu Flow ${dut1} ${src_ip} ${dst_ip} teid=${teid} action=mark value=${7}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=GTPU src_ip=${src_ip} dst_ip=${dst_ip} value=${teid} action=mark
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
6.3.1.2. 64B-0c-ethip4-flow-ip4-gtpu-scapy¶
frame_size=${64} phy_cores=${0}
6.3.2. 2n1l-10ge2p1x710-ethip4-flow-ip4-ipsec-ah-scapy suite¶
IP4_IPSEC flow test cases
[Top] Network Topologies: TG-DUT1 2-node topology with one link between nodes.
[Enc] Packet Encapsulations: Eth-IP4-AH.
[Cfg] DUT configuration: DUT is configured with IP4_IPSEC flow.
[Ver] TG verification: Verify if the flow action is correct.
*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY
| ... | NIC_Intel-X710 | ETH | IP4FWD | FLOW | IPSEC | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip4-flow-ip4-ipsec-ah
|
| Suite Setup | Setup suite topology interfaces | scapy
| Test Setup | Setup test
| Test Teardown | Tear down test | packet_trace | telemetry
|
| 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
| ${overhead}= | ${0}
| ${src_ip}= | 1.1.1.1
| ${dst_ip}= | 2.2.2.2
| ${spi}= | ${12345}
| ${rxq}= | ${4}
# Telemetry
| ${telemetry_profile}= | vppctl_test_teardown
6.3.2.1. Local Template¶
[Ver] Make TG send IP4-IPSEC packet routed over DUT1 interfaces. Make VPP verify flow packet is correct.
Arguments: - frame_size - Framesize in Bytes in integer. Type: integer - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues. 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 with_trace=${True}
When Initialize layer driver ${nic_driver}
And Initialize layer interface
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create IP4 Ipsec Flow ${dut1} proto=AH spi=${spi} action=redirect-to-queue value=${${rxq}-1}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=AH src_ip=${src_ip} dst_ip=${dst_ip} value=${spi} action=redirect-to-queue action_value=${${rxq}-1}
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create IP4 Ipsec Flow ${dut1} proto=AH spi=${spi} action=drop
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=AH src_ip=${src_ip} dst_ip=${dst_ip} value=${spi} action=drop
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create IP4 Ipsec Flow ${dut1} proto=AH spi=${spi} action=mark value=${7}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=AH src_ip=${src_ip} dst_ip=${dst_ip} value=${spi} action=mark
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
6.3.2.2. 64B-0c-ethip4-flow-ip4-ipsec-ah-scapy¶
frame_size=${64} phy_cores=${0}
6.3.3. 2n1l-10ge2p1x710-ethip4-flow-ip4-ipsec-esp-scapy suite¶
IP4_IPSEC flow test cases
[Top] Network Topologies: TG-DUT1 2-node topology with one link between nodes.
[Enc] Packet Encapsulations: Eth-IP4-ESP.
[Cfg] DUT configuration: DUT is configured with IP4_IPSEC flow.
[Ver] TG verification: Verify if the flow action is correct.
*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY
| ... | NIC_Intel-X710 | ETH | IP4FWD | FLOW | IPSEC | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip4-flow-ip4-ipsec-esp
|
| Suite Setup | Setup suite topology interfaces | scapy
| Test Setup | Setup test
| Test Teardown | Tear down test | packet_trace | telemetry
|
| 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
| ${overhead}= | ${0}
| ${src_ip}= | 1.1.1.1
| ${dst_ip}= | 2.2.2.2
| ${spi}= | ${12345}
| ${rxq}= | ${4}
# Telemetry
| ${telemetry_profile}= | vppctl_test_teardown
6.3.3.1. Local Template¶
[Ver] Make TG send IP4-IPSEC packet routed over DUT1 interfaces. Make VPP verify flow packet is correct.
Arguments: - frame_size - Framesize in Bytes in integer. Type: integer - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues. 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 with_trace=${True}
When Initialize layer driver ${nic_driver}
And Initialize layer interface
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create IP4 Ipsec Flow ${dut1} proto=ESP spi=${spi} action=redirect-to-queue value=${${rxq}-1}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=ESP src_ip=${src_ip} dst_ip=${dst_ip} value=${spi} action=redirect-to-queue action_value=${${rxq}-1}
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create IP4 Ipsec Flow ${dut1} proto=ESP spi=${spi} action=drop
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=ESP src_ip=${src_ip} dst_ip=${dst_ip} value=${spi} action=drop
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create IP4 Ipsec Flow ${dut1} proto=ESP spi=${spi} action=mark value=${7}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=ESP src_ip=${src_ip} dst_ip=${dst_ip} value=${spi} action=mark
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
6.3.3.2. 64B-0c-ethip4-flow-ip4-ipsec-esp-scapy¶
frame_size=${64} phy_cores=${0}
6.3.4. 2n1l-10ge2p1x710-ethip4-flow-ip4-l2tpv3oip-scapy suite¶
IP4_L2TPV3OIP flow test cases
[Top] Network Topologies: TG-DUT1 2-node topology with one link between nodes.
[Enc] Packet Encapsulations: Eth-IP4-L2TPV3.
[Cfg] DUT configuration: DUT is configured with IP4_L2TPV3OIP flow.
[Ver] TG verification: Verify if the flow action is correct.
*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY
| ... | NIC_Intel-X710 | ETH | IP4FWD | FLOW | L2TPV3 | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip4-flow-ip4-l2tpv3oip
|
| Suite Setup | Setup suite topology interfaces | scapy
| Test Setup | Setup test
| Test Teardown | Tear down test | packet_trace | telemetry
|
| 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
| ${overhead}= | ${0}
| ${src_ip}= | 1.1.1.1
| ${dst_ip}= | 2.2.2.2
| ${session_id}= | ${12345}
| ${rxq}= | ${4}
# Telemetry
| ${telemetry_profile}= | vppctl_test_teardown
6.3.4.1. Local Template¶
[Ver] Make TG send IP4-L2TPV3OIP packet routed over DUT1 interfaces. Make VPP verify flow packet is correct.
Arguments: - frame_size - Framesize in Bytes in integer. Type: integer - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues. 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 with_trace=${True}
When Initialize layer driver ${nic_driver}
And Initialize layer interface
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create IP4 L2tp Flow ${dut1} session_id=${session_id} action=redirect-to-queue value=${${rxq}-1}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=L2TPV3 src_ip=${src_ip} dst_ip=${dst_ip} value=${session_id} action=redirect-to-queue action_value=${${rxq}-1}
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create IP4 L2tp Flow ${dut1} session_id=${session_id} action=drop
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=L2TPV3 src_ip=${src_ip} dst_ip=${dst_ip} value=${session_id} action=drop
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create IP4 L2tp Flow ${dut1} session_id=${session_id} action=mark value=${7}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=L2TPV3 src_ip=${src_ip} dst_ip=${dst_ip} value=${session_id} action=mark
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
6.3.4.2. 64B-0c-ethip4-flow-ip4-l2tpv3oip-scapy¶
frame_size=${64} phy_cores=${0}
6.3.5. 2n1l-10ge2p1x710-ethip4-flow-ip4-ntuple-tcp-scapy suite¶
IP4_N_TUPLE flow test cases
[Top] Network Topologies: TG-DUT1 2-node topology with one link between nodes.
[Enc] Packet Encapsulations: Eth-IP4-TCP.
[Cfg] DUT configuration: DUT is configured with IP4_N_TUPLE flow.
[Ver] TG verification: Verify if the flow action is correct.
*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY
| ... | NIC_Intel-X710 | ETH | IP4FWD | FLOW | NTUPLE | TCP | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip4-flow-ip4-ntuple-tcp
|
| Suite Setup | Setup suite topology interfaces | scapy
| Test Setup | Setup test
| Test Teardown | Tear down test | packet_trace | telemetry
|
| 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
| ${overhead}= | ${0}
| ${src_ip}= | 1.1.1.1
| ${dst_ip}= | 2.2.2.2
| ${src_port}= | ${100}
| ${dst_port}= | ${200}
| ${rxq}= | ${4}
# Telemetry
| ${telemetry_profile}= | vppctl_test_teardown
6.3.5.1. Local Template¶
[Ver] Make TG send IP4 packet routed over DUT1 interfaces. Make VPP verify flow packet is correct.
Arguments: - frame_size - Framesize in Bytes in integer. Type: integer - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues. 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 with_trace=${True}
When Initialize layer driver ${nic_driver}
And Initialize layer interface
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip4 N Tuple Flow ${dut1} ${src_ip} ${dst_ip} ${src_port} ${dst_port} proto=TCP action=redirect-to-queue value=${${rxq}-1}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=TCP src_ip=${src_ip} dst_ip=${dst_ip} src_port=${src_port} dst_port=${dst_port} action=redirect-to-queue action_value=${${rxq}-1}
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip4 N Tuple Flow ${dut1} ${src_ip} ${dst_ip} ${src_port} ${dst_port} proto=TCP action=drop
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=TCP src_ip=${src_ip} dst_ip=${dst_ip} src_port=${src_port} dst_port=${dst_port} action=drop
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip4 N Tuple Flow ${dut1} ${src_ip} ${dst_ip} ${src_port} ${dst_port} proto=TCP action=mark value=${7}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=TCP src_ip=${src_ip} dst_ip=${dst_ip} src_port=${src_port} dst_port=${dst_port} action=mark
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
6.3.5.2. 64B-0c-ethip4-flow-ip4-ntuple-tcp-scapy¶
frame_size=${64} phy_cores=${0}
6.3.6. 2n1l-10ge2p1x710-ethip4-flow-ip4-ntuple-udp-scapy suite¶
IP4_N_TUPLE flow test cases
[Top] Network Topologies: TG-DUT1 2-node topology with one link between nodes.
[Enc] Packet Encapsulations: Eth-IP4-UDP.
[Cfg] DUT configuration: DUT is configured with IP4_N_TUPLE flow.
[Ver] TG verification: Verify if the flow action is correct.
*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY
| ... | NIC_Intel-X710 | ETH | IP4FWD | FLOW | NTUPLE | UDP | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip4-flow-ip4-ntuple-udp
|
| Suite Setup | Setup suite topology interfaces | scapy
| Test Setup | Setup test
| Test Teardown | Tear down test | packet_trace | telemetry
|
| 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
| ${overhead}= | ${0}
| ${src_ip}= | 1.1.1.1
| ${dst_ip}= | 2.2.2.2
| ${src_port}= | ${100}
| ${dst_port}= | ${200}
| ${rxq}= | ${4}
# Telemetry
| ${telemetry_profile}= | vppctl_test_teardown
6.3.6.1. Local Template¶
[Ver] Make TG send IP4 packet routed over DUT1 interfaces. Make VPP verify flow packet is correct.
Arguments: - frame_size - Framesize in Bytes in integer. Type: integer - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues. 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 with_trace=${True}
When Initialize layer driver ${nic_driver}
And Initialize layer interface
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip4 N Tuple Flow ${dut1} ${src_ip} ${dst_ip} ${src_port} ${dst_port} proto=UDP action=redirect-to-queue value=${${rxq}-1}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=UDP src_ip=${src_ip} dst_ip=${dst_ip} src_port=${src_port} dst_port=${dst_port} action=redirect-to-queue action_value=${${rxq}-1}
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip4 N Tuple Flow ${dut1} ${src_ip} ${dst_ip} ${src_port} ${dst_port} proto=UDP action=drop
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=UDP src_ip=${src_ip} dst_ip=${dst_ip} src_port=${src_port} dst_port=${dst_port} action=drop
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip4 N Tuple Flow ${dut1} ${src_ip} ${dst_ip} ${src_port} ${dst_port} proto=UDP action=mark value=${7}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=UDP src_ip=${src_ip} dst_ip=${dst_ip} src_port=${src_port} dst_port=${dst_port} action=mark
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
6.3.6.2. 64B-0c-ethip4-flow-ip4-ntuple-udp-scapy¶
frame_size=${64} phy_cores=${0}
6.3.7. 2n1l-10ge2p1x710-ethip4-flow-ip4-tcp-scapy suite¶
IP4 flow test cases
[Top] Network Topologies: TG-DUT1 2-node topology with one link between nodes.
[Enc] Packet Encapsulations: Eth-IP4-TCP.
[Cfg] DUT configuration: DUT is configured with IP4 flow.
[Ver] TG verification: Verify if the flow action is correct.
*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY
| ... | NIC_Intel-X710 | ETH | IP4FWD | FLOW | TCP | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip4-flow-ip4-tcp
|
| Suite Setup | Setup suite topology interfaces | scapy
| Test Setup | Setup test
| Test Teardown | Tear down test | packet_trace | telemetry
|
| 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
| ${overhead}= | ${0}
| ${src_ip}= | 1.1.1.1
| ${dst_ip}= | 2.2.2.2
| ${rxq}= | ${4}
# Telemetry
| ${telemetry_profile}= | vppctl_test_teardown
6.3.7.1. Local Template¶
[Ver] Make TG send IP4 packet routed over DUT1 interfaces. Make VPP verify flow packet is correct.
Arguments: - frame_size - Framesize in Bytes in integer. Type: integer - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues. 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 with_trace=${True}
When Initialize layer driver ${nic_driver}
And Initialize layer interface
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip4 Flow ${dut1} ${src_ip} ${dst_ip} proto=TCP action=redirect-to-queue value=${${rxq}-1}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=TCP src_ip=${src_ip} dst_ip=${dst_ip} action=redirect-to-queue action_value=${${rxq}-1}
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip4 Flow ${dut1} ${src_ip} ${dst_ip} proto=TCP action=drop
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=TCP src_ip=${src_ip} dst_ip=${dst_ip} action=drop
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip4 Flow ${dut1} ${src_ip} ${dst_ip} proto=TCP action=mark value=${7}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=TCP src_ip=${src_ip} dst_ip=${dst_ip} action=mark
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
6.3.7.2. 64B-0c-ethip4-flow-ip4-tcp-scapy¶
frame_size=${64} phy_cores=${0}
6.3.8. 2n1l-10ge2p1x710-ethip4-flow-ip4-udp-scapy suite¶
IP4 flow test cases
[Top] Network Topologies: TG-DUT1 2-node topology with one link between nodes.
[Enc] Packet Encapsulations: Eth-IP4-UDP.
[Cfg] DUT configuration: DUT is configured with IP4 flow.
[Ver] TG verification: Verify if the flow action is correct.
*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY
| ... | NIC_Intel-X710 | ETH | IP4FWD | FLOW | UDP | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip4-flow-ip4-udp
|
| Suite Setup | Setup suite topology interfaces | scapy
| Test Setup | Setup test
| Test Teardown | Tear down test | packet_trace | telemetry
|
| 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
| ${overhead}= | ${0}
| ${src_ip}= | 1.1.1.1
| ${dst_ip}= | 2.2.2.2
| ${rxq}= | ${4}
# Telemetry
| ${telemetry_profile}= | vppctl_test_teardown
6.3.8.1. Local Template¶
[Ver] Make TG send IP4 packet routed over DUT1 interfaces. Make VPP verify flow packet is correct.
Arguments: - frame_size - Framesize in Bytes in integer. Type: integer - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues. 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 with_trace=${True}
When Initialize layer driver ${nic_driver}
And Initialize layer interface
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip4 Flow ${dut1} ${src_ip} ${dst_ip} proto=UDP action=redirect-to-queue value=${${rxq}-1}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=UDP src_ip=${src_ip} dst_ip=${dst_ip} action=redirect-to-queue action_value=${${rxq}-1}
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip4 Flow ${dut1} ${src_ip} ${dst_ip} proto=UDP action=drop
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=UDP src_ip=${src_ip} dst_ip=${dst_ip} action=drop
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip4 Flow ${dut1} ${src_ip} ${dst_ip} proto=UDP action=mark value=${7}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP4 proto=UDP src_ip=${src_ip} dst_ip=${dst_ip} action=mark
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
6.3.8.2. 64B-0c-ethip4-flow-ip4-udp-scapy¶
frame_size=${64} phy_cores=${0}
6.3.9. 2n1l-10ge2p1x710-ethip6-flow-ip6-ntuple-tcp-scapy suite¶
IP6_N_TUPLE flow test cases
[Top] Network Topologies: TG-DUT1 2-node topology with one link between nodes.
[Enc] Packet Encapsulations: Eth-IP6-TCP.
[Cfg] DUT configuration: DUT is configured with IP6_N_TUPLE flow.
[Ver] TG verification: Verify if the flow action is correct.
*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY
| ... | NIC_Intel-X710 | ETH | IP6FWD | FLOW | NTUPLE | TCP | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip6-flow-ip6-ntuple-tcp
|
| Suite Setup | Setup suite topology interfaces | scapy
| Test Setup | Setup test
| Test Teardown | Tear down test | packet_trace | telemetry
|
| 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
| ${overhead}= | ${0}
| ${src_ip}= | 2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b
| ${dst_ip}= | 1011:2022:3033:4044:5055:6066:7077:8088
| ${src_port}= | ${100}
| ${dst_port}= | ${200}
| ${rxq}= | ${4}
# Telemetry
| ${telemetry_profile}= | vppctl_test_teardown
6.3.9.1. Local Template¶
[Ver] Make TG send IP6 packet routed over DUT1 interfaces. Make VPP verify flow packet is correct.
Arguments: - frame_size - Framesize in Bytes in integer. Type: integer - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues. 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 with_trace=${True}
When Initialize layer driver ${nic_driver}
And Initialize layer interface
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip6 N Tuple Flow ${dut1} ${src_ip} ${dst_ip} ${src_port} ${dst_port} proto=TCP action=redirect-to-queue value=${${rxq}-1}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP6 proto=TCP src_ip=${src_ip} dst_ip=${dst_ip} src_port=${src_port} dst_port=${dst_port} action=redirect-to-queue action_value=${${rxq}-1}
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip6 N Tuple Flow ${dut1} ${src_ip} ${dst_ip} ${src_port} ${dst_port} proto=TCP action=drop
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP6 proto=TCP src_ip=${src_ip} dst_ip=${dst_ip} src_port=${src_port} dst_port=${dst_port} action=drop
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip6 N Tuple Flow ${dut1} ${src_ip} ${dst_ip} ${src_port} ${dst_port} proto=TCP action=mark value=${7}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP6 proto=TCP src_ip=${src_ip} dst_ip=${dst_ip} src_port=${src_port} dst_port=${dst_port} action=mark
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
6.3.9.2. 64B-0c-ethip6-flow-ip6-ntuple-tcp-scapy¶
frame_size=${64} phy_cores=${0}
6.3.10. 2n1l-10ge2p1x710-ethip6-flow-ip6-ntuple-udp-scapy suite¶
IP6_N_TUPLE flow test cases
[Top] Network Topologies: TG-DUT1 2-node topology with one link between nodes.
[Enc] Packet Encapsulations: Eth-IP6-UDP.
[Cfg] DUT configuration: DUT is configured with IP6_N_TUPLE flow.
[Ver] TG verification: Verify if the flow action is correct.
*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY
| ... | NIC_Intel-X710 | ETH | IP6FWD | FLOW | NTUPLE | UDP | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip6-flow-ip6-ntuple-udp
|
| Suite Setup | Setup suite topology interfaces | scapy
| Test Setup | Setup test
| Test Teardown | Tear down test | packet_trace | telemetry
|
| 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
| ${overhead}= | ${0}
| ${src_ip}= | 2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b
| ${dst_ip}= | 1011:2022:3033:4044:5055:6066:7077:8088
| ${src_port}= | ${100}
| ${dst_port}= | ${200}
| ${rxq}= | ${4}
# Telemetry
| ${telemetry_profile}= | vppctl_test_teardown
6.3.10.1. Local Template¶
[Ver] Make TG send IP6 packet routed over DUT1 interfaces. Make VPP verify flow packet is correct.
Arguments: - frame_size - Framesize in Bytes in integer. Type: integer - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues. 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 with_trace=${True}
When Initialize layer driver ${nic_driver}
And Initialize layer interface
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip6 N Tuple Flow ${dut1} ${src_ip} ${dst_ip} ${src_port} ${dst_port} proto=UDP action=redirect-to-queue value=${${rxq}-1}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP6 proto=UDP src_ip=${src_ip} dst_ip=${dst_ip} src_port=${src_port} dst_port=${dst_port} action=redirect-to-queue action_value=${${rxq}-1}
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip6 N Tuple Flow ${dut1} ${src_ip} ${dst_ip} ${src_port} ${dst_port} proto=UDP action=drop
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP6 proto=UDP src_ip=${src_ip} dst_ip=${dst_ip} src_port=${src_port} dst_port=${dst_port} action=drop
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip6 N Tuple Flow ${dut1} ${src_ip} ${dst_ip} ${src_port} ${dst_port} proto=UDP action=mark value=${7}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP6 proto=UDP src_ip=${src_ip} dst_ip=${dst_ip} src_port=${src_port} dst_port=${dst_port} action=mark
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
6.3.10.2. 64B-0c-ethip6-flow-ip6-ntuple-udp-scapy¶
frame_size=${64} phy_cores=${0}
6.3.11. 2n1l-10ge2p1x710-ethip6-flow-ip6-tcp-scapy suite¶
IP6 flow test cases
[Top] Network Topologies: TG-DUT1 2-node topology with one link between nodes.
[Enc] Packet Encapsulations: Eth-IP6-TCP.
[Cfg] DUT configuration: DUT is configured with IP6 flow.
[Ver] TG verification: Verify if the flow action is correct.
*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY
| ... | NIC_Intel-X710 | ETH | IP6FWD | FLOW | TCP | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip6-flow-ip6-tcp
|
| Suite Setup | Setup suite topology interfaces | scapy
| Test Setup | Setup test
| Test Teardown | Tear down test | packet_trace | telemetry
|
| 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
| ${overhead}= | ${0}
| ${src_ip}= | 2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b
| ${dst_ip}= | 1011:2022:3033:4044:5055:6066:7077:8088
| ${rxq}= | ${4}
# Telemetry
| ${telemetry_profile}= | vppctl_test_teardown
6.3.11.1. Local Template¶
[Ver] Make TG send IP6 packet routed over DUT1 interfaces. Make VPP verify flow packet is correct.
Arguments: - frame_size - Framesize in Bytes in integer. Type: integer - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues. 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 with_trace=${True}
When Initialize layer driver ${nic_driver}
And Initialize layer interface
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip6 Flow ${dut1} ${src_ip} ${dst_ip} proto=TCP action=redirect-to-queue value=${${rxq}-1}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP6 proto=TCP src_ip=${src_ip} dst_ip=${dst_ip} action=redirect-to-queue action_value=${${rxq}-1}
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip6 Flow ${dut1} ${src_ip} ${dst_ip} proto=TCP action=drop
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP6 proto=TCP src_ip=${src_ip} dst_ip=${dst_ip} action=drop
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip6 Flow ${dut1} ${src_ip} ${dst_ip} proto=TCP action=mark value=${7}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP6 proto=TCP src_ip=${src_ip} dst_ip=${dst_ip} action=mark
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
6.3.11.2. 64B-0c-ethip6-flow-ip6-tcp-scapy¶
frame_size=${64} phy_cores=${0}
6.3.12. 2n1l-10ge2p1x710-ethip6-flow-ip6-udp-scapy suite¶
IP6 flow test cases
[Top] Network Topologies: TG-DUT1 2-node topology with one link between nodes.
[Enc] Packet Encapsulations: Eth-IP6-UDP.
[Cfg] DUT configuration: DUT is configured with IP6 flow.
[Ver] TG verification: Verify if the flow action is correct.
*** Settings ***
| Resource | resources/libraries/robot/shared/default.robot
|
| Force Tags | 2_NODE_SINGLE_LINK_TOPO | DEVICETEST | HW_ENV | DCR_ENV | SCAPY
| ... | NIC_Intel-X710 | ETH | IP6FWD | FLOW | UDP | DRV_VFIO_PCI
| ... | RXQ_SIZE_0 | TXQ_SIZE_0
| ... | ethip6-flow-ip6-udp
|
| Suite Setup | Setup suite topology interfaces | scapy
| Test Setup | Setup test
| Test Teardown | Tear down test | packet_trace | telemetry
|
| 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
| ${overhead}= | ${0}
| ${src_ip}= | 2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b
| ${dst_ip}= | 1011:2022:3033:4044:5055:6066:7077:8088
| ${rxq}= | ${4}
# Telemetry
| ${telemetry_profile}= | vppctl_test_teardown
6.3.12.1. Local Template¶
[Ver] Make TG send IP6 packet routed over DUT1 interfaces. Make VPP verify flow packet is correct.
Arguments: - frame_size - Framesize in Bytes in integer. Type: integer - phy_cores - Number of physical cores. Type: integer - rxq - Number of RX queues. 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 with_trace=${True}
When Initialize layer driver ${nic_driver}
And Initialize layer interface
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip6 Flow ${dut1} ${src_ip} ${dst_ip} proto=UDP action=redirect-to-queue value=${${rxq}-1}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP6 proto=UDP src_ip=${src_ip} dst_ip=${dst_ip} action=redirect-to-queue action_value=${${rxq}-1}
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip6 Flow ${dut1} ${src_ip} ${dst_ip} proto=UDP action=drop
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP6 proto=UDP src_ip=${src_ip} dst_ip=${dst_ip} action=drop
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
Clear Packet Trace On Dut ${dut1}
Vpp Enable Traces On Dut ${dut1}
${flow_index} = And Vpp Create Ip6 Flow ${dut1} ${src_ip} ${dst_ip} proto=UDP action=mark value=${7}
And Vpp Flow Enable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
Then Send flow packet and verify action ${tg} ${TG_pf1}[0] ${DUT1_${int}1_mac}[0] flow_type=IP6 proto=UDP src_ip=${src_ip} dst_ip=${dst_ip} action=mark
And Vpp Flow Disable ${dut1} ${DUT1_${int}1}[0] ${flow_index}
And Vpp Flow Del ${dut1} ${flow_index}
6.3.12.2. 64B-0c-ethip6-flow-ip6-udp-scapy¶
frame_size=${64} phy_cores=${0}