cop package

eth2p-ethip4-ip4base-copblklistbase-func module

TC01: DUT drops IPv4 pkts with COP blacklist set with IPv4 src-addr

[Top] TG-DUT1-DUT2-TG. [Enc] Eth-IPv4-ICMPv4. [Cfg] On DUT1 configure interface IPv4 addresses and routes in the main routing domain, add COP blacklist on interface to TG with IPv4 src-addr matching packets generated by TG; on DUT2 configure L2 xconnect. [Ver] Make TG send ICMPv4 Echo Req on its interface to DUT1; verify no ICMPv4 Echo Req pkts are received. [Ref]


Given Path for 3-node testing is set  ${tg_node}  ${dut1_node}  ${dut2_node}  ${tg_node}
  And Interfaces in 3-node path are up
  And L2 setup xconnect on DUT  ${dut2_node}  ${dut2_to_dut1}  ${dut2_to_tg}
  And Set Interface Address  ${dut1_node}  ${dut1_to_tg}  ${dut1_if1_ip}  ${ip_prefix}
  And Set Interface Address  ${dut1_node}  ${dut1_to_dut2}  ${dut1_if2_ip}  ${ip_prefix}
  And Add Arp On Dut  ${dut1_node}  ${dut1_to_tg}  ${dut1_if1_ip_GW}  ${tg_to_dut1_mac}
  And Add Arp On Dut  ${dut1_node}  ${dut1_to_dut2}  ${dut1_if2_ip_GW}  ${tg_to_dut2_mac}
  And Vpp Route Add  ${dut1_node}  ${test_dst_ip}  ${ip_prefix}  ${dut1_if2_ip_GW}  ${dut1_to_dut2}
  And Add fib table  ${dut1_node}  ${cop_dut_ip}  ${ip_prefix}  ${fib_table_number}  drop
 When COP Add whitelist Entry  ${dut1_node}  ${dut1_to_tg}  ip4  ${fib_table_number}
  And COP interface enable or disable  ${dut1_node}  ${dut1_to_tg}  enable
 Then Send packet from Port to Port should failed  ${tg_node}  ${test_src_ip}  ${test_dst_ip}  ${tg_to_dut1}  ${tg_to_dut1_mac}  ${dut1_to_tg_mac}  ${tg_to_dut2}  ${dut1_to_dut2_mac}  ${tg_to_dut2_mac}

eth2p-ethip4-ip4base-copwhlistbase-func module

TC01: DUT permits IPv4 pkts with COP whitelist set with IPv4 src-addr

[Top] TG-DUT1-DUT2-TG. [Enc] Eth-IPv4-ICMPv4. [Cfg] On DUT1 configure interface IPv4 addresses and routes in the main routing domain, add COP whitelist on interface to TG with IPv4 src-addr matching packets generated by TG; on DUT2 configure L2 xconnect. [Ver] Make TG send ICMPv4 Echo Req on its interface to DUT1; verify received ICMPv4 Echo Req pkts are correct. [Ref]


Given Path for 3-node testing is set  ${tg_node}  ${dut1_node}  ${dut2_node}  ${tg_node}
  And Interfaces in 3-node path are up
  And L2 setup xconnect on DUT  ${dut2_node}  ${dut2_to_dut1}  ${dut2_to_tg}
  And Set Interface Address  ${dut1_node}  ${dut1_to_tg}  ${dut1_if1_ip}  ${ip_prefix}
  And Set Interface Address  ${dut1_node}  ${dut1_to_dut2}  ${dut1_if2_ip}  ${ip_prefix}
  And Add Arp On Dut  ${dut1_node}  ${dut1_to_tg}  ${dut1_if1_ip_GW}  ${tg_to_dut1_mac}
  And Add Arp On Dut  ${dut1_node}  ${dut1_to_dut2}  ${dut1_if2_ip_GW}  ${tg_to_dut2_mac}
  And Vpp Route Add  ${dut1_node}  ${test_dst_ip}  ${ip_prefix}  ${dut1_if2_ip_GW}  ${dut1_to_dut2}
  And Add fib table  ${dut1_node}  ${cop_dut_ip}  ${ip_prefix}  ${fib_table_number}  local
 When COP Add whitelist Entry  ${dut1_node}  ${dut1_to_tg}  ip4  ${fib_table_number}
  And COP interface enable or disable  ${dut1_node}  ${dut1_to_tg}  enable
 Then Send Packet And Check Headers  ${tg_node}  ${test_src_ip}  ${test_dst_ip}  ${tg_to_dut1}  ${tg_to_dut1_mac}  ${dut1_to_tg_mac}  ${tg_to_dut2}  ${dut1_to_dut2_mac}  ${tg_to_dut2_mac}

eth2p-ethip6-ip6base-copblklistbase-func module

TC01: DUT drops IPv6 pkts with COP blacklist set with IPv6 src-addr

[Top] TG-DUT1-DUT2-TG. [Enc] Eth-IPv6-ICMPv6. [Cfg] On DUT1 configure interface IPv6 addresses and routes in the main routing domain, add COP blacklist on interface to TG with IPv6 src-addr matching packets generated by TG; on DUT2 configure L2 xconnect. [Ver] Make TG send ICMPv6 Echo Req on its interface to DUT1; verify no ICMPv6 Echo Req pkts are received. [Ref]


