1 # Copyright (c) 2016-2017 Intel Corporation
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
7 # http://www.apache.org/licenses/LICENSE-2.0
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.
15 schema: "nsb:traffic_profile:0.1"
17 # This file is a template, it will be filled with values from tc.yaml before passing to the traffic generator
20 description: Traffic profile to run RFC2544 latency
22 traffic_type : rfc2544 # defines traffic behavior - constant or look for highest possible throughput
23 frame_rate : 100 # pc of linerate
24 flow_number: {{ flow.number }} #This decides how many frames should be generated. Each frame should have a random of the field
25 # that specifies a range (e.g. ipv4 address, port)
31 64B: {{ get(imix_small, 12) }}
32 128B: {{get(imix_128B, 12) }}
33 256B: {{get(imix_256B, 12) }}
34 373b: {{ get(imix_373B, 12) }}
35 570B: {{get(imix_570B, 12) }}
36 1400B: {{get(imix_1400B, 12) }}
37 1518b: {{get(imix_1500B, 12) }}
38 srcmac: {{src_mac}} # xe0.local_mac
39 dstmac: {{dst_mac}} # xe0.dst_mac
42 id: {{ get(flow.s_vlan_range, "0") }}
46 id: {{ get(flow.c_vlan_range, "0") }}
50 label: {{ get(flow.mpls_label, "0") }}
53 proto: {{ get(flow.outer_proto, "udp") }},
54 srcip4: {{ get(flow.outer_srcip4, "1.1.1.1") }}
55 dstip4: {{ get(flow.outer_dstip4, "90.90.90.90") }}
57 dscp: {{ get(flow.tos, 0) }}
60 srcport: {{ get(flow.outer_srcport, "3002") }}
61 dstport: {{ get(flow.outer_dstport, "3001") }}
62 vni: {{ get(flow.vxlan_vni, "2345") }} #optional
64 srcmac: {{ get(flow.inner_srcmac, "00:00:00:00:00:00") }}
65 dstmac: {{ get(flow.inner_dstmac, "00:00:00:00:00:00") }}
68 proto: {{ get(flow.inner_proto, "udp") }},
69 srcip4: {{ get(flow.inner_srcip4, "1.1.1.1") }}
70 dstip4: {{ get(flow.inner_dstip4, "90.90.90.90") }}
72 dscp: {{ get(flow.inner_tos, 0) }}
75 proto: {{ get(flow.inner_proto, "udp") }},
76 srcip6: {{ get(flow.inner_srcip6, "2001::1") }}
77 dstip6: {{ get(flow.outer_dstip6, "2001::11") }}
79 tc: {{ get(flow.inner_tos, 0) }}
82 srcport: {{ get(flow.inner_srcport, "3002") }}
83 dstport: {{ get(flow.inner_dstport, "3001") }}
88 64B: {{ get(imix_small, 12) }}
89 128B: {{get(imix_128B, 12) }}
90 256B: {{get(imix_256B, 12) }}
91 373b: {{ get(imix_373B, 12) }}
92 570B: {{get(imix_570B, 12) }}
93 1400B: {{get(imix_1400B, 12) }}
94 1518b: {{get(imix_1500B, 12) }}
95 srcmac: {{src_mac}} # xe0.local_mac
96 dstmac: {{dst_mac}} # xe0.dst_mac
99 id: {{ get(flow.s_vlan_range, "0") }}
103 id: {{ get(flow.c_vlan_range, "0") }}
107 label: {{ get(flow.mpls_label, "0") }}
110 proto: {{ get(flow.outer_proto, "udp") }},
111 srcip6: {{ get(flow.outer_srcip6, "2001::1") }}
112 dstip6: {{ get(flow.outer_dstip6, "2001::11") }}
114 tc: {{ get(flow.outer_tos, 0) }}
117 srcport: {{ get(flow.outer_srcport, "3002") }}
118 dstport: {{ get(flow.outer_dstport, "3001") }}
119 vni: {{ get(flow.vxlan_vni, "2345") }} #optional
121 srcmac: {{ get(flow.inner_srcmac, "00:00:00:00:00:00") }}
122 dstmac: {{ get(flow.inner_dstmac, "00:00:00:00:00:00") }}
124 inner_l3v4: #optional
125 proto: {{ get(flow.inner_proto, "udp") }},
126 srcip4: {{ get(flow.inner_srcip4, "1.1.1.1") }}
127 dstip4: {{ get(flow.inner_dstip4, "90.90.90.90") }}
129 dscp: {{ get(flow.inner_tos, 0) }}
132 proto: {{ get(flow.inner_proto, "udp") }},
133 srcip6: {{ get(flow.inner_srcip6, "2001::1") }}
134 dstip6: {{ get(flow.outer_dstip6, "2001::11") }}
136 tc: {{ get(flow.inner_tos, 0) }}
139 srcport: {{ get(flow.inner_srcport, "3002") }}
140 dstport: {{ get(flow.inner_dstport, "3001") }}
146 64B: {{ get(imix_small, 12) }}
147 128B: {{get(imix_128B, 12) }}
148 256B: {{get(imix_256B, 12) }}
149 373b: {{ get(imix_373B, 12) }}
150 570B: {{get(imix_570B, 12) }}
151 1400B: {{get(imix_1400B, 12) }}
152 1518b: {{get(imix_1500B, 12) }}
153 srcmac: {{get(private.ipv4_1.dst_mac}} # xe0.local_mac
154 dstmac: {{get)private.ipv4_1.src_mac}} # xe0.dst_mac
157 id: {{ get(flow.s_vlan_range, "0") }}
161 id: {{ get(flow.c_vlan_range, "0") }}
165 label: {{ get(flow.mpls_label, "0") }}
168 proto: {{ get(flow.outer_proto, "udp") }},
169 srcip4: {{ get(private.ipv4_1.outer_l3v4.dstip4) }}
170 dstip4: {{ get(private.ipv4_1.outer_l3v4.srcip4) }}
172 dscp: {{ get(flow.tos, 0) }}
175 srcport: {{ get(private.ipv4_1.outer_l4.dstport) }}
176 dstport: {{ get(private.ipv4_1.outer_l4.srcport) }}
177 vni: {{ get(flow.vxlan_vni, "2345") }} #optional
179 srcmac: {{ get(private.ipv4_1.outer_l4.inner_l2.dstmac) }}
180 dstmac: {{ get(private.ipv4_1.outer_l4.inner_l2.srcmac) }}
182 inner_l3v4: #optional
183 proto: {{ get(flow.inner_proto, "udp") }},
184 srcip4: {{ get(private.ipv4_1.inner_l3v4.dstip4) }}
185 dstip4: {{ get(private.ipv4_1.inner_l3v4.srcip4) }}
187 dscp: {{ get(flow.inner_tos, 0) }}
190 proto: {{ get(flow.inner_proto, "udp") }},
191 srcip6: {{ get(private.ipv4_1.inner_l3v6.dstip6) }}
192 dstip6: {{ get(private.ipv4_1.inner_l3v6.srcip6) }}
194 tc: {{ get(flow.inner_tos, 0) }}
197 srcport: {{ get(private.ipv4_1.inner_l4.dstport) }}
198 dstport: {{ get(private.ipv4_1.inner_l4.srcport) }}