device

container memif

eth2p-ethicmpv4-ip4base-eth-2memif-1dcr-dev

eth2p-ethicmpv4-ip4base-eth-2memif-1dcr-dev

IPv4 routing test cases with memif interface

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv4-ICMPv4 for IPv4 routing on both links.
  • [Cfg] DUT configuration: DUT1 is configured with IPv4 routing and two static IPv4 /24 route entries. Container is connected to VPP via Memif interface. Container is running same VPP version as running on DUT.
  • [Ver] TG verification: Test ICMPv4 Echo Request packets are sent in one direction by TG on links to DUT1 and via container; on receive TG verifies packets for correctness and their IPv4 src-addr, dst-addr and MAC addresses.
  • [Ref] Applicable standard specifications: RFC791, RFC826, RFC792
Name VPP API Test Commands History - Commands Used Per Test Case
64b-ethicmpv4-ip4base-eth-2memif-1dcr-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’)
ip_table_add_del(table={‘is_ip6’: 0, ‘table_id’: 10},is_add=1)
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip4’: ‘x01x01x01x01’}}, ‘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’: ‘nnnx00’}, ‘af’: 0}}, ‘n_paths’: 1, ‘table_id’: 10},is_add=1,is_multipath=1)
sw_interface_set_table(vrf_id=10,sw_if_index=1,is_ipv6=0)
sw_interface_add_del_address(address_length=30,del_all=0,is_add=1,sw_if_index=1,address=’x01x01x01x02’,is_ipv6=0)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘1.1.1.1’, ‘flags’: 0, ‘sw_if_index’: 1, ‘mac_address’: ‘ba:dc:0f:fe:02:00’})
ip_table_add_del(table={‘is_ip6’: 0, ‘table_id’: 11},is_add=1)
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip4’: ‘x02x02x02x02’}}, ‘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’: ‘x14x14x14x00’}, ‘af’: 0}}, ‘n_paths’: 1, ‘table_id’: 11},is_add=1,is_multipath=1)
sw_interface_set_table(vrf_id=11,sw_if_index=2,is_ipv6=0)
sw_interface_add_del_address(address_length=30,del_all=0,is_add=1,sw_if_index=2,address=’x02x02x02x01’,is_ipv6=0)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘2.2.2.2’, ‘flags’: 0, ‘sw_if_index’: 2, ‘mac_address’: ‘ba:dc:0f:fe:02:01’})
memif_socket_filename_add_del(socket_filename=’/tmp/memif-DUT1_CNF1264b0c70a474bf17567ccf5338b6e61ea344e22de577abadab4ddc3fbdaa5e8c-1’,socket_id=1,is_add=1)
memif_create(role=1,rx_queues=1,id=1,tx_queues=1,socket_id=1)
memif_dump()
memif_dump()
memif_socket_filename_add_del(socket_filename=’/tmp/memif-DUT1_CNF1264b0c70a474bf17567ccf5338b6e61ea344e22de577abadab4ddc3fbdaa5e8c-2’,socket_id=2,is_add=1)
memif_create(role=1,rx_queues=1,id=1,tx_queues=1,socket_id=2)
memif_dump()
memif_dump()
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
sw_interface_set_flags(sw_if_index=4,admin_up_down=1)
sw_interface_set_table(vrf_id=10,sw_if_index=3,is_ipv6=0)
sw_interface_set_table(vrf_id=11,sw_if_index=4,is_ipv6=0)
sw_interface_add_del_address(address_length=30,del_all=0,is_add=1,sw_if_index=3,address=’x1fx1fx1fx01’,is_ipv6=0)
sw_interface_add_del_address(address_length=30,del_all=0,is_add=1,sw_if_index=4,address=’ x01’,is_ipv6=0)
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip4’: ‘ x01’}}, ‘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’: 3, ‘flags’: 0, ‘preference’: 1, ‘table_id’: 0, ‘type’: 0}], ‘prefix’: {‘len’: 24, ‘address’: {‘un’: {‘ip4’: ‘x14x14x14x00’}, ‘af’: 0}}, ‘n_paths’: 1, ‘table_id’: 10},is_add=1,is_multipath=0)
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip4’: ‘x1fx1fx1fx01’}}, ‘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’: 4, ‘flags’: 0, ‘preference’: 1, ‘table_id’: 0, ‘type’: 0}], ‘prefix’: {‘len’: 24, ‘address’: {‘un’: {‘ip4’: ‘nnnx00’}, ‘af’: 0}}, ‘n_paths’: 1, ‘table_id’: 11},is_add=1,is_multipath=0)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘32.32.32.1’, ‘flags’: 0, ‘sw_if_index’: 3, ‘mac_address’: ‘02:fe:4b:ea:9f:cc’})
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘31.31.31.1’, ‘flags’: 0, ‘sw_if_index’: 4, ‘mac_address’: ‘02:fe:2e:e5:89:46’})
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)
memif_dump()
show_threads()

eth2p-ethicmpv4-l2bdbasemaclrn-eth-2memif-1dcr-dev

eth2p-ethicmpv4-l2bdbasemaclrn-eth-2memif-1dcr-dev

L2 bridge-domain test cases with memif interface

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv4-ICMPv4 for L2 switching of IPv4. Both apply to all links.
  • [Cfg] DUT configuration: DUT1 is configured with L2 bridge-domain switching. Container is connected to VPP via Memif interface. Container is running same VPP version as running on DUT.
  • [Ver] TG verification: Test ICMPv4 Echo Request packets are sent in both directions by TG on links to DUT1 and via container; on receive TG verifies packets for correctness and their IPv4 src-addr, dst-addr and MAC addresses.
  • [Ref] Applicable standard specifications: RFC792
Name VPP API Test Commands History - Commands Used Per Test Case
64b-ethicmpv4-l2bdbasemaclrn-eth-2memif-1dcr-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_dump(name_filter=’’,name_filter_valid=0)
sw_interface_set_flags(sw_if_index=1,admin_up_down=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,enable=1,shg=0,port_type=0,bd_id=1)
sw_interface_set_flags(sw_if_index=2,admin_up_down=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,enable=1,shg=0,port_type=0,bd_id=2)
memif_socket_filename_add_del(socket_filename=’/tmp/memif-DUT1_CNF1264b0c70a474bf17567ccf5338b6e61ea344e22de577abadab4ddc3fbdaa5e8c-1’,socket_id=1,is_add=1)
memif_create(role=1,rx_queues=1,id=1,tx_queues=1,socket_id=1)
memif_dump()
memif_dump()
memif_socket_filename_add_del(socket_filename=’/tmp/memif-DUT1_CNF1264b0c70a474bf17567ccf5338b6e61ea344e22de577abadab4ddc3fbdaa5e8c-2’,socket_id=2,is_add=1)
memif_create(role=1,rx_queues=1,id=1,tx_queues=1,socket_id=2)
memif_dump()
memif_dump()
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
sw_interface_set_flags(sw_if_index=4,admin_up_down=1)
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,enable=1,shg=0,port_type=0,bd_id=1)
sw_interface_set_flags(sw_if_index=4,admin_up_down=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,enable=1,shg=0,port_type=0,bd_id=2)

eth2p-ethicmpv4-l2xcbase-eth-2memif-1dcr-dev

eth2p-ethicmpv4-l2xcbase-eth-2memif-1dcr-dev

L2 cross-connect test cases with memif interface

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv4-ICMPv4 for L2 switching of IPv4.
  • [Cfg] DUT configuration: DUT1 is configured with L2 cross-connect (L2XC) switching. Container is connected to VPP via Memif interface. Container is running same VPP version as running on DUT.
  • [Ver] TG verification: Test ICMPv4 Echo Request packets are sent in both directions by TG on links to DUT1 and via container; on receive TG verifies packets for correctness and their IPv4 src-addr, dst-addr and MAC addresses.
  • [Ref] Applicable standard specifications: RFC792
Name VPP API Test Commands History - Commands Used Per Test Case
64b-ethicmpv4-l2xcbase-eth-2memif-1dcr-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’)
memif_socket_filename_add_del(socket_filename=’/tmp/memif-DUT1_CNF1264b0c70a474bf17567ccf5338b6e61ea344e22de577abadab4ddc3fbdaa5e8c-1’,socket_id=1,is_add=1)
memif_create(role=1,rx_queues=1,id=1,tx_queues=1,socket_id=1)
memif_dump()
memif_dump()
memif_socket_filename_add_del(socket_filename=’/tmp/memif-DUT1_CNF1264b0c70a474bf17567ccf5338b6e61ea344e22de577abadab4ddc3fbdaa5e8c-2’,socket_id=2,is_add=1)
memif_create(role=1,rx_queues=1,id=1,tx_queues=1,socket_id=2)
memif_dump()
memif_dump()
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
sw_interface_set_flags(sw_if_index=4,admin_up_down=1)
sw_interface_set_flags(sw_if_index=1,admin_up_down=1)
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,enable=1,tx_sw_if_index=3)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,enable=1,tx_sw_if_index=1)
sw_interface_set_flags(sw_if_index=4,admin_up_down=1)
sw_interface_set_flags(sw_if_index=2,admin_up_down=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,enable=1,tx_sw_if_index=2)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,enable=1,tx_sw_if_index=4)
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)
memif_dump()
show_threads()

eth2p-ethicmpv6-ip6base-eth-2memif-1dcr-dev

eth2p-ethicmpv6-ip6base-eth-2memif-1dcr-dev

IPv4 routing test cases with memif interface

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv6-ICMPv6 for IPv6 routing on both links.
  • [Cfg] DUT configuration: DUT1 is configured with IPv6 routing and two static IPv6 /64 route entries. Container is connected to VPP via Memif interface. Container is running same VPP version as running on DUT.
  • [Ver] TG verification: Test ICMPv6 Echo Request packets are sent in one direction by TG on links to DUT1 and via container; on receive TG verifies packets for correctness and their IPv6 src-addr, dst-addr and MAC addresses.
  • [Ref] Applicable standard specifications: RFC791, RFC826, RFC792
