CSIT-704: Add ACL IP4BASE perf tests
[csit.git] / resources / libraries / robot / performance / performance_configuration.robot
index adf233d..4d0e53f 100644 (file)
@@ -21,6 +21,7 @@
 | Library | resources.libraries.python.VhostUser
 | Library | resources.libraries.python.TrafficGenerator
 | Library | resources.libraries.python.TrafficGenerator.TGDropRateSearchImpl
+| Library | resources.libraries.python.Classify
 | Resource | resources/libraries/robot/shared/default.robot
 | Resource | resources/libraries/robot/shared/interfaces.robot
 | Resource | resources/libraries/robot/shared/counters.robot
 | | All Vpp Interfaces Ready Wait | ${nodes}
 | | Configure IPv4 ACLs | ${dut1} | ${dut1_if1} | ${dut1_if2}
 
+| Initialize IPv4 routing for '${ip_nr}' addresses with IPv4 ACLs on DUT1 in 3-node circular topology
+| | [Documentation]
+| | ... | Set UP state on VPP interfaces in path on nodes in 3-node circular
+| | ... | topology. Get the interface MAC addresses and setup ARP on all VPP
+| | ... | interfaces. Setup IPv4 addresses with /24 prefix on DUT-TG links and
+| | ... | /30 prefix on DUT1-DUT2 link. Set routing on both DUT nodes with
+| | ... | prefix /24 and next hops of neighbour DUT interface IPv4 address.
+| | ... | Apply required ACL rules to DUT1 interfaces.
+| | ...
+| | ... | _NOTE:_ This KW uses following test case variables:
+| | ... | - ${dut1} - DUT1 node.
+| | ... | - ${dut2} - DUT2 node.
+| | ... | - ${dut1_if1} - DUT1 interface towards TG.
+| | ... | - ${dut1_if2} - DUT1 interface towards DUT2.
+| | ... | - ${dut2_if1} - DUT2 interface towards DUT1.
+| | ... | - ${dut2_if2} - DUT2 interface towards TG.
+| | ...
+| | Set Interface State | ${dut1} | ${dut1_if1} | up
+| | Set Interface State | ${dut1} | ${dut1_if2} | up
+| | Set Interface State | ${dut2} | ${dut2_if1} | up
+| | Set Interface State | ${dut2} | ${dut2_if2} | up
+| | ${tg1_if1_mac}= | Get Interface MAC | ${tg} | ${tg_if1}
+| | ${tg1_if2_mac}= | Get Interface MAC | ${tg} | ${tg_if2}
+| | ${dut1_if2_mac}= | Get Interface MAC | ${dut1} | ${dut1_if2}
+| | ${dut2_if1_mac}= | Get Interface MAC | ${dut2} | ${dut2_if1}
+| | :FOR | ${number} | IN RANGE | 2 | ${ip_nr}+2
+| | | Add arp on dut | ${dut1} | ${dut1_if1} | 10.10.10.${number}
+| | | ... | ${tg1_if1_mac}
+| | | Add arp on dut | ${dut2} | ${dut2_if2} | 20.20.20.${number}
+| | | ... | ${tg1_if2_mac}
+| | Add arp on dut | ${dut1} | ${dut1_if2} | 1.1.1.2 | ${dut2_if1_mac}
+| | Add arp on dut | ${dut2} | ${dut2_if1} | 1.1.1.1 | ${dut1_if2_mac}
+| | Configure IP addresses on interfaces
+| | ... | ${dut1} | ${dut1_if1} | 10.10.10.1 | 24
+| | ... | ${dut1} | ${dut1_if2} | 1.1.1.1 | 30
+| | ... | ${dut2} | ${dut2_if1} | 1.1.1.2 | 30
+| | ... | ${dut2} | ${dut2_if2} | 20.20.20.1 | 24
+| | Vpp Route Add | ${dut1} | 20.20.20.0 | 24 | 1.1.1.2 | ${dut1_if2}
+| | Vpp Route Add | ${dut2} | 10.10.10.0 | 24 | 1.1.1.1 | ${dut2_if1}
+| | All Vpp Interfaces Ready Wait | ${nodes}
+| | Configure IPv4 ACLs | ${dut1} | ${dut1_if1} | ${dut1_if2}
+
 | Initialize L2 bridge domains with Vhost-User in 3-node circular topology
 | | [Documentation]
 | | ... | Create two Vhost-User interfaces on all defined VPP nodes. Add each