2n-zn2-xxv710

2n1l-25ge2p1xxv710-avf-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr

RFC2544: Pkt throughput L2BD test cases with vhost

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

  • [Enc] Packet Encapsulations: Eth-IPv4 for L2 switching of IPv4.

  • [Cfg] DUT configuration: DUT1 is configured with L2 bridge- domain and MAC learning enabled. Qemu VNFs are connected to VPP via vhost-user interfaces. Guest is running testpmd interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is tested with Intel-XXV710.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library. Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 254 flows per flow-group) with all packets containing Ethernet header, IPv4 header with IP protocol=61 and static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: RFC2544.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-2t1c-avf-eth- 
l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 64b-4t2c-avf-eth- 
l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,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=172032000,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=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 64b-8t4c-avf-eth- 
l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=8,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=172032000,enable_elog=0,rxq_num=8,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=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=7,worker_id=7,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=7,worker_id=7,is_main=False)

 1518b-2t1c-avf-eth- 
l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 1518b-4t2c-avf-eth- 
l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,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=172032000,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=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 9000b-2t1c-avf-eth- 
l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-2t1c-avf-eth- 
l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-4t2c-avf-eth- 
l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,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=172032000,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=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

2n1l-25ge2p1xxv710-avf-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

RFC2544: Pkt throughput L2BD test cases with vhost

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

  • [Enc] Packet Encapsulations: Eth-IPv4 for L2 switching of IPv4.

  • [Cfg] DUT configuration: DUT1 is configured with L2 bridge- domain and MAC learning enabled. Qemu VNFs are connected to VPP via vhost-user interfaces. Guest is running VPP l2xc interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is tested with Intel-XXV710.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library. Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 254 flows per flow-group) with all packets containing Ethernet header, IPv4 header with IP protocol=61 and static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: RFC2544.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-2t1c-avf-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 64b-4t2c-avf-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,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=172032000,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=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 1518b-2t1c-avf-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 1518b-4t2c-avf-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,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=172032000,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=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 9000b-2t1c-avf-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-2t1c-avf-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-4t2c-avf-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,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=172032000,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=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 imix-8t4c-avf-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=8,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=172032000,enable_elog=0,rxq_num=8,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=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=7,worker_id=7,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=7,worker_id=7,is_main=False)

2n1l-25ge2p1xxv710-avf-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr

RFC2544: Pkt throughput L2XC test cases with vhost

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

  • [Enc] Packet Encapsulations: Eth-IPv4 for L2 switching of IPv4.

  • [Cfg] DUT configuration: DUT1 is configured with L2 cross- connect. Qemu VNFs are connected to VPP via vhost-user interfaces. Guest is running testpmd interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is tested with Intel-XXV710.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library. Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 254 flows per flow-group) with all packets containing Ethernet header, IPv4 header with IP protocol=61 and static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: RFC2544.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-2t1c-avf-eth- 
l2xcbase-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 64b-4t2c-avf-eth- 
l2xcbase-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,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=172032000,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=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 64b-8t4c-avf-eth- 
l2xcbase-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=8,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=172032000,enable_elog=0,rxq_num=8,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=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=7,worker_id=7,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=7,worker_id=7,is_main=False)

 1518b-2t1c-avf-eth- 
l2xcbase-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 1518b-4t2c-avf-eth- 
l2xcbase-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,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=172032000,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=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 9000b-2t1c-avf-eth- 
l2xcbase-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-2t1c-avf-eth- 
l2xcbase-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-4t2c-avf-eth- 
l2xcbase-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,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=172032000,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=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 imix-8t4c-avf-eth- 
l2xcbase-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=8,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=172032000,enable_elog=0,rxq_num=8,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=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=7,worker_id=7,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=7,worker_id=7,is_main=False)

2n1l-25ge2p1xxv710-avf-eth-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

