flow

2n1l-100ge2p1e810cq-avf-ethip4-flow-ip4-ipsec-ah-scapy

2n1l-100ge2p1e810cq-avf-ethip4-flow-ip4-ipsec-ah-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-avf-ethip4- 
flow-ip4-ipsec-ah-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=28246016,enable_elog=0,rxq_num=4,rxq_size=0,txq_size=0)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=2377056256,enable_elog=0,rxq_num=4,rxq_size=0,txq_size=0)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_IPSEC_AH: 6>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip4_ipsec_ah’: {‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_AH: 51>}, ‘spi’: 12345}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_IPSEC_AH: 6>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip4_ipsec_ah’: {‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_AH: 51>}, ‘spi’: 12345}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_IPSEC_AH: 6>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip4_ipsec_ah’: {‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_AH: 51>}, ‘spi’: 12345}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)

2n1l-100ge2p1e810cq-avf-ethip4-flow-ip4-ipsec-esp-scapy

2n1l-100ge2p1e810cq-avf-ethip4-flow-ip4-ipsec-esp-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-avf-ethip4- 
flow-ip4-ipsec-esp-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=28246016,enable_elog=0,rxq_num=4,rxq_size=0,txq_size=0)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=2377056256,enable_elog=0,rxq_num=4,rxq_size=0,txq_size=0)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_IPSEC_ESP: 5>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip4_ipsec_esp’: {‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_ESP: 50>}, ‘spi’: 12345}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_IPSEC_ESP: 5>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip4_ipsec_esp’: {‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_ESP: 50>}, ‘spi’: 12345}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_IPSEC_ESP: 5>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip4_ipsec_esp’: {‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_ESP: 50>}, ‘spi’: 12345}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)

2n1l-100ge2p1e810cq-avf-ethip4-flow-ip4-l2tpv3oip-scapy

2n1l-100ge2p1e810cq-avf-ethip4-flow-ip4-l2tpv3oip-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-avf-ethip4- 
flow-ip4-l2tpv3oip-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=28246016,enable_elog=0,rxq_num=4,rxq_size=0,txq_size=0)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=2377056256,enable_elog=0,rxq_num=4,rxq_size=0,txq_size=0)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_L2TPV3OIP: 4>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip4_l2tpv3oip’: {‘protocol’: {‘prot’: 115}, ‘session_id’: 12345}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_L2TPV3OIP: 4>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip4_l2tpv3oip’: {‘protocol’: {‘prot’: 115}, ‘session_id’: 12345}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_L2TPV3OIP: 4>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip4_l2tpv3oip’: {‘protocol’: {‘prot’: 115}, ‘session_id’: 12345}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)

2n1l-100ge2p1e810cq-avf-ethip4-flow-ip4-ntuple-tcp-scapy

2n1l-100ge2p1e810cq-avf-ethip4-flow-ip4-ntuple-tcp-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-avf-ethip4- 
flow-ip4-ntuple-tcp-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=28246016,enable_elog=0,rxq_num=4,rxq_size=0,txq_size=0)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=2377056256,enable_elog=0,rxq_num=4,rxq_size=0,txq_size=0)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_N_TUPLE: 7>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip4_n_tuple’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_N_TUPLE: 7>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip4_n_tuple’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_N_TUPLE: 7>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip4_n_tuple’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)

2n1l-100ge2p1e810cq-avf-ethip4-flow-ip4-ntuple-udp-scapy

2n1l-100ge2p1e810cq-avf-ethip4-flow-ip4-ntuple-udp-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-avf-ethip4- 
flow-ip4-ntuple-udp-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=28246016,enable_elog=0,rxq_num=4,rxq_size=0,txq_size=0)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=2377056256,enable_elog=0,rxq_num=4,rxq_size=0,txq_size=0)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_N_TUPLE: 7>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip4_n_tuple’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_N_TUPLE: 7>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip4_n_tuple’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_N_TUPLE: 7>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip4_n_tuple’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)

2n1l-100ge2p1e810cq-avf-ethip4-flow-ip4-tcp-scapy

2n1l-100ge2p1e810cq-avf-ethip4-flow-ip4-tcp-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-avf-ethip4- 
flow-ip4-tcp-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=28246016,enable_elog=0,rxq_num=4,rxq_size=0,txq_size=0)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=2377056256,enable_elog=0,rxq_num=4,rxq_size=0,txq_size=0)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4: 2>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip4’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4: 2>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip4’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4: 2>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip4’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)

2n1l-100ge2p1e810cq-avf-ethip4-flow-ip4-udp-scapy

