Merge "Change tc_trex files to execute standalone tests"
[yardstick.git] / samples / vnf_samples / traffic_profiles / ixia_ipv4_latency.yaml
1 # flow definition for ACL tests - 1K flows - ipv4 only
2 #
3 # the number of flows defines the widest range of parameters
4 # 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
5 # and it should define only 16 flows
6 #
7 #there is assumption that packets generated will have a random sequences of following addresses pairs
8 # in the packets
9 # 1. src=1.x.x.x(x.x.x =random from 1..255) dst=10.x.x.x (random from 1..512)
10 # 2. src=1.x.x.x(x.x.x =random from 1..255) dst=10.x.x.x (random from 1..512)
11 # ...
12 # 512. src=1.x.x.x(x.x.x =random from 1..255) dst=10.x.x.x (random from 1..512)
13 #
14 # not all combination should be filled
15 # Any other field with random range will be added to flow definition
16 #
17 # the example.yaml provides all possibilities for traffic generation
18 #
19 # the profile defines a public and private side to make limited traffic correlation
20 # between private and public side same way as it is made by IXIA solution.
21 #
22 schema: "isb:traffic_profile:0.1"
23
24 # This file is a template, it will be filled with values from tc.yaml before passing to the traffic generator
25
26 name:            rfc2544
27 description:     Traffic profile to run RFC2544 latency
28 traffic_profile:
29   traffic_type : IXIARFC2544Profile # defines traffic behavior - constant or look for highest possible throughput
30   frame_rate : 100  # pc of linerate
31   duration: {{ duration }}
32   enable_latency: True
33
34 uplink_0:
35       ipv4:
36         id: 1
37         outer_l2:
38             framesize:
39                 64B: "{{get(imix, 'imix.uplink.64B', '0') }}"
40                 128B: "{{get(imix, 'imix.uplink.128B', '0') }}"
41                 256B: "{{get(imix, 'imix.uplink.256B', '0') }}"
42                 373b: "{{get(imix, 'imix.uplink.373B', '0') }}"
43                 512B: "{{get(imix, 'imix.uplink.512B', '0') }}"
44                 570B: "{{get(imix, 'imix.uplink.570B', '0') }}"
45                 1024B: "{{get(imix, 'imix.uplink.1024B', '0') }}"
46                 1280B: "{{get(imix, 'imix.uplink.1280B', '0') }}"
47                 1400B: "{{get(imix, 'imix.uplink.1400B', '0') }}"
48                 1500B: "{{get(imix, 'imix.uplink.1500B', '0') }}"
49                 1518B: "{{get(imix, 'imix.uplink.1518B', '0') }}"
50
51         outer_l3v4:
52             proto: "udp"
53             srcip4: "{{get(flow, 'flow.src_ip_0', '1.1.1.1-1.15.255.255') }}"
54             dstip4: "{{get(flow, 'flow.dst_ip_0', '90.90.1.1-90.105.255.255') }}"
55             count: "{{get(flow, 'flow.count', '1') }}"
56             seed: "{{get(flow, 'flow.seed', '1') }}"
57             ttl: 32
58             dscp: 0
59         outer_l4:
60             srcport: "{{get(flow, 'flow.src_port_0', '1234') }}"
61             dstport: "{{get(flow, 'flow.dst_port_0', '2001') }}"
62             count: "{{get(flow, 'flow.count', '1') }}"
63             seed: "{{get(flow, 'flow.seed', '1') }}"
64 downlink_0:
65       ipv4:
66         id: 2
67         outer_l2:
68             framesize:
69                 64B: "{{get(imix, 'imix.downlink.64B', '0') }}"
70                 128B: "{{get(imix, 'imix.downlink.128B', '0') }}"
71                 256B: "{{get(imix, 'imix.downlink.256B', '0') }}"
72                 373b: "{{get(imix, 'imix.downlink.373B', '0') }}"
73                 512B: "{{get(imix, 'imix.downlink.512B', '0') }}"
74                 570B: "{{get(imix, 'imix.downlink.570B', '0') }}"
75                 1024B: "{{get(imix, 'imix.downlink.1024B', '0') }}"
76                 1280B: "{{get(imix, 'imix.downlink.1280B', '0') }}"
77                 1400B: "{{get(imix, 'imix.downlink.1400B', '0') }}"
78                 1500B: "{{get(imix, 'imix.downlink.1500B', '0') }}"
79                 1518B: "{{get(imix, 'imix.downlink.1518B', '0') }}"
80
81         outer_l3v4:
82             proto: "udp"
83             srcip4: "{{get(flow, 'flow.dst_ip_0', '1.1.1.1-1.15.255.255') }}"
84             dstip4: "{{get(flow, 'flow.src_ip_0', '90.90.1.1-90.105.255.255') }}"
85             {% if flow.flow.public_ip_0 is defined %}
86             dstip4: "{{get(flow, 'flow.public_ip_0', '90.90.1.1-90.105.255.255') }}"
87             {% endif %}
88             count: "{{get(flow, 'flow.count', '1') }}"
89             seed: "{{get(flow, 'flow.seed', '1') }}"
90             ttl: 32
91             dscp: 0
92         outer_l4:
93             srcport: "{{get(flow, 'flow.src_port_0', '1234') }}"
94             dstport: "{{get(flow, 'flow.dst_port_0', '2001') }}"
95             count: "{{get(flow, 'flow.count', '1') }}"
96             seed: "{{get(flow, 'flow.seed', '1') }}"
97 uplink_1:
98       ipv4:
99         id: 3
100         outer_l2:
101             framesize:
102                 64B: "{{get(imix, 'imix.uplink.64B', '0') }}"
103                 128B: "{{get(imix, 'imix.uplink.128B', '0') }}"
104                 256B: "{{get(imix, 'imix.uplink.256B', '0') }}"
105                 373b: "{{get(imix, 'imix.uplink.373B', '0') }}"
106                 512B: "{{get(imix, 'imix.uplink.512B', '0') }}"
107                 570B: "{{get(imix, 'imix.uplink.570B', '0') }}"
108                 1024B: "{{get(imix, 'imix.uplink.1024B', '0') }}"
109                 1280B: "{{get(imix, 'imix.uplink.1280B', '0') }}"
110                 1400B: "{{get(imix, 'imix.uplink.1400B', '0') }}"
111                 1500B: "{{get(imix, 'imix.uplink.1500B', '0') }}"
112                 1518B: "{{get(imix, 'imix.uplink.1518B', '0') }}"
113
114         outer_l3v4:
115             proto: "udp"
116             srcip4: "{{get(flow, 'flow.src_ip_1', '1.1.1.1-1.15.255.255') }}"
117             dstip4: "{{get(flow, 'flow.dst_ip_1', '90.90.1.1-90.105.255.255') }}"
118             count: "{{get(flow, 'flow.count', '1') }}"
119             seed: "{{get(flow, 'flow.seed', '1') }}"
120             ttl: 32
121             dscp: 0
122         outer_l4:
123             srcport: "{{get(flow, 'flow.src_port_1', '1234') }}"
124             dstport: "{{get(flow, 'flow.dst_port_1', '2001') }}"
125             count: "{{get(flow, 'flow.count', '1') }}"
126             seed: "{{get(flow, 'flow.seed', '1') }}"
127 downlink_1:
128       ipv4:
129         id: 4
130         outer_l2:
131             framesize:
132                 64B: "{{get(imix, 'imix.downlink.64B', '0') }}"
133                 128B: "{{get(imix, 'imix.downlink.128B', '0') }}"
134                 256B: "{{get(imix, 'imix.downlink.256B', '0') }}"
135                 373b: "{{get(imix, 'imix.downlink.373B', '0') }}"
136                 512B: "{{get(imix, 'imix.downlink.512B', '0') }}"
137                 570B: "{{get(imix, 'imix.downlink.570B', '0') }}"
138                 1024B: "{{get(imix, 'imix.downlink.1024B', '0') }}"
139                 1280B: "{{get(imix, 'imix.downlink.1280B', '0') }}"
140                 1400B: "{{get(imix, 'imix.downlink.1400B', '0') }}"
141                 1500B: "{{get(imix, 'imix.downlink.1500B', '0') }}"
142                 1518B: "{{get(imix, 'imix.downlink.1518B', '0') }}"
143
144         outer_l3v4:
145             proto: "udp"
146             srcip4: "{{get(flow, 'flow.dst_ip_1', '1.1.1.1-1.15.255.255') }}"
147             dstip4: "{{get(flow, 'flow.src_ip_1', '90.90.1.1-90.105.255.255') }}"
148             {% if flow.public_ip_1 is defined %}
149             dstip4: "{{get(flow, 'flow.public_ip_1', '90.90.1.1-90.105.255.255') }}"
150             {% endif %}
151             count: "{{get(flow, 'flow.count', '1') }}"
152             seed: "{{get(flow, 'flow.seed', '1') }}"
153             ttl: 32
154             dscp: 0
155         outer_l4:
156             srcport: "{{get(flow, 'flow.dst_port_1', '1234') }}"
157             dstport: "{{get(flow, 'flow.src_port_1', '2001') }}"
158             count: "{{get(flow, 'flow.count', '1') }}"
159             seed: "{{get(flow, 'flow.seed', '1') }}"