blob: 703e01b5a7da24f3f890d628f57f7764ee36ae31 [file] [log] [blame]
Jian Li8df54a92018-08-23 17:01:31 +09001/*
2 * Copyright 2018-present Open Networking Foundation
3 *
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 */
16
17package org.onosproject.simplefabric.api;
18
19/**
20 * Provides constants used in simple fabric services.
21 */
22public final class Constants {
23
24 private Constants() {
25 }
26
27 // App symbols
28 public static final String APP_ID = "org.onosproject.simplefabric";
Jian Lie2d87512018-08-23 17:33:05 +090029 public static final String FORWARDING_APP_ID = "org.onosproject.simplefabric.forwarding";
30 public static final String ROUTING_APP_ID = "org.onosproject.simplefabric.routing";
Jian Li8df54a92018-08-23 17:01:31 +090031
32 // Priority for l2NetworkRouting: L2NETWORK_UNICAST or L2NETWORK_BROADCAST
33 public static final int PRI_L2NETWORK_UNICAST = 601;
34 public static final int PRI_L2NETWORK_BROADCAST = 600;
35
36 // Reactive Routing within Local Subnets
37 // ASSUME: local subnets NEVER overlaps each other
38 public static final int PRI_REACTIVE_LOCAL_FORWARD = 501;
39 public static final int PRI_REACTIVE_LOCAL_INTERCEPT = 500;
40 // Reactive Routing for Border Routes with local subnet
41 // Priority: REACTIVE_BROUTE_BASE + routeIpPrefix * REACTIVE_BROUTE_STEP
42 // + REACTIVE_BROUTE_FORWARD or REACTIVE_BROUTE_INTERCEPT
43 public static final int PRI_REACTIVE_BORDER_BASE = 100;
44 public static final int PRI_REACTIVE_BORDER_STEP = 2;
45 public static final int PRI_REACTIVE_BORDER_FORWARD = 1;
46 public static final int PRI_REACTIVE_BORDER_INTERCEPT = 0;
47
48 // Simple fabric event related timers
49 public static final long IDLE_INTERVAL_MSEC = 5000;
50
51 // Feature control parameters
52 public static final boolean ALLOW_IPV6 = false;
53 public static final boolean ALLOW_ETH_ADDRESS_SELECTOR = true;
54 public static final boolean REACTIVE_SINGLE_TO_SINGLE = false;
55 public static final boolean REACTIVE_ALLOW_LINK_CP = false; // MUST BE false (yjlee, 2017-10-18)
56 public static final boolean REACTIVE_HASHED_PATH_SELECTION = false;
57 public static final boolean REACTIVE_MATCH_IP_PROTO = false;
58}