crypto

ethip4

2n1l-10ge2p1x710-ethip4ipsec11tnlsw-ip4base-int-aes128cbc-hmac512sha-scapy

2n1l-10ge2p1x710-ethip4ipsec11tnlsw-ip4base-int-aes128cbc-hmac512sha-scapy

IPv4 IPsec tunnel mode test suite.

  • [Top] Network topologies: TG-DUT1 2-node topology with one link between nodes.

  • [Cfg] DUT configuration: On DUT1 create loopback interface, configure loopback an physical interface IPv4 addresses, static ARP

ecord, route and IPsec manual keyed connection in tunnel mode.

  • [Ver] TG verification: ETH-IP4 packet is sent from TG to DUT1. Packet is received on TG from DUT1.

  • [Ref] Applicable standard specifications: RFC4303.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-ethip4ipsec11tnlsw-ip4base- 
int-aes128cbc-hmac512sha-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 24, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8nx01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘ba:dc:0f:fe:00:00’, ‘ip_address’: ‘192.168.10.2’})
ip_route_add_del(is_add=True,is_multipath=True,route={‘table_id’: 0, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc0xa8nx02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_loopback_instance(mac_address=0,is_specified=False,user_instance=0)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 24, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=1,neighbor={‘sw_if_index’: 2, ‘flags’: 1, ‘mac_address’: ‘ba:dc:0f:fe:00:0a’, ‘ip_address’: ‘200.0.0.2’})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 32, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 32, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x01x01’}}})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 32, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00tx01’}}})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 32, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00nx01’}}})
ipip_add_tunnel(tunnel={‘instance’: 4294967295, ‘src’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}, ‘dst’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x02’}}, ‘table_id’: 0, ‘flags’: 0, ‘mode’: 0, ‘dscp’: 0})
ipip_add_tunnel(tunnel={‘instance’: 4294967295, ‘src’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x01x01’}}, ‘dst’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x02’}}, ‘table_id’: 0, ‘flags’: 0, ‘mode’: 0, ‘dscp’: 0})
ipip_add_tunnel(tunnel={‘instance’: 4294967295, ‘src’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00tx01’}}, ‘dst’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x02’}}, ‘table_id’: 0, ‘flags’: 0, ‘mode’: 0, ‘dscp’: 0})
ipip_add_tunnel(tunnel={‘instance’: 4294967295, ‘src’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00nx01’}}, ‘dst’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x02’}}, ‘table_id’: 0, ‘flags’: 0, ‘mode’: 0, ‘dscp’: 0})
ipsec_sad_entry_add(entry={‘sad_id’: 0, ‘spi’: 100000, ‘protocol’: 50, ‘crypto_algorithm’: 1, ‘crypto_key’: {‘length’: 16, ‘data’: b’OERQJxHsJDVttiHo’}, ‘integrity_algorithm’: 6, ‘integrity_key’: {‘length’: 64, ‘data’: b’DzhlwFuvxIQTlMUBbyImZchdKfCVVIcltLAGYrCTcSBPQcdSeFKaCIjckafqqzhD’}, ‘flags’: 0, ‘tunnel’: {‘src’: 0, ‘dst’: 0, ‘table_id’: 0, ‘encap_decap_flags’: 0, ‘dscp’: 0}, ‘salt’: 0, ‘udp_src_port’: 65535, ‘udp_dst_port’: 65535})
ipsec_sad_entry_add(entry={‘sad_id’: 100000, ‘spi’: 200000, ‘protocol’: 50, ‘crypto_algorithm’: 1, ‘crypto_key’: {‘length’: 16, ‘data’: b’OERQJxHsJDVttiHo’}, ‘integrity_algorithm’: 6, ‘integrity_key’: {‘length’: 64, ‘data’: b’DzhlwFuvxIQTlMUBbyImZchdKfCVVIcltLAGYrCTcSBPQcdSeFKaCIjckafqqzhD’}, ‘flags’: 64, ‘tunnel’: {‘src’: 0, ‘dst’: 0, ‘table_id’: 0, ‘encap_decap_flags’: 0, ‘dscp’: 0}, ‘salt’: 0, ‘udp_src_port’: 65535, ‘udp_dst_port’: 65535})
ipsec_sad_entry_add(entry={‘sad_id’: 1, ‘spi’: 100001, ‘protocol’: 50, ‘crypto_algorithm’: 1, ‘crypto_key’: {‘length’: 16, ‘data’: b’NoLseUmgUjQzpaMA’}, ‘integrity_algorithm’: 6, ‘integrity_key’: {‘length’: 64, ‘data’: b’XgzsZeESDSHfmOwHhOIMygswEDXcMOmlFjrVewYtYakjmahpmWpWXpxxbwHukWuV’}, ‘flags’: 0, ‘tunnel’: {‘src’: 0, ‘dst’: 0, ‘table_id’: 0, ‘encap_decap_flags’: 0, ‘dscp’: 0}, ‘salt’: 0, ‘udp_src_port’: 65535, ‘udp_dst_port’: 65535})
ipsec_sad_entry_add(entry={‘sad_id’: 100001, ‘spi’: 200001, ‘protocol’: 50, ‘crypto_algorithm’: 1, ‘crypto_key’: {‘length’: 16, ‘data’: b’NoLseUmgUjQzpaMA’}, ‘integrity_algorithm’: 6, ‘integrity_key’: {‘length’: 64, ‘data’: b’XgzsZeESDSHfmOwHhOIMygswEDXcMOmlFjrVewYtYakjmahpmWpWXpxxbwHukWuV’}, ‘flags’: 64, ‘tunnel’: {‘src’: 0, ‘dst’: 0, ‘table_id’: 0, ‘encap_decap_flags’: 0, ‘dscp’: 0}, ‘salt’: 0, ‘udp_src_port’: 65535, ‘udp_dst_port’: 65535})
ipsec_sad_entry_add(entry={‘sad_id’: 9, ‘spi’: 100009, ‘protocol’: 50, ‘crypto_algorithm’: 1, ‘crypto_key’: {‘length’: 16, ‘data’: b’IqmeHEHsyLZqPGhX’}, ‘integrity_algorithm’: 6, ‘integrity_key’: {‘length’: 64, ‘data’: b’DNwDQcUUfjQMGdUYxzkLzdwRSoSFCJgMAystTVZxyLDTVAAxDMmQHNQZWKQvNwMe’}, ‘flags’: 0, ‘tunnel’: {‘src’: 0, ‘dst’: 0, ‘table_id’: 0, ‘encap_decap_flags’: 0, ‘dscp’: 0}, ‘salt’: 0, ‘udp_src_port’: 65535, ‘udp_dst_port’: 65535})
ipsec_sad_entry_add(entry={‘sad_id’: 100009, ‘spi’: 200009, ‘protocol’: 50, ‘crypto_algorithm’: 1, ‘crypto_key’: {‘length’: 16, ‘data’: b’IqmeHEHsyLZqPGhX’}, ‘integrity_algorithm’: 6, ‘integrity_key’: {‘length’: 64, ‘data’: b’DNwDQcUUfjQMGdUYxzkLzdwRSoSFCJgMAystTVZxyLDTVAAxDMmQHNQZWKQvNwMe’}, ‘flags’: 64, ‘tunnel’: {‘src’: 0, ‘dst’: 0, ‘table_id’: 0, ‘encap_decap_flags’: 0, ‘dscp’: 0}, ‘salt’: 0, ‘udp_src_port’: 65535, ‘udp_dst_port’: 65535})
ipsec_sad_entry_add(entry={‘sad_id’: 10, ‘spi’: 100010, ‘protocol’: 50, ‘crypto_algorithm’: 1, ‘crypto_key’: {‘length’: 16, ‘data’: b’LSqDSwHjpIhIXRYR’}, ‘integrity_algorithm’: 6, ‘integrity_key’: {‘length’: 64, ‘data’: b’GbAjKANdsrTDqiSERhVgOPIfCqDEwhhLBykPQnRjmcYGFqmTSjAySoPAqOdoYKEg’}, ‘flags’: 0, ‘tunnel’: {‘src’: 0, ‘dst’: 0, ‘table_id’: 0, ‘encap_decap_flags’: 0, ‘dscp’: 0}, ‘salt’: 0, ‘udp_src_port’: 65535, ‘udp_dst_port’: 65535})
ipsec_sad_entry_add(entry={‘sad_id’: 100010, ‘spi’: 200010, ‘protocol’: 50, ‘crypto_algorithm’: 1, ‘crypto_key’: {‘length’: 16, ‘data’: b’LSqDSwHjpIhIXRYR’}, ‘integrity_algorithm’: 6, ‘integrity_key’: {‘length’: 64, ‘data’: b’GbAjKANdsrTDqiSERhVgOPIfCqDEwhhLBykPQnRjmcYGFqmTSjAySoPAqOdoYKEg’}, ‘flags’: 64, ‘tunnel’: {‘src’: 0, ‘dst’: 0, ‘table_id’: 0, ‘encap_decap_flags’: 0, ‘dscp’: 0}, ‘salt’: 0, ‘udp_src_port’: 65535, ‘udp_dst_port’: 65535})
ipsec_tunnel_protect_update(tunnel={‘sw_if_index’: 4, ‘nh’: {‘address’: 0, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘sa_out’: 0, ‘n_sa_in’: 1, ‘sa_in’: [100000]})
ipsec_tunnel_protect_update(tunnel={‘sw_if_index’: 5, ‘nh’: {‘address’: 0, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘sa_out’: 1, ‘n_sa_in’: 1, ‘sa_in’: [100001]})
ipsec_tunnel_protect_update(tunnel={‘sw_if_index’: 13, ‘nh’: {‘address’: 0, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘sa_out’: 9, ‘n_sa_in’: 1, ‘sa_in’: [100009]})
ipsec_tunnel_protect_update(tunnel={‘sw_if_index’: 14, ‘nh’: {‘address’: 0, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘sa_out’: 10, ‘n_sa_in’: 1, ‘sa_in’: [100010]})
sw_interface_set_unnumbered(is_add=True,sw_if_index=2,unnumbered_sw_if_index=4)
sw_interface_set_unnumbered(is_add=True,sw_if_index=2,unnumbered_sw_if_index=5)
sw_interface_set_unnumbered(is_add=True,sw_if_index=2,unnumbered_sw_if_index=13)
sw_interface_set_unnumbered(is_add=True,sw_if_index=2,unnumbered_sw_if_index=14)
sw_interface_set_flags(sw_if_index=4,flags=1)
sw_interface_set_flags(sw_if_index=5,flags=1)
sw_interface_set_flags(sw_if_index=13,flags=1)
sw_interface_set_flags(sw_if_index=14,flags=1)
ip_route_add_del(is_add=1,is_multipath=0,route={‘table_id’: 0, ‘prefix’: {‘len’: 32, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: 0, ‘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=1,is_multipath=0,route={‘table_id’: 0, ‘prefix’: {‘len’: 32, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x01’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 5, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: 0, ‘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=1,is_multipath=0,route={‘table_id’: 0, ‘prefix’: {‘len’: 32, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00t’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 13, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: 0, ‘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=1,is_multipath=0,route={‘table_id’: 0, ‘prefix’: {‘len’: 32, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00n’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 14, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: 0, ‘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]}]})

2n1l-10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-scapy

2n1l-10ge2p1x710-ethip4ipsec1tnlsw-ip4base-int-aes128cbc-hmac512sha-scapy

IPv4 IPsec tunnel mode test suite.

  • [Top] Network topologies: TG-DUT1 2-node topology with one link between nodes.

  • [Cfg] DUT configuration: On DUT1 create loopback interface, configure loopback an physical interface IPv4 addresses, static ARP irecord, route and IPsec manual keyed connection in tunnel mode.

  • [Ver] TG verification: ETH-IP4 packet is sent from TG to DUT1. Packet is received on TG from DUT1.

  • [Ref] Applicable standard specifications: RFC4303.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-ethip4ipsec1tnlsw-ip4base- 
int-aes128cbc-hmac512sha-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 24, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8nx01’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘ba:dc:0f:fe:00:00’, ‘ip_address’: ‘192.168.10.2’})
ip_route_add_del(is_add=True,is_multipath=True,route={‘table_id’: 0, ‘prefix’: {‘len’: 8, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’nx00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc0xa8nx02’}, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘n_labels’: 0, ‘label_stack’: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}]})
create_loopback_instance(mac_address=0,is_specified=False,user_instance=0)
sw_interface_set_flags(sw_if_index=3,flags=1)
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 24, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x01’}}})
ip_neighbor_add_del(is_add=1,neighbor={‘sw_if_index’: 2, ‘flags’: 1, ‘mac_address’: ‘ba:dc:0f:fe:00:0a’, ‘ip_address’: ‘200.0.0.2’})
sw_interface_add_del_address(sw_if_index=3,is_add=True,del_all=False,prefix={‘len’: 32, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}})
ipip_add_tunnel(tunnel={‘instance’: 4294967295, ‘src’: {‘af’: 0, ‘un’: {‘ip4’: b’dx00x00x01’}}, ‘dst’: {‘af’: 0, ‘un’: {‘ip4’: b’xc8x00x00x02’}}, ‘table_id’: 0, ‘flags’: 0, ‘mode’: 0, ‘dscp’: 0})
ipsec_sad_entry_add(entry={‘sad_id’: 0, ‘spi’: 100000, ‘protocol’: 50, ‘crypto_algorithm’: 1, ‘crypto_key’: {‘length’: 16, ‘data’: b’idrrIHmMSlIypcVN’}, ‘integrity_algorithm’: 6, ‘integrity_key’: {‘length’: 64, ‘data’: b’JsagwomyRqboKiDUWZJlLHLLFfsiSLqiMxVRHctEwALnJuNYcyPvaSYSuraKQzTa’}, ‘flags’: 0, ‘tunnel’: {‘src’: 0, ‘dst’: 0, ‘table_id’: 0, ‘encap_decap_flags’: 0, ‘dscp’: 0}, ‘salt’: 0, ‘udp_src_port’: 65535, ‘udp_dst_port’: 65535})
ipsec_sad_entry_add(entry={‘sad_id’: 100000, ‘spi’: 200000, ‘protocol’: 50, ‘crypto_algorithm’: 1, ‘crypto_key’: {‘length’: 16, ‘data’: b’idrrIHmMSlIypcVN’}, ‘integrity_algorithm’: 6, ‘integrity_key’: {‘length’: 64, ‘data’: b’JsagwomyRqboKiDUWZJlLHLLFfsiSLqiMxVRHctEwALnJuNYcyPvaSYSuraKQzTa’}, ‘flags’: 64, ‘tunnel’: {‘src’: 0, ‘dst’: 0, ‘table_id’: 0, ‘encap_decap_flags’: 0, ‘dscp’: 0}, ‘salt’: 0, ‘udp_src_port’: 65535, ‘udp_dst_port’: 65535})
ipsec_tunnel_protect_update(tunnel={‘sw_if_index’: 4, ‘nh’: {‘address’: 0, ‘via_label’: 1048576, ‘obj_id’: 4294967295}, ‘sa_out’: 0, ‘n_sa_in’: 1, ‘sa_in’: [100000]})
sw_interface_set_unnumbered(is_add=True,sw_if_index=2,unnumbered_sw_if_index=4)
sw_interface_set_flags(sw_if_index=4,flags=1)
ip_route_add_del(is_add=1,is_multipath=0,route={‘table_id’: 0, ‘prefix’: {‘len’: 32, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’x14x00x00x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 4, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: 0, ‘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]}]})

