summaryrefslogtreecommitdiffstats
path: root/src/plugins/yang/openconfig/openconfig-bgp-common.yang
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/yang/openconfig/openconfig-bgp-common.yang')
-rw-r--r--src/plugins/yang/openconfig/openconfig-bgp-common.yang665
1 files changed, 0 insertions, 665 deletions
diff --git a/src/plugins/yang/openconfig/openconfig-bgp-common.yang b/src/plugins/yang/openconfig/openconfig-bgp-common.yang
deleted file mode 100644
index 5194266..0000000
--- a/src/plugins/yang/openconfig/openconfig-bgp-common.yang
+++ /dev/null
@@ -1,665 +0,0 @@
-submodule openconfig-bgp-common {
-
- belongs-to openconfig-bgp {
- prefix "oc-bgp";
- }
-
- import openconfig-extensions { prefix oc-ext; }
- import openconfig-bgp-types { prefix oc-bgp-types; }
- import openconfig-routing-policy { prefix oc-rpol; }
- import openconfig-types { prefix oc-types; }
- import openconfig-inet-types { prefix oc-inet; }
-
- // meta
- organization
- "OpenConfig working group";
-
- contact
- "OpenConfig working group
- netopenconfig@googlegroups.com";
-
- description
- "This sub-module contains common groupings that are common across
- multiple contexts within the BGP module. That is to say that they
- may be application to a subset of global, peer-group or neighbor
- contexts.";
-
- oc-ext:openconfig-version "5.0.1";
-
- revision "2018-08-20" {
- description
- "Correct description of AFI-SAFI enabled leaf.";
- reference "5.0.1";
- }
-
- revision "2018-04-11" {
- description
- "Correct naming of BGP maximum prefix warning percentage leaf.";
- reference "5.0.0";
- }
-
- revision "2018-03-20" {
- description
- "Added SR-TE policy SAFI";
- reference "4.1.0";
- }
-
- revision "2017-07-30" {
- description
- "Clarification of add-paths send-max leaf";
- reference "4.0.1";
- }
-
- revision "2017-07-10" {
- description
- "Add error notifications; moved add-paths config; add AS
- prepend policy features; removed unneeded config leaves";
- reference "4.0.0";
- }
-
- revision "2017-02-02" {
- description
- "Bugfix to remove remaining global-level policy data";
- reference "3.0.1";
- }
-
- revision "2017-01-26" {
- description
- "Add dynamic neighbor support, migrate to OpenConfig types";
- reference "3.0.0";
- }
-
- revision "2016-06-21" {
- description
- "OpenConfig BGP refactor";
- reference "2.1.1";
- }
-
- grouping bgp-common-neighbor-group-timers-config {
- description
- "Config parameters related to timers associated with the BGP
- peer";
-
- leaf connect-retry {
- type decimal64 {
- fraction-digits 2;
- }
- default 30;
- description
- "Time interval in seconds between attempts to establish a
- session with the peer.";
- }
-
- leaf hold-time {
- type decimal64 {
- fraction-digits 2;
- }
- default 90;
- description
- "Time interval in seconds that a BGP session will be
- considered active in the absence of keepalive or other
- messages from the peer. The hold-time is typically
- set to 3x the keepalive-interval.";
- reference
- "RFC 4271 - A Border Gateway Protocol 4, Sec. 10";
- }
-
- leaf keepalive-interval {
- type decimal64 {
- fraction-digits 2;
- }
- default 30;
- description
- "Time interval in seconds between transmission of keepalive
- messages to the neighbor. Typically set to 1/3 the
- hold-time.";
- }
-
- leaf minimum-advertisement-interval {
- type decimal64 {
- fraction-digits 2;
- }
- default 30;
- description
- "Minimum time which must elapse between subsequent UPDATE
- messages relating to a common set of NLRI being transmitted
- to a peer. This timer is referred to as
- MinRouteAdvertisementIntervalTimer by RFC 4721 and serves to
- reduce the number of UPDATE messages transmitted when a
- particular set of NLRI exhibit instability.";
- reference
- "RFC 4271 - A Border Gateway Protocol 4, Sec 9.2.1.1";
- }
- }
-
- grouping bgp-common-neighbor-group-config {
- description
- "Neighbor level configuration items.";
-
- leaf peer-as {
- type oc-inet:as-number;
- description
- "AS number of the peer.";
- }
-
- leaf local-as {
- type oc-inet:as-number;
- description
- "The local autonomous system number that is to be used
- when establishing sessions with the remote peer or peer
- group, if this differs from the global BGP router
- autonomous system number.";
- }
-
- leaf peer-type {
- type oc-bgp-types:peer-type;
- description
- "Explicitly designate the peer or peer group as internal
- (iBGP) or external (eBGP).";
- }
-
- leaf auth-password {
- type oc-types:routing-password;
- description
- "Configures an MD5 authentication password for use with
- neighboring devices.";
- }
-
- leaf remove-private-as {
- // could also make this a container with a flag to enable
- // remove-private and separate option. here, option implies
- // remove-private is enabled.
- type oc-bgp-types:remove-private-as-option;
- description
- "Remove private AS numbers from updates sent to peers - when
- this leaf is not specified, the AS_PATH attribute should be
- sent to the peer unchanged";
- }
-
- leaf route-flap-damping {
- type boolean;
- default false;
- description
- "Enable route flap damping.";
- }
-
- leaf send-community {
- type oc-bgp-types:community-type;
- default "NONE";
- description
- "Specify which types of community should be sent to the
- neighbor or group. The default is to not send the
- community attribute";
- }
-
- leaf description {
- type string;
- description
- "An optional textual description (intended primarily for use
- with a peer or group";
- }
- }
-
- grouping bgp-common-neighbor-group-transport-config {
- description
- "Configuration parameters relating to the transport protocol
- used by the BGP session to the peer";
-
- leaf tcp-mss {
- type uint16;
- description
- "Sets the max segment size for BGP TCP sessions.";
- }
-
- leaf mtu-discovery {
- type boolean;
- default false;
- description
- "Turns path mtu discovery for BGP TCP sessions on (true)
- or off (false)";
- }
-
- leaf passive-mode {
- type boolean;
- default false;
- description
- "Wait for peers to issue requests to open a BGP session,
- rather than initiating sessions from the local router.";
- }
-
- leaf local-address {
- type union {
- type oc-inet:ip-address;
- type string;
- }
- //TODO: the string should be converted to a leafref type
- //to point to an interface when YANG 1.1 is available with
- //leafrefs in union types.
- description
- "Set the local IP (either IPv4 or IPv6) address to use
- for the session when sending BGP update messages. This
- may be expressed as either an IP address or reference
- to the name of an interface.";
- }
- }
-
- grouping bgp-common-neighbor-group-error-handling-config {
- description
- "Configuration parameters relating to enhanced error handling
- behaviours for BGP";
-
- leaf treat-as-withdraw {
- type boolean;
- default "false";
- description
- "Specify whether erroneous UPDATE messages for which the
- NLRI can be extracted are reated as though the NLRI is
- withdrawn - avoiding session reset";
- reference "draft-ietf-idr-error-handling-16";
- }
- }
-
- grouping bgp-common-neighbor-group-logging-options-config {
- description
- "Configuration parameters specifying the logging behaviour for
- BGP sessions to the peer";
-
- leaf log-neighbor-state-changes {
- type boolean;
- default "true";
- description
- "Configure logging of peer state changes. Default is
- to enable logging of peer state changes.";
- }
- }
-
- grouping bgp-common-neighbor-group-multihop-config {
- description
- "Configuration parameters specifying the multihop behaviour for
- BGP sessions to the peer";
-
- leaf enabled {
- type boolean;
- default "false";
- description
- "When enabled the referenced group or neighbors are permitted
- to be indirectly connected - including cases where the TTL
- can be decremented between the BGP peers";
- }
-
- leaf multihop-ttl {
- type uint8;
- description
- "Time-to-live value to use when packets are sent to the
- referenced group or neighbors and ebgp-multihop is enabled";
- }
- }
-
- grouping bgp-common-neighbor-group-route-reflector-config {
- description
- "Configuration parameters determining whether the behaviour of
- the local system when acting as a route-reflector";
-
- leaf route-reflector-cluster-id {
- type oc-bgp-types:rr-cluster-id-type;
- description
- "route-reflector cluster id to use when local router is
- configured as a route reflector. Commonly set at the group
- level, but allows a different cluster
- id to be set for each neighbor.";
- }
-
- leaf route-reflector-client {
- type boolean;
- default "false";
- description
- "Configure the neighbor as a route reflector client.";
- }
- }
-
- grouping bgp-common-neighbor-group-as-path-options-config {
- description
- "Configuration parameters allowing manipulation of the AS_PATH
- attribute";
-
- leaf allow-own-as {
- type uint8;
- default 0;
- description
- "Specify the number of occurrences of the local BGP speaker's
- AS that can occur within the AS_PATH before it is rejected.";
- }
-
- leaf replace-peer-as {
- type boolean;
- default "false";
- description
- "Replace occurrences of the peer's AS in the AS_PATH
- with the local autonomous system number";
- }
-
- leaf disable-peer-as-filter {
- type boolean;
- default "false";
- description
- "When set to true, the system advertises routes to a peer
- even if the peer's AS was in the AS path. The default
- behavior (false) suppresses advertisements to peers if
- their AS number is in the AS path of the route.";
- }
- }
-
- grouping bgp-common-neighbor-group-add-paths-config {
- description
- "Configuration parameters specfying whether the local system
- will send or receive multiple paths using ADD_PATHS";
-
- leaf receive {
- type boolean;
- default false;
- description
- "Enable capability negotiation to receive multiple path
- advertisements for an NLRI from the neighbor or group";
- reference
- "RFC 7911 - Advertisement of Multiple Paths in BGP";
- }
-
- leaf send {
- type boolean;
- default false;
- description
- "Enable capability negotiation to send multiple path
- advertisements for an NLRI from the neighbor or group";
- reference
- "RFC 7911 - Advertisement of Multiple Paths in BGP";
- }
-
- leaf send-max {
- type uint8;
- description
- "The maximum total number of paths to advertise to neighbors
- for a single NLRI. This includes the single best path as
- well as additional paths advertised when add-paths is
- enabled.";
- }
-
- leaf eligible-prefix-policy {
- type leafref {
- path "/oc-rpol:routing-policy/oc-rpol:policy-definitions/" +
- "oc-rpol:policy-definition/oc-rpol:name";
- }
- description
- "A reference to a routing policy which can be used to
- restrict the prefixes for which add-paths is enabled";
- }
- }
-
- grouping bgp-common-graceful-restart-config {
- description
- "Configuration parameters relating to BGP graceful restart.";
-
- leaf enabled {
- type boolean;
- description
- "Enable or disable the graceful-restart capability.";
- }
-
- leaf restart-time {
- type uint16 {
- range 0..4096;
- }
- description
- "Estimated time (in seconds) for the local BGP speaker to
- restart a session. This value is advertise in the graceful
- restart BGP capability. This is a 12-bit value, referred to
- as Restart Time in RFC4724. Per RFC4724, the suggested
- default value is <= the hold-time value.";
- }
-
- leaf stale-routes-time {
- type decimal64 {
- fraction-digits 2;
- }
- description
- "An upper-bound on the time thate stale routes will be
- retained by a router after a session is restarted. If an
- End-of-RIB (EOR) marker is received prior to this timer
- expiring stale-routes will be flushed upon its receipt - if
- no EOR is received, then when this timer expires stale paths
- will be purged. This timer is referred to as the
- Selection_Deferral_Timer in RFC4724";
- }
-
- leaf helper-only {
- type boolean;
- description
- "Enable graceful-restart in helper mode only. When this
- leaf is set, the local system does not retain forwarding
- its own state during a restart, but supports procedures
- for the receiving speaker, as defined in RFC4724.";
- }
- }
-
- grouping bgp-common-use-multiple-paths-config {
- description
- "Generic configuration options relating to use of multiple
- paths for a referenced AFI-SAFI, group or neighbor";
-
- leaf enabled {
- type boolean;
- default false;
- description
- "Whether the use of multiple paths for the same NLRI is
- enabled for the neighbor. This value is overridden by
- any more specific configuration value.";
- }
- }
-
- grouping bgp-common-use-multiple-paths-ebgp-as-options-config {
- description
- "Configuration parameters specific to eBGP multipath applicable
- to all contexts";
-
- leaf allow-multiple-as {
- type boolean;
- default "false";
- description
- "Allow multipath to use paths from different neighbouring
- ASes. The default is to only consider multiple paths from
- the same neighbouring AS.";
- }
- }
-
- grouping bgp-common-global-group-use-multiple-paths {
- description
- "Common grouping used for both global and groups which provides
- configuration and state parameters relating to use of multiple
- paths";
-
- container use-multiple-paths {
- description
- "Parameters related to the use of multiple paths for the
- same NLRI";
-
- container config {
- description
- "Configuration parameters relating to multipath";
- uses bgp-common-use-multiple-paths-config;
- }
- container state {
- config false;
- description
- "State parameters relating to multipath";
- uses bgp-common-use-multiple-paths-config;
- }
-
- container ebgp {
- description
- "Multipath parameters for eBGP";
- container config {
- description
- "Configuration parameters relating to eBGP multipath";
- uses bgp-common-use-multiple-paths-ebgp-config;
- }
- container state {
- config false;
- description
- "State information relating to eBGP multipath";
- uses bgp-common-use-multiple-paths-ebgp-config;
- }
- }
-
- container ibgp {
- description
- "Multipath parameters for iBGP";
- container config {
- description
- "Configuration parameters relating to iBGP multipath";
- uses bgp-common-use-multiple-paths-ibgp-config;
- }
- container state {
- config false;
- description
- "State information relating to iBGP multipath";
- uses bgp-common-use-multiple-paths-ibgp-config;
- }
- }
- }
- }
-
- grouping bgp-common-use-multiple-paths-ebgp-config {
- description
- "Configuration parameters relating to multipath for eBGP";
-
- leaf allow-multiple-as {
- type boolean;
- default "false";
- description
- "Allow multipath to use paths from different neighbouring
- ASes. The default is to only consider multiple paths from
- the same neighbouring AS.";
- }
-
- leaf maximum-paths {
- type uint32;
- default 1;
- description
- "Maximum number of parallel paths to consider when using
- BGP multipath. The default is use a single path.";
- }
- }
-
- grouping bgp-common-use-multiple-paths-ibgp-config {
- description
- "Configuration parmaeters relating to multipath for iBGP";
-
- leaf maximum-paths {
- type uint32;
- default 1;
- description
- "Maximum number of parallel paths to consider when using
- iBGP multipath. The default is to use a single path";
- }
- }
-
- grouping bgp-common-route-selection-options-config {
- description
- "Set of configuration options that govern best
- path selection.";
-
- leaf always-compare-med {
- type boolean;
- default "false";
- description
- "Compare multi-exit discriminator (MED) value from
- different ASes when selecting the best route. The
- default behavior is to only compare MEDs for paths
- received from the same AS.";
- }
-
- leaf ignore-as-path-length {
- type boolean;
- default "false";
- description
- "Ignore the AS path length when selecting the best path.
- The default is to use the AS path length and prefer paths
- with shorter length.";
- }
-
- leaf external-compare-router-id {
- type boolean;
- default "true";
- description
- "When comparing similar routes received from external
- BGP peers, use the router-id as a criterion to select
- the active path.";
- }
-
- leaf advertise-inactive-routes {
- type boolean;
- default "false";
- description
- "Advertise inactive routes to external peers. The
- default is to only advertise active routes.";
- }
-
- leaf enable-aigp {
- type boolean;
- default false;
- description
- "Flag to enable sending / receiving accumulated IGP
- attribute in routing updates";
- }
-
- leaf ignore-next-hop-igp-metric {
- type boolean;
- default "false";
- description
- "Ignore the IGP metric to the next-hop when calculating
- BGP best-path. The default is to select the route for
- which the metric to the next-hop is lowest";
- }
- }
-
- grouping bgp-common-route-selection-options {
- description
- "Configuration and state relating to route selection options";
-
- container route-selection-options {
- description
- "Parameters relating to options for route selection";
- container config {
- description
- "Configuration parameters relating to route selection
- options";
- uses bgp-common-route-selection-options-config;
- }
- container state {
- config false;
- description
- "State information for the route selection options";
- uses bgp-common-route-selection-options-config;
- }
- }
- }
-
- grouping bgp-common-state {
- description
- "Grouping containing common counters relating to prefixes and
- paths";
-
- leaf total-paths {
- type uint32;
- description
- "Total number of BGP paths within the context";
- }
-
- leaf total-prefixes {
- type uint32;
- description
- "Total number of BGP prefixes received within the context";
- }
- }
-
-
-}