2n1l-100ge2p1e810cq-avf-ethip4-flow-ip4-udp-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-avf-ethip4- 
flow-ip4-udp-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=28246016,enable_elog=0,rxq_num=4,rxq_size=0,txq_size=0)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=2377056256,enable_elog=0,rxq_num=4,rxq_size=0,txq_size=0)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4: 2>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip4’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4: 2>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip4’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4: 2>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip4’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)

2n1l-100ge2p1e810cq-avf-ethip6-flow-ip6-ntuple-tcp-scapy

2n1l-100ge2p1e810cq-avf-ethip6-flow-ip6-ntuple-tcp-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-avf-ethip6- 
flow-ip6-ntuple-tcp-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=28246016,enable_elog=0,rxq_num=4,rxq_size=0,txq_size=0)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=2377056256,enable_elog=0,rxq_num=4,rxq_size=0,txq_size=0)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6_N_TUPLE: 8>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip6_n_tuple’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6_N_TUPLE: 8>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip6_n_tuple’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6_N_TUPLE: 8>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip6_n_tuple’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)

2n1l-100ge2p1e810cq-avf-ethip6-flow-ip6-ntuple-udp-scapy

2n1l-100ge2p1e810cq-avf-ethip6-flow-ip6-ntuple-udp-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-avf-ethip6- 
flow-ip6-ntuple-udp-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=28246016,enable_elog=0,rxq_num=4,rxq_size=0,txq_size=0)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=2377056256,enable_elog=0,rxq_num=4,rxq_size=0,txq_size=0)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6_N_TUPLE: 8>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip6_n_tuple’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6_N_TUPLE: 8>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip6_n_tuple’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6_N_TUPLE: 8>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip6_n_tuple’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)

2n1l-100ge2p1e810cq-avf-ethip6-flow-ip6-tcp-scapy

2n1l-100ge2p1e810cq-avf-ethip6-flow-ip6-tcp-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-avf-ethip6- 
flow-ip6-tcp-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=28246016,enable_elog=0,rxq_num=4,rxq_size=0,txq_size=0)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=2377056256,enable_elog=0,rxq_num=4,rxq_size=0,txq_size=0)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6: 3>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip6’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6: 3>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip6’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6: 3>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip6’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)

2n1l-100ge2p1e810cq-avf-ethip6-flow-ip6-udp-scapy

2n1l-100ge2p1e810cq-avf-ethip6-flow-ip6-udp-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-avf-ethip6- 
flow-ip6-udp-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=28246016,enable_elog=0,rxq_num=4,rxq_size=0,txq_size=0)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=2377056256,enable_elog=0,rxq_num=4,rxq_size=0,txq_size=0)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6: 3>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip6’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6: 3>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip6’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6: 3>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip6’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)

2n1l-100ge2p1e810cq-ethip4-flow-ip4-gtpu-scapy

2n1l-100ge2p1e810cq-ethip4-flow-ip4-gtpu-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-ethip4- 
flow-ip4-gtpu-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_GTPU: 14>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip4_gtpu’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}, ‘teid’: 12345}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_GTPU: 14>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip4_gtpu’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}, ‘teid’: 12345}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_GTPU: 14>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip4_gtpu’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}, ‘teid’: 12345}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)

2n1l-100ge2p1e810cq-ethip4-flow-ip4-ipsec-ah-scapy

2n1l-100ge2p1e810cq-ethip4-flow-ip4-ipsec-ah-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-ethip4-flow- 
ip4-ipsec-ah-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_IPSEC_AH: 6>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip4_ipsec_ah’: {‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_AH: 51>}, ‘spi’: 12345}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_IPSEC_AH: 6>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip4_ipsec_ah’: {‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_AH: 51>}, ‘spi’: 12345}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_IPSEC_AH: 6>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip4_ipsec_ah’: {‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_AH: 51>}, ‘spi’: 12345}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)

2n1l-100ge2p1e810cq-ethip4-flow-ip4-ipsec-esp-scapy

2n1l-100ge2p1e810cq-ethip4-flow-ip4-ipsec-esp-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-ethip4-flow- 
ip4-ipsec-esp-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_IPSEC_ESP: 5>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip4_ipsec_esp’: {‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_ESP: 50>}, ‘spi’: 12345}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_IPSEC_ESP: 5>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip4_ipsec_esp’: {‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_ESP: 50>}, ‘spi’: 12345}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_IPSEC_ESP: 5>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip4_ipsec_esp’: {‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_ESP: 50>}, ‘spi’: 12345}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)

2n1l-100ge2p1e810cq-ethip4-flow-ip4-l2tpv3oip-scapy

