f96623beb62014fe469c4c1c9587e5cb6863a3bb
[csit.git] / tests / suites / performance / short_ipv4.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 | Library | resources.libraries.python.topology.Topology
16 | Library | resources.libraries.python.NodePath
17 | Library | resources.libraries.python.InterfaceUtil
18 | Library | resources.libraries.python.IPv4Setup.Dut | ${nodes['DUT1']} | WITH NAME | dut1_v4
19 | Library | resources.libraries.python.IPv4Setup.Dut | ${nodes['DUT2']} | WITH NAME | dut2_v4
20 | Force Tags | 3_NODE_SINGLE_LINK_TOPO | PERFTEST | HW_ENV | PERFTEST_SHORT
21 | Suite Setup | 3-node Performance Suite Setup | L3
22 | Suite Teardown | 3-node Performance Suite Teardown
23 | Test Setup | Setup all DUTs before test
24 | Test Teardown | Run Keywords | Show statistics on all DUTs
25 | ...           | AND          | Reset startup configuration of VPP on all DUTs
26 | Documentation | Minimal throughput acceptance test cases
27
28 *** Test Cases ***
29 | 1core VPP passes 64B frames through IPv4 forwarding at 2x 3.5mpps in 3-node topology
30 | | [Documentation]
31 | | ... | VPP with 1 core should pass 64B frames through IPv4 forwarding
32 | | ... | at 2x3.5mpps in 3-node topology
33 | | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD
34 | | # Variables
35 | | ${framesize}= | Set Variable | 64
36 | | ${duration}= | Set Variable | 10
37 | | ${rate}= | Set Variable | 3.5mpps
38 | | # VPP setup
39 | | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
40 | | AND   IPv4 forwarding initialized in a 3-node circular topology
41 | | # Sent traffic with specified rate
42 | | Then Traffic should pass with no loss | ${duration} | ${rate}
43 | | ...                                   | ${framesize} | 3-node-IPv4
44
45 | 1core VPP passes 1518B frames through IPv4 forwarding at 2x 10gbps in 3-node topology
46 | | [Documentation]
47 | | ... | VPP with 1 core should pass 1518B frames through IPv4 forwarding
48 | | ... | at 2x10gbps in 3-node topology
49 | | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD
50 | | # Variables
51 | | ${framesize}= | Set Variable | 1518
52 | | ${duration}= | Set Variable | 10
53 | | ${rate}= | Set Variable | 10gbps
54 | | # VPP setup
55 | | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
56 | | AND   IPv4 forwarding initialized in a 3-node circular topology
57 | | # Sent traffic with specified rate
58 | | Then Traffic should pass with no loss | ${duration} | ${rate}
59 | | ...                                   | ${framesize} | 3-node-IPv4
60
61 | 1core VPP passes 9000B frames through IPv4 forwarding at 2x 10gbps in 3-node topology
62 | | [Documentation]
63 | | ... | VPP with 1 core should pass 9000B frames through IPv4 forwarding
64 | | ... | at 2x10gbps in 3-node topology
65 | | [Tags] | 1_THREAD_NOHTT_RSS_1 | SINGLE_THREAD
66 | | # Variables
67 | | ${framesize}= | Set Variable | 9000
68 | | ${duration}= | Set Variable | 10
69 | | ${rate}= | Set Variable | 10gbps
70 | | # VPP setup
71 | | Given Setup '1' worker threads and rss '1' without HTT on all DUTs
72 | | AND   IPv4 forwarding initialized in a 3-node circular topology
73 | | # Sent traffic with specified rate
74 | | Then Traffic should pass with no loss | ${duration} | ${rate}
75 | | ...                                   | ${framesize} | 3-node-IPv4
76
77 | 2core VPP with rss 1 passes 64B frames through IPv4 forwarding at 2x 8.2mpps in 3-node topology
78 | | [Documentation]
79 | | ... | VPP with 2 cores should pass 64B frames through IPv4 forwarding
80 | | ... | at 2x8.2mpps in 3-node topology
81 | | [Tags] | 2_THREAD_NOHTT_RSS_1 | MULTI_THREAD
82 | | # Variables
83 | | ${framesize}= | Set Variable | 64
84 | | ${duration}= | Set Variable | 10
85 | | ${rate}= | Set Variable | 8.2mpps
86 | | # VPP setup
87 | | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
88 | | AND   IPv4 forwarding initialized in a 3-node circular topology
89 | | # Sent traffic with specified rate
90 | | Then Traffic should pass with no loss | ${duration} | ${rate}
91 | | ...                                   | ${framesize} | 3-node-IPv4
92
93 | 4core VPP with rss 2 passes 64B frames through IPv4 forwarding at 2x 9.2mpps in 3-node topology
94 | | [Documentation]
95 | | ... | VPP with 4 cores and rss 2 should pass 64B frames through IPv4
96 | | ... | forwarding at 2x9.2mpps in 3-node topology
97 | | [Tags] | 4_THREAD_NOHTT_RSS_2 | MULTI_THREAD
98 | | # Variables
99 | | ${framesize}= | Set Variable | 64
100 | | ${duration}= | Set Variable | 10
101 | | ${rate}= | Set Variable | 9.2mpps
102 | | # VPP setup
103 | | Given Setup '2' worker threads and rss '1' without HTT on all DUTs
104 | | AND   IPv4 forwarding initialized in a 3-node circular topology
105 | | # Sent traffic with specified rate
106 | | Then Traffic should pass with no loss | ${duration} | ${rate}
107 | | ...                                   | ${framesize} | 3-node-IPv4