RFC2544: Pkt throughput L2XC test cases with vhost

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

  • [Enc] Packet Encapsulations: Eth-IPv4 for L2 switching of IPv4.

  • [Cfg] DUT configuration: DUT1 is configured with L2 cross- connect. Qemu VNFs are connected to VPP via vhost-user interfaces. Guest is running VPP l2xc interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is tested with Intel-XXV710.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library. Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 254 flows per flow-group) with all packets containing Ethernet header, IPv4 header with IP protocol=61 and static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: RFC2544.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-2t1c-avf-eth-l2xcbase- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 64b-4t2c-avf-eth-l2xcbase- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,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=172032000,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=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 64b-8t4c-avf-eth-l2xcbase- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=8,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=172032000,enable_elog=0,rxq_num=8,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=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=7,worker_id=7,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=7,worker_id=7,is_main=False)

 1518b-2t1c-avf-eth-l2xcbase- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 1518b-4t2c-avf-eth-l2xcbase- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,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=172032000,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=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 9000b-2t1c-avf-eth-l2xcbase- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-2t1c-avf-eth-l2xcbase- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-4t2c-avf-eth-l2xcbase- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,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=172032000,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=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 imix-8t4c-avf-eth-l2xcbase- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=8,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=172032000,enable_elog=0,rxq_num=8,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=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=7,worker_id=7,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=7,worker_id=7,is_main=False)

2n1l-25ge2p1xxv710-avf-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdr

RFC2544: Pkt throughput IPv4 test cases with vhost

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

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

  • [Cfg] DUT configuration: DUT1 is configured with IPv4 routing and two static IPv4 /24 route entries. Qemu VNFs are connected to VPP via vhost-user interfaces. Guest is running testpmd interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is tested with Intel-XXV710.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library. Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 253 flows per flow-group) with all packets containing Ethernet header, IPv4 header with IP protocol=61 and static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: RFC2544.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-2t1c-avf-ethip4- 
ip4base-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:6b:ec:ea:86’, ‘ip_address’: ‘1.1.2.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 4, ‘flags’: 0, ‘mac_address’: ‘02:fe:3c:c6:82:c1’, ‘ip_address’: ‘1.1.1.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 64b-4t2c-avf-ethip4- 
ip4base-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,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=172032000,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=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:86:92:b5:5c’, ‘ip_address’: ‘1.1.2.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 4, ‘flags’: 0, ‘mac_address’: ‘02:fe:03:e1:2d:11’, ‘ip_address’: ‘1.1.1.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 64b-8t4c-avf-ethip4- 
ip4base-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=8,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=172032000,enable_elog=0,rxq_num=8,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=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:79:e8:c8:5f’, ‘ip_address’: ‘1.1.2.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 4, ‘flags’: 0, ‘mac_address’: ‘02:fe:02:8d:3a:63’, ‘ip_address’: ‘1.1.1.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=7,worker_id=7,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=7,worker_id=7,is_main=False)

 1518b-2t1c-avf-ethip4- 
ip4base-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:bb:26:f8:5f’, ‘ip_address’: ‘1.1.2.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 4, ‘flags’: 0, ‘mac_address’: ‘02:fe:cc:25:bc:ba’, ‘ip_address’: ‘1.1.1.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 1518b-4t2c-avf-ethip4- 
ip4base-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,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=172032000,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=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:df:3f:c1:c9’, ‘ip_address’: ‘1.1.2.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 4, ‘flags’: 0, ‘mac_address’: ‘02:fe:80:de:a0:fa’, ‘ip_address’: ‘1.1.1.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 9000b-2t1c-avf-ethip4- 
ip4base-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:46:54:f6:32’, ‘ip_address’: ‘1.1.2.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 4, ‘flags’: 0, ‘mac_address’: ‘02:fe:c3:f9:9c:3b’, ‘ip_address’: ‘1.1.1.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-2t1c-avf-ethip4- 
ip4base-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:c6:fa:dd:3f’, ‘ip_address’: ‘1.1.2.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 4, ‘flags’: 0, ‘mac_address’: ‘02:fe:43:1a:1c:7b’, ‘ip_address’: ‘1.1.1.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-4t2c-avf-ethip4- 
ip4base-eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,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=172032000,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=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:85:13:8a:72’, ‘ip_address’: ‘1.1.2.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 4, ‘flags’: 0, ‘mac_address’: ‘02:fe:3e:cd:2c:cb’, ‘ip_address’: ‘1.1.1.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

2n1l-25ge2p1xxv710-avf-ethip4-ip4base-eth-2vhostvr1024-1vm-vppip4-ndrpdr

