2 * Copyright (c) 2015 Cisco Systems, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
9 package org.opendaylight.protocol.rsvp.parser.impl.te;
11 final class TEObjectUtil {
14 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
15 * | Length | Class-Num(196)| C-Type (1) |
16 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
17 * |R| Reserved |T|A|D|
18 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
20 static final byte[] TE_LSP_ADMIN_STATUS = {
21 0x00, (byte) 0x04, (byte) 0xc4, 0x01, // Lenght, Class, Ctype
22 (byte) 0x80, // Reflect
23 0x00, 0x00, // Reserved
24 0x07,};// Testing, Administratively down, Deletion in progress (D) 1 bit-each
27 * * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
28 * | Length | Class-Num(207)| C-Type (1) |
29 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
31 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
33 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
35 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
36 * | Setup Prio | Holding Prio | Flags | Name Length |
37 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
39 * // Session Name (NULL padded display string) //
41 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
43 static final byte[] TE_LSP_SESSION_C1 = {
44 0x00, (byte) 0x14, (byte) 0xcf, 0x01, // Lenght, Class, Ctype
45 0x01, 0x01, 0x01, 0x01,
46 0x02, 0x02, 0x02, 0x02,
47 0x03, 0x03, 0x03, 0x03,
48 0x01, 0x02, 0x04, 0x04,
49 (byte) 0x41, (byte) 0x41, (byte) 0x00, (byte) 0x00,};
52 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
53 * | Length | Class-Num(207)| C-Type (7) |
54 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
55 * | Setup Prio | Holding Prio | Flags | Name Length |
56 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
58 * // Session Name (NULL padded display string) //
60 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
62 static final byte[] TE_LSP_SESSION_C7 = {
63 0x00, (byte) 0x08, (byte) 0xcf, 0x07, // Lenght, Class, Ctype
64 0x01, 0x02, 0x04, 0x04,
65 (byte) 0x41, (byte) 0x41, (byte) 0x41, (byte) 0x41,};
67 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
68 * | Length | Class-Num(5)| C-Type (1) |
69 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
71 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
73 static final byte[] TE_LSP_BANDWIDTH_1 = {
74 0x00, (byte) 0x04, (byte) 0x05, 0x01, // Lenght, Class, Ctype
75 0x01, 0x02, 0x03, 0x04,};
77 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
78 * | Length | Class-Num(5)| C-Type (2) |
79 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
81 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
83 static final byte[] TE_LSP_BANDWIDTH_2 = {
84 0x00, (byte) 0x04, (byte) 0x05, 0x02, // Lenght, Class, Ctype
85 0x01, 0x02, 0x03, 0x04,};
88 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
89 * | Length | Class-Num(199)| C-Type (1) |
90 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
91 * | Association Type | Association ID |
92 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
93 * | IPv4 Association Source |
94 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
96 static final byte[] TE_LSP_ASSOCIATION_1 = {
97 0x00, (byte) 0x08, (byte) 0xc7, 0x01, // Lenght, Class, Ctype
98 0x00, 0x01, 0x00, 0x02,
99 0x01, 0x02, 0x03, 0x04,};
102 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
103 * | Length | Class-Num(199)| C-Type (2) |
104 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
105 * | Length | Class-Num(199)| C-Type (2) |
106 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
107 * | Association Type | Association ID |
108 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
110 * | IPv6 Association Source |
113 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
115 static final byte[] TE_LSP_ASSOCIATION_2 = {
116 0x00, (byte) 0x14, (byte) 0xc7, 0x02, // Lenght, Class, Ctype
117 0x00, 0x01, 0x00, 0x02,
118 0x01, 0x02, 0x03, 0x04,
119 0x05, 0x06, 0x07, 0x08,
120 0x01, 0x02, 0x03, 0x04,
121 0x05, 0x06, 0x07, 0x08,};
124 * +-------------+-------------+-------------+-------------+.
125 * | Length (bytes) | Class-Num | C-Type |
126 * +-------------+-------------+-------------+-------------+
127 * | Setup Prio | Hold Prio | Hop-limit | Flags |
128 * +-------------+-------------+-------------+-------------+
130 * +-------------+-------------+-------------+-------------+
132 * +-------------+-------------+-------------+-------------+
134 * +-------------+-------------+-------------+-------------+
136 * +-------------+-------------+-------------+-------------+
138 static final byte[] TE_LSP_FAST_REROUTE1 = {
139 0x00, (byte) 0x14, (byte) 0xcd, 0x01, // Lenght, Class, Ctype
140 (byte) 0x01, (byte) 0x02, (byte) 0x10, (byte) 0x02,
141 0x01, 0x01, 0x01, 0x01,
142 0x02, 0x02, 0x02, 0x02,
143 0x03, 0x03, 0x03, 0x03,
144 0x04, 0x04, 0x04, 0x04,};
147 * +-------------+-------------+-------------+-------------+.
148 * | Length (bytes) | Class-Num | C-Type |
149 * +-------------+-------------+-------------+-------------+
150 * | Setup Prio | Hold Prio | Hop-limit | Reserved |
151 * +-------------+-------------+-------------+-------------+
153 * +-------------+-------------+-------------+-------------+
155 * +-------------+-------------+-------------+-------------+
157 * +-------------+-------------+-------------+-------------+
159 static final byte[] TE_LSP_FAST_REROUTE7 = {
160 0x00, (byte) 0x10, (byte) 0xcd, 0x07, // Lenght, Class, Ctype
161 (byte) 0x01, (byte) 0x02, (byte) 0x10, 0x00,
162 0x01, 0x01, 0x01, 0x01,
163 0x02, 0x02, 0x02, 0x02,
164 0x03, 0x03, 0x03, 0x03,};
168 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
169 * | Length | Class-Num(6)| C-Type (1) |
170 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
171 * | Reserved | Flags |C|B| T |
172 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
174 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
176 static final byte[] TE_LSP_METRIC = {
177 0x00, (byte) 0x08, (byte) 0x06, 0x01, // Lenght, Class, Ctype
178 0x00, 0x00, 0x03, 0x02,
179 0x01, 0x02, 0x03, 0x04,};
182 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
183 * | Length | Class-Num(37)| C-Type (1) |
184 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
185 * |S| Reserved | Link Flags|
186 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
188 static final byte[] TE_LSP_PROTECTION_C1 = {
189 0x00, (byte) 0x04, (byte) 0x25, 0x01, // Lenght, Class, Ctype
190 (byte) 0x80, 0x00, 0x00, (byte) 0x0a,};
193 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
194 * | Length | Class-Num(37)| C-Type (1) |
195 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
196 * |S|P|N|O| Reserved | LSP Flags | Reserved | Link Flags|
197 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
198 * |I|R| Reserved | Seg.Flags | Reserved |
199 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
201 static final byte[] TE_LSP_PROTECTION_C2 = {
202 0x00, (byte) 0x08, (byte) 0x25, 0x02, // Lenght, Class, Ctype
203 (byte) 0xf0, 0x08, 0x00, (byte) 0x0a,
204 (byte) 0xc0, 0x04, 0x00, (byte) 0x00,};
207 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
208 * | Length | Class-Num(197)| C-Type (1) |
209 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
211 * // Attributes TLVs //
213 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
215 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
217 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
221 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
223 static final byte[] TE_LSP_ATTRIBUTES = {
224 0x00, (byte) 0x0c, (byte) 0xc5, 0x01, // Lenght, Class, Ctype
225 0x00, 0x01, 0x00, 0x08,
226 (byte) 0x09, 0x07, 0x03, 0x01,
227 (byte) 0x15, 0x07, 0x03, 0x01,};
230 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
231 * | Length | Class-Num(43)| C-Type (1) |
232 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
234 * // Attributes TLVs //
236 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
238 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
240 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
244 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
246 static final byte[] TE_LSP_REQUIRED_ATTRIBUTES = {
247 0x00, (byte) 0x0c, 0x43, 0x01, // Lenght, Class, Ctype
248 0x00, 0x01, 0x00, 0x08,
249 (byte) 0x09, 0x07, 0x03, 0x01,
250 (byte) 0x15, 0x07, 0x03, 0x01,};
253 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
254 * | Length | Class-Num(63)| C-Type (7) |
255 * +-------------+-------------+-------------+-------------+
256 * | Length (bytes) | Class-Num | C-Type |
257 * +-------------+-------------+-------------+-------------+
259 * +-------------+-------------+-------------+-------------+
260 * | Avoid_Node_ID 1 |
261 * +-------------+-------------+-------------+-------------+
263 * +-------------+-------------+-------------+-------------+
265 * +-------------+-------------+-------------+-------------+
266 * | Avoid_Node_ID n |
267 * +-------------+-------------+-------------+-------------+
269 static final byte[] TE_LSP_DETOUR7 = {
270 0x00, (byte) 0x20, (byte) 0x3f, 0x07, // Lenght, Class, Ctype
271 0x00, 0x00, 0x00, 0x01,
272 0x01, 0x02, 0x03, 0x01,
273 0x00, 0x00, 0x00, 0x02,
274 0x01, 0x02, 0x03, 0x02,
275 0x00, 0x00, 0x00, 0x03,
276 0x01, 0x02, 0x03, 0x03,
277 0x00, 0x00, 0x00, 0x04,
278 0x01, 0x02, 0x03, 0x04,};
281 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
282 * | Length | Class-Num(63)| C-Type (7) |
283 * +-------------+-------------+-------------+-------------+
284 * | Length (bytes) | Class-Num | C-Type |
285 * +-------------+-------------+-------------+-------------+
287 * +-------------+-------------+-------------+-------------+
288 * | PLR_ID 1 (continued) |
289 * +-------------+-------------+-------------+-------------+
290 * | PLR_ID 1 (continued) |
291 * +-------------+-------------+-------------+-------------+
292 * | PLR_ID 1 (continued) |
293 * +-------------+-------------+-------------+-------------+
294 * | Avoid_Node_ID 1 |
295 * +-------------+-------------+-------------+-------------+
296 * | Avoid_Node_ID 1 (continued) |
297 * +-------------+-------------+-------------+-------------+
298 * | Avoid_Node_ID 1 (continued) |
299 * +-------------+-------------+-------------+-------------+
300 * | Avoid_Node_ID 1 (continued) |
301 * +-------------+-------------+-------------+-------------+
303 * +-------------+-------------+-------------+-------------+
305 static final byte[] TE_LSP_DETOUR8 = {
306 0x00, (byte) 0x40, (byte) 0x3f, 0x08, // Lenght, Class, Ctype
307 0x00, 0x00, 0x00, 0x01,
308 0x00, 0x00, 0x00, 0x02,
309 0x00, 0x00, 0x00, 0x03,
310 0x00, 0x00, 0x00, 0x04,
311 0x01, 0x01, 0x01, 0x01,
312 0x01, 0x01, 0x01, 0x01,
313 0x01, 0x01, 0x01, 0x01,
314 0x01, 0x01, 0x01, 0x01,
315 0x00, 0x00, 0x00, 0x04,
316 0x00, 0x00, 0x00, 0x03,
317 0x00, 0x00, 0x00, 0x02,
318 0x00, 0x00, 0x00, 0x01,
319 0x01, 0x01, 0x01, 0x02,
320 0x01, 0x01, 0x01, 0x02,
321 0x01, 0x01, 0x01, 0x02,
322 0x01, 0x01, 0x01, 0x02,};
325 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+--+-+.
326 * | Length | Class-Num(9)| C-Type (1)|
327 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
328 * | 0 (a) | reserved | 7 (b) |
329 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
330 * | 1 (c) |0| reserved | 6 (d) |
331 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
332 * | 127 (e) | 0 (f) | 5 (g) |
333 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
334 * | Token Bucket Rate [r] (32-bit IEEE floating point number)|
335 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
336 * | Token Bucket Size [b] (32-bit IEEE floating point number)|
337 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
338 * | Peak Data Rate [p] (32-bit IEEE floating point number) |
339 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
340 * | Minimum Policed Unit [m] (32-bit integer) |
341 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
342 * | Maximum Packet Size [M] (32-bit integer) |
343 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
345 static final byte[] TE_LSP_SENDER_TSPEC = {
346 0x00, (byte) 0x20, (byte) 0x0c, 0x02, // Lenght, Class, Ctype
347 0x00, 0x00, 0x00, 0x07,
348 0x01, 0x00, 0x00, 0x06,
349 (byte) 0x7f, 0x00, 0x00, 0x05,
350 0x01, 0x01, 0x01, 0x01,
351 0x02, 0x02, 0x02, 0x02,
352 0x03, 0x03, 0x03, 0x03,
353 0x01, 0x02, 0x03, 0x04,
354 0x04, 0x03, 0x02, 0x01,};
357 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+--+-+.
358 * | Length | Class-Num(9)| C-Type (1)|
359 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
360 * | 0 (a) | reserved | 7 (b) |
361 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
362 * | 5 (c) |0| reserved | 6 (d) |
363 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
364 * | 127 (e) | 0 (f) | 5 (g) |
365 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
366 * | Token Bucket Rate [r] (32-bit IEEE floating point number) |
367 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
368 * | Token Bucket Size [b] (32-bit IEEE floating point number) |
369 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
370 * | Peak Data Rate [p] (32-bit IEEE floating point number) |
371 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
372 * | Minimum Policed Unit [m] (32-bit integer) |
373 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
374 * | Maximum Packet Size [M] (32-bit integer) |
375 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
377 static final byte[] TE_LSP_FLOWSPEC_H5 = {
378 0x00, (byte) 0x20, (byte) 0x09, 0x02, // Lenght, Class, Ctype
379 0x00, 0x00, 0x00, 0x07,
380 0x05, 0x00, 0x00, 0x06,
381 (byte) 0x7f, 0x00, 0x00, 0x05,
382 0x01, 0x01, 0x01, 0x01,
383 0x02, 0x02, 0x02, 0x02,
384 0x03, 0x03, 0x03, 0x03,
385 0x01, 0x02, 0x03, 0x04,
386 0x04, 0x03, 0x02, 0x01,};
389 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+--+-+.
390 * | Length | Class-Num(9)| C-Type (1) |
391 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+--+-+
392 * | 0 (a) | Unused | 10 (b) |
393 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
394 * | 2 (c) |0| reserved | 9 (d) |
395 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
396 * | 127 (e) | 0 (f) | 5 (g) |
397 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
398 * | Token Bucket Rate [r] (32-bit IEEE floating point number) |
399 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
400 * | Token Bucket Size [b] (32-bit IEEE floating point number) |
401 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
402 * | Peak Data Rate [p] (32-bit IEEE floating point number) |
403 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
404 * | Minimum Policed Unit [m] (32-bit integer) |
405 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
406 * | Maximum Packet Size [M] (32-bit integer) |
407 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
408 * | 130 (h) | 0 (i) | 2 (j) |
409 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
410 * | Rate [R] (32-bit IEEE floating point number) |
411 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
412 * | Slack Term [S] (32-bit integer) |
413 * -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
415 static final byte[] TE_LSP_FLOWSPEC_H2 = {
416 0x00, (byte) 0x2c, (byte) 0x09, 0x02, // Lenght, Class, Ctype
417 0x00, 0x00, 0x00, 0x0a,
418 0x02, 0x00, 0x00, 0x09,
419 (byte) 0x7f, 0x00, 0x00, 0x05,
420 0x01, 0x01, 0x01, 0x01,
421 0x02, 0x02, 0x02, 0x02,
422 0x03, 0x03, 0x03, 0x03,
423 0x01, 0x02, 0x03, 0x04,
424 0x04, 0x03, 0x02, 0x01,
425 (byte) 0x82, 0x00, 0x00, 0x02,
426 (byte) 0x01, 0x01, 0x02, 0x02,
427 (byte) 0x06, 0x06, 0x06, 0x06,};
430 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
431 * | Length | Class-Num(232)| C-Type (1) |
432 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
436 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
440 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
441 * |L| Type | Length | IPv4 address (4 bytes) |
442 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
443 * | IPv4 address (continued) | Prefix Length | Attribute |
444 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
446 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
447 * |L| Type | Length | IPv6 address (16 bytes) |
448 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
449 * | IPv6 address (continued) |
450 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
451 * | IPv6 address (continued) |
452 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
453 * | IPv6 address (continued) |
454 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
455 * | IPv6 address (continued) | Prefix Length | Attribute |
456 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
457 * Unnumbered Interface
458 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
459 * |L| Type | Length | Reserved | Attribute |
460 * | | | |(must be zero) | |
461 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
463 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
464 * | Interface ID (32 bits) |
465 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
467 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
468 * |L| Type | Length | SRLG Id (4 bytes) |
469 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
470 * | SRLG Id (continued) | Reserved |
471 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
473 static final byte[] TE_LSP_EXCLUDE_ROUTE = {
474 0x00, (byte) 0x34, (byte) 0xe8, 0x01, // Lenght, Class, Ctype
475 (byte) 0x81, 0x08, 0x01, 0x02, 0x03, 0x04, (byte) 0x20, 0x01,
476 (byte) 0x82, (byte) 0x14,
477 (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF,
478 (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF,
480 (byte) 0x84, (byte) 0x0c, 0x00, 0x00,
481 0x01, 0x02, 0x03, 0x04, 0x04, 0x03, 0x03, 0x04,
482 (byte) 0x20, 0x04, 0x01, 0x02,
483 (byte) 0x22, 0x08, 0x01, 0x02, 0x03, 0x04, 0x00, 0x00,};
486 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
487 * | Length | Class-Num(38)| C-Type (1) |
488 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
492 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
494 static final byte[] TE_LSP_PRIMARY_PATH_ROUTE = {
495 0x00, (byte) 0x30, (byte) 0x26, 0x01, // Lenght, Class, Ctype
496 (byte) 0x01, 0x08, 0x01, 0x02, 0x03, 0x04, (byte) 0x20, 0x00,
497 (byte) 0x02, (byte) 0x14,
498 0x01, 0x02, 0x03, 0x04, 0x01, 0x02, 0x03, 0x04, 0x01, 0x02, 0x03, 0x04, 0x01, 0x02, 0x03, 0x04,
500 (byte) 0x03, 0x08, 0x00, 0x01,
501 0x00, 0x00, 0x01, 0x01,
502 (byte) 0x04, (byte) 0x0c, 0x00, 0x00,
503 0x01, 0x02, 0x03, 0x04, 0x04, 0x03, 0x03, 0x04,
504 };//Maximum Packet Size
506 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
507 * | Length | Class-Num(20)| C-Type (1) |
508 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
512 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
514 static final byte[] TE_LSP_EXPLICIT = {
515 0x00, (byte) 0x20, (byte) 0x14, 0x01, // Lenght, Class, Ctype
516 (byte) 0x81, 0x08, 0x01, 0x02, 0x03, 0x04, (byte) 0x20, 0x00,
517 (byte) 0x82, (byte) 0x14,
518 0x01, 0x02, 0x03, 0x04, 0x01, 0x02, 0x03, 0x04, 0x01, 0x02, 0x03, 0x04, 0x01, 0x02, 0x03, 0x04,
520 (byte) 0x20, 0x04, 0x01, 0x02,
523 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
524 * | Length | Class-Num(20)| C-Type (1) |
525 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
529 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
531 static final byte[] TE_LSP_SECONDARY_EXPLICIT = {
532 0x00, (byte) 0x2c, (byte) 0xc8, 0x01, // Lenght, Class, Ctype
533 (byte) 0x81, 0x08, 0x01, 0x02, 0x03, 0x04, (byte) 0x20, 0x00,
534 (byte) 0x82, (byte) 0x14,
535 0x01, 0x02, 0x03, 0x04, 0x01, 0x02, 0x03, 0x04, 0x01, 0x02, 0x03, 0x04, 0x01, 0x02, 0x03, 0x04, (byte) 0x80,
537 (byte) 0x20, 0x04, 0x01, 0x02,
538 (byte) 0x25, 0x0c, 0x00, 0x02,
539 (byte) 0xf0, 0x04, 0x00, 0x08,
540 (byte) 0xc0, 0x04, 0x00, 0x00,
544 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
545 * | Length | Class-Num(21)| C-Type (1) |
546 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
550 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
552 static final byte[] TE_LSP_RECORD_ROUTE = {
553 0x00, (byte) 0x24, (byte) 0x15, 0x01, // Lenght, Class, Ctype
554 (byte) 0x01, 0x08, 0x01, 0x02, 0x03, 0x04, (byte) 0x20, 0x01,
555 (byte) 0x02, (byte) 0x14,
556 0x01, 0x02, 0x03, 0x04, 0x01, 0x02, 0x03, 0x04, 0x01, 0x02, 0x03, 0x04, 0x01, 0x02, 0x03, 0x04, (byte) 0x80,
558 (byte) 0x03, 0x08, 0x01, 0x01,
559 0x00, 0x00, 0x01, 0x01,
563 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
564 * | Length | Class-Num(201)| C-Type (1) |
565 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
569 * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
571 static final byte[] TE_LSP_SECONDARY_RECORD_ROUTE = {
572 0x00, (byte) 0x30, (byte) 0xc9, 0x01, // Lenght, Class, Ctype
573 (byte) 0x01, 0x08, 0x01, 0x02, 0x03, 0x04, (byte) 0x20, 0x01,
574 (byte) 0x02, (byte) 0x14,
575 0x01, 0x02, 0x03, 0x04, 0x01, 0x02, 0x03, 0x04, 0x01, 0x02, 0x03, 0x04, 0x01, 0x02, 0x03, 0x04, (byte) 0x80,
577 (byte) 0x03, 0x08, 0x01, 0x01,
578 0x00, 0x00, 0x01, 0x01,
579 (byte) 0x25, 0x0c, 0x00, 0x02,
580 (byte) 0xf0, 0x04, 0x00, 0x08,
581 (byte) 0xc0, 0x04, 0x00, 0x00,
583 static final byte[] TE_LSP_DYNAMIC_SRRO_PROTECTION = {
584 (byte) 0x25, 0x0c, 0x00, 0x02,
585 (byte) 0xf0, 0x04, 0x00, 0x08,
586 (byte) 0xc0, 0x04, 0x00, 0x00,
588 static final byte[] TE_LSP_BASIC_SRRO_PROTECTION = {
589 (byte) 0x25, 0x08, 0x00, 0x01,
590 (byte) 0x00, 0x00, 0x00, 0x08,
592 static final byte[] TE_LSP_DYNAMIC_SERO_PROTECTION = {
593 (byte) 0xa5, 0x0c, 0x00, 0x02,
594 (byte) 0xf0, 0x04, 0x00, 0x08,
595 (byte) 0xc0, 0x04, 0x00, 0x00,
597 static final byte[] TE_LSP_BASIC_SERO_PROTECTION = {
598 (byte) 0xa5, 0x08, 0x00, 0x01,
599 (byte) 0x00, 0x00, 0x00, 0x08,
602 private TEObjectUtil() {