3 namespace "urn:opendaylight:params:xml:ns:yang:rsvp";
6 import iana { prefix iana; revision-date 2013-08-16; }
7 import ietf-inet-types { prefix inet; revision-date 2010-09-24; }
9 organization "Cisco Systems, Inc.";
10 contact "Robert Varga <rovarga@cisco.com>";
13 "This module contains the definition of types related to
14 Resource Reservation Protocol (RSVP).
16 Copyright (c)2013 Cisco Systems, Inc. All rights reserved.
18 This program and the accompanying materials are made available
19 under the terms of the Eclipse Public License v1.0 which
20 accompanies this distribution, and is available at
21 http://www.eclipse.org/legal/epl-v10.html";
23 revision "2013-08-20" {
26 reference "https://tools.ietf.org/html/rfc2205";
29 typedef attribute-filter {
33 grouping attribute-filters {
35 type attribute-filter;
39 type attribute-filter;
43 type attribute-filter;
47 grouping tunnel-attributes {
58 leaf local-protection-desired {
63 uses attribute-filters;
68 reference "https://tools.ietf.org/html/rfc3209#section-4.6.2.1";
73 reference "https://tools.ietf.org/html/rfc3209#section-4.6.1.1";
76 typedef ipv4-extended-tunnel-id {
77 type inet:ipv4-address;
78 reference "https://tools.ietf.org/html/rfc3209#section-4.6.1.1";
81 typedef ipv6-extended-tunnel-id {
82 type inet:ipv6-address;
83 reference "https://tools.ietf.org/html/rfc3209#section-4.6.1.2";
88 reference "http://tools.ietf.org/html/rfc4202#section-2.3";
92 reference "https://tools.ietf.org/html/rfc2205#page-81";
121 grouping user-error-spec {
122 reference "https://tools.ietf.org/html/rfc5284#section-3";
125 type iana:enterprise-number;
144 container subobjects {
145 // Filled by enterprise-specific augmentations
152 grouping type1-label {
153 reference "https://tools.ietf.org/html/rfc3209#section-4.1";
163 grouping generalized-label {
164 reference "https://tools.ietf.org/html/rfc3473#section-2.3";
168 leaf generalized-label {
174 grouping waveband-switching-label {
175 reference "https://tools.ietf.org/html/rfc3473#section-2.4";
194 reference "https://tools.ietf.org/html/rfc3473#section-2.6";
198 enum inclusive-list {
201 enum exclusive-list {
204 enum inclusive-range {
207 enum exclusive-range {
213 container label-type {
214 // Technology-specific
223 grouping c-subobject {
227 grouping ip-prefix-subobject {
230 reference "http://tools.ietf.org/html/rfc3209#section-4.3.3.1";
236 grouping as-number-subobject {
239 reference "http://tools.ietf.org/html/rfc3209#section-4.3.3.4";
245 grouping label-subobject {
248 leaf uni-directional {
254 case type1-label-case {
255 container type1-label {
259 case generalized-label-case {
260 container generalized-label {
261 uses generalized-label;
264 case waveband-switching-label-case {
265 container waveband-switching-label {
266 uses waveband-switching-label;
272 grouping unnumbered-subobject {
285 grouping srlg-subobject {
293 grouping record-route-subobjects {
294 leaf protection-available {
299 leaf protection-in-use {
304 choice subobject-type {
305 case ip-prefix-case {
306 container ip-prefix {
307 uses ip-prefix-subobject;
313 uses label-subobject;
322 case unnumbered-case {
323 container unnumbered {
324 uses unnumbered-subobject;
330 grouping basic-explicit-route-subobjects {
331 description "Subobjects shared between XRO and ERO";
332 reference "https://tools.ietf.org/html/rfc4874#section-4.1";
334 choice subobject-type {
335 case as-number-case {
336 container as-number {
337 uses as-number-subobject;
340 case ip-prefix-case {
341 container ip-prefix {
342 uses ip-prefix-subobject;
347 uses label-subobject;
355 case unnumbered-case {
356 container unnumbered {
357 uses unnumbered-subobject;
363 grouping exclude-route-subobjects {
364 description "Subobject of an Exclude Route Object";
365 reference "https://tools.ietf.org/html/rfc4874#section-3.1";
387 uses basic-explicit-route-subobjects;
390 grouping explicit-route-subobjects {
391 description "Subobject of an Explicit Route Object";
392 reference "https://tools.ietf.org/html/rfc4874#section-4.1";
393 uses basic-explicit-route-subobjects {
394 augment "subobject-type" {
398 uses exclude-route-subobjects;