3 namespace "urn:opendaylight:params:xml:ns:yang:bgp-message";
6 import ietf-inet-types { prefix inet; revision-date 2013-07-15; }
7 import bgp-types { prefix bgp-t; revision-date 2020-01-20; }
8 import network-concepts { prefix netc; revision-date 2013-11-25; }
10 organization "Cisco Systems, Inc.";
11 contact "Dana Kutenicsova <dkutenic@cisco.com>";
14 "This module contains the base data model of a BGP message.
15 It rolls up the definitions contained in RFC4271 and RFC4893.
17 Copyright (c)2013 Cisco Systems, Inc. All rights reserved.
19 This program and the accompanying materials are made available
20 under the terms of the Eclipse Public License v1.0 which
21 accompanies this distribution, and is available at
22 http://www.eclipse.org/legal/epl-v10.html";
25 description "Update to use -no-zone-adresses";
28 revision "2018-03-29" {
29 description "Add RFC6514 Extended communities under bgp type.";
32 revision "2017-12-07" {
33 description "Add support for add-path in base BGP NLRI.";
36 revision "2013-09-19" {
38 "Split off basic types";
41 revision "2013-09-18" {
44 reference "RFC4271, RFC4893";
47 typedef protocol-version {
57 "Identifier of a single path. The identifier does not
58 carry any semantic meaning beyond uniquely identifying
59 a path. Default 0 value is reserved for non supported add-path key representation.";
62 grouping path-id-grouping {
68 grouping originator-id {
70 type inet:ipv4-address-no-zone;
76 type bgp-t:cluster-identifier;
81 grouping ipv4-prefix-and-path-id {
83 type inet:ipv4-prefix;
85 uses path-id-grouping;
92 grouping open-message {
93 description "Open Message";
94 reference "http://tools.ietf.org/html/rfc4271#section-4.2";
96 type protocol-version;
107 leaf bgp-identifier {
108 type inet:ipv4-address-no-zone;
111 list bgp-parameters {
112 list optional-capabilities {
113 reference "http://tools.ietf.org/html/rfc5492#section-4";
114 container c-parameters {
115 container as4-bytes-capability {
116 reference "http://tools.ietf.org/html/rfc6793";
121 container bgp-extended-message-capability {
122 reference "https://www.ietf.org/archive/id/draft-ietf-idr-bgp-extended-messages-11.txt";
123 presence "Indicates peer is able to send/receive 64K messages";
130 grouping path-attributes {
131 reference "http://tools.ietf.org/html/rfc4271#section-5";
132 container attributes {
134 reference "http://tools.ietf.org/html/rfc4271#section-5.1.1";
136 type bgp-t:bgp-origin;
141 reference "http://tools.ietf.org/html/rfc4271#section-5.1.2";
143 uses bgp-t:as-path-segment;
147 container multi-exit-disc {
148 reference "http://tools.ietf.org/html/rfc4271#section-5.1.4";
153 container local-pref {
154 reference "http://tools.ietf.org/html/rfc4271#section-5.1.5";
159 container atomic-aggregate {
160 reference "http://tools.ietf.org/html/rfc4271#section-5.1.6";
161 presence "Atomic Aggregate attribute is present.";
163 container aggregator {
164 uses bgp-t:bgp-aggregator;
167 uses bgp-t:community;
169 list extended-communities {
170 uses bgp-t:extended-community;
172 container originator-id {
175 container cluster-id {
181 type netc:accumulated-igp-metric;
185 list unrecognized-attributes {
206 container bgp-prefix-sid {
207 list bgp-prefix-sid-tlvs {
208 choice bgp-prefix-sid-tlv {
209 reference "https://tools.ietf.org/html/draft-ietf-idr-bgp-prefix-sid-02";
217 notification update {
221 grouping update-message {
222 description "Update Message";
223 reference "http://tools.ietf.org/html/rfc4271#section-4.3";
224 uses path-attributes;
225 list withdrawn-routes {
226 uses ipv4-prefix-and-path-id;
229 uses ipv4-prefix-and-path-id;
233 notification keepalive {
234 description "Keepalive Message";
235 reference "http://tools.ietf.org/html/rfc4271#section-4.4";
238 notification notify {
242 grouping notify-message {
243 description "Notification Message";
244 reference "http://tools.ietf.org/html/rfc4271#section-4.5";