3n-tsh-x520

10ge2p1x520-ethip6ip6-ip6base-srv6enc1sid-mrr

Packet throughput Segment routing over IPv6 dataplane with one SID (SRH not inserted) test cases

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

  • [Enc] Packet Encapsulations: Eth-IPv6-IPv6 on DUT1-DUT2, Eth-IPv6 on TG-DUTn for IPv6 routing over SRv6.

  • [Cfg] DUT configuration: DUT1 and DUT2 are configured with IPv6 routing and static route, SR policy and steering policy for one direction and one SR behaviour (function) - End - for other direction. DUT1 and DUT2 are tested with Intel-X520-DA2.

  • [Ver] TG veriffication: In MaxReceivedRate tests TG sends traffic at line rate and reports total received packets over trial period. Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 253 flows per flow-group) with all packets containing Ethernet header,IPv6 header with static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: SRv6 Network Programming - draft 3.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 78b-1t1c-ethip6ip6- 
ip6base-srv6enc1sid-mrr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c1’, ‘ip_address’: ‘2001:1::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:7e’, ‘ip_address’: ‘2001:3::2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 1, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=6,sw_if_index=2,vlan_index=0,fib_table=0,nh_addr6=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’,nh_addr4=0)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)

DUT2:
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c0’, ‘ip_address’: ‘2001:2::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:81’, ‘ip_address’: ‘2001:3::1’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=6,sw_if_index=1,vlan_index=0,fib_table=0,nh_addr6=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’,nh_addr4=0)
sr_set_encap_source(encaps_source=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 1, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)

 78b-2t2c-ethip6ip6- 
ip6base-srv6enc1sid-mrr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c1’, ‘ip_address’: ‘2001:1::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:7e’, ‘ip_address’: ‘2001:3::2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 1, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=6,sw_if_index=2,vlan_index=0,fib_table=0,nh_addr6=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’,nh_addr4=0)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)

DUT2:
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c0’, ‘ip_address’: ‘2001:2::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:81’, ‘ip_address’: ‘2001:3::1’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=6,sw_if_index=1,vlan_index=0,fib_table=0,nh_addr6=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’,nh_addr4=0)
sr_set_encap_source(encaps_source=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 1, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)

 78b-4t4c-ethip6ip6- 
ip6base-srv6enc1sid-mrr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c1’, ‘ip_address’: ‘2001:1::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:7e’, ‘ip_address’: ‘2001:3::2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 1, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=6,sw_if_index=2,vlan_index=0,fib_table=0,nh_addr6=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’,nh_addr4=0)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)

DUT2:
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c0’, ‘ip_address’: ‘2001:2::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:81’, ‘ip_address’: ‘2001:3::1’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=6,sw_if_index=1,vlan_index=0,fib_table=0,nh_addr6=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’,nh_addr4=0)
sr_set_encap_source(encaps_source=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 1, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)

10ge2p1x520-ethip6srhip6-ip6base-srv6enc2sids-mrr

Packet throughput Segment routing over IPv6 dataplane with two SIDs (SRH inserted) test cases

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

  • [Enc] Packet Encapsulations: Eth-IPv6-SRH-IPv6 on DUT1-DUT2, Eth-IPv6 on TG-DUTn for IPv6 routing over SRv6.

  • [Cfg] DUT configuration: DUT1 and DUT2 are configured with IPv6 routing and static route, SR policy and steering policy for one direction and two SR behaviours (functions) - End and End.DX6 - for other direction. DUT1 and DUT2 are tested with Intel-X520-DA2.

  • [Ver] TG veriffication: In MaxReceivedRate tests TG sends traffic at line rate and reports total received packets over trial period. Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 253 flows per flow-group) with all packets containing Ethernet header,IPv6 header with static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: SRv6 Network Programming - draft 3.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 78b-1t1c-ethip6srhip6- 
ip6base-srv6enc2sids-mrr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c1’, ‘ip_address’: ‘2001:1::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:7e’, ‘ip_address’: ‘2001:3::2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 2, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=1,sw_if_index=4294967295,vlan_index=0,fib_table=0,nh_addr6=0,nh_addr4=0)
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=6,sw_if_index=2,vlan_index=0,fib_table=0,nh_addr6=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’,nh_addr4=0)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)

DUT2:
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c0’, ‘ip_address’: ‘2001:2::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:81’, ‘ip_address’: ‘2001:3::1’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=1,sw_if_index=4294967295,vlan_index=0,fib_table=0,nh_addr6=0,nh_addr4=0)
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=6,sw_if_index=1,vlan_index=0,fib_table=0,nh_addr6=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’,nh_addr4=0)
sr_set_encap_source(encaps_source=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 2, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)

 78b-2t2c-ethip6srhip6- 
