2n-zn2-cx556a

2n1l-100ge2p1cx556a-rdma-eth-l2bdbasemaclrn-ndrpdr

RFC2544: Pkt throughput L2BD test cases

  • [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. DUT1 tested with Mellanox-CX556A.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library. Test packets are generated by TG on links to DUT1. TG traffic profile contains two L3 flow-groups (flow-group per direction, 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-rdma- 
eth-l2bdbasemaclrn-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=1,shg=0,port_type=0,enable=True)

 64b-4t2c-rdma- 
eth-l2bdbasemaclrn-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=1,shg=0,port_type=0,enable=True)

 64b-8t4c-rdma- 
eth-l2bdbasemaclrn-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=8,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=8,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=1,shg=0,port_type=0,enable=True)

 1518b-2t1c-rdma- 
eth-l2bdbasemaclrn-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=1,shg=0,port_type=0,enable=True)

 1518b-4t2c-rdma- 
eth-l2bdbasemaclrn-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=1,shg=0,port_type=0,enable=True)

 9000b-2t1c-rdma- 
eth-l2bdbasemaclrn-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=1,shg=0,port_type=0,enable=True)

 imix-2t1c-rdma- 
eth-l2bdbasemaclrn-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=1,shg=0,port_type=0,enable=True)

 imix-4t2c-rdma- 
eth-l2bdbasemaclrn-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=1,shg=0,port_type=0,enable=True)

 imix-8t4c-rdma- 
eth-l2bdbasemaclrn-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=8,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=8,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=1,shg=0,port_type=0,enable=True)

2n1l-100ge2p1cx556a-rdma-eth-l2bdscale1mmaclrn-ndrpdr

RFC2544: Pkt throughput for L2BD test cases

  • [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. DUT1 tested with Mellanox-CX556A.

  • [Ver] TG verification: TG finds and reports throughput NDR (Non Drop Rate) with zero packet loss tolerance and throughput PDR (Partial Drop Rate) with non-zero packet loss tolerance (LT) expressed in percentage of packets transmitted. NDR and PDR are discovered for different Ethernet L2 frame sizes using MLRsearch library. Test packets are generated by TG on links to DUT1. TG traffic profile contains two L3 flow-groups (flow-group per direction, 500k flows per flow-group) with all packets containing Ethernet header, IPv4 header with IP protocol=61 and static payload. MAC addresses ranges are incremented as follows: port01_src ca:fe:00:00:00:00 - port01_src ca:fe:00:07:a1:1f, port01_dst fa:ce:00:00:00:00 - port01_dst fa:ce:00:07:a1:1f, port02_src fa:ce:00:00:00:00 - port02_src fa:ce:00:07:a1:1f, port02_dst ca:fe:00:00:00:00 - port02_dst ca:fe:00:07:a1:1f

  • [Ref] Applicable standard specifications: RFC2544.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-2t1c-rdma- 
eth-l2bdscale1mmaclrn-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=1,shg=0,port_type=0,enable=True)

 64b-4t2c-rdma- 
eth-l2bdscale1mmaclrn-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=1,shg=0,port_type=0,enable=True)

 64b-8t4c-rdma- 
eth-l2bdscale1mmaclrn-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=8,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=8,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=1,shg=0,port_type=0,enable=True)

 1518b-2t1c-rdma- 
eth-l2bdscale1mmaclrn-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=1,shg=0,port_type=0,enable=True)

 1518b-4t2c-rdma- 
eth-l2bdscale1mmaclrn-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=1,shg=0,port_type=0,enable=True)

 9000b-2t1c-rdma- 
eth-l2bdscale1mmaclrn-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=1,shg=0,port_type=0,enable=True)

 imix-2t1c-rdma- 
eth-l2bdscale1mmaclrn-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=1,shg=0,port_type=0,enable=True)

 imix-4t2c-rdma- 
eth-l2bdscale1mmaclrn-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=1,shg=0,port_type=0,enable=True)

 imix-8t4c-rdma- 
eth-l2bdscale1mmaclrn-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=8,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=8,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_bridge(rx_sw_if_index=1,bd_id=1,shg=0,port_type=0,enable=True)
sw_interface_set_l2_bridge(rx_sw_if_index=2,bd_id=1,shg=0,port_type=0,enable=True)

2n1l-100ge2p1cx556a-rdma-eth-l2patch-ndrpdr

