draft-ietf-mpls-static-yang-07.txt | draft-ietf-mpls-static-yang-08.txt | |||
---|---|---|---|---|
MPLS Working Group T. Saad | MPLS Working Group T. Saad | |||
Internet-Draft K. Raza | Internet-Draft Juniper Networks | |||
Intended status: Standards Track R. Gandhi | Intended status: Standards Track R. Gandhi | |||
Expires: May 8, 2019 Cisco Systems, Inc. | Expires: September 3, 2019 Cisco Systems, Inc. | |||
X. Liu | X. Liu | |||
Volta Networks | Volta Networks | |||
V. Beeram | V. Beeram | |||
Juniper Networks | Juniper Networks | |||
H. Shah | ||||
Ciena | ||||
I. Bryskin | I. Bryskin | |||
Huawei Technologies | Huawei Technologies | |||
November 04, 2018 | March 02, 2019 | |||
A YANG Data Model for MPLS Static LSPs | A YANG Data Model for MPLS Static LSPs | |||
draft-ietf-mpls-static-yang-07 | draft-ietf-mpls-static-yang-08 | |||
Abstract | Abstract | |||
This document contains the specification for the MPLS Static Label | This document contains the specification for the MPLS Static Label | |||
Switched Paths (LSPs) YANG model. The model allows for the | Switched Paths (LSPs) YANG model. The model allows for the | |||
provisioning of static LSP(s) on LER(s) and LSR(s) devices along a | provisioning of static LSP(s) on Label Edge Router(s) LER(s) and | |||
LSP path without the dependency on any signaling protocol. The MPLS | Label Switched Router(s) LSR(s) devices along a LSP path without the | |||
Static LSP model augments the MPLS base YANG model with specific data | dependency on any signaling protocol. The MPLS Static LSP model | |||
to configure and manage MPLS Static LSP(s). | augments the MPLS base YANG model with specific data to configure and | |||
manage MPLS Static LSP(s). | ||||
Status of This Memo | Status of This Memo | |||
This Internet-Draft is submitted in full conformance with the | This Internet-Draft is submitted in full conformance with the | |||
provisions of BCP 78 and BCP 79. | provisions of BCP 78 and BCP 79. | |||
Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
Drafts is at https://datatracker.ietf.org/drafts/current/. | Drafts is at http://datatracker.ietf.org/drafts/current/. | |||
Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
This Internet-Draft will expire on May 8, 2019. | This Internet-Draft will expire on September 3, 2019. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2018 IETF Trust and the persons identified as the | Copyright (c) 2019 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
(https://trustee.ietf.org/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
publication of this document. Please review these documents | publication of this document. Please review these documents | |||
carefully, as they describe your rights and restrictions with respect | carefully, as they describe your rights and restrictions with respect | |||
to this document. Code Components extracted from this document must | to this document. Code Components extracted from this document must | |||
include Simplified BSD License text as described in Section 4.e of | include Simplified BSD License text as described in Section 4.e of | |||
the Trust Legal Provisions and are provided without warranty as | the Trust Legal Provisions and are provided without warranty as | |||
described in the Simplified BSD License. | described in the Simplified BSD License. | |||
Table of Contents | Table of Contents | |||
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | |||
1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3 | 1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
1.2. Acronyms and Abbreviations . . . . . . . . . . . . . . . 3 | 1.2. Acronyms and Abbreviations . . . . . . . . . . . . . . . 3 | |||
2. MPLS Static LSP Model . . . . . . . . . . . . . . . . . . . . 4 | 2. MPLS Static LSP Model . . . . . . . . . . . . . . . . . . . . 3 | |||
2.1. Model Organization . . . . . . . . . . . . . . . . . . . 4 | 2.1. Model Organization . . . . . . . . . . . . . . . . . . . 4 | |||
2.2. Model Tree Diagram . . . . . . . . . . . . . . . . . . . 4 | 2.2. Model Tree Diagram . . . . . . . . . . . . . . . . . . . 4 | |||
2.3. Model Overview . . . . . . . . . . . . . . . . . . . . . 6 | 2.3. Model Overview . . . . . . . . . . . . . . . . . . . . . 6 | |||
2.4. Model YANG Module(s) . . . . . . . . . . . . . . . . . . 7 | 2.4. Model YANG Module(s) . . . . . . . . . . . . . . . . . . 7 | |||
3. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 15 | 3. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 15 | |||
4. Security Considerations . . . . . . . . . . . . . . . . . . . 16 | 4. Security Considerations . . . . . . . . . . . . . . . . . . . 15 | |||
5. References . . . . . . . . . . . . . . . . . . . . . . . . . 16 | 5. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 16 | |||
5.1. Normative References . . . . . . . . . . . . . . . . . . 16 | 6. References . . . . . . . . . . . . . . . . . . . . . . . . . 16 | |||
5.2. Informative References . . . . . . . . . . . . . . . . . 18 | 6.1. Normative References . . . . . . . . . . . . . . . . . . 16 | |||
6.2. Informative References . . . . . . . . . . . . . . . . . 18 | ||||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 18 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 18 | |||
1. Introduction | 1. Introduction | |||
This document describes a YANG [RFC7950] data model for configuring | This document describes a YANG [RFC7950] data model for configuring | |||
and managing the Multiprotocol Label Switching (MPLS) [RFC3031] | and managing the Multiprotocol Label Switching (MPLS) [RFC3031] | |||
Static LSPs. The model allows the configuration of LER and LSR | Static LSPs. The model allows the configuration of LER and LSR | |||
devices with the necessary MPLS cross-connects or bindings to realize | devices with the necessary MPLS cross-connects or bindings to realize | |||
an end-to-end LSP service. | an end-to-end LSP service. | |||
A static LSP is established by manually specifying incoming and | A static LSP is established by manually specifying incoming and | |||
outgoing MPLS label(s) and necessary forwarding information on each | outgoing MPLS label(s) and necessary forwarding information on each | |||
of the traversed Label Edge Router (LER) and Label Switched Router | of the traversed LER and LSR devices (ingress, transit, or egress | |||
(LSR) devices (ingress, transit, or egress nodes) of the forwarding | nodes) of the forwarding path. | |||
path. | ||||
For example, on an ingress LER device, the model is used to associate | For example, on an ingress LER device, the model is used to associate | |||
a specific Forwarding Equivalence Class (FEC) of packets- e.g. | a specific Forwarding Equivalence Class (FEC) of packets- e.g. | |||
matching a specific IP prefix in a Virtual Routing or Forwarding | matching a specific IP prefix in a Virtual Routing or Forwarding | |||
(VRF) instance- to an MPLS outgoing label imposition, next-hop(s) and | (VRF) instance- to an MPLS outgoing label imposition, next-hop(s) and | |||
respective outgoing interface(s) to forward the packet. On an LSR | respective outgoing interface(s) to forward the packet. On an LSR | |||
device, the model is used to create a binding that swaps the incoming | device, the model is used to create a binding that swaps the incoming | |||
label with an outgoing label and forwards the packet on one or | label with an outgoing label and forwards the packet on one or | |||
multiple egress path(s). On an egress LER, it is used to create a | multiple egress path(s). On an egress LER, it is used to create a | |||
binding that decapsulates the incoming MPLS label and performs | binding that decapsulates the incoming MPLS label and performs | |||
forwarding based on the inner MPLS label (if present) or IP | forwarding based on the inner MPLS label (if present) or IP | |||
forwarding in the packet. | forwarding in the packet. | |||
skipping to change at page 4, line 48 ¶ | skipping to change at page 4, line 45 ¶ | |||
Static LSP +---------------------------+ | Static LSP +---------------------------+ | |||
module | module | |||
Figure 1: Relationship between MPLS modules | Figure 1: Relationship between MPLS modules | |||
2.2. Model Tree Diagram | 2.2. Model Tree Diagram | |||
The MPLS Static and extended LSP tree diagram as per [RFC8340] is | The MPLS Static and extended LSP tree diagram as per [RFC8340] is | |||
shown in Figure 2. | shown in Figure 2. | |||
module: ietf-mpls-static | module: ietf-mpls-static | |||
augment /rt:routing/mpls:mpls: | augment /rt:routing/mpls:mpls: | |||
+--rw static-lsps | +--rw static-lsps | |||
+--rw static-lsp* [name] | +--rw static-lsp* [name] | |||
| +--rw name string | | +--rw name string | |||
| +--rw operation? mpls:mpls-operations-type | | +--rw operation? mpls:mpls-operations-type | |||
| +--rw in-segment | | +--rw in-segment | |||
| | +--rw fec | | | +--rw fec | |||
| | +--rw (type)? | | | +--rw (type)? | |||
| | | +--:(ip-prefix) | | | | +--:(ip-prefix) | |||
| | | | +--rw ip-prefix? inet:ip-prefix | | | | | +--rw ip-prefix? inet:ip-prefix | |||
| | | +--:(mpls-label) | | | | +--:(mpls-label) | |||
| | | | +--rw incoming-label? rt-types:mpls-label | | | | +--rw incoming-label? rt-types:mpls-label | |||
| | | +--:(tunnel) | | | +--rw incoming-interface? if:interface-ref | |||
| | | +--rw tunnel? te:tunnel-ref | | +--rw out-segment | |||
| | +--rw incoming-interface? if:interface-ref | | +--rw (out-segment)? | |||
| +--rw out-segment | | +--:(nhlfe-single) | |||
| +--rw (out-segment)? | | | +--rw nhlfe-single | |||
| +--:(nhlfe-single) | | | +--rw mpls-label-stack | |||
| | +--rw nhlfe-single | | | | +--rw entry* [id] | |||
| | +--rw mpls-label-stack | | | | +--rw id uint8 | |||
| | | +--rw entry* [id] | | | | +--rw label? rt-types:mpls-label | |||
| | | +--rw id uint8 | | | | +--rw ttl? uint8 | |||
| | | +--rw label? rt-types:mpls-label | | | | +--rw traffic-class? uint8 | |||
| | | +--rw ttl? uint8 | | | +--rw outgoing-interface? if:interface-ref | |||
| | | +--rw traffic-class? uint8 | | +--:(nhlfe-multiple) | |||
| | +--rw outgoing-interface? if:interface-ref | | +--rw nhlfe-multiple | |||
| +--:(nhlfe-multiple) | | +--rw nhlfe* [index] | |||
| +--rw nhlfe-multiple | | +--rw index string | |||
| +--rw nhlfe* [index] | | +--rw backup-index? string | |||
| +--rw index string | | +--rw loadshare? uint16 | |||
| +--rw backup-index? string | | +--rw role? nhlfe-role | |||
| +--rw loadshare? uint16 | | +--rw mpls-label-stack | |||
| +--rw role? nhlfe-role | | | +--rw entry* [id] | |||
| +--rw mpls-label-stack | | | +--rw id uint8 | |||
| | +--rw entry* [id] | | | +--rw label? | |||
| | +--rw id uint8 | | | | rt-types:mpls-label | |||
| | +--rw label? rt-types:mpls-label | | | +--rw ttl? uint8 | |||
| | +--rw ttl? uint8 | | | +--rw traffic-class? uint8 | |||
| | +--rw traffic-class? uint8 | | +--rw outgoing-interface? if:interface-ref | |||
| +--rw outgoing-interface? if:interface-ref | +--rw mpls-static-ext:bandwidth? uint32 | |||
+--rw mpls-static-ext:bandwidth? uint32 | +--rw mpls-static-ext:lsp-priority-setup? uint8 | |||
+--rw mpls-static-ext:lsp-priority-setup? uint8 | +--rw mpls-static-ext:lsp-priority-hold? uint8 | |||
+--rw mpls-static-ext:lsp-priority-hold? uint8 | ||||
module: ietf-mpls-static-extended | ||||
augment /rt:routing/mpls:mpls: | ||||
+--rw bidir-static-lsps | ||||
+--rw bidir-static-lsp* [name] | ||||
+--rw name string | ||||
+--rw forward-lsp? mpls-static:static-lsp-ref | ||||
+--rw reverse-lsp? mpls-static:static-lsp-ref | ||||
module: ietf-mpls-static-extended | ||||
augment /rt:routing/mpls:mpls: | ||||
+--rw bidir-static-lsps | ||||
+--rw bidir-static-lsp* [name] | ||||
+--rw name string | ||||
+--rw forward-lsp? mpls-static:static-lsp-ref | ||||
+--rw reverse-lsp? mpls-static:static-lsp-ref | ||||
Figure 2: MPLS Static LSP tree diagram | Figure 2: MPLS Static LSP tree diagram | |||
2.3. Model Overview | 2.3. Model Overview | |||
This document defines two YANG modules for MPLS Static LSP(s) | This document defines two YANG modules for MPLS Static LSP(s) | |||
configuration and management: ietf-mpls-static.yang and ietf-mpls- | configuration and management: ietf-mpls-static.yang and ietf-mpls- | |||
static-extended.yang. | static-extended.yang. | |||
The ietf-mpls-static module imports the followinig modules: | ||||
o ietf-inet-types defined in [RFC6991] | ||||
o ietf-routing defined in [RFC8349] | ||||
o ietf-routing-types defined in [RFC8294] | ||||
o ietf-interfaces defined in [RFC8343] | ||||
o ietf-mpls defined in [I-D.ietf-mpls-base-yang] | ||||
o ietf-te defined in [I-D.ietf-teas-yang-te] | ||||
The ietf-mpls-static module contains the following high-level types | The ietf-mpls-static module contains the following high-level types | |||
and groupings: | and groupings: | |||
static-lsp-ref: | static-lsp-ref: | |||
A YANG reference type for a static LSP that can be used by data | A YANG reference type for a static LSP that can be used by data | |||
models to reference a configured static LSP. | models to reference a configured static LSP. | |||
in-segment: | in-segment: | |||
skipping to change at page 7, line 9 ¶ | skipping to change at page 6, line 42 ¶ | |||
out-segment: | out-segment: | |||
A YANG grouping that describes parameters for the forwarding | A YANG grouping that describes parameters for the forwarding | |||
path(s) and their associated attributes for an LSP. The model | path(s) and their associated attributes for an LSP. The model | |||
allows for the following cases: | allows for the following cases: | |||
o single forwarding path or NHLFE | o single forwarding path or NHLFE | |||
o multiple forwarding path(s) or NHLFE(s), each of which can | o multiple forwarding path(s) or NHLFE(s), each of which can | |||
serve a primary, backup or both role(s). | serve a primary, backup or both role(s). | |||
The ietf-mpls-static-extended module imports the followinig modules: | ||||
o ietf-mpls defined in [I-D.ietf-mpls-base-yang] | ||||
o ietf-mpls-static defined in this document | ||||
o ietf-routing defined in [RFC8349] | ||||
The ietf-mpls-static-extended module contains the following high- | The ietf-mpls-static-extended module contains the following high- | |||
level types and groupings: | level types and groupings: | |||
bidir-static-lsp: | bidir-static-lsp: | |||
A YANG grouping that describes list of static bidirectional LSPs | A YANG grouping that describes list of static bidirectional LSPs | |||
The ietf-mpls-static-extended augments the ietf-mpls-static model | The ietf-mpls-static-extended augments the ietf-mpls-static model | |||
with additional parameters to configure and manage: | with additional parameters to configure and manage: | |||
skipping to change at page 8, line 5 ¶ | skipping to change at page 7, line 28 ¶ | |||
to indicate connection origination and termination. | to indicate connection origination and termination. | |||
o Optionally specifying label stack actions. | o Optionally specifying label stack actions. | |||
o Optionally specifying segment traffic parameters. | o Optionally specifying segment traffic parameters. | |||
The objects covered by this model are derived from the Incoming Label | The objects covered by this model are derived from the Incoming Label | |||
Map (ILM) and Next Hop Label Forwarding Entry (NHLFE) as specified in | Map (ILM) and Next Hop Label Forwarding Entry (NHLFE) as specified in | |||
the MPLS architecture document [RFC3031]. | the MPLS architecture document [RFC3031]. | |||
The MPLS Static LSP and Extended Static LSP modules are shown in | The ietf-mpls-static module imports the followinig modules: | |||
Figure 3 and Figure 4 below respectively. | ||||
<CODE BEGINS> file "ietf-mpls-static@2018-11-04.yang" | o ietf-inet-types defined in [RFC6991] | |||
o ietf-routing defined in [RFC8349] | ||||
o ietf-routing-types defined in [RFC8294] | ||||
o ietf-interfaces defined in [RFC8343] | ||||
o ietf-mpls defined in [I-D.ietf-mpls-base-yang] | ||||
o ietf-te defined in [I-D.ietf-teas-yang-te] | ||||
The ietf-mpls-static module is shown below: | ||||
<CODE BEGINS> file "ietf-mpls-static@2019-02-24.yang" | ||||
module ietf-mpls-static { | module ietf-mpls-static { | |||
yang-version 1.1; | yang-version 1.1; | |||
namespace "urn:ietf:params:xml:ns:yang:ietf-mpls-static"; | namespace "urn:ietf:params:xml:ns:yang:ietf-mpls-static"; | |||
prefix "mpls-static"; | prefix "mpls-static"; | |||
import ietf-mpls { | import ietf-mpls { | |||
prefix "mpls"; | prefix "mpls"; | |||
reference "draft-ietf-mpls-base-yang: MPLS Base YANG Data Model"; | reference "draft-ietf-mpls-base-yang: MPLS Base YANG Data Model"; | |||
} | } | |||
import ietf-routing { | import ietf-routing { | |||
prefix "rt"; | prefix "rt"; | |||
reference "RFC8349: A YANG Data Model for Routing Management"; | reference "RFC8349: A YANG Data Model for Routing Management"; | |||
} | } | |||
import ietf-routing-types { | import ietf-routing-types { | |||
prefix "rt-types"; | prefix "rt-types"; | |||
reference "RFC6991: Common YANG Data Types"; | reference "RFC8294: Common YANG Data Types"; | |||
} | } | |||
import ietf-inet-types { | import ietf-inet-types { | |||
prefix inet; | prefix inet; | |||
reference "RFC6991: Common YANG Data Types"; | reference "RFC6991: Common YANG Data Types"; | |||
} | } | |||
import ietf-interfaces { | import ietf-interfaces { | |||
prefix "if"; | prefix "if"; | |||
reference "RFC7223: A YANG Data Model for Interface Management"; | reference "RFC7223: A YANG Data Model for Interface Management"; | |||
} | } | |||
/* Import TE Tunnel */ | ||||
import ietf-te { | ||||
prefix te; | ||||
reference "draft-ietf-teas-yang-te: A YANG Data Model for Traffic | ||||
Engineering Tunnels and Interfaces"; | ||||
} | ||||
organization "IETF MPLS Working Group"; | organization "IETF MPLS Working Group"; | |||
contact | contact | |||
"WG Web: <http://tools.ietf.org/wg/mpls/> | "WG Web: <http://tools.ietf.org/wg/mpls/> | |||
WG List: <mailto:mpls@ietf.org> | WG List: <mailto:mpls@ietf.org> | |||
WG Chair: Loa Andersson | WG Chair: Loa Andersson | |||
<mailto:loa@pi.nu> | <mailto:loa@pi.nu> | |||
WG Chair: Nic Leymann | WG Chair: Nic Leymann | |||
<mailto:N.Leymann@telekom.de> | <mailto:N.Leymann@telekom.de> | |||
Editor: Tarek Saad | Editor: Tarek Saad | |||
<mailto:tsaad@cisco.com> | <mailto:tsaad@cisco.com> | |||
Editor: Kamran Raza | Editor: Kamran Raza | |||
skipping to change at page 10, line 8 ¶ | skipping to change at page 9, line 38 ¶ | |||
(https://trustee.ietf.org/license-info). | (https://trustee.ietf.org/license-info). | |||
This version of this YANG module is part of RFC XXXX; see | This version of this YANG module is part of RFC XXXX; see | |||
the RFC itself for full legal notices."; | the RFC itself for full legal notices."; | |||
// RFC Ed.: replace XXXX with actual RFC number and remove this | // RFC Ed.: replace XXXX with actual RFC number and remove this | |||
// note. | // note. | |||
// RFC Ed.: update the date below with the date of RFC publication | // RFC Ed.: update the date below with the date of RFC publication | |||
// and remove this note. | // and remove this note. | |||
revision "2018-11-04" { | revision "2019-02-24" { | |||
description | description | |||
"Latest revision: | "Latest revision of MPLS Static LSP YANG module"; | |||
- Addressed MPLS-RT review comments"; | ||||
reference "RFC XXXX: A YANG Data Model for MPLS Static LSPs"; | reference "RFC XXXX: A YANG Data Model for MPLS Static LSPs"; | |||
} | } | |||
typedef static-lsp-ref { | typedef static-lsp-ref { | |||
type leafref { | type leafref { | |||
path "/rt:routing/mpls:mpls/mpls-static:static-lsps/" + | path "/rt:routing/mpls:mpls/mpls-static:static-lsps/" + | |||
"mpls-static:static-lsp/mpls-static:name"; | "mpls-static:static-lsp/mpls-static:name"; | |||
} | } | |||
description | description | |||
"This type is used by data models that need to reference | "This type is used by data models that need to reference | |||
skipping to change at page 10, line 45 ¶ | skipping to change at page 10, line 24 ¶ | |||
type inet:ip-prefix; | type inet:ip-prefix; | |||
description "An IP prefix"; | description "An IP prefix"; | |||
} | } | |||
} | } | |||
case mpls-label { | case mpls-label { | |||
leaf incoming-label { | leaf incoming-label { | |||
type rt-types:mpls-label; | type rt-types:mpls-label; | |||
description "label value on the incoming packet"; | description "label value on the incoming packet"; | |||
} | } | |||
} | } | |||
case tunnel { | ||||
leaf tunnel { | ||||
type te:tunnel-ref; | ||||
description "TE tunnel FEC mapping"; | ||||
} | ||||
} | ||||
} | } | |||
leaf incoming-interface { | leaf incoming-interface { | |||
type if:interface-ref; | type if:interface-ref; | |||
description | description | |||
"Optional incoming interface if FEC is restricted | "Optional incoming interface if FEC is restricted | |||
to traffic incoming on a specific interface"; | to traffic incoming on a specific interface"; | |||
} | } | |||
} | } | |||
} | } | |||
} | } | |||
skipping to change at page 12, line 26 ¶ | skipping to change at page 11, line 48 ¶ | |||
"The MPLS operation to be executed on the incoming packet"; | "The MPLS operation to be executed on the incoming packet"; | |||
} | } | |||
uses in-segment; | uses in-segment; | |||
uses out-segment; | uses out-segment; | |||
} | } | |||
} | } | |||
} | } | |||
} | } | |||
<CODE ENDS> | <CODE ENDS> | |||
Figure 3: MPLS Static LSP YANG module | The ietf-mpls-static-extended module imports the followinig modules: | |||
The extended MPLS Static LSP module is shown in Figure 4. | o ietf-mpls defined in [I-D.ietf-mpls-base-yang] | |||
o ietf-mpls-static defined in this document | ||||
<CODE BEGINS> file "ietf-mpls-static-extended@2018-11-04.yang" | o ietf-routing defined in [RFC8349] | |||
The ietf-mpls-static-extended module is shown below: | ||||
<CODE BEGINS> file "ietf-mpls-static-extended@2019-02-24.yang" | ||||
module ietf-mpls-static-extended { | module ietf-mpls-static-extended { | |||
yang-version 1.1; | yang-version 1.1; | |||
namespace "urn:ietf:params:xml:ns:yang:ietf-mpls-static-extended"; | namespace "urn:ietf:params:xml:ns:yang:ietf-mpls-static-extended"; | |||
prefix "mpls-static-ext"; | prefix "mpls-static-ext"; | |||
import ietf-mpls { | import ietf-mpls { | |||
prefix "mpls"; | prefix "mpls"; | |||
reference "draft-ietf-mpls-base-yang: MPLS Base YANG Data Model"; | reference "draft-ietf-mpls-base-yang: MPLS Base YANG Data Model"; | |||
} | } | |||
skipping to change at page 14, line 4 ¶ | skipping to change at page 13, line 34 ¶ | |||
Copyright (c) 2018 IETF Trust and the persons | Copyright (c) 2018 IETF Trust and the persons | |||
identified as authors of the code. All rights reserved. | identified as authors of the code. All rights reserved. | |||
Redistribution and use in source and binary forms, with or | Redistribution and use in source and binary forms, with or | |||
without modification, is permitted pursuant to, and subject | without modification, is permitted pursuant to, and subject | |||
to the license terms contained in, the Simplified BSD License | to the license terms contained in, the Simplified BSD License | |||
set forth in Section 4.c of the IETF Trust's Legal Provisions | set forth in Section 4.c of the IETF Trust's Legal Provisions | |||
Relating to IETF Documents | Relating to IETF Documents | |||
(https://trustee.ietf.org/license-info). | (https://trustee.ietf.org/license-info). | |||
This version of this YANG module is part of RFC XXXX; see | This version of this YANG module is part of RFC XXXX; see | |||
the RFC itself for full legal notices."; | the RFC itself for full legal notices."; | |||
// RFC Ed.: replace XXXX with actual RFC number and remove this | // RFC Ed.: replace XXXX with actual RFC number and remove this | |||
// note. | // note. | |||
// RFC Ed.: update the date below with the date of RFC publication | // RFC Ed.: update the date below with the date of RFC publication | |||
// and remove this note. | // and remove this note. | |||
revision "2018-11-04" { | revision "2019-02-24" { | |||
description "Latest revision of MPLS extended yang module."; | description | |||
"Latest revision of MPLS Static LSP Extended YANG module"; | ||||
reference "RFC XXXX: Extended YANG Data Model for MPLS Static LSPs"; | reference "RFC XXXX: Extended YANG Data Model for MPLS Static LSPs"; | |||
} | } | |||
grouping bidir-static-lsp { | grouping bidir-static-lsp { | |||
description | description | |||
"grouping for top level list of static bidirectional LSPs"; | "grouping for top level list of static bidirectional LSPs"; | |||
leaf forward-lsp { | leaf forward-lsp { | |||
type mpls-static:static-lsp-ref; | type mpls-static:static-lsp-ref; | |||
description | description | |||
"Reference to a configured static forward LSP"; | "Reference to a configured static forward LSP"; | |||
skipping to change at page 15, line 30 ¶ | skipping to change at page 15, line 11 ¶ | |||
type string; | type string; | |||
description "Name that identifies the bidirectional LSP"; | description "Name that identifies the bidirectional LSP"; | |||
} | } | |||
uses bidir-static-lsp; | uses bidir-static-lsp; | |||
} | } | |||
} | } | |||
} | } | |||
} | } | |||
<CODE ENDS> | <CODE ENDS> | |||
Figure 4: Extended MPLS Static LSP YANG module | ||||
3. IANA Considerations | 3. IANA Considerations | |||
This document registers the following URIs in the IETF XML registry | This document registers the following URIs in the IETF XML registry | |||
[RFC3688]. Following the format in [RFC3688], the following | [RFC3688]. Following the format in [RFC3688], the following | |||
registration is requested to be made. | registration is requested to be made. | |||
URI: urn:ietf:params:xml:ns:yang:ietf-mpls-static | URI: urn:ietf:params:xml:ns:yang:ietf-mpls-static | |||
Registrant Contact: The MPLS WG of the IETF. | Registrant Contact: The MPLS WG of the IETF. | |||
XML: N/A, the requested URI is an XML namespace. | XML: N/A, the requested URI is an XML namespace. | |||
skipping to change at page 16, line 19 ¶ | skipping to change at page 15, line 42 ¶ | |||
reference: RFCXXXX | reference: RFCXXXX | |||
name: ietf-mpls-static-extended | name: ietf-mpls-static-extended | |||
namespace: urn:ietf:params:xml:ns:yang:ietf-mpls-static-extended | namespace: urn:ietf:params:xml:ns:yang:ietf-mpls-static-extended | |||
prefix: ietf-mpls-static-extended | prefix: ietf-mpls-static-extended | |||
// RFC Ed.: replace XXXX with RFC number and remove this note | // RFC Ed.: replace XXXX with RFC number and remove this note | |||
reference: RFCXXXX | reference: RFCXXXX | |||
4. Security Considerations | 4. Security Considerations | |||
The YANG module defined in this document is designed to be accessed | The YANG modules specified in this document define schemas for data | |||
via the NETCONF protocol [RFC6241]. The lowest NETCONF layer is the | that is designed to be accessed via network management protocols such | |||
secure transport layer and the mandatory-to-implement secure | as NETCONF [RFC6241] or RESTCONF [RFC8040]. The lowest NETCONF layer | |||
transport is SSH [RFC6242]. The NETCONF access control model | is the secure transport layer, and the mandatory-to-implement secure | |||
[RFC8341] provides means to restrict access for particular NETCONF | transport is Secure Shell (SSH) [RFC6242]. The lowest RESTCONF layer | |||
users to a pre-configured subset of all available NETCONF protocol | is HTTPS, and the mandatory-to-implement secure transport is TLS | |||
{!RFC8446}}. | ||||
The NETCONF access control model [RFC8341] provides the means to | ||||
restrict access for particular NETCONF or RESTCONF users to a | ||||
preconfigured subset of all available NETCONF or RESTCONF protocol | ||||
operations and content. | operations and content. | |||
There are certain objects or data nodes that are defined in this YANG | All nodes defined in this YANG module that are writable/creatable/ | |||
module which are writable/creatable/deletable and that can be | deletable (i.e., config true, which is the default) may be considered | |||
considered sensitive or vulnerable in some network environments. | sensitive or vulnerable in some network environments. Write | |||
Specifically, misconfiguration or manipulations of objects or data | operations (e.g., edit-config) to these data nodes without proper | |||
node(s) defined in this model, including: in-segment(s), out- | protection can have a negative effect on network operations. These | |||
segment(s) and their associated parameters that collectively allow | are the subtrees and data nodes and their sensitivity/vulnerability: | |||
the provisioning of MPLS LSP(s) and associated parameters on a LSR | ||||
can potentially have disastrous results. | ||||
5. References | o /ietf-routing:routing/ietf-mpls:mpls:/ietf-mpls:static-lsps: This | |||
entire subtree is related to security. | ||||
5.1. Normative References | An administrator needs to restrict write access to all configurable | |||
objects within this data model. | ||||
5. Contributors | ||||
Himanshu Shah | ||||
Ciena | ||||
email: hshah@ciena.com | ||||
Kamran Raza | ||||
Cisco Systems, Inc. | ||||
email: skraza@cisco.com | ||||
6. References | ||||
6.1. Normative References | ||||
[I-D.ietf-mpls-base-yang] | [I-D.ietf-mpls-base-yang] | |||
Saad, T., Raza, K., Gandhi, R., Liu, X., and V. Beeram, "A | Saad, T., Raza, K., Gandhi, R., Liu, X., and V. Beeram, "A | |||
YANG Data Model for MPLS Base", draft-ietf-mpls-base- | YANG Data Model for MPLS Base", draft-ietf-mpls-base- | |||
yang-08 (work in progress), October 2018. | yang-10 (work in progress), February 2019. | |||
[I-D.ietf-teas-yang-te] | [I-D.ietf-teas-yang-te] | |||
Saad, T., Gandhi, R., Liu, X., Beeram, V., Shah, H., and | Saad, T., Gandhi, R., Liu, X., Beeram, V., and I. Bryskin, | |||
I. Bryskin, "A YANG Data Model for Traffic Engineering | "A YANG Data Model for Traffic Engineering Tunnels and | |||
Tunnels and Interfaces", draft-ietf-teas-yang-te-17 (work | Interfaces", draft-ietf-teas-yang-te-19 (work in | |||
in progress), October 2018. | progress), February 2019. | |||
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
Requirement Levels", BCP 14, RFC 2119, | Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/ | |||
DOI 10.17487/RFC2119, March 1997, | RFC2119, March 1997, <https://www.rfc-editor.org/info/ | |||
<https://www.rfc-editor.org/info/rfc2119>. | rfc2119>. | |||
[RFC3031] Rosen, E., Viswanathan, A., and R. Callon, "Multiprotocol | [RFC3031] Rosen, E., Viswanathan, A., and R. Callon, "Multiprotocol | |||
Label Switching Architecture", RFC 3031, | Label Switching Architecture", RFC 3031, DOI 10.17487/ | |||
DOI 10.17487/RFC3031, January 2001, | RFC3031, January 2001, <https://www.rfc-editor.org/info/ | |||
<https://www.rfc-editor.org/info/rfc3031>. | rfc3031>. | |||
[RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, | [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, | |||
DOI 10.17487/RFC3688, January 2004, | DOI 10.17487/RFC3688, January 2004, <https://www.rfc- | |||
<https://www.rfc-editor.org/info/rfc3688>. | editor.org/info/rfc3688>. | |||
[RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for | [RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for | |||
the Network Configuration Protocol (NETCONF)", RFC 6020, | the Network Configuration Protocol (NETCONF)", RFC 6020, | |||
DOI 10.17487/RFC6020, October 2010, | DOI 10.17487/RFC6020, October 2010, <https://www.rfc- | |||
<https://www.rfc-editor.org/info/rfc6020>. | editor.org/info/rfc6020>. | |||
[RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., | [RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed., | |||
and A. Bierman, Ed., "Network Configuration Protocol | and A. Bierman, Ed., "Network Configuration Protocol | |||
(NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, | (NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011, | |||
<https://www.rfc-editor.org/info/rfc6241>. | <https://www.rfc-editor.org/info/rfc6241>. | |||
[RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure | [RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure | |||
Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, June 2011, | Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, June 2011, | |||
<https://www.rfc-editor.org/info/rfc6242>. | <https://www.rfc-editor.org/info/rfc6242>. | |||
[RFC6991] Schoenwaelder, J., Ed., "Common YANG Data Types", | [RFC6991] Schoenwaelder, J., Ed., "Common YANG Data Types", RFC | |||
RFC 6991, DOI 10.17487/RFC6991, July 2013, | 6991, DOI 10.17487/RFC6991, July 2013, <https://www.rfc- | |||
<https://www.rfc-editor.org/info/rfc6991>. | editor.org/info/rfc6991>. | |||
[RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", | [RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", | |||
RFC 7950, DOI 10.17487/RFC7950, August 2016, | RFC 7950, DOI 10.17487/RFC7950, August 2016, | |||
<https://www.rfc-editor.org/info/rfc7950>. | <https://www.rfc-editor.org/info/rfc7950>. | |||
[RFC8040] Bierman, A., Bjorklund, M., and K. Watsen, "RESTCONF | ||||
Protocol", RFC 8040, DOI 10.17487/RFC8040, January 2017, | ||||
<https://www.rfc-editor.org/info/rfc8040>. | ||||
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | |||
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | |||
May 2017, <https://www.rfc-editor.org/info/rfc8174>. | May 2017, <https://www.rfc-editor.org/info/rfc8174>. | |||
[RFC8294] Liu, X., Qu, Y., Lindem, A., Hopps, C., and L. Berger, | [RFC8294] Liu, X., Qu, Y., Lindem, A., Hopps, C., and L. Berger, | |||
"Common YANG Data Types for the Routing Area", RFC 8294, | "Common YANG Data Types for the Routing Area", RFC 8294, | |||
DOI 10.17487/RFC8294, December 2017, | DOI 10.17487/RFC8294, December 2017, <https://www.rfc- | |||
<https://www.rfc-editor.org/info/rfc8294>. | editor.org/info/rfc8294>. | |||
[RFC8341] Bierman, A. and M. Bjorklund, "Network Configuration | [RFC8341] Bierman, A. and M. Bjorklund, "Network Configuration | |||
Access Control Model", STD 91, RFC 8341, | Access Control Model", STD 91, RFC 8341, DOI 10.17487/ | |||
DOI 10.17487/RFC8341, March 2018, | RFC8341, March 2018, <https://www.rfc-editor.org/info/ | |||
<https://www.rfc-editor.org/info/rfc8341>. | rfc8341>. | |||
[RFC8343] Bjorklund, M., "A YANG Data Model for Interface | [RFC8343] Bjorklund, M., "A YANG Data Model for Interface | |||
Management", RFC 8343, DOI 10.17487/RFC8343, March 2018, | Management", RFC 8343, DOI 10.17487/RFC8343, March 2018, | |||
<https://www.rfc-editor.org/info/rfc8343>. | <https://www.rfc-editor.org/info/rfc8343>. | |||
[RFC8349] Lhotka, L., Lindem, A., and Y. Qu, "A YANG Data Model for | [RFC8349] Lhotka, L., Lindem, A., and Y. Qu, "A YANG Data Model for | |||
Routing Management (NMDA Version)", RFC 8349, | Routing Management (NMDA Version)", RFC 8349, DOI | |||
DOI 10.17487/RFC8349, March 2018, | 10.17487/RFC8349, March 2018, <https://www.rfc- | |||
<https://www.rfc-editor.org/info/rfc8349>. | editor.org/info/rfc8349>. | |||
5.2. Informative References | 6.2. Informative References | |||
[RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", | [RFC8340] Bjorklund, M. and L. Berger, Ed., "YANG Tree Diagrams", | |||
BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018, | BCP 215, RFC 8340, DOI 10.17487/RFC8340, March 2018, | |||
<https://www.rfc-editor.org/info/rfc8340>. | <https://www.rfc-editor.org/info/rfc8340>. | |||
Authors' Addresses | Authors' Addresses | |||
Tarek Saad | Tarek Saad | |||
Cisco Systems, Inc. | Juniper Networks | |||
Email: tsaad@cisco.com | ||||
Kamran Raza | ||||
Cisco Systems, Inc. | ||||
Email: skraza@cisco.com | Email: tsaad.net@gmail.com | |||
Rakesh Gandhi | Rakesh Gandhi | |||
Cisco Systems, Inc. | Cisco Systems, Inc. | |||
Email: rgandhi@cisco.com | Email: rgandhi@cisco.com | |||
Xufeng Liu | Xufeng Liu | |||
Volta Networks | Volta Networks | |||
Email: xufeng.liu.ietf@gmail.com | Email: xufeng.liu.ietf@gmail.com | |||
skipping to change at page 19, line 4 ¶ | skipping to change at page 18, line 36 ¶ | |||
Rakesh Gandhi | Rakesh Gandhi | |||
Cisco Systems, Inc. | Cisco Systems, Inc. | |||
Email: rgandhi@cisco.com | Email: rgandhi@cisco.com | |||
Xufeng Liu | Xufeng Liu | |||
Volta Networks | Volta Networks | |||
Email: xufeng.liu.ietf@gmail.com | Email: xufeng.liu.ietf@gmail.com | |||
Vishnu Pavan Beeram | Vishnu Pavan Beeram | |||
Juniper Networks | Juniper Networks | |||
Email: vbeeram@juniper.net | Email: vbeeram@juniper.net | |||
Himanshu Shah | ||||
Ciena | ||||
Email: hshah@ciena.com | ||||
Igor Bryskin | Igor Bryskin | |||
Huawei Technologies | Huawei Technologies | |||
Email: Igor.Bryskin@huawei.com | Email: Igor.Bryskin@huawei.com | |||
End of changes. 52 change blocks. | ||||
179 lines changed or deleted | 172 lines changed or added | |||
This html diff was produced by rfcdiff 1.47. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |