blob: 43d31c557332e4b761e4513aa50f73fb9830f1b8 [file] [log] [blame]
Priyanka B0bee1f82015-10-13 15:39:49 +05301/*
Brian O'Connora09fe5b2017-08-03 21:12:30 -07002 * Copyright 2015-present Open Networking Foundation
Priyanka B0bee1f82015-10-13 15:39:49 +05303 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16package org.onosproject.bgpio.util;
17
18/**
19 * Provides Constants usage for BGP.
20 */
21public final class Constants {
22 private Constants() {
23 }
24
25 public static final short TYPE_AND_LEN = 4;
26 public static final short TYPE_AND_LEN_AS_SHORT = 4;
27 public static final short TYPE_AND_LEN_AS_BYTE = 3;
28 public static final int ISIS_LEVELONE = 1;
29 public static final int ISIS_LEVELTWO = 2;
30 public static final int OSPFV2 = 3;
31 public static final int DIRECT = 4;
32 public static final int STATIC_CONFIGURATION = 5;
33 public static final int OSPFV3 = 6;
34 public static final short AFI_VALUE = 16388;
35 public static final byte VPN_SAFI_VALUE = (byte) 0x80;
36 public static final byte SAFI_VALUE = 71;
Shashikanth VHf04ab492016-02-10 11:35:11 +053037 public static final short AFI_IPV4_UNICAST = 1;
38 public static final byte SAFI_IPV4_UNICAST = 1;
Shashikanth VH0a82a8e2016-02-02 20:42:53 +053039 public static final short AFI_FLOWSPEC_VALUE = 1;
40 public static final byte SAFI_FLOWSPEC_VALUE = (byte) 133;
41 public static final byte VPN_SAFI_FLOWSPEC_VALUE = (byte) 134;
42
Shashikanth VHb650bfa2016-04-18 12:54:03 +053043 /* TODO: The Capability Code
44 for this capability is to be specified by the IANA.*/
45 public static final short AFI_FLOWSPEC_RPD_VALUE = 1;
Shashikanth VHb58cfd52016-04-21 16:45:50 +053046 public static final byte SAFI_FLOWSPEC_RPD_VALUE = (byte) 133;
47 public static final byte VPN_SAFI_FLOWSPEC_RDP_VALUE = (byte) 134;
Shashikanth VHb650bfa2016-04-18 12:54:03 +053048
49 public static final byte RPD_CAPABILITY_RECEIVE_VALUE = 0;
50 public static final byte RPD_CAPABILITY_SEND_VALUE = 1;
51 public static final byte RPD_CAPABILITY_SEND_RECEIVE_VALUE = 2;
52
Priyanka B0ab34b92015-12-03 21:13:52 +053053 public static final int EXTRA_TRAFFIC = 0x01;
54 public static final int UNPROTECTED = 0x02;
55 public static final int SHARED = 0x04;
56 public static final int DEDICATED_ONE_ISTO_ONE = 0x08;
57 public static final int DEDICATED_ONE_PLUS_ONE = 0x10;
58 public static final int ENHANCED = 0x20;
59 public static final int RESERVED = 0x40;
Shashikanth VH0a82a8e2016-02-02 20:42:53 +053060
Shashikanth VH826990b2016-02-11 16:52:46 +053061 public static final byte BGP_EXTENDED_COMMUNITY = 0x10;
62
Shashikanth VH0a82a8e2016-02-02 20:42:53 +053063 public static final byte BGP_FLOWSPEC_DST_PREFIX = 0x01;
64 public static final byte BGP_FLOWSPEC_SRC_PREFIX = 0x02;
65 public static final byte BGP_FLOWSPEC_IP_PROTO = 0x03;
66 public static final byte BGP_FLOWSPEC_PORT = 0x04;
67 public static final byte BGP_FLOWSPEC_DST_PORT = 0x05;
68 public static final byte BGP_FLOWSPEC_SRC_PORT = 0x06;
69 public static final byte BGP_FLOWSPEC_ICMP_TP = 0x07;
70 public static final byte BGP_FLOWSPEC_ICMP_CD = 0x08;
71 public static final byte BGP_FLOWSPEC_TCP_FLAGS = 0x09;
Shashikanth VH03205d22016-02-19 22:48:08 +053072 public static final byte BGP_FLOWSPEC_PCK_LEN = 0x0a;
73 public static final byte BGP_FLOWSPEC_DSCP = 0x0b;
74 public static final byte BGP_FLOWSPEC_FRAGMENT = 0x0c;
Shashikanth VH0a82a8e2016-02-02 20:42:53 +053075
76 public static final short BGP_FLOWSPEC_ACTION_TRAFFIC_RATE = (short) 0x8006;
77 public static final short BGP_FLOWSPEC_ACTION_TRAFFIC_ACTION = (short) 0x8007;
78 public static final short BGP_FLOWSPEC_ACTION_TRAFFIC_REDIRECT = (short) 0x8008;
79 public static final short BGP_FLOWSPEC_ACTION_TRAFFIC_MARKING = (short) 0x8009;
80
Shashikanth VHc53a4132016-02-11 18:33:34 +053081 public static final byte BGP_FLOW_SPEC_LEN_MASK = 0x30;
82 public static final byte BGP_FLOW_SPEC_END_OF_LIST_MASK = (byte) 0x80;
Priyanka B0bee1f82015-10-13 15:39:49 +053083}