Performance IPv6 library and short/long test cases
[csit.git] / tests / suites / performance / long_ipv6.robot
1 # Copyright (c) 2016 Cisco and/or its affiliates.
2 # Licensed under the Apache License, Version 2.0 (the "License");
3 # you may not use this file except in compliance with the License.
4 # You may obtain a copy of the License at:
5 #
6 #     http://www.apache.org/licenses/LICENSE-2.0
7 #
8 # Unless required by applicable law or agreed to in writing, software
9 # distributed under the License is distributed on an "AS IS" BASIS,
10 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 # See the License for the specific language governing permissions and
12 # limitations under the License.
13 *** Settings ***
14 | Resource | resources/libraries/robot/performance.robot
15 | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | PERFTEST_LONG
16 | Suite Setup | 3-node Performance Suite Setup | L3
17 | Suite Teardown | 3-node Performance Suite Teardown
18 | Test Setup | Setup all DUTs before test
19 | Test Teardown | Run Keyword | Show statistics on all DUTs
20 | Documentation | *Throughput search suite (based on RFC2544).*
21 | ...
22 | ... | Test suite uses 3-node topology TG - DUT1 - DUT2 - TG, with one link
23 | ... | between nodes. Traffic profile contain 2 L3 streams (1 stream per
24 | ... | direction). Packets contain Ethernet header, IPv6 header, and random
25 | ... | payload. Ethernet header MAC addresses are matching MAC addresses
26 | ... | of the TG node.
27
28 *** Test Cases ***
29 | Find NDR by using RFC2544 linear search and 78B frames through IPv6 forwarding in 3-node topology
30 | | [Documentation]
31 | | ... | Find throughput with non drop rate for 78B frames by using
32 | | ... | linear search starting at 4.0Mpps, stepping down with step of 0.1Mpps
33 | | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD
34 | | ${framesize}= | Set Variable | 78
35 | | ${start_rate}= | Set Variable | 4000000
36 | | ${step_rate}= | Set Variable | 100000
37 | | ${min_rate}= | Set Variable | 100000
38 | | ${max_rate}= | Set Variable | 14880952
39 | | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
40 | | And   IPv6 forwarding initialized in a 3-node circular topology
41 | | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
42 | | ...                                       | ${step_rate} | 3-node-IPv6
43 | | ...                                       | ${min_rate} | ${max_rate}
44
45 | Find NDR by using RFC2544 linear search and 1518B frames through IPv6 forwarding in 3-node topology
46 | | [Documentation]
47 | | ... | Find throughput with non drop rate for 1518B frames by using
48 | | ... | linear search starting at 812,743pps, stepping down with step of
49 | | ... | 10,000pps
50 | | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD
51 | | ${framesize}= | Set Variable | 1518
52 | | ${start_rate}= | Set Variable | 812743
53 | | ${step_rate}= | Set Variable | 10000
54 | | ${min_rate}= | Set Variable | 10000
55 | | ${max_rate}= | Set Variable | 812743
56 | | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
57 | | And   IPv6 forwarding initialized in a 3-node circular topology
58 | | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
59 | | ...                                       | ${step_rate} | 3-node-IPv6
60 | | ...                                       | ${min_rate} | ${max_rate}
61
62 | Find NDR by using RFC2544 linear search and 9000B frames through IPv6 forwarding in 3-node topology
63 | | [Documentation]
64 | | ... | Find throughput with non drop rate for 9000B frames by using
65 | | ... | linear search starting at 138,580pps, stepping down with step of
66 | | ... | 5,000pps
67 | | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD
68 | | ${framesize}= | Set Variable | 9000
69 | | ${start_rate}= | Set Variable | 138580
70 | | ${step_rate}= | Set Variable | 5000
71 | | ${min_rate}= | Set Variable | 5000
72 | | ${max_rate}= | Set Variable | 138580
73 | | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
74 | | And   IPv6 forwarding initialized in a 3-node circular topology
75 | | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
76 | | ...                                       | ${step_rate} | 3-node-IPv6
77 | | ...                                       | ${min_rate} | ${max_rate}
78
79 | Find NDR with 2 cores and rss 1 by using RFC2544 linear search and 78B frames through IPv6 forwarding in 3-node topology
80 | | [Documentation]
81 | | ... | Find throughput on 2 cores with non drop rate for 78B frames by using
82 | | ... | linear search starting at 7.8Mpps, stepping down with step of 0.1Mpps
83 | | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD
84 | | ${framesize}= | Set Variable | 78
85 | | ${start_rate}= | Set Variable | 7800000
86 | | ${step_rate}= | Set Variable | 100000
87 | | ${min_rate}= | Set Variable | 100000
88 | | ${max_rate}= | Set Variable | 14880952
89 | | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
90 | | And   IPv6 forwarding initialized in a 3-node circular topology
91 | | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
92 | | ...                                       | ${step_rate} | 3-node-IPv6
93 | | ...                                       | ${min_rate} | ${max_rate}
94
95 | Find NDR with 2 cores and rss 1 by using RFC2544 linear search and 1518B frames through IPv6 forwarding in 3-node topology
96 | | [Documentation]
97 | | ... | Find throughput on 2 cores with non drop rate for 1518B frames by
98 | | ... | using linear search starting at 812,743pps, stepping down with step
99 | | ... | of 10.000pps
100 | | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD
101 | | ${framesize}= | Set Variable | 1518
102 | | ${start_rate}= | Set Variable | 812743
103 | | ${step_rate}= | Set Variable | 10000
104 | | ${min_rate}= | Set Variable | 10000
105 | | ${max_rate}= | Set Variable | 812743
106 | | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
107 | | And   IPv6 forwarding initialized in a 3-node circular topology
108 | | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
109 | | ...                                       | ${step_rate} | 3-node-IPv6
110 | | ...                                       | ${min_rate} | ${max_rate}
111
112 | Find NDR with 2 cores and rss 1 by using RFC2544 linear search and 9000B frames through IPv6 forwarding in 3-node topology
113 | | [Documentation]
114 | | ... | Find throughput on 2 cores with non drop rate for 9000B frames by
115 | | ... | using linear search starting at 138,580pps, stepping down with step
116 | | ... | of 5,000pps
117 | | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD
118 | | ${framesize}= | Set Variable | 9000
119 | | ${start_rate}= | Set Variable | 138580
120 | | ${step_rate}= | Set Variable | 5000
121 | | ${min_rate}= | Set Variable | 5000
122 | | ${max_rate}= | Set Variable | 138580
123 | | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
124 | | And   IPv6 forwarding initialized in a 3-node circular topology
125 | | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
126 | | ...                                       | ${step_rate} | 3-node-IPv6
127 | | ...                                       | ${min_rate} | ${max_rate}
128
129 | Find NDR with 4 cores and rss 2 by using RFC2544 linear search and 78B frames through IPv6 forwarding in 3-node topology
130 | | [Documentation]
131 | | ... | Find throughput on 4 cores and rss 2 with non drop rate for 78B
132 | | ... | frames by using linear search starting at 9.8Mpps, stepping down with
133 | | ... | step of 0.1Mpps
134 | | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD
135 | | ${framesize}= | Set Variable | 78
136 | | ${start_rate}= | Set Variable | 9800000
137 | | ${step_rate}= | Set Variable | 100000
138 | | ${min_rate}= | Set Variable | 100000
139 | | ${max_rate}= | Set Variable | 14880952
140 | | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
141 | | And   IPv6 forwarding initialized in a 3-node circular topology
142 | | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
143 | | ...                                       | ${step_rate} | 3-node-IPv6
144 | | ...                                       | ${min_rate} | ${max_rate}
145
146 | Find NDR with 4 cores and rss 2 by using RFC2544 linear search and 1518B frames through IPv6 forwarding in 3-node topology
147 | | [Documentation]
148 | | ... | Find throughput on 4 cores and rss 2 with non drop rate for 1518B
149 | | ... | frames by using linear search starting at 812,743pps, stepping down
150 | | ... | with step of 10.000pps
151 | | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD
152 | | ${framesize}= | Set Variable | 1518
153 | | ${start_rate}= | Set Variable | 812743
154 | | ${step_rate}= | Set Variable | 10000
155 | | ${min_rate}= | Set Variable | 10000
156 | | ${max_rate}= | Set Variable | 812743
157 | | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
158 | | And   IPv6 forwarding initialized in a 3-node circular topology
159 | | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
160 | | ...                                       | ${step_rate} | 3-node-IPv6
161 | | ...                                       | ${min_rate} | ${max_rate}
162
163 | Find NDR with 4 cores and rss 2 by using RFC2544 linear search and 9000B frames through IPv6 forwarding in 3-node topology
164 | | [Documentation]
165 | | ... | Find throughput on 4 cores and rss 2 with non drop rate for 9000B
166 | | ... | frames by using linear search starting at 138,580pps, stepping down
167 | | ... | with step of 5,000pps
168 | | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD
169 | | ${framesize}= | Set Variable | 9000
170 | | ${start_rate}= | Set Variable | 138580
171 | | ${step_rate}= | Set Variable | 5000
172 | | ${min_rate}= | Set Variable | 5000
173 | | ${max_rate}= | Set Variable | 138580
174 | | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
175 | | And   IPv6 forwarding initialized in a 3-node circular topology
176 | | Then Find NDR using linear search and pps | ${framesize} | ${start_rate}
177 | | ...                                       | ${step_rate} | 3-node-IPv6
178 | | ...                                       | ${min_rate} | ${max_rate}
179
180 | Find NDR with 2 cores by using RFC2544 binary search and 78B frames through IPv6 forwarding in 3-node topology
181 | | [Documentation]
182 | | ... | Find throughput on 2 cores with non drop rate for 78B
183 | | ... | frames by using binary search with threshold 5,000pps
184 | | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD
185 | | ${framesize}= | Set Variable | 78
186 | | ${binary_min}= | Set Variable | 5000000
187 | | ${binary_max}= | Set Variable | 9000000
188 | | ${min_rate}= | Set Variable | 100000
189 | | ${max_rate}= | Set Variable | 14880952
190 | | ${threshold}= | Set Variable | 5000
191 | | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
192 | | And   IPv6 forwarding initialized in a 3-node circular topology
193 | | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
194 | | ...                                       | ${binary_max} | 3-node-IPv6
195 | | ...                                       | ${min_rate} | ${max_rate}
196 | | ...                                       | ${threshold}
197
198 | Find NDR with 4 cores and rss 2 by using RFC2544 binary search and 78B frames through IPv6 forwarding in 3-node topology
199 | | [Documentation]
200 | | ... | Find throughput on 4 cores and rss 2 with non drop rate for 78B
201 | | ... | frames by using binary search with threshold 5,000pps
202 | | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD
203 | | ${framesize}= | Set Variable | 78
204 | | ${binary_min}= | Set Variable | 6000000
205 | | ${binary_max}= | Set Variable | 11000000
206 | | ${min_rate}= | Set Variable | 100000
207 | | ${max_rate}= | Set Variable | 14880952
208 | | ${threshold}= | Set Variable | 5000
209 | | Given Setup '4' worker threads and rss '2' without HTT on all DUTs
210 | | And   IPv6 forwarding initialized in a 3-node circular topology
211 | | Then Find NDR using binary search and pps | ${framesize} | ${binary_min}
212 | | ...                                       | ${binary_max} | 3-node-IPv6
213 | | ...                                       | ${min_rate} | ${max_rate}
214 | | ...                                       | ${threshold}