Merge changes from topic 'feat/baro_nfvi_metrics'
[yardstick.git] / docs / testing / user / userguide / nsb / tc_bng_pppoe_rfc2544_ixia_8ports_1port_congested.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0 International
2 .. License.
3 .. http://creativecommons.org/licenses/by/4.0
4 .. (c) OPNFV, 2019 Intel Corporation.
5
6 ***************************************************************
7 Yardstick Test Case Description: NSB vBNG RFC2544 QoS TEST CASE
8 ***************************************************************
9
10 +-----------------------------------------------------------------------------+
11 |NSB vBNG RFC2544 QoS base line test case with link congestion                |
12 |                                                                             |
13 +--------------+--------------------------------------------------------------+
14 |test case id  | tc_bng_pppoe_rfc2544_ixia_8ports_1port_congested_IMIX        |
15 |              |                                                              |
16 +--------------+--------------------------------------------------------------+
17 | metric       | Network metrics:                                             |
18 |              | * TxThroughput                                               |
19 |              | * RxThroughput                                               |
20 |              | * TG packets in                                              |
21 |              | * TG packets out                                             |
22 |              | * Max Latency                                                |
23 |              | * Min Latency                                                |
24 |              | * Average Latency                                            |
25 |              | * Packets drop percentage                                    |
26 |              |                                                              |
27 |              | PPPoE subscribers metrics:                                   |
28 |              | * Sessions up                                                |
29 |              | * Sessions down                                              |
30 |              | * Sessions Not Started                                       |
31 |              | * Sessions Total                                             |
32 |              |                                                              |
33 |              | NOTE: the same network metrics list are collecting:          |
34 |              | * summary for all ports                                      |
35 |              | * per port                                                   |
36 |              | * per priority flows summary on all ports                    |
37 |              |                                                              |
38 +--------------+--------------------------------------------------------------+
39 |test purpose  | This test allows to measure performance of BNG network device|
40 |              | according to RFC2544 testing methodology. Test case creates  |
41 |              | PPPoE subscribers connections to BNG, run prioritized traffic|
42 |              | causing congestion of access port (port xe0) and collects    |
43 |              | network and PPPoE subscribers metrics.                       |
44 |              |                                                              |
45 +--------------+--------------------------------------------------------------+
46 |configuration | The BNG QoS RFC2544 test cases are listed below:             |
47 |              |                                                              |
48 |              | * tc_bng_pppoe_rfc2544_ixia_8ports_1port_congested_IMIX.yaml |
49 |              |                                                              |
50 |              | Number of ports:                                             |
51 |              | * 8 ports                                                    |
52 |              |                                                              |
53 |              | Test duration:                                               |
54 |              | * set as 30sec;                                              |
55 |              |                                                              |
56 |              | Traffic type:                                                |
57 |              | * IPv4;                                                      |
58 |              |                                                              |
59 |              | Packet sizes:                                                |
60 |              | * IMIX. The following default IMIX distribution is using:    |
61 |              |                                                              |
62 |              |   uplink: 70B - 33%, 940B - 33%, 1470B - 34%                 |
63 |              |   downlink: 68B - 3%, 932B - 1%, 1470B - 96%                 |
64 |              |                                                              |
65 |              | VLAN settings:                                               |
66 |              | * QinQ on access ports;                                      |
67 |              | * VLAN on core ports;                                        |
68 |              |                                                              |
69 |              | Number of PPPoE subscribers:                                 |
70 |              | * 4000 per access port;                                      |
71 |              | * 1000 per SVLAN;                                            |
72 |              |                                                              |
73 |              | Default ToS bits settings:                                   |
74 |              | * 0 - (000) Routine                                          |
75 |              | * 4 - (100) Flash Override                                   |
76 |              | * 7 - (111) Network Control.                                 |
77 |              |                                                              |
78 |              | The above fields are the main options used for the test case |
79 |              | and could be configured using cli options on test run or     |
80 |              | directly in test case yaml file.                             |
81 |              |                                                              |
82 |              | NOTE: that only parameter that can't be changed is ports     |
83 |              | number. To run the test with another number of ports         |
84 |              | traffic profile should be updated.                           |
85 |              |                                                              |
86 +--------------+--------------------------------------------------------------+
87 |test tool     | IXIA IxNetwork                                               |
88 |              |                                                              |
89 |              | IXIA IxNetwork is using to emulates PPPoE sessions, generate |
90 |              | L2-L3 traffic, analyze traffic flows and collect network     |
91 |              | metrics during test run.                                     |
92 |              |                                                              |
93 +--------------+--------------------------------------------------------------+
94 |applicability | Mentioned BNG QoS RFC2544 test cases can be configured with  |
95 |              | different:                                                   |
96 |              |                                                              |
97 |              |  * Number of PPPoE subscribers sessions;                     |
98 |              |  * IP Priority type;                                         |
99 |              |  * Packet size;                                              |
100 |              |  * enable/disable BGP protocol on core ports;                |
101 |              |                                                              |
102 |              | Default values exist.                                        |
103 |              |                                                              |
104 +--------------+--------------------------------------------------------------+
105 |references    | RFC2544                                                      |
106 |              |                                                              |
107 +--------------+--------------------------------------------------------------+
108 | pre-test     | 1. BNG is up and running and has configured:                 |
109 | conditions   |   * access ports with QinQ tagging;                          |
110 |              |   * core ports with configured IP addresses and VLAN;        |
111 |              |   * PPPoE subscribers authorization settings (no auth or     |
112 |              |     Radius server, PAP auth protocol);                       |
113 |              |   * QoS settings;                                            |
114 |              |                                                              |
115 |              | 2. IxNetwork API server is running on specified in pod.yaml  |
116 |              |    file TCL port;                                            |
117 |              |                                                              |
118 |              | 3. BNG ports are connected to IXIA ports (IXIA uplink        |
119 |              |    ports are connected to BNG access ports and IXIA          |
120 |              |    downlink ports are connected to BNG core ports;           |
121 |              |                                                              |
122 |              | 4. The pod.yaml file contains all necessary information      |
123 |              |    (BNG access and core ports settings, core ports IP        |
124 |              |    address, NICs, IxNetwork TCL port, IXIA uplink/downlink   |
125 |              |    ports, etc).                                              |
126 |              |                                                              |
127 +--------------+--------------------------------------------------------------+
128 |test sequence | description and expected result                              |
129 |              |                                                              |
130 +--------------+--------------------------------------------------------------+
131 |step 1        | Yardstick resolve the topology and connects to IxNetwork     |
132 |              | API server by TCL.                                           |
133 |              |                                                              |
134 +--------------+--------------------------------------------------------------+
135 |step 2        | Test scenarios run, which performs the following steps:      |
136 |              |                                                              |
137 |              |  1. Create access network topologies (this topologies are    |
138 |              |     based on IXIA ports which are connected to BNG access    |
139 |              |     ports);                                                  |
140 |              |  2. Configure access network topologies with multiple device |
141 |              |     groups. Each device group represents single SVLAN with   |
142 |              |     PPPoE subscribers sessions (number of created on port    |
143 |              |     SVLANs and subscribers depends on specified if test case |
144 |              |     file options);                                           |
145 |              |  3. Create core network topologies (this topologies are      |
146 |              |     based on IXIA ports which are connected to BNG core      |
147 |              |     ports);                                                  |
148 |              |  4. Configure core network topologies with single device     |
149 |              |     group which represents one connection with configured    |
150 |              |     VLAN and BGP protocol;                                   |
151 |              |  5. Establish PPPoE subscribers connections to BNG;          |
152 |              |  6. Create traffic flows between access and core ports.      |
153 |              |     While test covers case with access port congestion,      |
154 |              |     flows between ports will be created in the following     |
155 |              |     way: traffic from two core ports are going to one access |
156 |              |     port causing port congestion and traffic from other two  |
157 |              |     core ports is splitting between remaining three access   |
158 |              |     ports;                                                   |
159 |              |  7. Configure each traffic flow with specified in traffic    |
160 |              |     profile options;                                         |
161 |              |  8. Run traffic with specified in test case file duration;   |
162 |              |  9. Collect network metrics after traffic was stopped;       |
163 |              | 10. Measure drop percentage rate of different priority       |
164 |              |     packets on congested port. Expected that all high and    |
165 |              |     medium priority packets was forwarded and only low       |
166 |              |     priority packets has drops.                              |
167 |              | 11. Disconnect PPPoE subscribers and stop test.              |
168 |              |                                                              |
169 +--------------+--------------------------------------------------------------+
170 |step 3        | During test run, in the end of each iteration all specified  |
171 |              | in the document metrics are retrieved from IxNetwork and     |
172 |              | stored in the yardstick dispatcher.                          |
173 |              |                                                              |
174 +--------------+--------------------------------------------------------------+
175 |test verdict  | The test case is successful if all high and medium priority  |
176 |              | packets on congested port was forwarded and only low         |
177 |              | priority packets has drops.                                  |
178 |              |                                                              |
179 +--------------+--------------------------------------------------------------+