2n1l-10ge2p1x710-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac512sha-scapy

2n1l-10ge2p1x710-ethip4ipsec1tnlsw-ip4base-policy-aes128cbc-hmac512sha-scapy

IPv4 IPsec tunnel mode test suite.

  • [Top] Network topologies: TG-DUT1 2-node topology with one link between nodes.

  • [Cfg] DUT configuration: On DUT1 create loopback interface, configure loopback an physical interface IPv4 addresses, static ARP

ecord, route and IPsec manual keyed connection in tunnel mode.

  • [Ver] TG verification: ESP packet is sent from TG to DUT1. ESP packet is received on TG from DUT1.

  • [Ref] Applicable standard specifications: RFC4303.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-ethip4ipsec1tnlsw-ip4base- 
policy-aes128cbc-hmac512sha-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 24, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8dx03’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 24, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8x04x03’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘ba:dc:0f:fe:00:00’, ‘ip_address’: ‘192.168.100.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘ba:dc:0f:fe:00:0a’, ‘ip_address’: ‘192.168.4.4’})
ip_route_add_del(is_add=True,is_multipath=True,route={‘table_id’: 0, ‘prefix’: {‘len’: 24, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8x03x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc0xa8dx02’}, ‘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]}]})
ipsec_sad_entry_add(entry={‘sad_id’: 10, ‘spi’: 1001, ‘crypto_algorithm’: 1, ‘crypto_key’: {‘length’: 16, ‘data’: b’cBL0G0JuGhTXiBef’}, ‘integrity_algorithm’: 6, ‘integrity_key’: {‘length’: 64, ‘data’: b’bVSluQlbX9xWnpATp5FM0sRw6nycp9yBOMCEkVdWSbvx1TDQpWirQv71Q3QLBMvx’}, ‘flags’: 4, ‘tunnel’: {‘src’: ‘192.168.100.3’, ‘dst’: ‘192.168.100.2’, ‘table_id’: 0, ‘encap_decap_flags’: 0, ‘dscp’: 0}, ‘protocol’: 50, ‘udp_src_port’: 4500, ‘udp_dst_port’: 4500})
ipsec_sad_entry_add(entry={‘sad_id’: 20, ‘spi’: 1000, ‘crypto_algorithm’: 1, ‘crypto_key’: {‘length’: 16, ‘data’: b’cBL0G0JuGhTXiBef’}, ‘integrity_algorithm’: 6, ‘integrity_key’: {‘length’: 64, ‘data’: b’bVSluQlbX9xWnpATp5FM0sRw6nycp9yBOMCEkVdWSbvx1TDQpWirQv71Q3QLBMvx’}, ‘flags’: 4, ‘tunnel’: {‘src’: ‘192.168.100.2’, ‘dst’: ‘192.168.100.3’, ‘table_id’: 0, ‘encap_decap_flags’: 0, ‘dscp’: 0}, ‘protocol’: 50, ‘udp_src_port’: 4500, ‘udp_dst_port’: 4500})
ipsec_spd_add_del(is_add=True,spd_id=1)
ipsec_interface_add_del_spd(is_add=True,sw_if_index=1,spd_id=1)
ipsec_spd_entry_add_del(is_add=True,entry={‘spd_id’: 1, ‘priority’: 100, ‘is_outbound’: False, ‘sa_id’: 0, ‘policy’: 0, ‘protocol’: 50, ‘remote_address_start’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8dx03’}}, ‘remote_address_stop’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8dx03’}}, ‘local_address_start’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8dx02’}}, ‘local_address_stop’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8dx02’}}, ‘remote_port_start’: 0, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘local_port_stop’: 65535})
ipsec_spd_entry_add_del(is_add=True,entry={‘spd_id’: 1, ‘priority’: 100, ‘is_outbound’: True, ‘sa_id’: 0, ‘policy’: 0, ‘protocol’: 50, ‘remote_address_start’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8dx02’}}, ‘remote_address_stop’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8dx02’}}, ‘local_address_start’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8dx03’}}, ‘local_address_stop’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8dx03’}}, ‘remote_port_start’: 0, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘local_port_stop’: 65535})
ipsec_spd_entry_add_del(is_add=True,entry={‘spd_id’: 1, ‘priority’: 10, ‘is_outbound’: False, ‘sa_id’: 20, ‘policy’: 3, ‘protocol’: 0, ‘remote_address_start’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8x03x03’}}, ‘remote_address_stop’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8x03x03’}}, ‘local_address_start’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8x04x04’}}, ‘local_address_stop’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8x04x04’}}, ‘remote_port_start’: 0, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘local_port_stop’: 65535})
ipsec_spd_entry_add_del(is_add=True,entry={‘spd_id’: 1, ‘priority’: 10, ‘is_outbound’: True, ‘sa_id’: 10, ‘policy’: 3, ‘protocol’: 0, ‘remote_address_start’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8x03x03’}}, ‘remote_address_stop’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8x03x03’}}, ‘local_address_start’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8x04x04’}}, ‘local_address_stop’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8x04x04’}}, ‘remote_port_start’: 0, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘local_port_stop’: 65535})