2n1l-100ge2p1e810cq-ethip4-flow-ip4-l2tpv3oip-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-ethip4- 
flow-ip4-l2tpv3oip-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_L2TPV3OIP: 4>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip4_l2tpv3oip’: {‘protocol’: {‘prot’: 115}, ‘session_id’: 12345}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_L2TPV3OIP: 4>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip4_l2tpv3oip’: {‘protocol’: {‘prot’: 115}, ‘session_id’: 12345}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_L2TPV3OIP: 4>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip4_l2tpv3oip’: {‘protocol’: {‘prot’: 115}, ‘session_id’: 12345}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)

2n1l-100ge2p1e810cq-ethip4-flow-ip4-ntuple-tcp-scapy

2n1l-100ge2p1e810cq-ethip4-flow-ip4-ntuple-tcp-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-ethip4-flow- 
ip4-ntuple-tcp-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_N_TUPLE: 7>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip4_n_tuple’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_N_TUPLE: 7>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip4_n_tuple’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_N_TUPLE: 7>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip4_n_tuple’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)

2n1l-100ge2p1e810cq-ethip4-flow-ip4-ntuple-udp-scapy

2n1l-100ge2p1e810cq-ethip4-flow-ip4-ntuple-udp-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-ethip4-flow- 
ip4-ntuple-udp-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_N_TUPLE: 7>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip4_n_tuple’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_N_TUPLE: 7>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip4_n_tuple’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4_N_TUPLE: 7>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip4_n_tuple’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)

2n1l-100ge2p1e810cq-ethip4-flow-ip4-tcp-scapy

2n1l-100ge2p1e810cq-ethip4-flow-ip4-tcp-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-ethip4- 
flow-ip4-tcp-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4: 2>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip4’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4: 2>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip4’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4: 2>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip4’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)

2n1l-100ge2p1e810cq-ethip4-flow-ip4-udp-scapy

2n1l-100ge2p1e810cq-ethip4-flow-ip4-udp-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-ethip4- 
flow-ip4-udp-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4: 2>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip4’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4: 2>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip4’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP4: 2>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip4’: {‘src_addr’: {‘addr’: ‘1.1.1.1’, ‘mask’: ‘255.255.255.255’}, ‘dst_addr’: {‘addr’: ‘2.2.2.2’, ‘mask’: ‘255.255.255.255’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)

2n1l-100ge2p1e810cq-ethip6-flow-ip6-ntuple-tcp-scapy

2n1l-100ge2p1e810cq-ethip6-flow-ip6-ntuple-tcp-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-ethip6-flow- 
ip6-ntuple-tcp-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6_N_TUPLE: 8>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip6_n_tuple’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6_N_TUPLE: 8>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip6_n_tuple’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6_N_TUPLE: 8>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip6_n_tuple’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)

2n1l-100ge2p1e810cq-ethip6-flow-ip6-ntuple-udp-scapy

2n1l-100ge2p1e810cq-ethip6-flow-ip6-ntuple-udp-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-ethip6-flow- 
ip6-ntuple-udp-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6_N_TUPLE: 8>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip6_n_tuple’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6_N_TUPLE: 8>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip6_n_tuple’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6_N_TUPLE: 8>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip6_n_tuple’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘src_port’: {‘port’: 100, ‘mask’: 65535}, ‘dst_port’: {‘port’: 200, ‘mask’: 65535}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)

2n1l-100ge2p1e810cq-ethip6-flow-ip6-tcp-scapy

2n1l-100ge2p1e810cq-ethip6-flow-ip6-tcp-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-ethip6- 
flow-ip6-tcp-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6: 3>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip6’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6: 3>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip6’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6: 3>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip6’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_TCP: 6>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)

2n1l-100ge2p1e810cq-ethip6-flow-ip6-udp-scapy

2n1l-100ge2p1e810cq-ethip6-flow-ip6-udp-scapy

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.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-ethip6- 
flow-ip6-udp-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6: 3>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_REDIRECT_TO_QUEUE: 16>, ‘redirect_queue’: 3, ‘flow’: {‘ip6’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6: 3>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_DROP: 64>, ‘flow’: {‘ip6’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)
cli_inband(cmd=’clear trace’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
flow_add(flow={‘type’: <vl_api_flow_type_t.FLOW_TYPE_IP6: 3>, ‘actions’: <vl_api_flow_action_t.FLOW_ACTION_MARK: 2>, ‘mark_flow_id’: 7, ‘flow’: {‘ip6’: {‘src_addr’: {‘addr’: ‘2001:0db8:3c4d:0015:0000:0000:1a2f:1a2b’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘dst_addr’: {‘addr’: ‘1011:2022:3033:4044:5055:6066:7077:8088’, ‘mask’: ‘FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF’}, ‘protocol’: {‘prot’: <vl_api_ip_proto_t.IP_API_PROTO_UDP: 17>}}}})
flow_enable(flow_index=0,hw_if_index=1)
flow_disable(flow_index=0,hw_if_index=1)
flow_del(flow_index=0)