1 .. This work is licensed under a Creative Commons Attribution 4.0 International
3 .. http://creativecommons.org/licenses/by/4.0
4 .. (c) OPNFV, Huawei Technologies Co.,Ltd and others.
6 *************************************
7 Yardstick Test Case Description TC080
8 *************************************
10 .. _Ping: https://linux.die.net/man/8/ping
12 +-----------------------------------------------------------------------------+
15 +--------------+--------------------------------------------------------------+
16 |test case id | OPNFV_YARDSTICK_TC080_NETWORK_LATENCY_BETWEEN_CONTAINER |
18 +--------------+--------------------------------------------------------------+
19 |metric | RTT (Round Trip Time) |
21 +--------------+--------------------------------------------------------------+
22 |test purpose | The purpose of TC080 is to do a basic verification that |
23 | | network latency is within acceptable boundaries when packets |
24 | | travel between containers located in two different |
25 | | Kubernetes pods. |
27 | | The purpose is also to be able to spot the trends. |
28 | | Test results, graphs and similar shall be stored for |
29 | | comparison reasons and product evolution understanding |
30 | | between different OPNFV versions and/or configurations. |
32 +--------------+--------------------------------------------------------------+
35 | | Ping is a computer network administration software utility |
36 | | used to test the reachability of a host on an Internet |
37 | | Protocol (IP) network. It measures the round-trip time for |
38 | | packet sent from the originating host to a destination |
39 | | computer that are echoed back to the source. |
41 | | Ping is normally part of any Linux distribution, hence it |
42 | | doesn't need to be installed. It is also part of the |
43 | | Yardstick Docker image. |
45 +--------------+--------------------------------------------------------------+
46 |test topology | Ping packets (ICMP protocol's mandatory ECHO_REQUEST |
47 | | datagram) are sent from host container to target container |
48 | | to elicit ICMP ECHO_RESPONSE. |
50 +--------------+--------------------------------------------------------------+
51 |configuration | file: opnfv_yardstick_tc080.yaml |
53 | | Packet size 200 bytes. Test duration 60 seconds. |
54 | | SLA RTT is set to maximum 10 ms. |
56 +--------------+--------------------------------------------------------------+
57 |applicability | This test case can be configured with different: |
61 | | * ping intervals; |
62 | | * test durations; |
63 | | * test iterations. |
65 | | Default values exist. |
67 | | SLA is optional. The SLA in this test case serves as an |
68 | | example. Considerably lower RTT is expected, and also normal |
69 | | to achieve in balanced L2 environments. However, to cover |
70 | | most configurations, both bare metal and fully virtualized |
71 | | ones, this value should be possible to achieve and |
72 | | acceptable for black box testing. Many real time |
73 | | applications start to suffer badly if the RTT time is higher |
74 | | than this. Some may suffer bad also close to this RTT, while |
75 | | others may not suffer at all. It is a compromise that may |
76 | | have to be tuned for different configuration purposes. |
78 +--------------+--------------------------------------------------------------+
79 |usability | This test case should be run in Kunernetes environment. |
81 +--------------+--------------------------------------------------------------+
86 +--------------+--------------------------------------------------------------+
87 |pre-test | The test case Docker image (openretriever/yardstick) needs |
88 |conditions | to be pulled into Kubernetes environment. |
90 | | No further requirements have been identified. |
92 +--------------+--------------------------------------------------------------+
93 |test sequence | description and expected result |
95 +--------------+--------------------------------------------------------------+
96 |step 1 | Two containers are booted, as server and client. |
98 +--------------+--------------------------------------------------------------+
99 |step 2 | Yardstick is connected with the server container by using |
100 | | ssh. 'ping_benchmark' bash script is copied from Jump Host |
101 | | to the server container via the ssh tunnel. |
103 +--------------+--------------------------------------------------------------+
104 |step 3 | Ping is invoked. Ping packets are sent from server container |
105 | | to client container. RTT results are calculated and checked |
106 | | against the SLA. Logs are produced and stored. |
108 | | Result: Logs are stored. |
110 +--------------+--------------------------------------------------------------+
111 |step 4 | Two containers are deleted. |
113 +--------------+--------------------------------------------------------------+
114 |test verdict | Test should not PASS if any RTT is above the optional SLA |
115 | | value, or if there is a test case execution problem. |
117 +--------------+--------------------------------------------------------------+