Name VPP API Test Commands History - Commands Used Per Test Case
78b-ethicmpv6-ip6base-eth-2memif-1dcr-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_dump(name_filter=’’,name_filter_valid=0)
memif_socket_filename_add_del(socket_filename=’/tmp/memif-DUT1_CNF1264b0c70a474bf17567ccf5338b6e61ea344e22de577abadab4ddc3fbdaa5e8c-1’,socket_id=1,is_add=1)
memif_create(role=1,rx_queues=1,id=1,tx_queues=1,socket_id=1)
memif_dump()
memif_dump()
memif_socket_filename_add_del(socket_filename=’/tmp/memif-DUT1_CNF1264b0c70a474bf17567ccf5338b6e61ea344e22de577abadab4ddc3fbdaa5e8c-2’,socket_id=2,is_add=1)
memif_create(role=1,rx_queues=1,id=1,tx_queues=1,socket_id=2)
memif_dump()
memif_dump()
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
sw_interface_set_flags(sw_if_index=4,admin_up_down=1)
ip_table_add_del(table={‘is_ip6’: 1, ‘table_id’: 20},is_add=1)
sw_interface_set_table(vrf_id=20,sw_if_index=4,is_ipv6=1)
sw_interface_set_table(vrf_id=20,sw_if_index=2,is_ipv6=1)
sw_interface_add_del_address(address_length=64,del_all=0,is_add=1,sw_if_index=1,address=’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,is_ipv6=1)
sw_interface_add_del_address(address_length=64,del_all=0,is_add=1,sw_if_index=3,address=’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,is_ipv6=1)
sw_interface_add_del_address(address_length=64,del_all=0,is_add=1,sw_if_index=4,address=’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’,is_ipv6=1)
sw_interface_add_del_address(address_length=64,del_all=0,is_add=1,sw_if_index=2,address=’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’,is_ipv6=1)
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip6’: ‘ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’}}, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘proto’: 1, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], ‘sw_if_index’: 3, ‘flags’: 0, ‘preference’: 1, ‘table_id’: 0, ‘type’: 0}], ‘prefix’: {‘len’: 64, ‘address’: {‘un’: {‘ip6’: ‘ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, ‘af’: 1}}, ‘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’: {‘ip6’: ‘ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’}}, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘proto’: 1, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], ‘sw_if_index’: 4, ‘flags’: 0, ‘preference’: 1, ‘table_id’: 0, ‘type’: 0}], ‘prefix’: {‘len’: 64, ‘address’: {‘un’: {‘ip6’: ‘ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x00’}, ‘af’: 1}}, ‘n_paths’: 1, ‘table_id’: 20},is_add=1,is_multipath=0)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘2001:2::2’, ‘flags’: 0, ‘sw_if_index’: 3, ‘mac_address’: ‘02:fe:48:29:52:83’})
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘2001:3::2’, ‘flags’: 0, ‘sw_if_index’: 2, ‘mac_address’: ‘ba:dc:0f:fe:02:01’})

crypto

eth2p-ethip4ipsec1tnlsw-ip4base-policy-aes-128-cbc-sha-512-256-dev

eth2p-ethip4ipsec1tnlsw-ip4base-policy-aes-128-cbc-sha-512-256-dev

IPv4 IPsec tunnel mode test suite.

  • [Top] Network topologies: TG-DUT1 2-node topology with one link between nodes.
  • [Cfg] DUT configuration: On DUT1 create loopback interface, configure loopback an physical interface IPv4 addresses, static ARP record, route and IPsec manual keyed connection in tunnel mode.
  • [Ver] TG verification: ESP packet is sent from TG to DUT1. ESP packet is received on TG from DUT1.
  • [Ref] Applicable standard specifications: RFC4303.
Name VPP API Test Commands History - Commands Used Per Test Case
110b-ethip4ipsec1tnlsw-ip4base-policy-aes-128-cbc-sha-512-256-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’)
create_loopback(mac_address=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_set_flags(sw_if_index=1,admin_up_down=1)
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
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=’xc0xa8dx03’,is_ipv6=0)
sw_interface_add_del_address(address_length=24,del_all=0,is_add=1,sw_if_index=3,address=’xc0xa8x04x04’,is_ipv6=0)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘192.168.100.2’, ‘flags’: 0, ‘sw_if_index’: 1, ‘mac_address’: ‘ba:dc:0f:fe:02:00’})
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip4’: ‘xc0xa8dx02’}}, ‘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’: ‘xc0xa8x03x03’}, ‘af’: 0}}, ‘n_paths’: 1, ‘table_id’: 0},is_add=1,is_multipath=0)
ipsec_sad_entry_add_del(entry={‘protocol’: 1, ‘spi’: 1001, ‘tunnel_dst’: ‘192.168.100.2’, ‘sad_id’: 10, ‘tunnel_src’: ‘192.168.100.3’, ‘crypto_key’: {‘length’: 16, ‘data’: ‘OIrenDn9ABxdwglY’}, ‘flags’: 4, ‘integrity_key’: {‘length’: 64, ‘data’: ‘eneWzMd5v24zAHXEvQBqmDZaT3ijOX9G6tKT285yUqaAFAKFwkBovdtvrYjaE2sj’}, ‘integrity_algorithm’: 6, ‘crypto_algorithm’: 1},is_add=1)
ipsec_sad_entry_add_del(entry={‘protocol’: 1, ‘spi’: 1000, ‘tunnel_dst’: ‘192.168.100.3’, ‘sad_id’: 20, ‘tunnel_src’: ‘192.168.100.2’, ‘crypto_key’: {‘length’: 16, ‘data’: ‘OIrenDn9ABxdwglY’}, ‘flags’: 4, ‘integrity_key’: {‘length’: 64, ‘data’: ‘eneWzMd5v24zAHXEvQBqmDZaT3ijOX9G6tKT285yUqaAFAKFwkBovdtvrYjaE2sj’}, ‘integrity_algorithm’: 6, ‘crypto_algorithm’: 1},is_add=1)
ipsec_spd_add_del(is_add=1,spd_id=1)
ipsec_interface_add_del_spd(is_add=1,sw_if_index=1,spd_id=1)
ipsec_spd_entry_add_del(entry={‘remote_port_start’: 0, ‘local_address_stop’: {‘un’: {‘ip4’: ‘xc0xa8dx02’}, ‘af’: 0}, ‘protocol’: 50, ‘sa_id’: 0, ‘remote_address_start’: {‘un’: {‘ip4’: ‘xc0xa8dx03’}, ‘af’: 0}, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘remote_address_stop’: {‘un’: {‘ip4’: ‘xc0xa8dx03’}, ‘af’: 0}, ‘spd_id’: 1, ‘priority’: 100, ‘is_outbound’: 0, ‘policy’: 0, ‘local_address_start’: {‘un’: {‘ip4’: ‘xc0xa8dx02’}, ‘af’: 0}, ‘local_port_stop’: 65535},is_add=1)
ipsec_spd_entry_add_del(entry={‘remote_port_start’: 0, ‘local_address_stop’: {‘un’: {‘ip4’: ‘xc0xa8dx03’}, ‘af’: 0}, ‘protocol’: 50, ‘sa_id’: 0, ‘remote_address_start’: {‘un’: {‘ip4’: ‘xc0xa8dx02’}, ‘af’: 0}, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘remote_address_stop’: {‘un’: {‘ip4’: ‘xc0xa8dx02’}, ‘af’: 0}, ‘spd_id’: 1, ‘priority’: 100, ‘is_outbound’: 1, ‘policy’: 0, ‘local_address_start’: {‘un’: {‘ip4’: ‘xc0xa8dx03’}, ‘af’: 0}, ‘local_port_stop’: 65535},is_add=1)
ipsec_spd_entry_add_del(entry={‘remote_port_start’: 0, ‘local_address_stop’: {‘un’: {‘ip4’: ‘xc0xa8x04x04’}, ‘af’: 0}, ‘protocol’: 0, ‘sa_id’: 20, ‘remote_address_start’: {‘un’: {‘ip4’: ‘xc0xa8x03x03’}, ‘af’: 0}, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘remote_address_stop’: {‘un’: {‘ip4’: ‘xc0xa8x03x03’}, ‘af’: 0}, ‘spd_id’: 1, ‘priority’: 10, ‘is_outbound’: 0, ‘policy’: 3, ‘local_address_start’: {‘un’: {‘ip4’: ‘xc0xa8x04x04’}, ‘af’: 0}, ‘local_port_stop’: 65535},is_add=1)
ipsec_spd_entry_add_del(entry={‘remote_port_start’: 0, ‘local_address_stop’: {‘un’: {‘ip4’: ‘xc0xa8x04x04’}, ‘af’: 0}, ‘protocol’: 0, ‘sa_id’: 10, ‘remote_address_start’: {‘un’: {‘ip4’: ‘xc0xa8x03x03’}, ‘af’: 0}, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘remote_address_stop’: {‘un’: {‘ip4’: ‘xc0xa8x03x03’}, ‘af’: 0}, ‘spd_id’: 1, ‘priority’: 10, ‘is_outbound’: 1, ‘policy’: 3, ‘local_address_start’: {‘un’: {‘ip4’: ‘xc0xa8x04x04’}, ‘af’: 0}, ‘local_port_stop’: 65535},is_add=1)

eth2p-ethip4ipsec1tptsw-ip4base-policy-aes-128-cbc-sha-512-256-dev

eth2p-ethip4ipsec1tptsw-ip4base-policy-aes-128-cbc-sha-512-256-dev

IPv4 IPsec transport mode test suite.

  • [Top] Network topologies: TG-DUT1 2-node topology with one link between nodes.
  • [Cfg] DUT configuration: On DUT1 create loopback interface, configure loopback an physical interface IPv4 addresses, static ARP record, route and IPsec manual keyed connection in transport mode.
  • [Ver] TG verification: ESP packet is sent from TG to DUT1. ESP packet is received on TG from DUT1.
  • [Ref] Applicable standard specifications: RFC4303.
