Add send socket commands function
[yardstick.git] / tests / opnfv / test_cases / opnfv_yardstick_tc071.yaml
1 ##############################################################################
2 # Copyright (c) 2017 Huawei Technologies Co.,Ltd and others.
3 #
4 # All rights reserved. This program and the accompanying materials
5 # are made available under the terms of the Apache License, Version 2.0
6 # which accompanies this distribution, and is available at
7 # http://www.apache.org/licenses/LICENSE-2.0
8 ##############################################################################
9 ---
10
11 schema: "yardstick:task:0.1"
12 description: >
13     Yardstick TC071 config file;
14     Measure cache hit/miss ratio and usage, network throughput and latency;
15     Different amounts of flows are tested with, from 2 up to 1001000;
16     All tests are run 2 times each. First 2 times with the least
17     amount of ports, then 2 times with the next amount of ports,
18     and so on until all packet sizes have been run with;
19     During the measurements cache hit/miss ration, cache usage statistics and
20     network latency are recorded/measured using cachestat and ping, respectively;
21
22 {% set provider = provider or none %}
23 {% set physical_network = physical_network or 'physnet1' %}
24 {% set segmentation_id = segmentation_id or none %}
25
26 scenarios:
27 -
28   type: CACHEstat
29   run_in_background: true
30
31   options:
32     interval: 1
33
34   host: demeter.yardstick-TC071
35 -
36   type: CACHEstat
37   run_in_background: true
38
39   options:
40     interval: 1
41
42   host: poseidon.yardstick-TC071
43 -
44   type: Ping
45   run_in_background: true
46
47   options:
48     packetsize: 100
49
50   host: demeter.yardstick-TC071
51   target: poseidon.yardstick-TC071
52
53   sla:
54     max_rtt: 10
55     action: monitor
56 {% for num_ports in [1, 10, 50, 100, 300, 500, 750, 1000] %}
57 -
58   type: Pktgen
59   options:
60     packetsize: 64
61     number_of_ports: {{num_ports}}
62     duration: 20
63
64   host: demeter.yardstick-TC071
65   target: poseidon.yardstick-TC071
66
67   runner:
68     type: Iteration
69     iterations: 2
70     interval: 1
71
72   sla:
73     max_ppm: 1000
74     action: monitor
75 {% endfor %}
76
77 context:
78   name: yardstick-TC071
79   image: yardstick-image
80   flavor: yardstick-flavor
81   user: ubuntu
82
83   placement_groups:
84     pgrp1:
85       policy: "availability"
86
87   servers:
88     demeter:
89       floating_ip: true
90       placement: "pgrp1"
91     poseidon:
92       floating_ip: true
93       placement: "pgrp1"
94
95   networks:
96     test:
97       cidr: '10.0.1.0/24'
98       {% if provider == "vlan" %}
99       provider: {{provider}}
100       physical_network: {{physical_network}}
101         {% if segmentation_id %}
102       segmentation_id: {{segmentation_id}}
103         {% endif %}
104       {% endif %}