RFC2544: Pkt throughput IPv4 test cases with vhost

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

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

  • [Cfg] DUT configuration: DUT1 is configured with IPv4 routing and two static IPv4 /24 route entries. Qemu VNFs are connected to VPP via vhost-user interfaces. Guest is running VPP ip4 interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is tested with Intel-XXV710.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library. Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 253 flows per flow-group) with all packets containing Ethernet header, IPv4 header with IP protocol=61 and static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: RFC2544.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-2t1c-avf-ethip4-ip4base- 
eth-2vhostvr1024-1vm-vppip4-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 64b-4t2c-avf-ethip4-ip4base- 
eth-2vhostvr1024-1vm-vppip4-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,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=172032000,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=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 64b-8t4c-avf-ethip4-ip4base- 
eth-2vhostvr1024-1vm-vppip4-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=8,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=172032000,enable_elog=0,rxq_num=8,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=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=7,worker_id=7,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=7,worker_id=7,is_main=False)

 1518b-2t1c-avf-ethip4-ip4base- 
eth-2vhostvr1024-1vm-vppip4-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 9000b-2t1c-avf-ethip4-ip4base- 
eth-2vhostvr1024-1vm-vppip4-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-2t1c-avf-ethip4-ip4base- 
eth-2vhostvr1024-1vm-vppip4-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=2,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=172032000,enable_elog=0,rxq_num=2,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=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-8t4c-avf-ethip4-ip4base- 
eth-2vhostvr1024-1vm-vppip4-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class avf level debug’)
avf_create(pci_addr=37814272,enable_elog=0,rxq_num=8,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=172032000,enable_elog=0,rxq_num=8,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=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=7,worker_id=7,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=7,worker_id=7,is_main=False)

2n1l-25ge2p1xxv710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-ndrpdr

RFC2544: Pkt throughput L2BD test cases with vhost

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

  • [Enc] Packet Encapsulations: Eth-IPv4 for L2 switching of IPv4.

  • [Cfg] DUT configuration: DUT1 is configured with L2 bridge- domain and MAC learning enabled. Qemu VNFs are connected to VPP via vhost-user interfaces. Guest is running testpmd interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is tested with Intel-XXV710.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library. Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 254 flows per flow-group) with all packets containing Ethernet header, IPv4 header with IP protocol=61 and static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: RFC2544.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-2t1c-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 64b-4t2c-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 64b-8t4c-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=7,worker_id=7,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=7,worker_id=7,is_main=False)

 1518b-2t1c-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 1518b-4t2c-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 9000b-2t1c-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-2t1c-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-4t2c-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 imix-8t4c-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=7,worker_id=7,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=7,worker_id=7,is_main=False)

2n1l-25ge2p1xxv710-eth-l2bdbasemaclrn-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

RFC2544: Pkt throughput L2BD test cases with vhost

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

  • [Enc] Packet Encapsulations: Eth-IPv4 for L2 switching of IPv4.

  • [Cfg] DUT configuration: DUT1 is configured with L2 bridge- domain and MAC learning enabled. Qemu VNFs are connected to VPP via vhost-user interfaces. Guest is running VPP l2xc interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is tested with Intel-XXV710.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library. Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 254 flows per flow-group) with all packets containing Ethernet header, IPv4 header with IP protocol=61 and static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: RFC2544.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-2t1c-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 64b-4t2c-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 64b-8t4c-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=7,worker_id=7,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=7,worker_id=7,is_main=False)

 1518b-2t1c-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 1518b-4t2c-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 9000b-2t1c-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-2t1c-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-4t2c-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 imix-8t4c-eth-l2bdbasemaclrn- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=2,shg=0,port_type=0,enable=True)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,bd_id=2,shg=0,port_type=0,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=7,worker_id=7,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=7,worker_id=7,is_main=False)

2n1l-25ge2p1xxv710-eth-l2xcbase-eth-2vhostvr1024-1vm-ndrpdr