Name VPP API Test Commands History - Commands Used Per Test Case
110b-ethip4ipsec1tptsw-ip4base-policy-aes-128-cbc-sha-512-256-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’)
create_loopback(mac_address=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_set_flags(sw_if_index=1,admin_up_down=1)
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
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=’xc0xa8dx03’,is_ipv6=0)
sw_interface_add_del_address(address_length=24,del_all=0,is_add=1,sw_if_index=3,address=’xc0xa8x04x04’,is_ipv6=0)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘192.168.100.2’, ‘flags’: 0, ‘sw_if_index’: 1, ‘mac_address’: ‘ba:dc:0f:fe:02:00’})
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip4’: ‘xc0xa8dx02’}}, ‘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’: ‘xc0xa8x03x03’}, ‘af’: 0}}, ‘n_paths’: 1, ‘table_id’: 0},is_add=1,is_multipath=0)
ipsec_sad_entry_add_del(entry={‘protocol’: 1, ‘spi’: 1001, ‘tunnel_dst’: ‘’, ‘sad_id’: 10, ‘tunnel_src’: ‘’, ‘crypto_key’: {‘length’: 16, ‘data’: ‘ZAJov75929GupARM’}, ‘flags’: 0, ‘integrity_key’: {‘length’: 64, ‘data’: ‘X2hr0Ou2iDmWeVZEjVxu31VaoFVsRH9afgYtW5lGHyDUBlwW5zry9Ve6zqMjzOlJ’}, ‘integrity_algorithm’: 6, ‘crypto_algorithm’: 1},is_add=1)
ipsec_sad_entry_add_del(entry={‘protocol’: 1, ‘spi’: 1000, ‘tunnel_dst’: ‘’, ‘sad_id’: 20, ‘tunnel_src’: ‘’, ‘crypto_key’: {‘length’: 16, ‘data’: ‘ZAJov75929GupARM’}, ‘flags’: 0, ‘integrity_key’: {‘length’: 64, ‘data’: ‘X2hr0Ou2iDmWeVZEjVxu31VaoFVsRH9afgYtW5lGHyDUBlwW5zry9Ve6zqMjzOlJ’}, ‘integrity_algorithm’: 6, ‘crypto_algorithm’: 1},is_add=1)
ipsec_spd_add_del(is_add=1,spd_id=1)
ipsec_interface_add_del_spd(is_add=1,sw_if_index=1,spd_id=1)
ipsec_spd_entry_add_del(entry={‘remote_port_start’: 0, ‘local_address_stop’: {‘un’: {‘ip4’: ‘xc0xa8dx02’}, ‘af’: 0}, ‘protocol’: 50, ‘sa_id’: 0, ‘remote_address_start’: {‘un’: {‘ip4’: ‘xc0xa8dx03’}, ‘af’: 0}, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘remote_address_stop’: {‘un’: {‘ip4’: ‘xc0xa8dx03’}, ‘af’: 0}, ‘spd_id’: 1, ‘priority’: 100, ‘is_outbound’: 0, ‘policy’: 0, ‘local_address_start’: {‘un’: {‘ip4’: ‘xc0xa8dx02’}, ‘af’: 0}, ‘local_port_stop’: 65535},is_add=1)
ipsec_spd_entry_add_del(entry={‘remote_port_start’: 0, ‘local_address_stop’: {‘un’: {‘ip4’: ‘xc0xa8dx03’}, ‘af’: 0}, ‘protocol’: 50, ‘sa_id’: 0, ‘remote_address_start’: {‘un’: {‘ip4’: ‘xc0xa8dx02’}, ‘af’: 0}, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘remote_address_stop’: {‘un’: {‘ip4’: ‘xc0xa8dx02’}, ‘af’: 0}, ‘spd_id’: 1, ‘priority’: 100, ‘is_outbound’: 1, ‘policy’: 0, ‘local_address_start’: {‘un’: {‘ip4’: ‘xc0xa8dx03’}, ‘af’: 0}, ‘local_port_stop’: 65535},is_add=1)
ipsec_spd_entry_add_del(entry={‘remote_port_start’: 0, ‘local_address_stop’: {‘un’: {‘ip4’: ‘xc0xa8dx03’}, ‘af’: 0}, ‘protocol’: 0, ‘sa_id’: 20, ‘remote_address_start’: {‘un’: {‘ip4’: ‘xc0xa8dx02’}, ‘af’: 0}, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘remote_address_stop’: {‘un’: {‘ip4’: ‘xc0xa8dx02’}, ‘af’: 0}, ‘spd_id’: 1, ‘priority’: 10, ‘is_outbound’: 0, ‘policy’: 3, ‘local_address_start’: {‘un’: {‘ip4’: ‘xc0xa8dx03’}, ‘af’: 0}, ‘local_port_stop’: 65535},is_add=1)
ipsec_spd_entry_add_del(entry={‘remote_port_start’: 0, ‘local_address_stop’: {‘un’: {‘ip4’: ‘xc0xa8dx03’}, ‘af’: 0}, ‘protocol’: 0, ‘sa_id’: 10, ‘remote_address_start’: {‘un’: {‘ip4’: ‘xc0xa8dx02’}, ‘af’: 0}, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘remote_address_stop’: {‘un’: {‘ip4’: ‘xc0xa8dx02’}, ‘af’: 0}, ‘spd_id’: 1, ‘priority’: 10, ‘is_outbound’: 1, ‘policy’: 3, ‘local_address_start’: {‘un’: {‘ip4’: ‘xc0xa8dx03’}, ‘af’: 0}, ‘local_port_stop’: 65535},is_add=1)

eth2p-ethip6ipsec1tnlsw-ip6base-policy-aes-128-cbc-sha-512-256-dev

eth2p-ethip6ipsec1tnlsw-ip6base-policy-aes-128-cbc-sha-512-256-dev

IPv6 IPsec tunnel mode test suite.

  • [Top] Network topologies: TG-DUT1 2-node topology with one link between nodes.
  • [Cfg] DUT configuration: On DUT1 create loopback interface, configure loopback an physical interface IPv6 addresses, static ARP record, route and IPsec manual keyed connection in tunnel mode.
  • [Ver] TG verification: ESP packet is sent from TG to DUT1. ESP packet is received on TG from DUT1.
  • [Ref] Applicable standard specifications: RFC4303.
Name VPP API Test Commands History - Commands Used Per Test Case
124b-ethip6ipsec1tnlsw-ip6base-policy-aes-128-cbc-sha-512-256-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’)
create_loopback(mac_address=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_set_flags(sw_if_index=1,admin_up_down=1)
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_add_del_address(address_length=64,del_all=0,is_add=1,sw_if_index=1,address=’?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’,is_ipv6=1)
sw_interface_add_del_address(address_length=64,del_all=0,is_add=1,sw_if_index=3,address=’?xfex00`x00x00x00x00x00x00x00x00x00x00x00x04’,is_ipv6=1)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘3ffe:5f::1’, ‘flags’: 0, ‘sw_if_index’: 1, ‘mac_address’: ‘ba:dc:0f:fe:02:00’})
ip_address_dump(sw_if_index=2,is_ipv6=1)
ip_address_dump(sw_if_index=3,is_ipv6=1)
sw_interface_ip6nd_ra_config(suppress=1,sw_if_index=3)
ip_address_dump(sw_if_index=1,is_ipv6=1)
sw_interface_ip6nd_ra_config(suppress=1,sw_if_index=1)
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}}, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘proto’: 1, ‘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’: 128, ‘address’: {‘un’: {‘ip6’: ‘?xfex00`x00x00x00x00x00x00x00x00x00x00x00x03’}, ‘af’: 1}}, ‘n_paths’: 1, ‘table_id’: 0},is_add=1,is_multipath=0)
ipsec_sad_entry_add_del(entry={‘protocol’: 1, ‘spi’: 1001, ‘tunnel_dst’: ‘3ffe:5f::1’, ‘sad_id’: 10, ‘tunnel_src’: ‘3ffe:5f::2’, ‘crypto_key’: {‘length’: 16, ‘data’: ‘tnNfN5EIaBpZwkzm’}, ‘flags’: 12, ‘integrity_key’: {‘length’: 64, ‘data’: ‘dKkXax9O454cQOTTigQtgU0GWQjy5ZkJ08jb1zZrKGlMF72TrwssVwJugSmiXXRI’}, ‘integrity_algorithm’: 6, ‘crypto_algorithm’: 1},is_add=1)
ipsec_sad_entry_add_del(entry={‘protocol’: 1, ‘spi’: 1000, ‘tunnel_dst’: ‘3ffe:5f::2’, ‘sad_id’: 20, ‘tunnel_src’: ‘3ffe:5f::1’, ‘crypto_key’: {‘length’: 16, ‘data’: ‘tnNfN5EIaBpZwkzm’}, ‘flags’: 12, ‘integrity_key’: {‘length’: 64, ‘data’: ‘dKkXax9O454cQOTTigQtgU0GWQjy5ZkJ08jb1zZrKGlMF72TrwssVwJugSmiXXRI’}, ‘integrity_algorithm’: 6, ‘crypto_algorithm’: 1},is_add=1)
ipsec_spd_add_del(is_add=1,spd_id=1)
ipsec_interface_add_del_spd(is_add=1,sw_if_index=1,spd_id=1)
ipsec_spd_entry_add_del(entry={‘remote_port_start’: 0, ‘local_address_stop’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘af’: 1}, ‘protocol’: 50, ‘sa_id’: 0, ‘remote_address_start’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘af’: 1}, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘remote_address_stop’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘af’: 1}, ‘spd_id’: 1, ‘priority’: 100, ‘is_outbound’: 0, ‘policy’: 0, ‘local_address_start’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘af’: 1}, ‘local_port_stop’: 65535},is_add=1)
ipsec_spd_entry_add_del(entry={‘remote_port_start’: 0, ‘local_address_stop’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘af’: 1}, ‘protocol’: 50, ‘sa_id’: 0, ‘remote_address_start’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘af’: 1}, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘remote_address_stop’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘af’: 1}, ‘spd_id’: 1, ‘priority’: 100, ‘is_outbound’: 1, ‘policy’: 0, ‘local_address_start’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘af’: 1}, ‘local_port_stop’: 65535},is_add=1)
ipsec_spd_entry_add_del(entry={‘remote_port_start’: 0, ‘local_address_stop’: {‘un’: {‘ip6’: ‘?xfex00`x00x00x00x00x00x00x00x00x00x00x00x04’}, ‘af’: 1}, ‘protocol’: 0, ‘sa_id’: 20, ‘remote_address_start’: {‘un’: {‘ip6’: ‘?xfex00`x00x00x00x00x00x00x00x00x00x00x00x03’}, ‘af’: 1}, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘remote_address_stop’: {‘un’: {‘ip6’: ‘?xfex00`x00x00x00x00x00x00x00x00x00x00x00x03’}, ‘af’: 1}, ‘spd_id’: 1, ‘priority’: 10, ‘is_outbound’: 0, ‘policy’: 3, ‘local_address_start’: {‘un’: {‘ip6’: ‘?xfex00`x00x00x00x00x00x00x00x00x00x00x00x04’}, ‘af’: 1}, ‘local_port_stop’: 65535},is_add=1)
ipsec_spd_entry_add_del(entry={‘remote_port_start’: 0, ‘local_address_stop’: {‘un’: {‘ip6’: ‘?xfex00`x00x00x00x00x00x00x00x00x00x00x00x04’}, ‘af’: 1}, ‘protocol’: 0, ‘sa_id’: 10, ‘remote_address_start’: {‘un’: {‘ip6’: ‘?xfex00`x00x00x00x00x00x00x00x00x00x00x00x03’}, ‘af’: 1}, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘remote_address_stop’: {‘un’: {‘ip6’: ‘?xfex00`x00x00x00x00x00x00x00x00x00x00x00x03’}, ‘af’: 1}, ‘spd_id’: 1, ‘priority’: 10, ‘is_outbound’: 1, ‘policy’: 3, ‘local_address_start’: {‘un’: {‘ip6’: ‘?xfex00`x00x00x00x00x00x00x00x00x00x00x00x04’}, ‘af’: 1}, ‘local_port_stop’: 65535},is_add=1)