ip6base-srv6enc2sids-mrr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c1’, ‘ip_address’: ‘2001:1::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:7e’, ‘ip_address’: ‘2001:3::2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 2, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=1,sw_if_index=4294967295,vlan_index=0,fib_table=0,nh_addr6=0,nh_addr4=0)
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=6,sw_if_index=2,vlan_index=0,fib_table=0,nh_addr6=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’,nh_addr4=0)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)

DUT2:
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c0’, ‘ip_address’: ‘2001:2::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:81’, ‘ip_address’: ‘2001:3::1’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=1,sw_if_index=4294967295,vlan_index=0,fib_table=0,nh_addr6=0,nh_addr4=0)
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=6,sw_if_index=1,vlan_index=0,fib_table=0,nh_addr6=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’,nh_addr4=0)
sr_set_encap_source(encaps_source=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 2, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)

 78b-4t4c-ethip6srhip6- 
ip6base-srv6enc2sids-mrr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c1’, ‘ip_address’: ‘2001:1::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:7e’, ‘ip_address’: ‘2001:3::2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 2, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=1,sw_if_index=4294967295,vlan_index=0,fib_table=0,nh_addr6=0,nh_addr4=0)
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=6,sw_if_index=2,vlan_index=0,fib_table=0,nh_addr6=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’,nh_addr4=0)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)

DUT2:
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c0’, ‘ip_address’: ‘2001:2::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:81’, ‘ip_address’: ‘2001:3::1’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=1,sw_if_index=4294967295,vlan_index=0,fib_table=0,nh_addr6=0,nh_addr4=0)
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=6,sw_if_index=1,vlan_index=0,fib_table=0,nh_addr6=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’,nh_addr4=0)
sr_set_encap_source(encaps_source=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 2, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)

10ge2p1x520-ethip6srhip6-ip6base-srv6enc2sids-nodecaps-mrr

Packet throughput Segment routing over IPv6 dataplane with two SIDs (SRH inserted) without decapsulation test cases

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

  • [Enc] Packet Encapsulations: Eth-IPv6-SRH-IPv6 on DUT1-DUT2 and DUTn->TG, Eth-IPv6 on TG->DUTn for IPv6 routing over SRv6.

  • [Cfg] DUT configuration: DUT1 and DUT2 are configured with IPv6 routing and static route, SR policy and steering policy for one direction and one SR behaviour (function) - End - for other direction. DUT1 and DUT2 are tested with Intel-X520-DA2.

  • [Ver] TG veriffication: In MaxReceivedRate tests TG sends traffic at line rate and reports total received packets over trial period. Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 253 flows per flow-group) with all packets containing Ethernet header,IPv6 header with static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: SRv6 Network Programming - draft 3.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 78b-1t1c-ethip6srhip6- 
ip6base-srv6enc2sids-nodecaps-mrr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c1’, ‘ip_address’: ‘2001:1::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:7e’, ‘ip_address’: ‘2001:3::2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 2, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=1,sw_if_index=4294967295,vlan_index=0,fib_table=0,nh_addr6=0,nh_addr4=0)
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)

DUT2:
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c0’, ‘ip_address’: ‘2001:2::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:81’, ‘ip_address’: ‘2001:3::1’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=1,sw_if_index=4294967295,vlan_index=0,fib_table=0,nh_addr6=0,nh_addr4=0)
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 2, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)

 78b-2t2c-ethip6srhip6- 
ip6base-srv6enc2sids-nodecaps-mrr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c1’, ‘ip_address’: ‘2001:1::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:7e’, ‘ip_address’: ‘2001:3::2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 2, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=1,sw_if_index=4294967295,vlan_index=0,fib_table=0,nh_addr6=0,nh_addr4=0)
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)

DUT2:
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c0’, ‘ip_address’: ‘2001:2::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:81’, ‘ip_address’: ‘2001:3::1’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=1,sw_if_index=4294967295,vlan_index=0,fib_table=0,nh_addr6=0,nh_addr4=0)
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 2, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)

 78b-4t4c-ethip6srhip6- 
ip6base-srv6enc2sids-nodecaps-mrr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c1’, ‘ip_address’: ‘2001:1::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:7e’, ‘ip_address’: ‘2001:3::2’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 2, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=1,sw_if_index=4294967295,vlan_index=0,fib_table=0,nh_addr6=0,nh_addr4=0)
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)

DUT2:
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c0’, ‘ip_address’: ‘2001:2::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:81’, ‘ip_address’: ‘2001:3::1’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_localsid_add_del(is_del=0,localsid={‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’},end_psp=0,behavior=1,sw_if_index=4294967295,vlan_index=0,fib_table=0,nh_addr6=0,nh_addr4=0)
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 2, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)