RFC2544: Pkt throughput L2XC test cases with vhost

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

  • [Enc] Packet Encapsulations: Eth-IPv4 for L2 switching of IPv4.

  • [Cfg] DUT configuration: DUT1 is configured with L2 cross- connect. Qemu VNFs are connected to VPP via vhost-user interfaces. Guest is running testpmd interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is tested with Intel-XXV710.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library. Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 254 flows per flow-group) with all packets containing Ethernet header, IPv4 header with IP protocol=61 and static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: RFC2544.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-2t1c-eth-l2xcbase- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 64b-4t2c-eth-l2xcbase- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 64b-8t4c-eth-l2xcbase- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=7,worker_id=7,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=7,worker_id=7,is_main=False)

 1518b-2t1c-eth-l2xcbase- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 1518b-4t2c-eth-l2xcbase- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 9000b-2t1c-eth-l2xcbase- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-2t1c-eth-l2xcbase- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-4t2c-eth-l2xcbase- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 imix-8t4c-eth-l2xcbase- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=7,worker_id=7,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=7,worker_id=7,is_main=False)

2n1l-25ge2p1xxv710-eth-l2xcbase-eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

RFC2544: Pkt throughput L2XC test cases with vhost

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

  • [Enc] Packet Encapsulations: Eth-IPv4 for L2 switching of IPv4.

  • [Cfg] DUT configuration: DUT1 is configured with L2 cross- connect. Qemu VNFs are connected to VPP via vhost-user interfaces. Guest is running VPP l2xc interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is tested with Intel-XXV710.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library. Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 254 flows per flow-group) with all packets containing Ethernet header, IPv4 header with IP protocol=61 and static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: RFC2544.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-2t1c-eth-l2xcbase- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 64b-4t2c-eth-l2xcbase- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 64b-8t4c-eth-l2xcbase- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=7,worker_id=7,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=7,worker_id=7,is_main=False)

 1518b-2t1c-eth-l2xcbase- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 1518b-4t2c-eth-l2xcbase- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 9000b-2t1c-eth-l2xcbase- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-2t1c-eth-l2xcbase- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-4t2c-eth-l2xcbase- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 imix-8t4c-eth-l2xcbase- 
eth-2vhostvr1024-1vm-vppl2xc-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=3,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,tx_sw_if_index=1,enable=True)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=4,enable=True)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=7,worker_id=7,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=7,worker_id=7,is_main=False)

2n1l-25ge2p1xxv710-ethip4-ip4base-eth-2vhostvr1024-1vm-ndrpdr

RFC2544: Pkt throughput IPv4 test cases with vhost

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

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

  • [Cfg] DUT configuration: DUT1 is configured with IPv4 routing and two static IPv4 /24 route entries. Qemu VNFs are connected to VPP via vhost-user interfaces. Guest is running testpmd interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is tested with Intel-XXV710.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library. Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 253 flows per flow-group) with all packets containing Ethernet header, IPv4 header with IP protocol=61 and static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: RFC2544.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-2t1c-ethip4-ip4base- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:36:c1:83:01’, ‘ip_address’: ‘1.1.2.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 4, ‘flags’: 0, ‘mac_address’: ‘02:fe:73:4e:e4:3d’, ‘ip_address’: ‘1.1.1.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 64b-4t2c-ethip4-ip4base- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:17:88:3d:a4’, ‘ip_address’: ‘1.1.2.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 4, ‘flags’: 0, ‘mac_address’: ‘02:fe:98:b1:17:96’, ‘ip_address’: ‘1.1.1.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 64b-8t4c-ethip4-ip4base- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:27:a2:07:5d’, ‘ip_address’: ‘1.1.2.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 4, ‘flags’: 0, ‘mac_address’: ‘02:fe:e8:3f:93:f0’, ‘ip_address’: ‘1.1.1.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=7,worker_id=7,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=7,worker_id=7,is_main=False)

 1518b-2t1c-ethip4-ip4base- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:d3:73:07:87’, ‘ip_address’: ‘1.1.2.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 4, ‘flags’: 0, ‘mac_address’: ‘02:fe:44:b9:02:51’, ‘ip_address’: ‘1.1.1.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 1518b-4t2c-ethip4-ip4base- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:0b:de:88:12’, ‘ip_address’: ‘1.1.2.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 4, ‘flags’: 0, ‘mac_address’: ‘02:fe:5c:b6:1c:a9’, ‘ip_address’: ‘1.1.1.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 9000b-2t1c-ethip4-ip4base- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:c8:dd:32:bc’, ‘ip_address’: ‘1.1.2.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 4, ‘flags’: 0, ‘mac_address’: ‘02:fe:cd:7a:37:f4’, ‘ip_address’: ‘1.1.1.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-2t1c-ethip4-ip4base- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:a4:ba:95:a4’, ‘ip_address’: ‘1.1.2.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 4, ‘flags’: 0, ‘mac_address’: ‘02:fe:19:10:b7:4c’, ‘ip_address’: ‘1.1.1.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-4t2c-ethip4-ip4base- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:15:4c:d5:ba’, ‘ip_address’: ‘1.1.2.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 4, ‘flags’: 0, ‘mac_address’: ‘02:fe:0e:d4:80:a6’, ‘ip_address’: ‘1.1.1.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 imix-8t4c-ethip4-ip4base- 