eth2p-ethip6ipsec1tptsw-ip6base-policy-aes-128-cbc-sha-512-256-dev

eth2p-ethip6ipsec1tptsw-ip6base-policy-aes-128-cbc-sha-512-256-dev

IPv6 IPsec transport mode test suite.

  • [Top] Network topologies: TG-DUT1 2-node topology with one link between nodes.
  • [Cfg] DUT configuration: On DUT1 create loopback interface, configure loopback an physical interface IPv6 addresses, static ARP record, route and IPsec manual keyed connection in transport mode.
  • [Ver] TG verification: ESP packet is sent from TG to DUT1. ESP packet is received on TG from DUT1.
  • [Ref] Applicable standard specifications: RFC4303.
Name VPP API Test Commands History - Commands Used Per Test Case
124b-ethip6ipsec1tptsw-ip6base-policy-aes-128-cbc-sha-512-256-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’)
create_loopback(mac_address=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_set_flags(sw_if_index=1,admin_up_down=1)
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_add_del_address(address_length=64,del_all=0,is_add=1,sw_if_index=1,address=’?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’,is_ipv6=1)
sw_interface_add_del_address(address_length=64,del_all=0,is_add=1,sw_if_index=3,address=’?xfex00`x00x00x00x00x00x00x00x00x00x00x00x04’,is_ipv6=1)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘3ffe:5f::1’, ‘flags’: 0, ‘sw_if_index’: 1, ‘mac_address’: ‘ba:dc:0f:fe:02:00’})
ip_address_dump(sw_if_index=2,is_ipv6=1)
ip_address_dump(sw_if_index=3,is_ipv6=1)
sw_interface_ip6nd_ra_config(suppress=1,sw_if_index=3)
ip_address_dump(sw_if_index=1,is_ipv6=1)
sw_interface_ip6nd_ra_config(suppress=1,sw_if_index=1)
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}}, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘proto’: 1, ‘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’: 128, ‘address’: {‘un’: {‘ip6’: ‘?xfex00`x00x00x00x00x00x00x00x00x00x00x00x03’}, ‘af’: 1}}, ‘n_paths’: 1, ‘table_id’: 0},is_add=1,is_multipath=0)
ipsec_sad_entry_add_del(entry={‘protocol’: 1, ‘spi’: 1001, ‘tunnel_dst’: ‘’, ‘sad_id’: 10, ‘tunnel_src’: ‘’, ‘crypto_key’: {‘length’: 16, ‘data’: ‘FgTch57q8RkPSKrF’}, ‘flags’: 0, ‘integrity_key’: {‘length’: 64, ‘data’: ‘9dlWXGdaaX98PESPgdY9aIlBWufJlWmniqrBoo57ADXqD1qmVMfaqZ9G5WwFShYw’}, ‘integrity_algorithm’: 6, ‘crypto_algorithm’: 1},is_add=1)
ipsec_sad_entry_add_del(entry={‘protocol’: 1, ‘spi’: 1000, ‘tunnel_dst’: ‘’, ‘sad_id’: 20, ‘tunnel_src’: ‘’, ‘crypto_key’: {‘length’: 16, ‘data’: ‘FgTch57q8RkPSKrF’}, ‘flags’: 0, ‘integrity_key’: {‘length’: 64, ‘data’: ‘9dlWXGdaaX98PESPgdY9aIlBWufJlWmniqrBoo57ADXqD1qmVMfaqZ9G5WwFShYw’}, ‘integrity_algorithm’: 6, ‘crypto_algorithm’: 1},is_add=1)
ipsec_spd_add_del(is_add=1,spd_id=1)
ipsec_interface_add_del_spd(is_add=1,sw_if_index=1,spd_id=1)
ipsec_spd_entry_add_del(entry={‘remote_port_start’: 0, ‘local_address_stop’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘af’: 1}, ‘protocol’: 50, ‘sa_id’: 0, ‘remote_address_start’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘af’: 1}, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘remote_address_stop’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘af’: 1}, ‘spd_id’: 1, ‘priority’: 100, ‘is_outbound’: 0, ‘policy’: 0, ‘local_address_start’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘af’: 1}, ‘local_port_stop’: 65535},is_add=1)
ipsec_spd_entry_add_del(entry={‘remote_port_start’: 0, ‘local_address_stop’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘af’: 1}, ‘protocol’: 50, ‘sa_id’: 0, ‘remote_address_start’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘af’: 1}, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘remote_address_stop’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘af’: 1}, ‘spd_id’: 1, ‘priority’: 100, ‘is_outbound’: 1, ‘policy’: 0, ‘local_address_start’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘af’: 1}, ‘local_port_stop’: 65535},is_add=1)
ipsec_spd_entry_add_del(entry={‘remote_port_start’: 0, ‘local_address_stop’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘af’: 1}, ‘protocol’: 0, ‘sa_id’: 20, ‘remote_address_start’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘af’: 1}, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘remote_address_stop’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘af’: 1}, ‘spd_id’: 1, ‘priority’: 10, ‘is_outbound’: 0, ‘policy’: 3, ‘local_address_start’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘af’: 1}, ‘local_port_stop’: 65535},is_add=1)
ipsec_spd_entry_add_del(entry={‘remote_port_start’: 0, ‘local_address_stop’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘af’: 1}, ‘protocol’: 0, ‘sa_id’: 10, ‘remote_address_start’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘af’: 1}, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘remote_address_stop’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘af’: 1}, ‘spd_id’: 1, ‘priority’: 10, ‘is_outbound’: 1, ‘policy’: 3, ‘local_address_start’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘af’: 1}, ‘local_port_stop’: 65535},is_add=1)

interfaces

eth2p-ethicmpv4-ip4base-eth-1tap-dev

eth2p-ethicmpv4-ip4base-eth-1tap-dev

Tap Interface Traffic Tests

  • [Top] Network Topologies: TG=DUT1 2-node topology with two links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv4-ICMPv4 for L2 switching of IPv4.
  • [Cfg] DUT configuration: DUT1 and DUT2 are configured with L2 bridge-domain (L2BD) MAC learning enabled; Split Horizon Groups (SHG) are set depending on test case; Namespaces (NM) are set on DUT1 with attached linux-TAP.
  • [Ver] TG verification: Test ICMPv4 Echo Request packets are sent by TG on link to DUT1; On receipt TG verifies packets for correctness and their IPv4 src-addr, dst-addr, and MAC addresses.
  • [Ref] Applicable standard specifications:
Name VPP API Test Commands History - Commands Used Per Test Case
64b-ethicmpv4-ip4base-eth-1tap-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)
tap_create_v2(host_ip4_gw=’x00x00x00x00’,host_mac_addr=’x00x00x00x00x00x00’,host_if_name_set=1,host_bridge=’x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00’,host_ip6_gw=’x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00’,use_random_mac=1,host_namespace=’x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00’,host_if_name=’tap0x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00’,mac_address=’x00x00x00x00x00x00’,host_ip4_addr=’x00x00x00x00’,host_ip6_addr=’x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00’,id=4294967295)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_tap_v2_dump()
sw_interface_add_del_address(address_length=24,del_all=0,is_add=1,sw_if_index=3,address=’x10x00nx01’,is_ipv6=0)
sw_interface_add_del_address(address_length=24,del_all=0,is_add=1,sw_if_index=1,address=’xc0xa8x00x01’,is_ipv6=0)
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘192.168.0.2’, ‘flags’: 0, ‘sw_if_index’: 1, ‘mac_address’: ‘ba:dc:0f:fe:02:00’})
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘16.0.10.2’, ‘flags’: 0, ‘sw_if_index’: 3, ‘mac_address’: ‘02:00:00:00:00:02’})

eth2p-ethicmpv4-ip4base-eth-1tap-namespace-dev

eth2p-ethicmpv4-ip4base-eth-1tap-namespace-dev

Tap Interface Traffic Tests

  • [Top] Network Topologies: TG=DUT1 2-node topology with two links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv4-ICMPv4 for L2 switching of IPv4.
  • [Cfg] DUT configuration: DUT1 and DUT2 are configured with L2 bridge-domain (L2BD) MAC learning enabled; Split Horizon Groups (SHG) are set depending on test case; Namespaces (NM) are set on DUT1 with attached linux-TAP.
  • [Ver] TG verification: Test ICMPv4 Echo Request packets are sent by TG on link to DUT1; On receipt TG verifies packets for correctness and their IPv4 src-addr, dst-addr, and MAC addresses.
  • [Ref] Applicable standard specifications:
Name VPP API Test Commands History - Commands Used Per Test Case
64b-ethicmpv4-ip4base-eth-1tap-namespace-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)
tap_create_v2(host_ip4_gw=’x00x00x00x00’,host_mac_addr=’x00x00x00x00x00x00’,host_if_name_set=1,host_bridge=’x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00’,host_ip6_gw=’x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00’,use_random_mac=1,host_namespace=’x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00’,host_if_name=’tap0x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00’,mac_address=’x00x00x00x00x00x00’,host_ip4_addr=’x00x00x00x00’,host_ip6_addr=’x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00’,id=4294967295)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_tap_v2_dump()
sw_interface_add_del_address(address_length=24,del_all=0,is_add=1,sw_if_index=3,address=’x10x00nx01’,is_ipv6=0)
sw_interface_add_del_address(address_length=24,del_all=0,is_add=1,sw_if_index=1,address=’xc0xa8x00x01’,is_ipv6=0)
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘192.168.0.2’, ‘flags’: 0, ‘sw_if_index’: 1, ‘mac_address’: ‘ba:dc:0f:fe:02:00’})
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘16.0.10.2’, ‘flags’: 0, ‘sw_if_index’: 3, ‘mac_address’: ‘02:00:00:00:00:02’})