2n1l-10ge2p1x710-ethip4ipsec1tptsw-ip4base-policy-aes128cbc-hmac512sha-scapy

2n1l-10ge2p1x710-ethip4ipsec1tptsw-ip4base-policy-aes128cbc-hmac512sha-scapy

IPv4 IPsec transport mode test suite.

  • [Top] Network topologies: TG-DUT1 2-node topology with one link between nodes.

  • [Cfg] DUT configuration: On DUT1 create loopback interface, configure loopback an physical interface IPv4 addresses, static ARP

ecord, route and IPsec manual keyed connection in transport mode.

  • [Ver] TG verification: ESP packet is sent from TG to DUT1. ESP packet is received on TG from DUT1.

  • [Ref] Applicable standard specifications: RFC4303.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 64b-0c-ethip4ipsec1tptsw-ip4base- 
policy-aes128cbc-hmac512sha-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 24, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8dx03’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 24, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8x04x03’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘ba:dc:0f:fe:00:00’, ‘ip_address’: ‘192.168.100.2’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘ba:dc:0f:fe:00:0a’, ‘ip_address’: ‘192.168.4.4’})
ip_route_add_del(is_add=True,is_multipath=True,route={‘table_id’: 0, ‘prefix’: {‘len’: 24, ‘address’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8x03x00’}}}, ‘n_paths’: 1, ‘paths’: [{‘sw_if_index’: 1, ‘table_id’: 0, ‘rpf_id’: 4294967295, ‘weight’: 1, ‘preference’: 1, ‘type’: 0, ‘flags’: 0, ‘proto’: 0, ‘nh’: {‘address’: {‘ip4’: b’xc0xa8dx02’}, ‘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]}]})
ipsec_sad_entry_add(entry={‘sad_id’: 10, ‘spi’: 1001, ‘crypto_algorithm’: 1, ‘crypto_key’: {‘length’: 16, ‘data’: b’zlHHid5CuFZnSpRE’}, ‘integrity_algorithm’: 6, ‘integrity_key’: {‘length’: 64, ‘data’: b’fbreuL66rivyjOH0hIbyutWFn91TZBEnEuLcODq1tdmXcOPcgynwKU2oheduP9oW’}, ‘flags’: 0, ‘tunnel’: {‘src’: ‘’, ‘dst’: ‘’, ‘table_id’: 0, ‘encap_decap_flags’: 0, ‘dscp’: 0}, ‘protocol’: 50, ‘udp_src_port’: 4500, ‘udp_dst_port’: 4500})
ipsec_sad_entry_add(entry={‘sad_id’: 20, ‘spi’: 1000, ‘crypto_algorithm’: 1, ‘crypto_key’: {‘length’: 16, ‘data’: b’zlHHid5CuFZnSpRE’}, ‘integrity_algorithm’: 6, ‘integrity_key’: {‘length’: 64, ‘data’: b’fbreuL66rivyjOH0hIbyutWFn91TZBEnEuLcODq1tdmXcOPcgynwKU2oheduP9oW’}, ‘flags’: 0, ‘tunnel’: {‘src’: ‘’, ‘dst’: ‘’, ‘table_id’: 0, ‘encap_decap_flags’: 0, ‘dscp’: 0}, ‘protocol’: 50, ‘udp_src_port’: 4500, ‘udp_dst_port’: 4500})
ipsec_spd_add_del(is_add=True,spd_id=1)
ipsec_interface_add_del_spd(is_add=True,sw_if_index=1,spd_id=1)
ipsec_spd_entry_add_del(is_add=True,entry={‘spd_id’: 1, ‘priority’: 100, ‘is_outbound’: False, ‘sa_id’: 0, ‘policy’: 0, ‘protocol’: 50, ‘remote_address_start’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8dx03’}}, ‘remote_address_stop’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8dx03’}}, ‘local_address_start’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8dx02’}}, ‘local_address_stop’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8dx02’}}, ‘remote_port_start’: 0, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘local_port_stop’: 65535})
ipsec_spd_entry_add_del(is_add=True,entry={‘spd_id’: 1, ‘priority’: 100, ‘is_outbound’: True, ‘sa_id’: 0, ‘policy’: 0, ‘protocol’: 50, ‘remote_address_start’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8dx02’}}, ‘remote_address_stop’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8dx02’}}, ‘local_address_start’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8dx03’}}, ‘local_address_stop’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8dx03’}}, ‘remote_port_start’: 0, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘local_port_stop’: 65535})
ipsec_spd_entry_add_del(is_add=True,entry={‘spd_id’: 1, ‘priority’: 10, ‘is_outbound’: False, ‘sa_id’: 20, ‘policy’: 3, ‘protocol’: 0, ‘remote_address_start’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8x03x03’}}, ‘remote_address_stop’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8x03x03’}}, ‘local_address_start’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8x04x04’}}, ‘local_address_stop’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8x04x04’}}, ‘remote_port_start’: 0, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘local_port_stop’: 65535})
ipsec_spd_entry_add_del(is_add=True,entry={‘spd_id’: 1, ‘priority’: 10, ‘is_outbound’: True, ‘sa_id’: 10, ‘policy’: 3, ‘protocol’: 0, ‘remote_address_start’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8x03x03’}}, ‘remote_address_stop’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8x03x03’}}, ‘local_address_start’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8x04x04’}}, ‘local_address_stop’: {‘af’: 0, ‘un’: {‘ip4’: b’xc0xa8x04x04’}}, ‘remote_port_start’: 0, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘local_port_stop’: 65535})