10ge2p1x520-ethip6srhip6-ip6base-srv6proxy-dyn-mrr

Packet throughput Segment routing over IPv6 dataplane with Dynamic SRv6 proxy test cases

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

  • [Enc] Packet Encapsulations: Eth-IPv6-SRH-IPv6 on DUT1-DUT2 and DUTn->TG, Eth-IPv6 on TG->DUTn and DUTn-CNT for IPv6 routing over SRv6.

  • [Cfg] DUT configuration: DUT1 and DUT2 are configured with IPv6 routing and static route, SR policy and steering policy for one direction and one SR behaviour (function) - End.AD - for other direction. DUT1 and DUT2 are tested with Intel-X520-DA2.

  • [Ver] TG veriffication: In MaxReceivedRate tests TG sends traffic at line rate and reports total received packets over trial period. Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 253 flows per flow-group) with all packets containing Ethernet header,IPv6 header with static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: SRv6 Network Programming - draft 3 and Segment Routing for Service Chaining - internet draft 01.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 78b-1t1c-ethip6srhip6- 
ip6base-srv6proxy-dyn-mrr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
memif_socket_filename_add_del(is_add=True,socket_id=1,socket_filename=’/tmp/memif-DUT1_CNF1-1’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=1,id=1,secret=’’)
memif_dump()
memif_dump()
memif_socket_filename_add_del(is_add=True,socket_id=2,socket_filename=’/tmp/memif-DUT1_CNF1-2’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=2,id=1,secret=’’)
memif_dump()
memif_dump()
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
hw_interface_set_mtu(sw_if_index=3,mtu=9200)
hw_interface_set_mtu(sw_if_index=4,mtu=9200)
memif_dump()
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_address_dump(sw_if_index=3,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=3,suppress=1)
ip_address_dump(sw_if_index=4,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=4,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:7e’, ‘ip_address’: ‘2001:3::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c1’, ‘ip_address’: ‘2001:1::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:e6:a5:48:2a’, ‘ip_address’: ‘4002::’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 3, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x04x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
cli_inband(cmd=’sr localsid address 2003:2:: behavior end.ad nh 4002:: oif memif1/1 iif memif2/1’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)
cli_inband(cmd=’show hardware verbose’)

DUT2:
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
memif_socket_filename_add_del(is_add=True,socket_id=1,socket_filename=’/tmp/memif-DUT2_CNF1-1’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=1,id=1,secret=’’)
memif_dump()
memif_dump()
memif_socket_filename_add_del(is_add=True,socket_id=2,socket_filename=’/tmp/memif-DUT2_CNF1-2’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=2,id=1,secret=’’)
memif_dump()
memif_dump()
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
hw_interface_set_mtu(sw_if_index=3,mtu=9200)
hw_interface_set_mtu(sw_if_index=4,mtu=9200)
memif_dump()
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x02x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_address_dump(sw_if_index=3,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=3,suppress=1)
ip_address_dump(sw_if_index=4,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=4,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:81’, ‘ip_address’: ‘2001:3::1’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c0’, ‘ip_address’: ‘2001:2::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:93:0f:96:c6’, ‘ip_address’: ‘4001::’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 3, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x04x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
cli_inband(cmd=’sr localsid address 2002:2:: behavior end.ad nh 4001:: oif memif1/1 iif memif2/1’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)
cli_inband(cmd=’show hardware verbose’)

 78b-2t2c-ethip6srhip6- 
ip6base-srv6proxy-dyn-mrr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
memif_socket_filename_add_del(is_add=True,socket_id=1,socket_filename=’/tmp/memif-DUT1_CNF1-1’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=1,id=1,secret=’’)
memif_dump()
memif_dump()
memif_socket_filename_add_del(is_add=True,socket_id=2,socket_filename=’/tmp/memif-DUT1_CNF1-2’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=2,id=1,secret=’’)
memif_dump()
memif_dump()
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
hw_interface_set_mtu(sw_if_index=3,mtu=9200)
hw_interface_set_mtu(sw_if_index=4,mtu=9200)
memif_dump()
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_address_dump(sw_if_index=3,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=3,suppress=1)
ip_address_dump(sw_if_index=4,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=4,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:7e’, ‘ip_address’: ‘2001:3::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c1’, ‘ip_address’: ‘2001:1::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:fb:62:2f:5c’, ‘ip_address’: ‘4002::’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 3, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x04x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
cli_inband(cmd=’sr localsid address 2003:2:: behavior end.ad nh 4002:: oif memif1/1 iif memif2/1’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)
cli_inband(cmd=’show hardware verbose’)

DUT2:
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
memif_socket_filename_add_del(is_add=True,socket_id=1,socket_filename=’/tmp/memif-DUT2_CNF1-1’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=1,id=1,secret=’’)
memif_dump()
memif_dump()
memif_socket_filename_add_del(is_add=True,socket_id=2,socket_filename=’/tmp/memif-DUT2_CNF1-2’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=2,id=1,secret=’’)
memif_dump()
memif_dump()
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
hw_interface_set_mtu(sw_if_index=3,mtu=9200)
hw_interface_set_mtu(sw_if_index=4,mtu=9200)
memif_dump()
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x02x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_address_dump(sw_if_index=3,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=3,suppress=1)
ip_address_dump(sw_if_index=4,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=4,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:81’, ‘ip_address’: ‘2001:3::1’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c0’, ‘ip_address’: ‘2001:2::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:b7:8e:ae:c8’, ‘ip_address’: ‘4001::’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 3, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x04x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
cli_inband(cmd=’sr localsid address 2002:2:: behavior end.ad nh 4001:: oif memif1/1 iif memif2/1’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)
cli_inband(cmd=’show hardware verbose’)

 78b-4t4c-ethip6srhip6- 
ip6base-srv6proxy-dyn-mrr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
memif_socket_filename_add_del(is_add=True,socket_id=1,socket_filename=’/tmp/memif-DUT1_CNF1-1’)
memif_create(role=1,rx_queues=2,tx_queues=2,socket_id=1,id=1,secret=’’)
memif_dump()
memif_dump()
memif_socket_filename_add_del(is_add=True,socket_id=2,socket_filename=’/tmp/memif-DUT1_CNF1-2’)
memif_create(role=1,rx_queues=2,tx_queues=2,socket_id=2,id=1,secret=’’)
memif_dump()
memif_dump()
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
hw_interface_set_mtu(sw_if_index=3,mtu=9200)
hw_interface_set_mtu(sw_if_index=4,mtu=9200)
memif_dump()
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_address_dump(sw_if_index=3,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=3,suppress=1)
ip_address_dump(sw_if_index=4,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=4,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:7e’, ‘ip_address’: ‘2001:3::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c1’, ‘ip_address’: ‘2001:1::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:3e:27:33:b5’, ‘ip_address’: ‘4002::’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 3, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x04x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
cli_inband(cmd=’sr localsid address 2003:2:: behavior end.ad nh 4002:: oif memif1/1 iif memif2/1’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)
cli_inband(cmd=’show hardware verbose’)

DUT2:
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
memif_socket_filename_add_del(is_add=True,socket_id=1,socket_filename=’/tmp/memif-DUT2_CNF1-1’)
memif_create(role=1,rx_queues=2,tx_queues=2,socket_id=1,id=1,secret=’’)
memif_dump()
memif_dump()
memif_socket_filename_add_del(is_add=True,socket_id=2,socket_filename=’/tmp/memif-DUT2_CNF1-2’)
memif_create(role=1,rx_queues=2,tx_queues=2,socket_id=2,id=1,secret=’’)
memif_dump()
memif_dump()
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
hw_interface_set_mtu(sw_if_index=3,mtu=9200)
hw_interface_set_mtu(sw_if_index=4,mtu=9200)
memif_dump()
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x02x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_address_dump(sw_if_index=3,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=3,suppress=1)
ip_address_dump(sw_if_index=4,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=4,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:81’, ‘ip_address’: ‘2001:3::1’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c0’, ‘ip_address’: ‘2001:2::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:00:b9:85:47’, ‘ip_address’: ‘4001::’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 3, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x04x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
cli_inband(cmd=’sr localsid address 2002:2:: behavior end.ad nh 4001:: oif memif1/1 iif memif2/1’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)
cli_inband(cmd=’show hardware verbose’)

10ge2p1x520-ethip6srhip6-ip6base-srv6proxy-masq-mrr

Packet throughput Segment routing over IPv6 dataplane with Masquerading SRv6 proxy test cases

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

  • [Enc] Packet Encapsulations: Eth-IPv6-SRH-IPv6 on DUT1-DUT2, DUTn-CNT and DUTn->TG, Eth-IPv6 on TG->DUTn for IPv6 routing over SRv6.

  • [Cfg] DUT configuration: DUT1 and DUT2 are configured with IPv6 routing and static route, SR policy and steering policy for one direction and one SR behaviour (function) - End.AM - for other direction. DUT1 and DUT2 are tested with Intel-X520-DA2.

  • [Ver] TG veriffication: In MaxReceivedRate tests TG sends traffic at line rate and reports total received packets over trial period. Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 253 flows per flow-group) with all packets containing Ethernet header,IPv6 header with static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: SRv6 Network Programming - draft 3 and Segment Routing for Service Chaining - internet draft 01.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 78b-1t1c-ethip6srhip6- 
ip6base-srv6proxy-masq-mrr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
memif_socket_filename_add_del(is_add=True,socket_id=1,socket_filename=’/tmp/memif-DUT1_CNF1-1’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=1,id=1,secret=’’)
memif_dump()
memif_dump()
memif_socket_filename_add_del(is_add=True,socket_id=2,socket_filename=’/tmp/memif-DUT1_CNF1-2’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=2,id=1,secret=’’)
memif_dump()
memif_dump()
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
hw_interface_set_mtu(sw_if_index=3,mtu=9200)
hw_interface_set_mtu(sw_if_index=4,mtu=9200)
memif_dump()
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_address_dump(sw_if_index=3,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=3,suppress=1)
ip_address_dump(sw_if_index=4,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=4,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:7e’, ‘ip_address’: ‘2001:3::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c1’, ‘ip_address’: ‘2001:1::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:d5:cf:b8:d2’, ‘ip_address’: ‘4002::’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 3, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x04x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
cli_inband(cmd=’sr localsid address 2003:2:: behavior end.am nh 4002:: oif memif1/1 iif memif2/1’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)
cli_inband(cmd=’show hardware verbose’)

DUT2:
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
memif_socket_filename_add_del(is_add=True,socket_id=1,socket_filename=’/tmp/memif-DUT2_CNF1-1’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=1,id=1,secret=’’)
memif_dump()
memif_dump()
memif_socket_filename_add_del(is_add=True,socket_id=2,socket_filename=’/tmp/memif-DUT2_CNF1-2’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=2,id=1,secret=’’)
memif_dump()
memif_dump()
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
hw_interface_set_mtu(sw_if_index=3,mtu=9200)
hw_interface_set_mtu(sw_if_index=4,mtu=9200)
memif_dump()
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x02x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_address_dump(sw_if_index=3,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=3,suppress=1)
ip_address_dump(sw_if_index=4,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=4,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:81’, ‘ip_address’: ‘2001:3::1’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c0’, ‘ip_address’: ‘2001:2::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:61:38:00:ff’, ‘ip_address’: ‘4001::’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 3, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x04x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
cli_inband(cmd=’sr localsid address 2002:2:: behavior end.am nh 4001:: oif memif1/1 iif memif2/1’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)
cli_inband(cmd=’show hardware verbose’)

 78b-2t2c-ethip6srhip6- 
ip6base-srv6proxy-masq-mrr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
memif_socket_filename_add_del(is_add=True,socket_id=1,socket_filename=’/tmp/memif-DUT1_CNF1-1’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=1,id=1,secret=’’)
memif_dump()
memif_dump()
memif_socket_filename_add_del(is_add=True,socket_id=2,socket_filename=’/tmp/memif-DUT1_CNF1-2’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=2,id=1,secret=’’)
memif_dump()
memif_dump()
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
hw_interface_set_mtu(sw_if_index=3,mtu=9200)
hw_interface_set_mtu(sw_if_index=4,mtu=9200)
memif_dump()
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_address_dump(sw_if_index=3,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=3,suppress=1)
ip_address_dump(sw_if_index=4,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=4,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:7e’, ‘ip_address’: ‘2001:3::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c1’, ‘ip_address’: ‘2001:1::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:ce:59:e3:ea’, ‘ip_address’: ‘4002::’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 3, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x04x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
cli_inband(cmd=’sr localsid address 2003:2:: behavior end.am nh 4002:: oif memif1/1 iif memif2/1’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)
cli_inband(cmd=’show hardware verbose’)

DUT2:
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
memif_socket_filename_add_del(is_add=True,socket_id=1,socket_filename=’/tmp/memif-DUT2_CNF1-1’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=1,id=1,secret=’’)
memif_dump()
memif_dump()
memif_socket_filename_add_del(is_add=True,socket_id=2,socket_filename=’/tmp/memif-DUT2_CNF1-2’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=2,id=1,secret=’’)
memif_dump()
memif_dump()
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
hw_interface_set_mtu(sw_if_index=3,mtu=9200)
hw_interface_set_mtu(sw_if_index=4,mtu=9200)
memif_dump()
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x02x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_address_dump(sw_if_index=3,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=3,suppress=1)
ip_address_dump(sw_if_index=4,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=4,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:81’, ‘ip_address’: ‘2001:3::1’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c0’, ‘ip_address’: ‘2001:2::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:8b:21:a4:24’, ‘ip_address’: ‘4001::’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 3, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x04x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
cli_inband(cmd=’sr localsid address 2002:2:: behavior end.am nh 4001:: oif memif1/1 iif memif2/1’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)
cli_inband(cmd=’show hardware verbose’)

 78b-4t4c-ethip6srhip6- 
ip6base-srv6proxy-masq-mrr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
memif_socket_filename_add_del(is_add=True,socket_id=1,socket_filename=’/tmp/memif-DUT1_CNF1-1’)
memif_create(role=1,rx_queues=2,tx_queues=2,socket_id=1,id=1,secret=’’)
memif_dump()
memif_dump()
memif_socket_filename_add_del(is_add=True,socket_id=2,socket_filename=’/tmp/memif-DUT1_CNF1-2’)
memif_create(role=1,rx_queues=2,tx_queues=2,socket_id=2,id=1,secret=’’)
memif_dump()
memif_dump()
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
hw_interface_set_mtu(sw_if_index=3,mtu=9200)
hw_interface_set_mtu(sw_if_index=4,mtu=9200)
memif_dump()
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_address_dump(sw_if_index=3,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=3,suppress=1)
ip_address_dump(sw_if_index=4,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=4,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:7e’, ‘ip_address’: ‘2001:3::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c1’, ‘ip_address’: ‘2001:1::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:43:82:5a:75’, ‘ip_address’: ‘4002::’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 3, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x04x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
cli_inband(cmd=’sr localsid address 2003:2:: behavior end.am nh 4002:: oif memif1/1 iif memif2/1’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)
cli_inband(cmd=’show hardware verbose’)

DUT2:
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
memif_socket_filename_add_del(is_add=True,socket_id=1,socket_filename=’/tmp/memif-DUT2_CNF1-1’)
memif_create(role=1,rx_queues=2,tx_queues=2,socket_id=1,id=1,secret=’’)
memif_dump()
memif_dump()
memif_socket_filename_add_del(is_add=True,socket_id=2,socket_filename=’/tmp/memif-DUT2_CNF1-2’)
memif_create(role=1,rx_queues=2,tx_queues=2,socket_id=2,id=1,secret=’’)
memif_dump()
memif_dump()
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
hw_interface_set_mtu(sw_if_index=3,mtu=9200)
hw_interface_set_mtu(sw_if_index=4,mtu=9200)
memif_dump()
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x02x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_address_dump(sw_if_index=3,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=3,suppress=1)
ip_address_dump(sw_if_index=4,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=4,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:81’, ‘ip_address’: ‘2001:3::1’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c0’, ‘ip_address’: ‘2001:2::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:86:26:90:0c’, ‘ip_address’: ‘4001::’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 3, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x04x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
cli_inband(cmd=’sr localsid address 2002:2:: behavior end.am nh 4001:: oif memif1/1 iif memif2/1’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)
cli_inband(cmd=’show hardware verbose’)

10ge2p1x520-ethip6srhip6-ip6base-srv6proxy-stat-mrr

Packet throughput Segment routing over IPv6 dataplane with Static SRv6 proxy test cases

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

  • [Enc] Packet Encapsulations: Eth-IPv6-SRH-IPv6 on DUT1-DUT2 and DUTn->TG, Eth-IPv6 on TG->DUTn and DUTn-CNT for IPv6 routing over SRv6.

  • [Cfg] DUT configuration: DUT1 and DUT2 are configured with IPv6 routing and static route, SR policy and steering policy for one direction and one SR behaviour (function) - End.AS - for other direction. DUT1 and DUT2 are tested with Intel-X520-DA2.

  • [Ver] TG veriffication: In MaxReceivedRate tests TG sends traffic at line rate and reports total received packets over trial period. Test packets are generated by TG on links to DUTs. TG traffic profile contains two L3 flow-groups (flow-group per direction, 253 flows per flow-group) with all packets containing Ethernet header,IPv6 header with static payload. MAC addresses are matching MAC addresses of the TG node interfaces.

  • [Ref] Applicable standard specifications: SRv6 Network Programming - draft 3 and Segment Routing for Service Chaining - internet draft 01.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 78b-1t1c-ethip6srhip6- 
ip6base-srv6proxy-stat-mrr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
memif_socket_filename_add_del(is_add=True,socket_id=1,socket_filename=’/tmp/memif-DUT1_CNF1-1’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=1,id=1,secret=’’)
memif_dump()
memif_dump()
memif_socket_filename_add_del(is_add=True,socket_id=2,socket_filename=’/tmp/memif-DUT1_CNF1-2’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=2,id=1,secret=’’)
memif_dump()
memif_dump()
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
hw_interface_set_mtu(sw_if_index=3,mtu=9200)
hw_interface_set_mtu(sw_if_index=4,mtu=9200)
memif_dump()
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_address_dump(sw_if_index=3,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=3,suppress=1)
ip_address_dump(sw_if_index=4,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=4,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:7e’, ‘ip_address’: ‘2001:3::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c1’, ‘ip_address’: ‘2001:1::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:fb:8e:09:62’, ‘ip_address’: ‘4002::’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 3, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x04x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
cli_inband(cmd=’sr localsid address 2003:2:: behavior end.as nh 4002:: oif memif1/1 iif memif2/1 src 2003:1:: next 2003:3:: next 2003:4::’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)
cli_inband(cmd=’show hardware verbose’)

DUT2:
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
memif_socket_filename_add_del(is_add=True,socket_id=1,socket_filename=’/tmp/memif-DUT2_CNF1-1’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=1,id=1,secret=’’)
memif_dump()
memif_dump()
memif_socket_filename_add_del(is_add=True,socket_id=2,socket_filename=’/tmp/memif-DUT2_CNF1-2’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=2,id=1,secret=’’)
memif_dump()
memif_dump()
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
hw_interface_set_mtu(sw_if_index=3,mtu=9200)
hw_interface_set_mtu(sw_if_index=4,mtu=9200)
memif_dump()
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x02x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_address_dump(sw_if_index=3,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=3,suppress=1)
ip_address_dump(sw_if_index=4,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=4,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:81’, ‘ip_address’: ‘2001:3::1’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c0’, ‘ip_address’: ‘2001:2::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:70:e2:5b:e7’, ‘ip_address’: ‘4001::’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 3, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x04x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
cli_inband(cmd=’sr localsid address 2002:2:: behavior end.as nh 4001:: oif memif1/1 iif memif2/1 src 2002:1:: next 2002:3:: next 2002:4::’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)
cli_inband(cmd=’show hardware verbose’)

 78b-2t2c-ethip6srhip6- 
ip6base-srv6proxy-stat-mrr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
memif_socket_filename_add_del(is_add=True,socket_id=1,socket_filename=’/tmp/memif-DUT1_CNF1-1’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=1,id=1,secret=’’)
memif_dump()
memif_dump()
memif_socket_filename_add_del(is_add=True,socket_id=2,socket_filename=’/tmp/memif-DUT1_CNF1-2’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=2,id=1,secret=’’)
memif_dump()
memif_dump()
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
hw_interface_set_mtu(sw_if_index=3,mtu=9200)
hw_interface_set_mtu(sw_if_index=4,mtu=9200)
memif_dump()
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_address_dump(sw_if_index=3,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=3,suppress=1)
ip_address_dump(sw_if_index=4,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=4,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:7e’, ‘ip_address’: ‘2001:3::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c1’, ‘ip_address’: ‘2001:1::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:1d:42:b7:31’, ‘ip_address’: ‘4002::’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 3, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x04x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
cli_inband(cmd=’sr localsid address 2003:2:: behavior end.as nh 4002:: oif memif1/1 iif memif2/1 src 2003:1:: next 2003:3:: next 2003:4::’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)
cli_inband(cmd=’show hardware verbose’)

DUT2:
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
memif_socket_filename_add_del(is_add=True,socket_id=1,socket_filename=’/tmp/memif-DUT2_CNF1-1’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=1,id=1,secret=’’)
memif_dump()
memif_dump()
memif_socket_filename_add_del(is_add=True,socket_id=2,socket_filename=’/tmp/memif-DUT2_CNF1-2’)
memif_create(role=1,rx_queues=1,tx_queues=1,socket_id=2,id=1,secret=’’)
memif_dump()
memif_dump()
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
hw_interface_set_mtu(sw_if_index=3,mtu=9200)
hw_interface_set_mtu(sw_if_index=4,mtu=9200)
memif_dump()
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x02x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_address_dump(sw_if_index=3,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=3,suppress=1)
ip_address_dump(sw_if_index=4,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=4,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:81’, ‘ip_address’: ‘2001:3::1’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c0’, ‘ip_address’: ‘2001:2::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:06:3a:fb:8f’, ‘ip_address’: ‘4001::’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 3, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x04x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
cli_inband(cmd=’sr localsid address 2002:2:: behavior end.as nh 4001:: oif memif1/1 iif memif2/1 src 2002:1:: next 2002:3:: next 2002:4::’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)
cli_inband(cmd=’show hardware verbose’)

 78b-4t4c-ethip6srhip6- 
ip6base-srv6proxy-stat-mrr

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
memif_socket_filename_add_del(is_add=True,socket_id=1,socket_filename=’/tmp/memif-DUT1_CNF1-1’)
memif_create(role=1,rx_queues=2,tx_queues=2,socket_id=1,id=1,secret=’’)
memif_dump()
memif_dump()
memif_socket_filename_add_del(is_add=True,socket_id=2,socket_filename=’/tmp/memif-DUT1_CNF1-2’)
memif_create(role=1,rx_queues=2,tx_queues=2,socket_id=2,id=1,secret=’’)
memif_dump()
memif_dump()
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
hw_interface_set_mtu(sw_if_index=3,mtu=9200)
hw_interface_set_mtu(sw_if_index=4,mtu=9200)
memif_dump()
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x01x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_address_dump(sw_if_index=3,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=3,suppress=1)
ip_address_dump(sw_if_index=4,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=4,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:7e’, ‘ip_address’: ‘2001:3::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c1’, ‘ip_address’: ‘2001:1::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:4e:28:76:33’, ‘ip_address’: ‘4002::’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 3, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x02x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x02x00x04x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
cli_inband(cmd=’sr localsid address 2003:2:: behavior end.as nh 4002:: oif memif1/1 iif memif2/1 src 2003:1:: next 2003:3:: next 2003:4::’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)
cli_inband(cmd=’show hardware verbose’)

DUT2:
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
memif_socket_filename_add_del(is_add=True,socket_id=1,socket_filename=’/tmp/memif-DUT2_CNF1-1’)
memif_create(role=1,rx_queues=2,tx_queues=2,socket_id=1,id=1,secret=’’)
memif_dump()
memif_dump()
memif_socket_filename_add_del(is_add=True,socket_id=2,socket_filename=’/tmp/memif-DUT2_CNF1-2’)
memif_create(role=1,rx_queues=2,tx_queues=2,socket_id=2,id=1,secret=’’)
memif_dump()
memif_dump()
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_set_flags(sw_if_index=4,flags=1)
hw_interface_set_mtu(sw_if_index=3,mtu=9200)
hw_interface_set_mtu(sw_if_index=4,mtu=9200)
memif_dump()
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x02’}}})
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x02x00x01x00x00x00x00x00x00x00x00x00x00x00x01’}}})
sw_interface_add_del_address(sw_if_index=4,is_add=True,del_all=False,prefix={‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’0x02x00x01x00x00x00x00x00x00x00x00x00x00x00x02’}}})
ip_address_dump(sw_if_index=1,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=1,suppress=1)
ip_address_dump(sw_if_index=2,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=2,suppress=1)
ip_address_dump(sw_if_index=3,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=3,suppress=1)
ip_address_dump(sw_if_index=4,is_ipv6=True)
sw_interface_ip6nd_ra_config(sw_if_index=4,suppress=1)
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘80:41:26:6f:19:81’, ‘ip_address’: ‘2001:3::1’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘3c:fd:fe:a8:aa:c0’, ‘ip_address’: ‘2001:2::2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 3, ‘flags’: 0, ‘mac_address’: ‘02:fe:97:44:fe:60’, ‘ip_address’: ‘4001::’})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 2, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x03x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
ip_route_add_del(is_add=True,is_multipath=False,route={‘table_id’: 0, ‘prefix’: {‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’ x02x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 1, ‘nh’: {‘address’: {‘ip6’: b’ x01x00x02x00x00x00x00x00x00x00x00x00x00x00x02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
sr_set_encap_source(encaps_source=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x00’)
sr_policy_add(bsid_addr=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,weight=1,is_encap=1,sids={‘num_sids’: 3, ‘weight’: 1, ‘sids’: [{‘addr’: b’ x03x00x02x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x03x00x00x00x00x00x00x00x00x00x00x00x00’}, {‘addr’: b’ x03x00x04x00x00x00x00x00x00x00x00x00x00x00x00’}, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]})
sr_steering_add_del(is_del=0,bsid_addr=b’ x03x00x01x00x00x00x00x00x00x00x00x00x00x00x01’,sr_policy_index=0,table_id=0,prefix_addr=b’ x01x00x01x00x00x00x00x00x00x00x00x00x00x00x00’,mask_width=64,sw_if_index=4294967295,traffic_type=6)
cli_inband(cmd=’sr localsid address 2002:2:: behavior end.as nh 4001:: oif memif1/1 iif memif2/1 src 2002:1:: next 2002:3:: next 2002:4::’)
sw_interface_set_flags(sw_if_index=2,flags=1)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’clear runtime’)
cli_inband(cmd=’clear runtime’)
vpp-stats(path=’^/sys/node’)
vpp-stats(path=’^/sys/node’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear errors’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’clear interfaces’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’elog trace api cli barrier’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show event-logger’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show errors’)
cli_inband(cmd=’show hardware verbose’)
cli_inband(cmd=’show hardware verbose’)