eth2p-ethicmpv4-l2bdbasemaclrn-eth-2tap-dev

eth2p-ethicmpv4-l2bdbasemaclrn-eth-2tap-dev

Tap Interface Traffic Tests

  • [Top] Network Topologies: TG=DUT1 2-node topology with two links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv4-ICMPv4 for L2 switching of IPv4.
  • [Cfg] DUT configuration: DUT1 and DUT2 are configured with L2 bridge-domain (L2BD) MAC learning enabled; Split Horizon Groups (SHG) are set depending on test case; Namespaces (NM) are set on DUT1 with attached linux-TAP.
  • [Ver] TG verification: Test ICMPv4 Echo Request packets are sent by TG on link to DUT1; On receipt TG verifies packets for correctness and their IPv4 src-addr, dst-addr, and MAC addresses.
  • [Ref] Applicable standard specifications:
Name VPP API Test Commands History - Commands Used Per Test Case
64b-ethicmpv4-l2bdbasemaclrn-eth-2tap-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)
tap_create_v2(host_ip4_gw=’x00x00x00x00’,host_mac_addr=’x00x00x00x00x00x00’,host_if_name_set=1,host_bridge=’x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00’,host_ip6_gw=’x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00’,use_random_mac=1,host_namespace=’x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00’,host_if_name=’tap0x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00’,mac_address=’x00x00x00x00x00x00’,host_ip4_addr=’x00x00x00x00’,host_ip6_addr=’x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00’,id=4294967295)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_tap_v2_dump()
tap_create_v2(host_ip4_gw=’x00x00x00x00’,host_mac_addr=’x00x00x00x00x00x00’,host_if_name_set=1,host_bridge=’x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00’,host_ip6_gw=’x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00’,use_random_mac=1,host_namespace=’x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00’,host_if_name=’tap1x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00’,mac_address=’x00x00x00x00x00x00’,host_ip4_addr=’x00x00x00x00’,host_ip6_addr=’x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00’,id=4294967295)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_tap_v2_dump()
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
sw_interface_set_flags(sw_if_index=4,admin_up_down=1)
bridge_domain_add_del(bd_id=19,is_add=1,arp_term=0,flood=1,learn=1,forward=1,uu_flood=1)
bridge_domain_add_del(bd_id=20,is_add=1,arp_term=0,flood=1,learn=1,forward=1,uu_flood=1)
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,enable=1,shg=0,port_type=0,bd_id=20)
sw_interface_set_flags(sw_if_index=1,admin_up_down=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,enable=1,shg=0,port_type=0,bd_id=20)
sw_interface_set_flags(sw_if_index=4,admin_up_down=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,enable=1,shg=0,port_type=0,bd_id=19)
sw_interface_set_flags(sw_if_index=2,admin_up_down=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,enable=1,shg=0,port_type=0,bd_id=19)

ip4

eth2p-ethicmpv4-ip4base-dev

eth2p-ethicmpv4-ip4base-dev

IPv4 routing test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv4-ICMPv4 for IPv4 routing on both links.
  • [Cfg] DUT configuration: DUT1 is configured with IPv4 routing and two static IPv4 /24 route entries.
  • [Ver] TG verification: Test ICMPv4 Echo Request packets are sent in one direction by TG on links to DUT1; on receive TG verifies packets for correctness and their IPv4 src-addr, dst-addr and MAC addresses.
  • [Ref] Applicable standard specifications: RFC791, RFC826, RFC792
Name VPP API Test Commands History - Commands Used Per Test Case
64b-ethicmpv4-ip4base-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)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘10.10.10.2’, ‘flags’: 0, ‘sw_if_index’: 1, ‘mac_address’: ‘ba:dc:0f:fe:02:00’})
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘20.20.20.2’, ‘flags’: 0, ‘sw_if_index’: 2, ‘mac_address’: ‘ba:dc:0f:fe:02:01’})
sw_interface_add_del_address(address_length=24,del_all=0,is_add=1,sw_if_index=1,address=’nnnx01’,is_ipv6=0)
sw_interface_add_del_address(address_length=24,del_all=0,is_add=1,sw_if_index=2,address=’x14x14x14x01’,is_ipv6=0)
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip4’: ‘nnnx02’}}, ‘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’: 32, ‘address’: {‘un’: {‘ip4’: ‘xc0xa8x00x01’}, ‘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’: ‘x14x14x14x02’}}, ‘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’: 32, ‘address’: {‘un’: {‘ip4’: ‘xc0xa8x00x02’}, ‘af’: 0}}, ‘n_paths’: 1, ‘table_id’: 0},is_add=1,is_multipath=0)

eth2p-ethip4-ip4base-copblklistbase-dev

eth2p-ethip4-ip4base-copblklistbase-dev

COP Security IPv4 whitelist test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv4 on all links.
  • [Cfg] DUT configuration: DUT1 is configured with IPv4 routing and static routes. COP security white-lists is applied on DUT1 ingress interface from TG.
  • [Ver] TG verification: Test IPv4 packets are sent in one direction by TG on link to DUT1; on receive TG verifies packets for correctness and drops as applicable.
  • [Ref] Applicable standard specifications:
Name VPP API Test Commands History - Commands Used Per Test Case
64b-ethip4-ip4base-copblklistbase-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)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘10.10.10.2’, ‘flags’: 0, ‘sw_if_index’: 1, ‘mac_address’: ‘ba:dc:0f:fe:02:00’})
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘20.20.20.2’, ‘flags’: 0, ‘sw_if_index’: 2, ‘mac_address’: ‘ba:dc:0f:fe:02:01’})
sw_interface_add_del_address(address_length=24,del_all=0,is_add=1,sw_if_index=1,address=’nnnx01’,is_ipv6=0)
sw_interface_add_del_address(address_length=24,del_all=0,is_add=1,sw_if_index=2,address=’x14x14x14x01’,is_ipv6=0)
ip_table_add_del(table={‘is_ip6’: 0, ‘table_id’: 1},is_add=1)
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: 0}, ‘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’: 4294967295, ‘flags’: 0, ‘preference’: 1, ‘table_id’: 0, ‘type’: 1}], ‘prefix’: {‘len’: 24, ‘address’: {‘un’: {‘ip4’: ‘nnnx00’}, ‘af’: 0}}, ‘n_paths’: 1, ‘table_id’: 1},is_add=1,is_multipath=0)
cop_whitelist_enable_disable(fib_id=1,default_cop=0,ip6=0,ip4=1,sw_if_index=1)
cop_interface_enable_disable(enable_disable=1,sw_if_index=1)

eth2p-ethip4-ip4base-copwhtlistbase-dev

eth2p-ethip4-ip4base-copwhtlistbase-dev

COP Security IPv4 whitelist test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv4 on all links.
  • [Cfg] DUT configuration: DUT1 is configured with IPv4 routing and static routes. COP security white-lists is applied on DUT1 ingress interface from TG.
  • [Ver] TG verification: Test IPv4 packets are sent in one direction by TG on link to DUT1; on receive TG verifies packets for correctness and drops as applicable.
  • [Ref] Applicable standard specifications:
Name VPP API Test Commands History - Commands Used Per Test Case
64b-ethip4-ip4base-copwhtlistbase-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)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘10.10.10.2’, ‘flags’: 0, ‘sw_if_index’: 1, ‘mac_address’: ‘ba:dc:0f:fe:02:00’})
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘20.20.20.2’, ‘flags’: 0, ‘sw_if_index’: 2, ‘mac_address’: ‘ba:dc:0f:fe:02:01’})
sw_interface_add_del_address(address_length=24,del_all=0,is_add=1,sw_if_index=1,address=’nnnx01’,is_ipv6=0)
sw_interface_add_del_address(address_length=24,del_all=0,is_add=1,sw_if_index=2,address=’x14x14x14x01’,is_ipv6=0)
ip_table_add_del(table={‘is_ip6’: 0, ‘table_id’: 1},is_add=1)
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: 0}, ‘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’: 4294967295, ‘flags’: 0, ‘preference’: 1, ‘table_id’: 0, ‘type’: 1}], ‘prefix’: {‘len’: 24, ‘address’: {‘un’: {‘ip4’: ‘nnnx00’}, ‘af’: 0}}, ‘n_paths’: 1, ‘table_id’: 1},is_add=1,is_multipath=0)
cop_whitelist_enable_disable(fib_id=1,default_cop=0,ip6=0,ip4=1,sw_if_index=1)
cop_interface_enable_disable(enable_disable=1,sw_if_index=1)

eth2p-ethip4-ip4base-iacldstbase-dev

eth2p-ethip4-ip4base-iacldstbase-dev

IPv4 iAcl whitelist test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv4 on all links.
  • [Cfg] DUT configuration: DUT1 is configured with IPv4 routing and static routes. IPv4 iAcl security whitelist is applied on DUT1 ingress interface from TG.
  • [Ver] TG verification: Test IPv4 packets are sent in one direction by TG on link to DUT1; on receive TG verifies packets for correctness and drops as applicable.
  • [Ref] Applicable standard specifications:
Name VPP API Test Commands History - Commands Used Per Test Case
64b-ethip4-ip4base-iacldstbase-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_dump(name_filter=’’,name_filter_valid=0)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘10.10.10.2’, ‘flags’: 0, ‘sw_if_index’: 1, ‘mac_address’: ‘ba:dc:0f:fe:02:00’})
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘20.20.20.2’, ‘flags’: 0, ‘sw_if_index’: 2, ‘mac_address’: ‘ba:dc:0f:fe:02:01’})
sw_interface_add_del_address(address_length=24,del_all=0,is_add=1,sw_if_index=1,address=’nnnx01’,is_ipv6=0)
sw_interface_add_del_address(address_length=24,del_all=0,is_add=1,sw_if_index=2,address=’x14x14x14x01’,is_ipv6=0)
classify_add_del_table(next_table_index=4294967295,miss_next_index=4294967295,mask_len=32,match_n_vectors=2,mask=’x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x14x14x14x02x00x00x00x00x00x00x00x00x00x00x00x00’,current_data_offset=0,memory_size=2097152,table_index=4294967295,nbuckets=2,skip_n_vectors=0,is_add=1,current_data_flag=0)
classify_add_del_session(advance=0,match_len=32,is_add=1,opaque_index=4294967295,hit_next_index=4294967295,table_index=0,action=0,match=’x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x14x14x14x02x00x00x00x00x00x00x00x00x00x00x00x00’,metadata=0)
input_acl_set_interface(ip6_table_index=4294967295,is_add=1,l2_table_index=4294967295,ip4_table_index=0,sw_if_index=1)