ethip6

2n1l-10ge2p1x710-ethip6ipsec1tnlsw-ip6base-policy-aes128cbc-hmac512sha-scapy

2n1l-10ge2p1x710-ethip6ipsec1tnlsw-ip6base-policy-aes128cbc-hmac512sha-scapy

IPv6 IPsec tunnel mode test suite.

  • [Top] Network topologies: TG-DUT1 2-node topology with one link between nodes.

  • [Cfg] DUT configuration: On DUT1 create loopback interface, configure loopback an physical interface IPv6 addresses, static ARP

ecord, route and IPsec manual keyed connection in tunnel mode.

  • [Ver] TG verification: ESP packet is sent from TG to DUT1. ESP packet is received on TG from DUT1.

  • [Ref] Applicable standard specifications: RFC4303.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 78b-0c-ethip6ipsec1tnlsw-ip6base- 
policy-aes128cbc-hmac512sha-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00`x00x00x00x00x00x00x00x00x00x00x00x03’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘ba:dc:0f:fe:00:00’, ‘ip_address’: ‘3ffe:5f::1’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘ba:dc:0f:fe:00:0a’, ‘ip_address’: ‘3ffe:60::4’})
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_route_add_del(is_add=True,is_multipath=True,route={‘table_id’: 0, ‘prefix’: {‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00ax00x00x00x00x00x00x00x00x00x00x00x03’}}}, ‘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’?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘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]}]})
ipsec_sad_entry_add(entry={‘sad_id’: 10, ‘spi’: 1001, ‘crypto_algorithm’: 1, ‘crypto_key’: {‘length’: 16, ‘data’: b’zv7MF8Xjrl6k63Ea’}, ‘integrity_algorithm’: 6, ‘integrity_key’: {‘length’: 64, ‘data’: b’whggMh6hLZpvmdL6wgaWvorZmLQtDdcq2hnyVyl7eS0Aj4JQWVQxP0c361LHbZ4X’}, ‘flags’: 12, ‘tunnel’: {‘src’: ‘3ffe:5f::2’, ‘dst’: ‘3ffe:5f::1’, ‘table_id’: 0, ‘encap_decap_flags’: 0, ‘dscp’: 0}, ‘protocol’: 50, ‘udp_src_port’: 4500, ‘udp_dst_port’: 4500})
ipsec_sad_entry_add(entry={‘sad_id’: 20, ‘spi’: 1000, ‘crypto_algorithm’: 1, ‘crypto_key’: {‘length’: 16, ‘data’: b’zv7MF8Xjrl6k63Ea’}, ‘integrity_algorithm’: 6, ‘integrity_key’: {‘length’: 64, ‘data’: b’whggMh6hLZpvmdL6wgaWvorZmLQtDdcq2hnyVyl7eS0Aj4JQWVQxP0c361LHbZ4X’}, ‘flags’: 12, ‘tunnel’: {‘src’: ‘3ffe:5f::1’, ‘dst’: ‘3ffe:5f::2’, ‘table_id’: 0, ‘encap_decap_flags’: 0, ‘dscp’: 0}, ‘protocol’: 50, ‘udp_src_port’: 4500, ‘udp_dst_port’: 4500})
ipsec_spd_add_del(is_add=True,spd_id=1)
ipsec_interface_add_del_spd(is_add=True,sw_if_index=1,spd_id=1)
ipsec_spd_entry_add_del(is_add=True,entry={‘spd_id’: 1, ‘priority’: 100, ‘is_outbound’: False, ‘sa_id’: 0, ‘policy’: 0, ‘protocol’: 50, ‘remote_address_start’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}}, ‘remote_address_stop’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}}, ‘local_address_start’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}}, ‘local_address_stop’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}}, ‘remote_port_start’: 0, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘local_port_stop’: 65535})
ipsec_spd_entry_add_del(is_add=True,entry={‘spd_id’: 1, ‘priority’: 100, ‘is_outbound’: True, ‘sa_id’: 0, ‘policy’: 0, ‘protocol’: 50, ‘remote_address_start’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}}, ‘remote_address_stop’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}}, ‘local_address_start’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}}, ‘local_address_stop’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}}, ‘remote_port_start’: 0, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘local_port_stop’: 65535})
ipsec_spd_entry_add_del(is_add=True,entry={‘spd_id’: 1, ‘priority’: 10, ‘is_outbound’: False, ‘sa_id’: 20, ‘policy’: 3, ‘protocol’: 0, ‘remote_address_start’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00ax00x00x00x00x00x00x00x00x00x00x00x03’}}, ‘remote_address_stop’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00ax00x00x00x00x00x00x00x00x00x00x00x03’}}, ‘local_address_start’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00`x00x00x00x00x00x00x00x00x00x00x00x04’}}, ‘local_address_stop’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00`x00x00x00x00x00x00x00x00x00x00x00x04’}}, ‘remote_port_start’: 0, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘local_port_stop’: 65535})
ipsec_spd_entry_add_del(is_add=True,entry={‘spd_id’: 1, ‘priority’: 10, ‘is_outbound’: True, ‘sa_id’: 10, ‘policy’: 3, ‘protocol’: 0, ‘remote_address_start’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00ax00x00x00x00x00x00x00x00x00x00x00x03’}}, ‘remote_address_stop’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00ax00x00x00x00x00x00x00x00x00x00x00x03’}}, ‘local_address_start’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00`x00x00x00x00x00x00x00x00x00x00x00x04’}}, ‘local_address_stop’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00`x00x00x00x00x00x00x00x00x00x00x00x04’}}, ‘remote_port_start’: 0, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘local_port_stop’: 65535})

2n1l-10ge2p1x710-ethip6ipsec1tptsw-ip6base-policy-aes128cbc-hmac512sha-scapy

2n1l-10ge2p1x710-ethip6ipsec1tptsw-ip6base-policy-aes128cbc-hmac512sha-scapy

IPv6 IPsec transport mode test suite.

  • [Top] Network topologies: TG-DUT1 2-node topology with one link between nodes.

  • [Cfg] DUT configuration: On DUT1 create loopback interface, configure loopback an physical interface IPv6 addresses, static ARP

ecord, route and IPsec manual keyed connection in transport mode.

  • [Ver] TG verification: ESP packet is sent from TG to DUT1. ESP packet is received on TG from DUT1.

  • [Ref] Applicable standard specifications: RFC4303.

 Test Name 

 VPP API Test Commands History - Commands Used Per Test Case 

 78b-0c-ethip6ipsec1tptsw-ip6base- 
policy-aes128cbc-hmac512sha-scapy

 DUT1:  
cli_inband(cmd=’show logging’)
show_version()
sw_interface_dump(name_filter_valid=False,name_filter=’’)
cli_inband(cmd=’trace add dpdk-input 50’)
cli_inband(cmd=’trace add vhost-user-input 50’)
cli_inband(cmd=’trace add memif-input 50’)
cli_inband(cmd=’trace add avf-input 50’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_set_flags(sw_if_index=1,flags=1)
hw_interface_set_mtu(sw_if_index=1,mtu=9200)
sw_interface_set_flags(sw_if_index=2,flags=1)
hw_interface_set_mtu(sw_if_index=2,mtu=9200)
sw_interface_dump(name_filter_valid=False,name_filter=’’)
sw_interface_add_del_address(sw_if_index=1,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}}})
sw_interface_add_del_address(sw_if_index=2,is_add=True,del_all=False,prefix={‘len’: 64, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00`x00x00x00x00x00x00x00x00x00x00x00x03’}}})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 1, ‘flags’: 0, ‘mac_address’: ‘ba:dc:0f:fe:00:00’, ‘ip_address’: ‘3ffe:5f::1’})
ip_neighbor_add_del(is_add=True,neighbor={‘sw_if_index’: 2, ‘flags’: 0, ‘mac_address’: ‘ba:dc:0f:fe:00:0a’, ‘ip_address’: ‘3ffe:60::4’})
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_route_add_del(is_add=True,is_multipath=True,route={‘table_id’: 0, ‘prefix’: {‘len’: 128, ‘address’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00ax00x00x00x00x00x00x00x00x00x00x00x03’}}}, ‘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’?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}, ‘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]}]})
ipsec_sad_entry_add(entry={‘sad_id’: 10, ‘spi’: 1001, ‘crypto_algorithm’: 1, ‘crypto_key’: {‘length’: 16, ‘data’: b’pCqupO8J5xq7y6Yq’}, ‘integrity_algorithm’: 6, ‘integrity_key’: {‘length’: 64, ‘data’: b’Vp5HyR5bhR6Xt0sGkng1ja1NkrBAaMyW1Y4WZCePBh6YyZW14KweDLGtxSnZV2aV’}, ‘flags’: 0, ‘tunnel’: {‘src’: ‘’, ‘dst’: ‘’, ‘table_id’: 0, ‘encap_decap_flags’: 0, ‘dscp’: 0}, ‘protocol’: 50, ‘udp_src_port’: 4500, ‘udp_dst_port’: 4500})
ipsec_sad_entry_add(entry={‘sad_id’: 20, ‘spi’: 1000, ‘crypto_algorithm’: 1, ‘crypto_key’: {‘length’: 16, ‘data’: b’pCqupO8J5xq7y6Yq’}, ‘integrity_algorithm’: 6, ‘integrity_key’: {‘length’: 64, ‘data’: b’Vp5HyR5bhR6Xt0sGkng1ja1NkrBAaMyW1Y4WZCePBh6YyZW14KweDLGtxSnZV2aV’}, ‘flags’: 0, ‘tunnel’: {‘src’: ‘’, ‘dst’: ‘’, ‘table_id’: 0, ‘encap_decap_flags’: 0, ‘dscp’: 0}, ‘protocol’: 50, ‘udp_src_port’: 4500, ‘udp_dst_port’: 4500})
ipsec_spd_add_del(is_add=True,spd_id=1)
ipsec_interface_add_del_spd(is_add=True,sw_if_index=1,spd_id=1)
ipsec_spd_entry_add_del(is_add=True,entry={‘spd_id’: 1, ‘priority’: 100, ‘is_outbound’: False, ‘sa_id’: 0, ‘policy’: 0, ‘protocol’: 50, ‘remote_address_start’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}}, ‘remote_address_stop’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}}, ‘local_address_start’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}}, ‘local_address_stop’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}}, ‘remote_port_start’: 0, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘local_port_stop’: 65535})
ipsec_spd_entry_add_del(is_add=True,entry={‘spd_id’: 1, ‘priority’: 100, ‘is_outbound’: True, ‘sa_id’: 0, ‘policy’: 0, ‘protocol’: 50, ‘remote_address_start’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}}, ‘remote_address_stop’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00_x00x00x00x00x00x00x00x00x00x00x00x01’}}, ‘local_address_start’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}}, ‘local_address_stop’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00_x00x00x00x00x00x00x00x00x00x00x00x02’}}, ‘remote_port_start’: 0, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘local_port_stop’: 65535})
ipsec_spd_entry_add_del(is_add=True,entry={‘spd_id’: 1, ‘priority’: 10, ‘is_outbound’: False, ‘sa_id’: 20, ‘policy’: 3, ‘protocol’: 0, ‘remote_address_start’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00ax00x00x00x00x00x00x00x00x00x00x00x03’}}, ‘remote_address_stop’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00ax00x00x00x00x00x00x00x00x00x00x00x03’}}, ‘local_address_start’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00`x00x00x00x00x00x00x00x00x00x00x00x04’}}, ‘local_address_stop’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00`x00x00x00x00x00x00x00x00x00x00x00x04’}}, ‘remote_port_start’: 0, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘local_port_stop’: 65535})
ipsec_spd_entry_add_del(is_add=True,entry={‘spd_id’: 1, ‘priority’: 10, ‘is_outbound’: True, ‘sa_id’: 10, ‘policy’: 3, ‘protocol’: 0, ‘remote_address_start’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00ax00x00x00x00x00x00x00x00x00x00x00x03’}}, ‘remote_address_stop’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00ax00x00x00x00x00x00x00x00x00x00x00x03’}}, ‘local_address_start’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00`x00x00x00x00x00x00x00x00x00x00x00x04’}}, ‘local_address_stop’: {‘af’: 1, ‘un’: {‘ip6’: b’?xfex00`x00x00x00x00x00x00x00x00x00x00x00x04’}}, ‘remote_port_start’: 0, ‘remote_port_stop’: 65535, ‘local_port_start’: 0, ‘local_port_stop’: 65535})