Internet DRAFT - draft-zheng-intarea-gre-yang
draft-zheng-intarea-gre-yang
Network Working Group L. Zheng, Ed.
Internet-Draft Huawei Technologies
Intended status: Standards Track C. Pignataro
Expires: July 24, 2016 R. Penno
Cisco Systems, Inc.
Z. Wang
Huawei Technologies
January 21, 2016
Yang Data Model for Generic Routing Encapsulation (GRE)
draft-zheng-intarea-gre-yang-01.txt
Abstract
This document defines a YANG data model that can be used to configure
and manage Generic Routing Encapsulation (GRE).
Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119].
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on July 24, 2016.
Copyright Notice
Copyright (c) 2016 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
Zheng, et al. Expires July 24, 2016 [Page 1]
Internet-Draft GRE Yang January 2016
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
3. Design of the Data Model . . . . . . . . . . . . . . . . . . 3
4. Data Hierarchy . . . . . . . . . . . . . . . . . . . . . . . 3
5. GRE Yang Module . . . . . . . . . . . . . . . . . . . . . . . 3
6. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . 5
7. Security Considerations . . . . . . . . . . . . . . . . . . . 5
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 6
10. References . . . . . . . . . . . . . . . . . . . . . . . . . 6
10.1. Normative References . . . . . . . . . . . . . . . . . . 6
10.2. Informative References . . . . . . . . . . . . . . . . . 6
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 7
1. Introduction
Generic Routing Encapsulation (GRE) [RFC2784] specifies a protocol
for encapsulation of an arbitrary network layer protocol over another
arbitrary network layer protocol. YANG [RFC6020] is a data
definition language that was introduced to define the contents of a
conceptual data store that allows networked devices to be managed
using NETCONF [RFC6241]. This document defines a YANG data model
that can be used to configure and manage GRE.
The rest of this document is organized as follows. Section 2
presents the scope of this document. Section 3 provides the design
of the GRE configuration data model in details. Section 4 presents
the complete data hierarchy of GRE YANG model. Section 5 specifies
the YANG module and section 6 lists examples which conform to the
YANG module specified in this document. Finally, security
considerations are discussed in Section 7.
2. Scope
The fundemantel protocol of GRE is defined in [RFC2784]. [RFC2890]
describes extensions by which two fields, Key and Sequence Number,
can be optionally carried in the GRE Header.
[I-D.ietf-intarea-gre-ipv6] specifies GRE procedures for IPv6, used
Zheng, et al. Expires July 24, 2016 [Page 2]
Internet-Draft GRE Yang January 2016
as either the payload or delivery protocol.
[I-D.ietf-intarea-gre-mtu] describes how vendors have solved the GRE
fragmentation problem. These RFCs and documents are considered in
this Yang Module.
3. Design of the Data Model
This YANG data model is defined to be used to configure and manage
Generic Routing Encapsulation (GRE) . Under the top level container
is the list gre-tunnel, the leaf tunnel-name is used as the key for
the list. Under the list, nodes are defined to enable the tunnel
encapsulation configuration when either IPv4 or IPv6 is used as the
delivery protocol. Nodes are also defined to enable the checksum bit
set, tunnel fragmentation, Path MTU Discovery, Key and Key value set,
and Sequence Number configuration respectively, based on various GRE
RFCs and documents which are summarized in Section 2.
4. Data Hierarchy
The complete data hierarchy of GRE YANG model is presented below.
module: ietf-gre
+--rw gre-tunnel
+--rw gre-tunnel* [tunnel-name]
+--rw tunnel-name string
+--rw (delivery-protocol)?
| +--:(ipv4)
| | +--rw source-ipv4-address? inet:ipv4-address
| | +--rw dest-ipv4-address? inet:ipv4-address
| +--:(ipv6)
| +--rw source-ipv6-address? inet:ipv6-address
| +--rw dest-ipv6-address? inet:ipv6-address
+--rw pmtud-enable? boolean
+--rw fragmentation-enable? boolean
+--rw checksum-enable? boolean
+--rw key-enable? boolean
+--rw key? uint32
+--rw sequence-number-enable? boolean
5. GRE Yang Module
<CODE BEGINS> file "ietf-gre@2015-07-02.yang"
module ietf-gre {
namespace "urn:ietf:params:xml:ns:yang:ietf-gre";
//namespace to be assigned by IANA
prefix "gre";
import ietf-inet-types {
Zheng, et al. Expires July 24, 2016 [Page 3]
Internet-Draft GRE Yang January 2016
prefix "inet";
}
organization "IETF INTAREA Working Group";
contact "draft-zheng-intarea-gre-yang";
description "This module contains the YANG definition for GRE
parameters as per RFC2784, RFC2890,
draft-ietf-intarea-gre-ipv6 and
draft-ietf-intarea-gre-mtu";
revision "2015-07-02" {
description "Initial revision.";
reference "draft-zheng-intarea-gre-yang";
}
container gre-tunnel {
description "Top level container";
list gre-tunnel {
key "tunnel-name";
description "GRE tunnel";
leaf tunnel-name {
type string {
length "1..63";
}
description "GRE tunnel name";
}
choice delivery-protocol {
case ipv4 {
leaf source-ipv4-address {
type inet:ipv4-address;
description "Source IP address";
}
leaf dest-ipv4-address {
type inet:ipv4-address;
description "Destination IP address";
}
}
case ipv6 {
leaf source-ipv6-address {
type inet:ipv6-address;
description "Source IP address";
}
leaf dest-ipv6-address {
type inet:ipv6-address;
description "Destination IP address";
}
}
description "Delivery protocol";
}
leaf pmtud-enable {
Zheng, et al. Expires July 24, 2016 [Page 4]
Internet-Draft GRE Yang January 2016
type boolean;
description "Enable tunnel PMTU discovery";
}
leaf fragmentation-enable {
type boolean;
description "Enable delivery packets fragmentation";
}
leaf checksum-enable {
type boolean;
description "Enable GRE tunnel checksum verification";
}
leaf key-enable {
type boolean;
description "Enable optional GRE tunnel Key";
}
leaf key {
when "/gre-tunnel/gre-tunnel/key-enable == 'true'" {
description "When key-enable is true";
}
type uint32;
description "GRE tunnel key value";
}
leaf sequence-number-enable {
type boolean;
description "Enable optional GRE tunnel Sequence Number";
}
}
}
}
<CODE ENDS>
6. Examples
Examples of using Yang module to configure and manage GRE will be
given here in the update when the Yang module is stable.
7. Security Considerations
The configuration and state data defined in this document is designed
to be accessed via the NETCONF protocol [RFC6241]. The lowest
NETCONF layer is the secure transport layer and the mandatory-to-
implement secure transport is SSH [RFC6242]. The authors recommend
to implement the NETCONF access control model [RFC6536] to restrict
access for particular NETCONF users to a pre-configured subset of all
available NETCONF protocol operations and content.
There are a number of config true nodes defined in the YANG module
which are writable/creatable/deletable. These data nodes may be
Zheng, et al. Expires July 24, 2016 [Page 5]
Internet-Draft GRE Yang January 2016
considered sensitive or vulnerable in some network environments.
Write operations to these data nodes without proper protection can
have a negative effect on network operations.
8. IANA Considerations
The IANA is requested to assign a new namespace URI from the IETF XML
registry.
URI:TBA
9. Acknowledgements
We would also like to thank XXX.
10. References
10.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>.
[RFC2784] Farinacci, D., Li, T., Hanks, S., Meyer, D., and P.
Traina, "Generic Routing Encapsulation (GRE)", RFC 2784,
DOI 10.17487/RFC2784, March 2000,
<http://www.rfc-editor.org/info/rfc2784>.
[RFC2890] Dommety, G., "Key and Sequence Number Extensions to GRE",
RFC 2890, DOI 10.17487/RFC2890, September 2000,
<http://www.rfc-editor.org/info/rfc2890>.
[RFC6020] Bjorklund, M., Ed., "YANG - A Data Modeling Language for
the Network Configuration Protocol (NETCONF)", RFC 6020,
DOI 10.17487/RFC6020, October 2010,
<http://www.rfc-editor.org/info/rfc6020>.
10.2. Informative References
[I-D.ietf-intarea-gre-ipv6]
Pignataro, C., Bonica, R., and S. Krishnan, "IPv6 Support
for Generic Routing Encapsulation (GRE)", draft-ietf-
intarea-gre-ipv6-14 (work in progress), September 2015.
Zheng, et al. Expires July 24, 2016 [Page 6]
Internet-Draft GRE Yang January 2016
[I-D.ietf-intarea-gre-mtu]
Bonica, R., Pignataro, C., and J. Touch, "A Widely-
Deployed Solution To The Generic Routing Encapsulation
(GRE) Fragmentation Problem", draft-ietf-intarea-gre-
mtu-05 (work in progress), May 2015.
[RFC6241] Enns, R., Ed., Bjorklund, M., Ed., Schoenwaelder, J., Ed.,
and A. Bierman, Ed., "Network Configuration Protocol
(NETCONF)", RFC 6241, DOI 10.17487/RFC6241, June 2011,
<http://www.rfc-editor.org/info/rfc6241>.
[RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure
Shell (SSH)", RFC 6242, DOI 10.17487/RFC6242, June 2011,
<http://www.rfc-editor.org/info/rfc6242>.
[RFC6536] Bierman, A. and M. Bjorklund, "Network Configuration
Protocol (NETCONF) Access Control Model", RFC 6536,
DOI 10.17487/RFC6536, March 2012,
<http://www.rfc-editor.org/info/rfc6536>.
Authors' Addresses
Lianshu Zheng (editor)
Huawei Technologies
China
Email: vero.zheng@huawei.com
Carlos Pignataro
Cisco Systems, Inc.
USA
Email: cpignata@cisco.com
Reinaldo Penno
Cisco Systems, Inc.
USA
Email: repenno@cisco.com
Zishun Wang
Huawei Technologies
China
Email: wangzishun@huawei.com
Zheng, et al. Expires July 24, 2016 [Page 7]