eth2p-ethip4-ip4base-ipolicemarkbase-dev

eth2p-ethip4-ip4base-ipolicemarkbase-dev

IPv4 policer test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv4 on all links.
  • [Cfg] DUT configuration: On DUT1 configure interfaces IPv4 adresses, and static ARP record on the second interface. On DUT1 configure 2R3C color-aware policer on the first interface.
  • [Ver] TG verification: Test packet is sent from TG on the first link to DUT1. Packet is received on TG on the second link from DUT1.
  • [Ref] Applicable standard specifications: RFC2474, RFC2697, RFC2698.
Name VPP API Test Commands History - Commands Used Per Test Case
64b-ethip4-ip4base-ipolicemarkbase-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)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘10.10.10.2’, ‘flags’: 0, ‘sw_if_index’: 1, ‘mac_address’: ‘ba:dc:0f:fe:02:00’})
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘20.20.20.2’, ‘flags’: 0, ‘sw_if_index’: 2, ‘mac_address’: ‘ba:dc:0f:fe:02:01’})
sw_interface_add_del_address(address_length=24,del_all=0,is_add=1,sw_if_index=1,address=’nnnx01’,is_ipv6=0)
sw_interface_add_del_address(address_length=24,del_all=0,is_add=1,sw_if_index=2,address=’x14x14x14x01’,is_ipv6=0)
policer_add_del name policer1 cir 100 eir 150 cb 64 eb 64 rate_type pps round_type closest type 2r3c-2698 conform_action transmit exceed_action mark-and-transmit AF22 violate_action transmit color-aware
classify_add_del_table mask l3 ip4 dst
classify_add_del_session policer-hit-next 0 exceed-color table-index 0 skip_n 1 match_n 2 match l3 ip4 dst 20.20.20.2
policer_classify_set_interface sw_if_index 1 ip4-table 0
policer_add_del name policer2 cir 100 eir 150 cb 64 eb 64 rate_type pps round_type closest type 2r3c-2698 conform_action transmit exceed_action mark-and-transmit AF22 violate_action transmit color-aware
classify_add_del_table mask l3 ip4 dst
classify_add_del_session policer-hit-next 1 exceed-color table-index 1 skip_n 1 match_n 2 match l3 ip4 dst 10.10.10.2
policer_classify_set_interface sw_if_index 2 ip4-table 1

ip4 tunnels

eth2p-ethip4vxlan-l2bdbasemaclrn-dev

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.
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’: ‘ba:dc:0f:fe:02:00’})
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘172.26.0.2’, ‘flags’: 0, ‘sw_if_index’: 2, ‘mac_address’: ‘ba:dc:0f:fe: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

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.
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’: ‘ba:dc:0f:fe:02:00’})
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘172.26.0.2’, ‘flags’: 0, ‘sw_if_index’: 2, ‘mac_address’: ‘ba:dc:0f:fe: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)

ip6

eth2p-ethicmpv6-ip6base-dev

eth2p-ethicmpv6-ip6base-dev

IPv6 routing test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv6-ICMPv6 for IPv6 routing on both links.
  • [Cfg] DUT configuration: DUT1 is configured with IPv6 routing and two static IPv6 /64 route entries.
  • [Ver] TG verification: Test ICMPv6 Echo Request packets are sent in one direction by TG on links to DUT1; on receive TG verifies packets for correctness and their IPv6 src-addr, dst-addr and MAC addresses.
  • [Ref] Applicable standard specifications: RFC2460, RFC4443, RFC4861
Name VPP API Test Commands History - Commands Used Per Test Case
78b-ethicmpv6-ip6base-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)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘2001:1::2’, ‘flags’: 0, ‘sw_if_index’: 1, ‘mac_address’: ‘ba:dc:0f:fe:02:00’})
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘2001:2::2’, ‘flags’: 0, ‘sw_if_index’: 2, ‘mac_address’: ‘ba:dc:0f:fe:02:01’})
sw_interface_add_del_address(address_length=64,del_all=0,is_add=1,sw_if_index=1,address=’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,is_ipv6=1)
sw_interface_add_del_address(address_length=64,del_all=0,is_add=1,sw_if_index=2,address=’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,is_ipv6=1)
ip_address_dump(sw_if_index=2,is_ipv6=1)
sw_interface_ip6nd_ra_config(suppress=1,sw_if_index=2)
ip_address_dump(sw_if_index=1,is_ipv6=1)
sw_interface_ip6nd_ra_config(suppress=1,sw_if_index=1)
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip6’: ‘ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}}, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘proto’: 1, ‘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’: 128, ‘address’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘af’: 1}}, ‘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’: {‘ip6’: ‘ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’}}, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘proto’: 1, ‘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’: 128, ‘address’: {‘un’: {‘ip6’: ‘?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘af’: 1}}, ‘n_paths’: 1, ‘table_id’: 0},is_add=1,is_multipath=0)

eth2p-ethip6-ip6base-copblklistbase-dev

eth2p-ethip6-ip6base-copblklistbase-dev

COP Security IPv6 whitelist test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv6 on all links.
  • [Cfg] DUT configuration: DUT1 is configured with IPv6 routing and static routes. COP security white-lists are applied on DUT1 ingress interface from TG.
  • [Ver] TG verification: Test IPv6 packets are sent in one direction by TG on link to DUT1; on receive TG verifies packets for correctness and drops as applicable.
  • [Ref] Applicable standard specifications:
Name VPP API Test Commands History - Commands Used Per Test Case
78b-ethip6-ip6base-copblklistbase-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)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘2001:1::2’, ‘flags’: 0, ‘sw_if_index’: 1, ‘mac_address’: ‘ba:dc:0f:fe:02:00’})
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘2001:2::2’, ‘flags’: 0, ‘sw_if_index’: 2, ‘mac_address’: ‘ba:dc:0f:fe:02:01’})
sw_interface_add_del_address(address_length=64,del_all=0,is_add=1,sw_if_index=1,address=’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,is_ipv6=1)
sw_interface_add_del_address(address_length=64,del_all=0,is_add=1,sw_if_index=2,address=’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,is_ipv6=1)
ip_address_dump(sw_if_index=2,is_ipv6=1)
sw_interface_ip6nd_ra_config(suppress=1,sw_if_index=2)
ip_address_dump(sw_if_index=1,is_ipv6=1)
sw_interface_ip6nd_ra_config(suppress=1,sw_if_index=1)
ip_table_add_del(table={‘is_ip6’: 1, ‘table_id’: 1},is_add=1)
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: 0}, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘proto’: 1, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], ‘sw_if_index’: 4294967295, ‘flags’: 0, ‘preference’: 1, ‘table_id’: 0, ‘type’: 1}], ‘prefix’: {‘len’: 64, ‘address’: {‘un’: {‘ip6’: ‘ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x00’}, ‘af’: 1}}, ‘n_paths’: 1, ‘table_id’: 1},is_add=1,is_multipath=0)
cop_whitelist_enable_disable(fib_id=1,default_cop=0,ip6=1,ip4=0,sw_if_index=1)
cop_interface_enable_disable(enable_disable=1,sw_if_index=1)

eth2p-ethip6-ip6base-copwhtlistbase-dev

eth2p-ethip6-ip6base-copwhtlistbase-dev

COP Security IPv6 whitelist test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv6 on all links.
  • [Cfg] DUT configuration: DUT1 is configured with IPv6 routing and static routes. COP security white-lists are applied on DUT1 ingress interface from TG.
  • [Ver] TG verification: Test IPv6 packets are sent in one direction by TG on link to DUT1; on receive TG verifies packets for correctness and drops as applicable.
  • [Ref] Applicable standard specifications:
Name VPP API Test Commands History - Commands Used Per Test Case
78b-ethip6-ip6base-copwhtlistbase-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)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘2001:1::2’, ‘flags’: 0, ‘sw_if_index’: 1, ‘mac_address’: ‘ba:dc:0f:fe:02:00’})
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘2001:2::2’, ‘flags’: 0, ‘sw_if_index’: 2, ‘mac_address’: ‘ba:dc:0f:fe:02:01’})
sw_interface_add_del_address(address_length=64,del_all=0,is_add=1,sw_if_index=1,address=’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,is_ipv6=1)
sw_interface_add_del_address(address_length=64,del_all=0,is_add=1,sw_if_index=2,address=’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,is_ipv6=1)
ip_address_dump(sw_if_index=2,is_ipv6=1)
sw_interface_ip6nd_ra_config(suppress=1,sw_if_index=2)
ip_address_dump(sw_if_index=1,is_ipv6=1)
sw_interface_ip6nd_ra_config(suppress=1,sw_if_index=1)
ip_table_add_del(table={‘is_ip6’: 1, ‘table_id’: 1},is_add=1)
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: 0}, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘proto’: 1, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], ‘sw_if_index’: 4294967295, ‘flags’: 0, ‘preference’: 1, ‘table_id’: 0, ‘type’: 1}], ‘prefix’: {‘len’: 64, ‘address’: {‘un’: {‘ip6’: ‘ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x00’}, ‘af’: 1}}, ‘n_paths’: 1, ‘table_id’: 1},is_add=1,is_multipath=0)
cop_whitelist_enable_disable(fib_id=1,default_cop=0,ip6=1,ip4=0,sw_if_index=1)
cop_interface_enable_disable(enable_disable=1,sw_if_index=1)

eth2p-ethip6-ip6base-iacldstbase-dev

eth2p-ethip6-ip6base-iacldstbase-dev

IPv6 iAcl whitelist test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv6 on all links.
  • [Cfg] DUT configuration: DUT1 is configured with IPv6 routing and static routes. IPv6 iAcl security whitelist is applied on DUT1 ingress interface from TG.
  • [Ver] TG verification: Test IPv6 packets are sent in one direction by TG on link to DUT1; on receive TG verifies packets for correctness and drops as applicable.
  • [Ref] Applicable standard specifications:
Name VPP API Test Commands History - Commands Used Per Test Case
78b-ethip6-ip6base-iacldstbase-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)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘2001:1::2’, ‘flags’: 0, ‘sw_if_index’: 1, ‘mac_address’: ‘ba:dc:0f:fe:02:00’})
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘2001:2::2’, ‘flags’: 0, ‘sw_if_index’: 2, ‘mac_address’: ‘ba:dc:0f:fe:02:01’})
sw_interface_add_del_address(address_length=64,del_all=0,is_add=1,sw_if_index=1,address=’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,is_ipv6=1)
sw_interface_add_del_address(address_length=64,del_all=0,is_add=1,sw_if_index=2,address=’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,is_ipv6=1)
ip_address_dump(sw_if_index=2,is_ipv6=1)
sw_interface_ip6nd_ra_config(suppress=1,sw_if_index=2)
ip_address_dump(sw_if_index=1,is_ipv6=1)
sw_interface_ip6nd_ra_config(suppress=1,sw_if_index=1)
classify_add_del_table(next_table_index=4294967295,miss_next_index=4294967295,mask_len=48,match_n_vectors=3,mask=’x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00 x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02x00x00x00x00x00x00x00x00’,current_data_offset=0,memory_size=2097152,table_index=4294967295,nbuckets=2,skip_n_vectors=0,is_add=1,current_data_flag=0)
classify_add_del_session(advance=0,match_len=48,is_add=1,opaque_index=4294967295,hit_next_index=4294967295,table_index=0,action=0,match=’x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00x00 x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02x00x00x00x00x00x00x00x00’,metadata=0)
input_acl_set_interface(ip6_table_index=0,is_add=1,l2_table_index=4294967295,ip4_table_index=4294967295,sw_if_index=1)

eth2p-ethip6-ip6base-ipolicemarkbase-dev

eth2p-ethip6-ip6base-ipolicemarkbase-dev

IPv4 policer test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv6 on all links.
  • [Cfg] DUT configuration: On DUT1 configure interfaces IPv6 adresses, and static ARP record on the second interface. On DUT1 configure 2R3C color-aware policer on the first interface.
  • [Ver] TG verification: Test packet is sent from TG on the first link to DUT1. Packet is received on TG on the second link from DUT1.
  • [Ref] Applicable standard specifications: RFC2474, RFC2697, RFC2698.
Name VPP API Test Commands History - Commands Used Per Test Case
78b-ethip6-ip6base-ipolicemarkbase-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)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘2001:1::2’, ‘flags’: 0, ‘sw_if_index’: 1, ‘mac_address’: ‘ba:dc:0f:fe:02:00’})
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘2001:2::2’, ‘flags’: 0, ‘sw_if_index’: 2, ‘mac_address’: ‘ba:dc:0f:fe:02:01’})
sw_interface_add_del_address(address_length=64,del_all=0,is_add=1,sw_if_index=1,address=’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,is_ipv6=1)
sw_interface_add_del_address(address_length=64,del_all=0,is_add=1,sw_if_index=2,address=’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,is_ipv6=1)
ip_address_dump(sw_if_index=2,is_ipv6=1)
sw_interface_ip6nd_ra_config(suppress=1,sw_if_index=2)
ip_address_dump(sw_if_index=1,is_ipv6=1)
sw_interface_ip6nd_ra_config(suppress=1,sw_if_index=1)
policer_add_del name policer1 cir 100 eir 150 cb 78 eb 78 rate_type pps round_type closest type 2r3c-2698 conform_action transmit exceed_action mark-and-transmit AF22 violate_action transmit color-aware
classify_add_del_table mask l3 ip6 dst
classify_add_del_session policer-hit-next 0 exceed-color table-index 0 skip_n 2 match_n 2 match l3 ip6 dst 2001:2::2
policer_classify_set_interface sw_if_index 1 ip6-table 0
policer_add_del name policer2 cir 100 eir 150 cb 78 eb 78 rate_type pps round_type closest type 2r3c-2698 conform_action transmit exceed_action mark-and-transmit AF22 violate_action transmit color-aware
classify_add_del_table mask l3 ip6 dst
classify_add_del_session policer-hit-next 1 exceed-color table-index 1 skip_n 2 match_n 2 match l3 ip6 dst 2001:1::2
policer_classify_set_interface sw_if_index 2 ip6-table 1

l2bd

eth2p-avf-dot1qip4-l2bdbasemaclrn-dev

eth2p-avf-dot1qip4-l2bdbasemaclrn-dev

IPv4 routing with IEEE 802.1Q test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv4 for IPv4 routing. IEEE 802.1Q tagging is applied on links between TG-DUT1.
  • [Cfg] DUT configuration: DUT1 is configured with IPv4 routing and two static IPv4 /30 route entries. DUT1 is tested with virtual.
  • [Ver] TG verification: Test IPv4 packets are sent in one direction by TG on link to DUT1; on receive TG verifies packets for correctness and drops as applicable.
  • [Ref] Applicable standard specifications: IEEE 802.1q.
Name VPP API Test Commands History - Commands Used Per Test Case
68b-avf-dot1qip4-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’)
avf_create(rxq_size=0,txq_size=0,enable_elog=0,pci_addr=171638784,rxq_num=1)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
avf_create(rxq_size=0,txq_size=0,enable_elog=0,pci_addr=708509696,rxq_num=1)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
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_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)
create_vlan_subif(vlan_id=1300,sw_if_index=1)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
create_vlan_subif(vlan_id=1301,sw_if_index=2)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
sw_interface_set_flags(sw_if_index=4,admin_up_down=1)
l2_interface_vlan_tag_rewrite(vtr_op=3,tag2=0,push_dot1q=1,tag1=0,sw_if_index=3)
l2_interface_vlan_tag_rewrite(vtr_op=3,tag2=0,push_dot1q=1,tag1=0,sw_if_index=4)
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-ethicmpv4-l2bdbasemaclrn-dev

eth2p-ethicmpv4-l2bdbasemaclrn-dev

L2 bridge-domain test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv4-ICMPv4 for L2 switching of IPv4. Both apply to all links.
  • [Cfg] DUT configuration: DUT1 is configured with L2 bridge-domain switching.
  • [Ver] TG verification: Test ICMPv4 Echo Request packets are sent in both directions by TG on links to DUT1; on receive TG verifies packets for correctness and their IPv4 src-addr, dst-addr and MAC addresses.
  • [Ref] Applicable standard specifications: RFC792
Name VPP API Test Commands History - Commands Used Per Test Case
64b-ethicmpv4-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_set_l2_bridge(rx_sw_if_index=1,enable=1,shg=0,port_type=0,bd_id=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,enable=1,shg=0,port_type=0,bd_id=1)

l2xc

eth2p-ethicmpv4-l2xcbase-dev

eth2p-ethicmpv4-l2xcbase-dev

L2 cross-connect test cases

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with single links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv4-ICMPv4 for L2 switching of IPv4. Both apply to all links.
  • [Cfg] DUT configuration: DUT1 is configured with L2 cross-connect switching.
  • [Ver] TG verification: Test ICMPv4 Echo Request packets are sent in both directions by TG on links to DUT1; on receive TG verifies packets for correctness and their IPv4 src-addr, dst-addr and MAC addresses.
  • [Ref] Applicable standard specifications: RFC792
Name VPP API Test Commands History - Commands Used Per Test Case
64b-ethicmpv4-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_set_l2_xconnect(rx_sw_if_index=1,enable=1,tx_sw_if_index=2)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,enable=1,tx_sw_if_index=1)

vm vhost

ip4

eth2p-ethicmpv4-ip4base-eth-2vhost-1vm-dev

eth2p-ethicmpv4-ip4base-eth-2vhost-1vm-dev

IPv4 routing test cases with vhost user interface

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with VM and single links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv4-ICMPv4 for IPv4 routing on both links.
  • [Cfg] DUT configuration: DUT1 is configured with IPv4 routing and two static IPv4 /24 route entries. Qemu Guest is connected to VPP via vhost-user interfaces. Guest is running VPP ip4 interconnecting vhost-user interfaces.
  • [Ver] TG verification: Test ICMPv4 Echo Request packets are sent in one direction by TG on links to DUT1; on receive TG verifies packets for correctness and their IPv4 src-addr, dst-addr and MAC addresses.
  • [Ref] Applicable standard specifications: RFC791, RFC826, RFC792
Name VPP API Test Commands History - Commands Used Per Test Case
64b-ethicmp4-ip4base-eth-2vhost-1vm-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)
ip_table_add_del(table={‘is_ip6’: 0, ‘table_id’: 101},is_add=1)
ip_table_add_del(table={‘is_ip6’: 0, ‘table_id’: 102},is_add=1)
sw_interface_set_table(vrf_id=101,sw_if_index=1,is_ipv6=0)
sw_interface_set_table(vrf_id=102,sw_if_index=2,is_ipv6=0)
sw_interface_add_del_address(address_length=30,del_all=0,is_add=1,sw_if_index=1,address=’dx00x00x01’,is_ipv6=0)
sw_interface_add_del_address(address_length=30,del_all=0,is_add=1,sw_if_index=2,address=’xc8x00x00x01’,is_ipv6=0)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘100.0.0.2’, ‘flags’: 0, ‘sw_if_index’: 1, ‘mac_address’: ‘ba:dc:0f:fe:02:00’})
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘200.0.0.2’, ‘flags’: 0, ‘sw_if_index’: 2, ‘mac_address’: ‘ba:dc:0f:fe:02:01’})
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip4’: ‘dx00x00x02’}}, ‘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’: 8, ‘address’: {‘un’: {‘ip4’: ‘nx00x00x00’}, ‘af’: 0}}, ‘n_paths’: 1, ‘table_id’: 101},is_add=1,is_multipath=0)
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip4’: ‘xc8x00x00x02’}}, ‘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’: 8, ‘address’: {‘un’: {‘ip4’: ‘x14x00x00x00’}, ‘af’: 0}}, ‘n_paths’: 1, ‘table_id’: 102},is_add=1,is_multipath=0)
create_vhost_user_if(sock_filename=’/var/run/vpp/sock-1-1’)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
create_vhost_user_if(sock_filename=’/var/run/vpp/sock-1-2’)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
sw_interface_set_flags(sw_if_index=4,admin_up_down=1)
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
sw_interface_set_flags(sw_if_index=4,admin_up_down=1)
ip_table_add_del(table={‘is_ip6’: 0, ‘table_id’: 101},is_add=1)
ip_table_add_del(table={‘is_ip6’: 0, ‘table_id’: 102},is_add=1)
sw_interface_set_table(vrf_id=101,sw_if_index=3,is_ipv6=0)
sw_interface_set_table(vrf_id=102,sw_if_index=4,is_ipv6=0)
sw_interface_add_del_address(address_length=30,del_all=0,is_add=1,sw_if_index=3,address=’x01x01x01x02’,is_ipv6=0)
sw_interface_add_del_address(address_length=30,del_all=0,is_add=1,sw_if_index=4,address=’x01x01x02x02’,is_ipv6=0)
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip4’: ‘x01x01x01x01’}}, ‘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’: 3, ‘flags’: 0, ‘preference’: 1, ‘table_id’: 0, ‘type’: 0}], ‘prefix’: {‘len’: 8, ‘address’: {‘un’: {‘ip4’: ‘x14x00x00x00’}, ‘af’: 0}}, ‘n_paths’: 1, ‘table_id’: 101},is_add=1,is_multipath=0)
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip4’: ‘x01x01x02x01’}}, ‘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’: 4, ‘flags’: 0, ‘preference’: 1, ‘table_id’: 0, ‘type’: 0}], ‘prefix’: {‘len’: 8, ‘address’: {‘un’: {‘ip4’: ‘nx00x00x00’}, ‘af’: 0}}, ‘n_paths’: 1, ‘table_id’: 102},is_add=1,is_multipath=0)
show_version()
sw_interface_dump(name_filter=’’,name_filter_valid=0)
show_threads()

