| /* |
| * Copyright 2016-present Open Networking Foundation |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| package org.onosproject.k8snetworking.api; |
| |
| import org.onlab.packet.MacAddress; |
| |
| /** |
| * Provides constants used in kubernetes network switching and routing. |
| */ |
| public final class Constants { |
| |
| private Constants() { |
| } |
| |
| public static final String K8S_NETWORKING_APP_ID = "org.onosproject.k8snetworking"; |
| |
| public static final String ARP_BROADCAST_MODE = "broadcast"; |
| public static final String ARP_PROXY_MODE = "proxy"; |
| |
| public static final String NAT_STATEFUL = "stateful"; |
| public static final String NAT_STATELESS = "stateless"; |
| |
| public static final String DEFAULT_GATEWAY_MAC_STR = "fe:00:00:00:00:02"; |
| public static final String DEFAULT_ARP_MODE_STR = ARP_PROXY_MODE; |
| public static final String DEFAULT_HOST_MAC_STR = "fe:00:00:00:00:08"; |
| public static final String DEFAULT_SERVICE_IP_NAT_MODE_STR = NAT_STATELESS; |
| public static final String CONTROLLER_MAC_STR = "fe:00:00:00:00:10"; |
| public static final String SERVICE_FAKE_MAC_STR = "fe:00:00:00:00:20"; |
| |
| public static final MacAddress DEFAULT_GATEWAY_MAC = |
| MacAddress.valueOf(DEFAULT_GATEWAY_MAC_STR); |
| |
| public static final String SHIFTED_IP_CIDR = "172.10.0.0/16"; |
| public static final String SHIFTED_IP_PREFIX = "172.10"; |
| public static final String SHIFTED_LOCAL_IP_PREFIX = "172.11"; |
| public static final String NODE_IP_PREFIX = "182"; |
| |
| public static final String SRC = "src"; |
| public static final String DST = "dst"; |
| public static final String A_CLASS = "a"; |
| public static final String B_CLASS = "b"; |
| |
| public static final String DEFAULT_SERVICE_IP_CIDR = "10.96.0.0/12"; |
| public static final String DEFAULT_SERVICE_IP_NONE = "none"; |
| |
| public static final String PORT_NAME_PREFIX_CONTAINER = "veth"; |
| |
| public static final String ANNOTATION_NETWORK_ID = "networkId"; |
| public static final String ANNOTATION_PORT_ID = "portId"; |
| public static final String ANNOTATION_CREATE_TIME = "createTime"; |
| public static final String ANNOTATION_SEGMENT_ID = "segId"; |
| |
| public static final long DEFAULT_METADATA_MASK = 0xffffffffffffffffL; |
| public static final int DEFAULT_NAMESPACE_HASH = 0xffffffff; |
| |
| public static final int DEFAULT_SEGMENT_ID = 100; |
| |
| public static final int HOST_PREFIX = 32; |
| |
| // flow priority |
| public static final int PRIORITY_SNAT_RULE = 26000; |
| public static final int PRIORITY_TUNNEL_TAG_RULE = 30000; |
| public static final int PRIORITY_TRANSLATION_RULE = 30000; |
| public static final int PRIORITY_CT_HOOK_RULE = 30500; |
| public static final int PRIORITY_INTER_ROUTING_RULE = 29000; |
| public static final int PRIORITY_CT_RULE = 32000; |
| public static final int PRIORITY_CT_DROP_RULE = 32500; |
| public static final int PRIORITY_NAT_RULE = 30000; |
| public static final int PRIORITY_GATEWAY_RULE = 31000; |
| public static final int PRIORITY_LOCAL_BRIDGE_RULE = 32000; |
| public static final int PRIORITY_SWITCHING_RULE = 30000; |
| public static final int PRIORITY_CIDR_RULE = 30000; |
| public static final int PRIORITY_NAMESPACE_RULE = 31000; |
| public static final int PRIORITY_STATEFUL_SNAT_RULE = 41000; |
| public static final int PRIORITY_EXTERNAL_ROUTING_RULE = 25000; |
| public static final int PRIORITY_ARP_CONTROL_RULE = 40000; |
| public static final int PRIORITY_ARP_REPLY_RULE = 40000; |
| public static final int PRIORITY_ARP_POD_RULE = 39000; |
| public static final int PRIORITY_ARP_FLOOD_RULE = 39000; |
| public static final int PRIORITY_FORCED_ACL_RULE = 50000; |
| public static final int PRIORITY_ICMP_PROBE_RULE = 50000; |
| public static final int PRIORITY_NODE_PORT_RULE = 42000; |
| public static final int PRIORITY_NODE_PORT_REMOTE_RULE = 41500; |
| public static final int PRIORITY_NODE_PORT_INTER_RULE = 40000; |
| |
| // flow table index |
| public static final int STAT_INGRESS_TABLE = 0; |
| public static final int VTAP_INGRESS_TABLE = 1; |
| public static final int VTAP_INGRESS_MIRROR_TABLE = 2; |
| public static final int VTAG_TABLE = 30; |
| public static final int ARP_TABLE = 35; |
| public static final int JUMP_TABLE = 40; |
| public static final int NAMESPACE_TABLE = 49; |
| public static final int GROUPING_TABLE = 50; |
| public static final int NAT_TABLE = 51; |
| public static final int SERVICE_TABLE = 52; |
| public static final int POD_TABLE = 53; |
| public static final int ACL_TABLE = 55; |
| public static final int ACL_INGRESS_WHITE_TABLE = 56; |
| public static final int ACL_INGRESS_BLACK_TABLE = 57; |
| public static final int ACL_EGRESS_WHITE_TABLE = 58; |
| public static final int ACL_EGRESS_BLACK_TABLE = 59; |
| public static final int ROUTING_TABLE = 60; |
| public static final int STAT_EGRESS_TABLE = 70; |
| public static final int VTAP_EGRESS_TABLE = 71; |
| public static final int VTAP_EGRESS_MIRROR_TABLE = 72; |
| public static final int FORWARDING_TABLE = 80; |
| public static final int ERROR_TABLE = 100; |
| |
| public static final int EXT_ENTRY_TABLE = 0; |
| public static final int POD_RESOLUTION_TABLE = 11; |
| |
| public static final int LOCAL_ENTRY_TABLE = 0; |
| |
| // CLI item length |
| public static final int CLI_ID_LENGTH = 30; |
| public static final int CLI_NAME_LENGTH = 30; |
| public static final int CLI_IP_ADDRESSES_LENGTH = 50; |
| public static final int CLI_IP_ADDRESS_LENGTH = 25; |
| public static final int CLI_MAC_ADDRESS_LENGTH = 25; |
| public static final int CLI_PORTS_LENGTH = 20; |
| public static final int CLI_NAMESPACE_LENGTH = 15; |
| public static final int CLI_PHASE_LENGTH = 15; |
| public static final int CLI_TYPE_LENGTH = 15; |
| public static final int CLI_TYPES_LENGTH = 30; |
| public static final int CLI_SEG_ID_LENGTH = 10; |
| public static final int CLI_LABELS_LENGTH = 30; |
| public static final int CLI_CONTAINERS_LENGTH = 30; |
| |
| public static final int CLI_MARGIN_LENGTH = 2; |
| } |