RFC2544: Pkt throughput L2patch test cases

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

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

  • [Cfg] DUT configuration: DUT1 is configured with L2 patch DUT1 tested with Mellanox-CX556A.

  • [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 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-rdma- 
eth-l2patch-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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=’’)
l2_patch_add_del(rx_sw_if_index=1,tx_sw_if_index=2,is_add=True)
l2_patch_add_del(rx_sw_if_index=2,tx_sw_if_index=1,is_add=True)
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=’’)

 64b-4t2c-rdma- 
eth-l2patch-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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=’’)
l2_patch_add_del(rx_sw_if_index=1,tx_sw_if_index=2,is_add=True)
l2_patch_add_del(rx_sw_if_index=2,tx_sw_if_index=1,is_add=True)
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=’’)

 64b-8t4c-rdma- 
eth-l2patch-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=8,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=8,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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=’’)
l2_patch_add_del(rx_sw_if_index=1,tx_sw_if_index=2,is_add=True)
l2_patch_add_del(rx_sw_if_index=2,tx_sw_if_index=1,is_add=True)
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=’’)

 1518b-2t1c-rdma- 
eth-l2patch-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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=’’)
l2_patch_add_del(rx_sw_if_index=1,tx_sw_if_index=2,is_add=True)
l2_patch_add_del(rx_sw_if_index=2,tx_sw_if_index=1,is_add=True)
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=’’)

 1518b-4t2c-rdma- 
eth-l2patch-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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=’’)
l2_patch_add_del(rx_sw_if_index=1,tx_sw_if_index=2,is_add=True)
l2_patch_add_del(rx_sw_if_index=2,tx_sw_if_index=1,is_add=True)
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=’’)

 9000b-2t1c-rdma- 
eth-l2patch-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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=’’)
l2_patch_add_del(rx_sw_if_index=1,tx_sw_if_index=2,is_add=True)
l2_patch_add_del(rx_sw_if_index=2,tx_sw_if_index=1,is_add=True)
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=’’)

 imix-2t1c-rdma- 
eth-l2patch-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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=’’)
l2_patch_add_del(rx_sw_if_index=1,tx_sw_if_index=2,is_add=True)
l2_patch_add_del(rx_sw_if_index=2,tx_sw_if_index=1,is_add=True)
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=’’)

 imix-4t2c-rdma- 
eth-l2patch-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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=’’)
l2_patch_add_del(rx_sw_if_index=1,tx_sw_if_index=2,is_add=True)
l2_patch_add_del(rx_sw_if_index=2,tx_sw_if_index=1,is_add=True)
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=’’)

 imix-8t4c-rdma- 
eth-l2patch-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=8,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=8,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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=’’)
l2_patch_add_del(rx_sw_if_index=1,tx_sw_if_index=2,is_add=True)
l2_patch_add_del(rx_sw_if_index=2,tx_sw_if_index=1,is_add=True)
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=’’)

2n1l-100ge2p1cx556a-rdma-eth-l2xcbase-ndrpdr

RFC2544: Pkt throughput L2XC test cases

  • [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. DUT1 tested with Mellanox-CX556A.

  • [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 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-rdma- 
eth-l2xcbase-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=1,enable=True)

 64b-4t2c-rdma- 
eth-l2xcbase-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=1,enable=True)

 64b-8t4c-rdma- 
eth-l2xcbase-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=8,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=8,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=1,enable=True)

 1518b-2t1c-rdma- 
eth-l2xcbase-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=1,enable=True)

 1518b-4t2c-rdma- 
eth-l2xcbase-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=1,enable=True)

 9000b-2t1c-rdma- 
eth-l2xcbase-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=1,enable=True)

 imix-2t1c-rdma- 
eth-l2xcbase-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=2,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=1,enable=True)

 imix-4t2c-rdma- 
eth-l2xcbase-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=4,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=1,enable=True)

 imix-8t4c-rdma- 
eth-l2xcbase-ndrpdr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f0’,host_if=’enp129s0f0’,rxq_num=8,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=1,mac_address=b’x0cBxa1pxadxba’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’set logging class rdma level debug’)
rdma_create_v3(name=’enp129s0f1’,host_if=’enp129s0f1’,rxq_num=8,rxq_size=0,txq_size=0,mode=0,no_multi_seg=False,max_pktlen=0)
sw_interface_set_mac_address(sw_if_index=2,mac_address=b’x0cBxa1pxadxbb’)
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_l2_xconnect(rx_sw_if_index=1,tx_sw_if_index=2,enable=True)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,tx_sw_if_index=1,enable=True)