Given Path for 3-node testing is set  ${tg_node}  ${dut1_node}  ${dut2_node}  ${tg_node}
  And Interfaces in 3-node path are up
  And L2 setup xconnect on DUT  ${dut2_node}  ${dut2_to_dut1}  ${dut2_to_tg}
  And VPP Set IF IPv6 Addr  ${dut1_node}  ${dut1_to_tg}  ${dut1_if1_ip}  ${ip_prefix}
  And VPP Set IF IPv6 Addr  ${dut1_node}  ${dut1_to_dut2}  ${dut1_if2_ip}  ${ip_prefix}
  And VPP Set IF IPv6 Addr  ${dut2_node}  ${dut2_to_dut1}  ${dut2_if1_ip}  ${ip_prefix}
  And VPP Set IF IPv6 Addr  ${dut2_node}  ${dut2_to_tg}  ${dut2_if2_ip}  ${ip_prefix}
  And Add IP Neighbor  ${dut1_node}  ${dut1_to_tg}  ${dut1_if1_ip_GW}  ${tg_to_dut1_mac}
  And Add IP Neighbor  ${dut1_node}  ${dut1_to_dut2}  ${dut1_if2_ip_GW}  ${tg_to_dut2_mac}
  And Vpp Route Add  ${dut1_node}  ${test_dst_ip}  ${ip_prefix}  ${dut1_if2_ip_GW}  ${dut1_to_dut2}
  And Vpp All Ra Suppress Link Layer  ${nodes}
  And Add fib table  ${dut1_node}  ${cop_dut_ip}  ${ip_prefix}  ${fib_table_number}  drop
 When COP Add whitelist Entry  ${dut1_node}  ${dut1_to_tg}  ip6  ${fib_table_number}
  And COP interface enable or disable  ${dut1_node}  ${dut1_to_tg}  enable
 Then Send packet from Port to Port should failed  ${tg_node}  ${test_src_ip}  ${test_dst_ip}  ${tg_to_dut1}  ${tg_to_dut1_mac}  ${dut1_to_tg_mac}  ${tg_to_dut2}  ${dut1_to_dut2_mac}  ${tg_to_dut2_mac}

eth2p-ethip6-ip6base-copwhlistbase-func module

TC01: DUT permits IPv6 pkts with COP whitelist set with IPv6 src-addr

[Top] TG-DUT1-DUT2-TG. [Enc] Eth-IPv6-ICMPv6. [Cfg] On DUT1 configure interface IPv6 addresses and routes in the main routing domain, add COP whitelist on interface to TG with IPv6 src-addr matching packets generated by TG; on DUT2 configure L2 xconnect. [Ver] Make TG send ICMPv6 Echo Req on its interface to DUT1; verify received ICMPv6 Echo Req pkts are correct. [Ref]


Given Path for 3-node testing is set  ${tg_node}  ${dut1_node}  ${dut2_node}  ${tg_node}
  And Interfaces in 3-node path are up
  And L2 setup xconnect on DUT  ${dut2_node}  ${dut2_to_dut1}  ${dut2_to_tg}
  And VPP Set IF IPv6 Addr  ${dut1_node}  ${dut1_to_tg}  ${dut1_if1_ip}  ${ip_prefix}
  And VPP Set IF IPv6 Addr  ${dut1_node}  ${dut1_to_dut2}  ${dut1_if2_ip}  ${ip_prefix}
  And VPP Set IF IPv6 Addr  ${dut2_node}  ${dut2_to_dut1}  ${dut2_if1_ip}  ${ip_prefix}
  And VPP Set IF IPv6 Addr  ${dut2_node}  ${dut2_to_tg}  ${dut2_if2_ip}  ${ip_prefix}
  And Add IP Neighbor  ${dut1_node}  ${dut1_to_tg}  ${dut1_if1_ip_GW}  ${tg_to_dut1_mac}
  And Add IP Neighbor  ${dut1_node}  ${dut1_to_dut2}  ${dut1_if2_ip_GW}  ${tg_to_dut2_mac}
  And Vpp Route Add  ${dut1_node}  ${test_dst_ip}  ${ip_prefix}  ${dut1_if2_ip_GW}  ${dut1_to_dut2}
  And Vpp All Ra Suppress Link Layer  ${nodes}
  And Add fib table  ${dut1_node}  ${cop_dut_ip}  ${ip_prefix}  ${fib_table_number}  local
 When COP Add whitelist Entry  ${dut1_node}  ${dut1_to_tg}  ip6  ${fib_table_number}
  And COP interface enable or disable  ${dut1_node}  ${dut1_to_tg}  enable
 Then Send Packet And Check Headers  ${tg_node}  ${test_src_ip}  ${test_dst_ip}  ${tg_to_dut1}  ${tg_to_dut1_mac}  ${dut1_to_tg_mac}  ${tg_to_dut2}  ${dut1_to_dut2_mac}  ${tg_to_dut2_mac}