ip4 tunnels

eth2p-ethip4vxlan-l2bdbasemaclrn-dev

L2BD with VXLANoIPv4 test cases

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

  • [Enc] Packet encapsulations: Eth-IPv4-VXLAN-Eth-IPv4-ICMPv4 on TG-DUT.

  • [Cfg] DUT configuration: DUT1 is configured with L2 bridge-domain switching combined with MAC learning enable. VXLAN tunnels are configured on links betwen TG and DUT.

  • [Ver] TG verification: Test Eth-IPv4-VXLAN-Eth-IPv4-ICMPv4 packet is sent by TG on link to DUT1; on receive TG verifies packets for correctness and their IPv4 src-addr, dst-addr and MAC addresses.

  • [Ref] Applicable standard specifications: RFC7348.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 114b-ethip4vxlan- 
l2bdbasemaclrn-dev

 DUT1:  
cli_inband(cmd=’show log’)
show_version()
sw_interface_dump(name_filter=’’,name_filter_valid=0)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
sw_interface_set_flags(sw_if_index=1,admin_up_down=1)
sw_interface_set_flags(sw_if_index=2,admin_up_down=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_add_del_address(address_length=24,del_all=0,is_add=1,sw_if_index=1,address=’xacx10x00x01’,is_ipv6=0)
sw_interface_add_del_address(address_length=24,del_all=0,is_add=1,sw_if_index=2,address=’xacx1ax00x01’,is_ipv6=0)
vxlan_add_del_tunnel(src_address=’xacx10x00x01’,is_add=1,decap_next_index=4294967295,mcast_sw_if_index=4294967295,vni=0,dst_address=’xacx11x00x02’,encap_vrf_id=0,instance=4294967295,is_ipv6=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
vxlan_add_del_tunnel(src_address=’xacx1ax00x01’,is_add=1,decap_next_index=4294967295,mcast_sw_if_index=4294967295,vni=0,dst_address=’xacx1bx00x02’,encap_vrf_id=0,instance=4294967295,is_ipv6=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘172.16.0.2’, ‘flags’: 0, ‘sw_if_index’: 1, ‘mac_address’: ‘fa:ce:00:00:02:00’})
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘172.26.0.2’, ‘flags’: 0, ‘sw_if_index’: 2, ‘mac_address’: ‘fa:ce:00:00:02:01’})
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip4’: ‘xacx10x00x02’}}, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘proto’: 0, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], ‘sw_if_index’: 1, ‘flags’: 0, ‘preference’: 1, ‘table_id’: 0, ‘type’: 0}], ‘prefix’: {‘len’: 24, ‘address’: {‘un’: {‘ip4’: ‘xacx11x00x00’}, ‘af’: 0}}, ‘n_paths’: 1, ‘table_id’: 0},is_add=1,is_multipath=0)
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip4’: ‘xacx1ax00x02’}}, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘proto’: 0, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], ‘sw_if_index’: 2, ‘flags’: 0, ‘preference’: 1, ‘table_id’: 0, ‘type’: 0}], ‘prefix’: {‘len’: 24, ‘address’: {‘un’: {‘ip4’: ‘xacx1bx00x00’}, ‘af’: 0}}, ‘n_paths’: 1, ‘table_id’: 0},is_add=1,is_multipath=0)
sw_interface_set_vxlan_bypass(enable=1,sw_if_index=1,is_ipv6=0)
sw_interface_set_vxlan_bypass(enable=1,sw_if_index=2,is_ipv6=0)
sw_interface_set_l2_bridge(rx_sw_if_index=3,enable=1,shg=0,port_type=0,bd_id=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,enable=1,shg=0,port_type=0,bd_id=1)

eth2p-ethip4vxlan-l2xcbase-dev

L2XC with VXLANoIPv4 test cases

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

  • [Enc] Packet encapsulations: Eth-IPv4-VXLAN-Eth-IPv4-ICMPv4 on TG-DUT.

  • [Cfg] DUT configuration: DUT1 is configured with L2 cross-connect. VXLAN tunnels are configured on links betwen TG and DUT.

  • [Ver] TG verification: Test Eth-IPv4-VXLAN-Eth-IPv4-ICMPv4 packet is sent by TG on link to DUT1; on receive TG verifies packets for correctness and their IPv4 src-addr, dst-addr and MAC addresses.

  • [Ref] Applicable standard specifications: RFC7348.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 114b-ethip4vxlan-l2xcbase-dev 

 DUT1:  
cli_inband(cmd=’show log’)
show_version()
sw_interface_dump(name_filter=’’,name_filter_valid=0)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
sw_interface_set_flags(sw_if_index=1,admin_up_down=1)
sw_interface_set_flags(sw_if_index=2,admin_up_down=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_add_del_address(address_length=24,del_all=0,is_add=1,sw_if_index=1,address=’xacx10x00x01’,is_ipv6=0)
sw_interface_add_del_address(address_length=24,del_all=0,is_add=1,sw_if_index=2,address=’xacx1ax00x01’,is_ipv6=0)
vxlan_add_del_tunnel(src_address=’xacx10x00x01’,is_add=1,decap_next_index=4294967295,mcast_sw_if_index=4294967295,vni=0,dst_address=’xacx11x00x02’,encap_vrf_id=0,instance=4294967295,is_ipv6=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
vxlan_add_del_tunnel(src_address=’xacx1ax00x01’,is_add=1,decap_next_index=4294967295,mcast_sw_if_index=4294967295,vni=0,dst_address=’xacx1bx00x02’,encap_vrf_id=0,instance=4294967295,is_ipv6=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘172.16.0.2’, ‘flags’: 0, ‘sw_if_index’: 1, ‘mac_address’: ‘fa:ce:00:00:02:00’})
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘172.26.0.2’, ‘flags’: 0, ‘sw_if_index’: 2, ‘mac_address’: ‘fa:ce:00:00:02:01’})
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip4’: ‘xacx10x00x02’}}, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘proto’: 0, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], ‘sw_if_index’: 1, ‘flags’: 0, ‘preference’: 1, ‘table_id’: 0, ‘type’: 0}], ‘prefix’: {‘len’: 24, ‘address’: {‘un’: {‘ip4’: ‘xacx11x00x00’}, ‘af’: 0}}, ‘n_paths’: 1, ‘table_id’: 0},is_add=1,is_multipath=0)
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip4’: ‘xacx1ax00x02’}}, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘proto’: 0, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], ‘sw_if_index’: 2, ‘flags’: 0, ‘preference’: 1, ‘table_id’: 0, ‘type’: 0}], ‘prefix’: {‘len’: 24, ‘address’: {‘un’: {‘ip4’: ‘xacx1bx00x00’}, ‘af’: 0}}, ‘n_paths’: 1, ‘table_id’: 0},is_add=1,is_multipath=0)
sw_interface_set_vxlan_bypass(enable=1,sw_if_index=1,is_ipv6=0)
sw_interface_set_vxlan_bypass(enable=1,sw_if_index=2,is_ipv6=0)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,enable=1,tx_sw_if_index=4)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,enable=1,tx_sw_if_index=3)