eth-2vhostvr1024-1vm-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:85:7c:65:f0’, ‘ip_address’: ‘1.1.2.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 4, ‘flags’: 0, ‘mac_address’: ‘02:fe:3e:9a:1c:f1’, ‘ip_address’: ‘1.1.1.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=7,worker_id=7,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=7,worker_id=7,is_main=False)

2n1l-25ge2p1xxv710-ethip4-ip4base-eth-2vhostvr1024-1vm-vppip4-ndrpdr

RFC2544: Pkt throughput IPv4 test cases with vhost

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

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

  • [Cfg] DUT configuration: DUT1 is configured with IPv4 routing and two static IPv4 /24 route entries. Qemu VNFs are connected to VPP via vhost-user interfaces. Guest is running VPP ip4 interconnecting vhost-user interfaces, rxd/txd=1024. DUT1 is tested with Intel-XXV710.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library. Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 253 flows per flow-group) with all packets containing Ethernet header, IPv4 header with IP protocol=61 and static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: RFC2544.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-2t1c-ethip4-ip4base- 
eth-2vhostvr1024-1vm-vppip4-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 64b-4t2c-ethip4-ip4base- 
eth-2vhostvr1024-1vm-vppip4-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 64b-8t4c-ethip4-ip4base- 
eth-2vhostvr1024-1vm-vppip4-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=7,worker_id=7,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=7,worker_id=7,is_main=False)

 1518b-2t1c-ethip4-ip4base- 
eth-2vhostvr1024-1vm-vppip4-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 1518b-4t2c-ethip4-ip4base- 
eth-2vhostvr1024-1vm-vppip4-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 9000b-2t1c-ethip4-ip4base- 
eth-2vhostvr1024-1vm-vppip4-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-2t1c-ethip4-ip4base- 
eth-2vhostvr1024-1vm-vppip4-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)

 imix-4t2c-ethip4-ip4base- 
eth-2vhostvr1024-1vm-vppip4-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)

 imix-8t4c-ethip4-ip4base- 
eth-2vhostvr1024-1vm-vppip4-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
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=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
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=’’)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=1,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=2,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dc’, ‘ip_address’: ‘100.0.0.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘40:a6:b7:02:89:dd’, ‘ip_address’: ‘200.0.0.2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’dx00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc8x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-1’,enable_gso=False)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
create_vhost_user_if(is_server=False,sock_filename=’/var/run/vpp/sock-1-2’,enable_gso=False)
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=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_table_add_del(table={‘table_id’: 101, ‘is_ip6’: False},is_add=True)
ip_table_add_del(table={‘table_id’: 102, ‘is_ip6’: False},is_add=True)
sw_interface_set_table(sw_if_index=3,is_ipv6=False,vrf_id=101)
sw_interface_set_table(sw_if_index=4,is_ipv6=False,vrf_id=102)
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x01x02’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 30, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x01x01x02x02’}}})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 101, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 3, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x01x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 102, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’x01x01x02x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_dump(name_filter_valid=False,name_filter=’’)
show_threads()
sw_interface_rx_placement_dump(sw_if_index=1)
sw_interface_rx_placement_dump(sw_if_index=2)
sw_interface_rx_placement_dump(sw_if_index=3)
sw_interface_rx_placement_dump(sw_if_index=4)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=3,queue_id=7,worker_id=7,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=0,worker_id=0,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=1,worker_id=1,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=2,worker_id=2,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=3,worker_id=3,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=4,worker_id=4,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=5,worker_id=5,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=6,worker_id=6,is_main=False)
sw_interface_set_rx_placement(sw_if_index=4,queue_id=7,worker_id=7,is_main=False)