ip6

eth2p-ethicmpv6-ip6base-eth-2vhost-1vm-dev

eth2p-ethicmpv6-ip6base-eth-2vhost-1vm-dev

IPv4 routing test cases with vhost user interface

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with VM and single links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv6-ICMPv6 for IPv6 routing on both links.
  • [Cfg] DUT configuration: DUT1 is configured with IPv6 routing and two static IPv6 /64 route entries. Qemu Guest is connected to VPP via vhost-user interfaces. Guest is running VPP ip6 interconnecting vhost-user interfaces.
  • [Ver] TG verification: Test ICMPv6 Echo Request packets are sent in one direction by TG on links to DUT1; on receive TG verifies packets for correctness and their IPv6 src-addr, dst-addr and MAC addresses.
  • [Ref] Applicable standard specifications: RFC2460, RFC4443, RFC4861
Name VPP API Test Commands History - Commands Used Per Test Case
64b-ethicmpv6-ip6base-eth-2vhost-1vm-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’)
ip_address_dump(sw_if_index=2,is_ipv6=1)
ip_address_dump(sw_if_index=1,is_ipv6=1)
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)
ip_table_add_del(table={‘is_ip6’: 1, ‘table_id’: 101},is_add=1)
ip_table_add_del(table={‘is_ip6’: 1, ‘table_id’: 102},is_add=1)
sw_interface_set_table(vrf_id=101,sw_if_index=1,is_ipv6=1)
sw_interface_set_table(vrf_id=102,sw_if_index=2,is_ipv6=1)
sw_interface_add_del_address(address_length=64,del_all=0,is_add=1,sw_if_index=1,address=’ x01x01x00x00x00x00x00x00x00x00x00x00x00x00x01’,is_ipv6=1)
sw_interface_add_del_address(address_length=64,del_all=0,is_add=1,sw_if_index=2,address=’ x01x02x00x00x00x00x00x00x00x00x00x00x00x00x01’,is_ipv6=1)
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘2001:100::2’, ‘flags’: 0, ‘sw_if_index’: 1, ‘mac_address’: ‘ba:dc:0f:fe:02:00’})
ip_neighbor_add_del(is_add=1,neighbor={‘ip_address’: ‘2001:200::2’, ‘flags’: 0, ‘sw_if_index’: 2, ‘mac_address’: ‘ba:dc:0f:fe:02:01’})
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip6’: ‘ x01x01x00x00x00x00x00x00x00x00x00x00x00x00x02’}}, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘proto’: 1, ‘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’: 64, ‘address’: {‘un’: {‘ip6’: ‘ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x00’}, ‘af’: 1}}, ‘n_paths’: 1, ‘table_id’: 101},is_add=1,is_multipath=0)
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip6’: ‘ x01x02x00x00x00x00x00x00x00x00x00x00x00x00x02’}}, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘proto’: 1, ‘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’: 64, ‘address’: {‘un’: {‘ip6’: ‘ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, ‘af’: 1}}, ‘n_paths’: 1, ‘table_id’: 102},is_add=1,is_multipath=0)
create_vhost_user_if(sock_filename=’/var/run/vpp/sock-1-1’)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
create_vhost_user_if(sock_filename=’/var/run/vpp/sock-1-2’)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
sw_interface_set_flags(sw_if_index=4,admin_up_down=1)
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
sw_interface_set_flags(sw_if_index=4,admin_up_down=1)
ip_table_add_del(table={‘is_ip6’: 1, ‘table_id’: 101},is_add=1)
ip_table_add_del(table={‘is_ip6’: 1, ‘table_id’: 102},is_add=1)
sw_interface_set_table(vrf_id=101,sw_if_index=3,is_ipv6=1)
sw_interface_set_table(vrf_id=102,sw_if_index=4,is_ipv6=1)
sw_interface_add_del_address(address_length=64,del_all=0,is_add=1,sw_if_index=3,address=’x00x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’,is_ipv6=1)
sw_interface_add_del_address(address_length=64,del_all=0,is_add=1,sw_if_index=4,address=’x00x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’,is_ipv6=1)
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip6’: ‘x00x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘proto’: 1, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], ‘sw_if_index’: 3, ‘flags’: 0, ‘preference’: 1, ‘table_id’: 0, ‘type’: 0}], ‘prefix’: {‘len’: 64, ‘address’: {‘un’: {‘ip6’: ‘ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, ‘af’: 1}}, ‘n_paths’: 1, ‘table_id’: 101},is_add=1,is_multipath=0)
ip_route_add_del(route={‘paths’: [{‘nh’: {‘obj_id’: 4294967295, ‘via_label’: 1048576, ‘address’: {‘ip6’: ‘x00x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’}}, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘proto’: 1, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], ‘sw_if_index’: 4, ‘flags’: 0, ‘preference’: 1, ‘table_id’: 0, ‘type’: 0}], ‘prefix’: {‘len’: 64, ‘address’: {‘un’: {‘ip6’: ‘ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x00’}, ‘af’: 1}}, ‘n_paths’: 1, ‘table_id’: 102},is_add=1,is_multipath=0)
show_version()
sw_interface_dump(name_filter=’’,name_filter_valid=0)
show_threads()

l2bd

eth2p-ethicmpv4-l2bdbasemaclrn-eth-2vhost-1vm-dev

eth2p-ethicmpv4-l2bdbasemaclrn-eth-2vhost-1vm-dev

L2 bridge-domain test cases with vhost user interface

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with VM and single links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv4-ICMPv4 for L2 switching of IPv4.
  • [Cfg] DUT configuration: DUT1 is configured with two L2 bridge-domains (L2BD) switching combined with MAC learning enabled. Qemu Guest is connected to VPP via vhost-user interfaces. Guest is configured with VPP l2 cross-connect interconnecting vhost-user interfaces.
  • [Ver] TG verification: Test ICMPv4 Echo Request packets are sent in both directions by TG on links to DUT1 via VM; on receive TG verifies packets for correctness and their IPv4 src-addr, dst-addr and MAC addresses.
  • [Ref] Applicable standard specifications: RFC792
Name VPP API Test Commands History - Commands Used Per Test Case
64b-ethicmpv4-l2bdbasemaclrn-eth-2vhost-1vm-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_set_flags(sw_if_index=1,admin_up_down=1)
sw_interface_set_l2_bridge(rx_sw_if_index=1,enable=1,shg=0,port_type=0,bd_id=1)
sw_interface_set_flags(sw_if_index=2,admin_up_down=1)
sw_interface_set_l2_bridge(rx_sw_if_index=2,enable=1,shg=0,port_type=0,bd_id=2)
create_vhost_user_if(sock_filename=’/var/run/vpp/sock-1-1’)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
create_vhost_user_if(sock_filename=’/var/run/vpp/sock-1-2’)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
sw_interface_set_flags(sw_if_index=4,admin_up_down=1)
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
sw_interface_set_l2_bridge(rx_sw_if_index=3,enable=1,shg=0,port_type=0,bd_id=1)
sw_interface_set_flags(sw_if_index=4,admin_up_down=1)
sw_interface_set_l2_bridge(rx_sw_if_index=4,enable=1,shg=0,port_type=0,bd_id=2)
show_version()
sw_interface_dump(name_filter=’’,name_filter_valid=0)
show_threads()

l2xc

eth2p-ethicmpv4-l2xcbase-eth-2vhost-1vm-dev

eth2p-ethicmpv4-l2xcbase-eth-2vhost-1vm-dev

L2 cross-connect test cases with vhost user interface

  • [Top] Network Topologies: TG-DUT1-TG 2-node circular topology with VM and single links between nodes.
  • [Enc] Packet Encapsulations: Eth-IPv4-ICMPv4 for L2 switching of IPv4.
  • [Cfg] DUT configuration: DUT1 is configured with L2 cross-connect (L2XC) switching. Qemu Guest is connected to VPP via vhost-user interfaces. Guest is configured with VPP l2 cross-connect interconnecting vhost-user interfaces.
  • [Ver] TG verification: Test ICMPv4 Echo Request packets are sent in both directions by TG on links to DUT1 via VM; on receive TG verifies packets for correctness and their IPv4 src-addr, dst-addr and MAC addresses.
  • [Ref] Applicable standard specifications: RFC792
Name VPP API Test Commands History - Commands Used Per Test Case
64b-ethicmpv4-l2xcbase-eth-2vhost-1vm-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’)
create_vhost_user_if(sock_filename=’/var/run/vpp/sock-1-1’)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
create_vhost_user_if(sock_filename=’/var/run/vpp/sock-1-2’)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_dump(name_filter=’’,name_filter_valid=0)
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
sw_interface_set_flags(sw_if_index=4,admin_up_down=1)
sw_interface_set_flags(sw_if_index=1,admin_up_down=1)
sw_interface_set_flags(sw_if_index=3,admin_up_down=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=1,enable=1,tx_sw_if_index=3)
sw_interface_set_l2_xconnect(rx_sw_if_index=3,enable=1,tx_sw_if_index=1)
sw_interface_set_flags(sw_if_index=4,admin_up_down=1)
sw_interface_set_flags(sw_if_index=2,admin_up_down=1)
sw_interface_set_l2_xconnect(rx_sw_if_index=4,enable=1,tx_sw_if_index=2)
sw_interface_set_l2_xconnect(rx_sw_if_index=2,enable=1,tx_sw_if_index=4)
show_version()
sw_interface_dump(name_filter=’’,name_filter_valid=0)
show_threads()