Merge "add ppm into result of pktgen to make result clear"
[yardstick.git] / samples / vnf_samples / traffic_profiles / ipv4_throughput_vpe.yaml
1 # Copyright (c) 2016-2017 Intel Corporation
2 #
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
6 #
7 #      http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14
15 # flow definition for ACL tests - 1K flows - ipv4 only
16 #
17 # the number of flows defines the widest range of parameters
18 # for example if srcip_range=1.0.0.1-1.0.0.255 and dst_ip_range=10.0.0.1-10.0.1.255
19 # and it should define only 16 flows
20 #
21 #there is assumption that packets generated will have a random sequences of following addresses pairs
22 # in the packets
23 # 1. src=1.x.x.x(x.x.x =random from 1..255) dst=10.x.x.x (random from 1..512)
24 # 2. src=1.x.x.x(x.x.x =random from 1..255) dst=10.x.x.x (random from 1..512)
25 # ...
26 # 512. src=1.x.x.x(x.x.x =random from 1..255) dst=10.x.x.x (random from 1..512)
27 #
28 # not all combination should be filled
29 # Any other field with random range will be added to flow definition
30 #
31 # the example.yaml provides all possibilities for traffic generation
32 #
33 # the profile defines a public and private side to make limited traffic correlation
34 # between private and public side same way as it is made by IXIA solution.
35 #
36 schema: "isb:traffic_profile:0.1"
37
38 # This file is a template, it will be filled with values from tc.yaml before passing to the traffic generator
39
40 name:            rfc2544
41 description:     Traffic profile to run RFC2544 latency
42 traffic_profile:
43   traffic_type : RFC2544Profile # defines traffic behavior - constant or look for highest possible throughput
44   frame_rate : 100  # pc of linerate
45   # that specifies a range (e.g. ipv4 address, port)
46
47
48 private_1:
49       ipv4:
50         outer_l2:
51             framesize:
52                 64B: "{{ get(imix, 'imix.private.64B', '0') }}"
53                 128B: "{{ get(imix, 'imix.private.128B', '0') }}"
54                 256B: "{{ get(imix, 'imix.private.256B', '0') }}"
55                 373b: "{{ get(imix, 'imix.private.373B', '0') }}"
56                 512B: "{{ get(imix, 'imix.private.512B', '0') }}"
57                 570B: "{{get(imix, 'imix.private.570B', '0') }}"
58                 1400B: "{{get(imix, 'imix.private.1400B', '0') }}"
59                 1500B: "{{get(imix, 'imix.private.1500B', '0') }}"
60                 1518B: "{{get(imix, 'imix.private.1518B', '0') }}"
61
62             QinQ:
63                 S-VLAN:
64                     id: 128
65                     priority: 0
66                     cfi: 0
67                 C-VLAN:
68                     id: 512
69                     priority: 0
70                     cfi: 0
71
72         outer_l3v4:
73             proto: "tcp"
74             srcip4: "{{get(flow, 'flow.src_ip0', '192.168.0.0-192.168.255.255') }}"
75             dstip4: "{{get(flow, 'flow.dst_ip0', '192.16.0.0-192.16.0.31') }}"
76             ttl: 32
77             dscp: 32
78
79         outer_l4:
80             srcport: "{{get(flow, 'flow.src_port0', '0') }}"
81             dstport: "{{get(flow, 'flow.dst_port0', '0') }}"
82 public_1:
83       ipv4:
84         outer_l2:
85             framesize:
86                 64B: "{{ get(imix, 'imix.private.imix_small', '0') }}"
87                 128B: "{{ get(imix, 'imix.private.imix_128B', '0') }}"
88                 256B: "{{ get(imix, 'imix.private.imix_256B', '0') }}"
89                 373b: "{{ get(imix, 'imix.private.imix_373B', '0') }}"
90                 570B: "{{get(imix, 'imix.private.imix_570B', '0') }}"
91                 1400B: "{{get(imix, 'imix.private.imix_1400B', '0') }}"
92                 1518B: "{{get(imix, 'imix.private.imix_1500B', '0') }}"
93
94         outer_l3v4:
95             proto: "tcp"
96             srcip4: "{{get(flow, 'flow.dst_ip0', '192.16.0.0-192.16.0.31') }}"
97             dstip4: "{{get(flow, 'flow.src_ip0', '192.168.0.0-192.168.255.255') }}"
98             ttl: 32
99             dscp: 32
100
101         outer_l4:
102             srcport: "{{get(flow, 'flow.dst_port0', '0') }}"
103             dstport: "{{get(flow, 'flow.src_port0', '0') }}"
104 private_2:
105       ipv4:
106         outer_l2:
107             framesize:
108                 64B: "{{ get(imix, 'imix.public.64B', '0') }}"
109                 128B: "{{ get(imix, 'imix.public.128B', '0') }}"
110                 256B: "{{ get(imix, 'imix.public.256B', '0') }}"
111                 373b: "{{ get(imix, 'imix.public.373B', '0') }}"
112                 512B: "{{ get(imix, 'imix.public.512B', '0') }}"
113                 570B: "{{get(imix, 'imix.public.570B', '0') }}"
114                 1400B: "{{get(imix, 'imix.public.1400B', '0') }}"
115                 1500B: "{{get(imix, 'imix.public.1500B', '0') }}"
116                 1518B: "{{get(imix, 'imix.public.1518B', '0') }}"
117
118             QinQ:
119                 S-VLAN:
120                     id: 128
121                     priority: 0
122                     cfi: 0
123                 C-VLAN:
124                     id: 512
125                     priority: 0
126                     cfi: 0
127
128         outer_l3v4:
129             proto: "tcp"
130             srcip4: "{{get(flow, 'flow.src_ip1', '192.168.0.0-192.168.255.255') }}"
131             dstip4: "{{get(flow, 'flow.dst_ip1', '192.16.0.0-192.16.0.31') }}"
132             ttl: 32
133             dscp: 32
134
135         outer_l4:
136             srcport: "{{get(flow, 'flow.src_port1', '0') }}"
137             dstport: "{{get(flow, 'flow.dst_port1', '0') }}"
138 public_2:
139       ipv4:
140         outer_l2:
141             framesize:
142                 64B: "{{ get(imix, 'imix.private.imix_small', '0') }}"
143                 128B: "{{ get(imix, 'imix.private.imix_128B', '0') }}"
144                 256B: "{{ get(imix, 'imix.private.imix_256B', '0') }}"
145                 373b: "{{ get(imix, 'imix.private.imix_373B', '0') }}"
146                 570B: "{{get(imix, 'imix.private.imix_570B', '0') }}"
147                 1400B: "{{get(imix, 'imix.private.imix_1400B', '0') }}"
148                 1518B: "{{get(imix, 'imix.private.imix_1500B', '0') }}"
149
150         outer_l3v4:
151             proto: "tcp"
152             srcip4: "{{get(flow, 'flow.dst_ip1', '192.16.0.0-192.16.0.31') }}"
153             dstip4: "{{get(flow, 'flow.src_ip1', '192.168.0.0-192.168.255.255') }}"
154             ttl: 32
155             dscp: 32
156
157         outer_l4:
158             srcport: "{{get(flow, 'flow.dst_port1', '0') }}"
159             dstport: "{{get(flow, 'flow.src_port1', '0') }}"