Internet DRAFT - draft-hu-opsawg-cu-separation-yang-model

draft-hu-opsawg-cu-separation-yang-model







NFVRG                                                        Fangwei. Hu
Internet-Draft                                             RongRong. Hua
Intended status: Standards Track                         ZTE Corporation
Expires: January 3, 2018                                      Shujun. Hu
                                                               Lu. Huang
                                                            China Mobile
                                                            July 2, 2017


 YANG Data Model for Configuration Interface of Control-Plane and User-
                          Plane separation BNG
            draft-hu-opsawg-cu-separation-yang-model-00.txt

Abstract

   This document defines the YANG data model for operation management of
   Control-Plane and User-Plane separation BNG.

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 January 3, 2018.

Copyright Notice

   Copyright (c) 2017 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
   (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




Hu, et al.               Expires January 3, 2018                [Page 1]

Internet-Draft         YANG for CU Separation BNG              July 2017


   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Concept and Terminology . . . . . . . . . . . . . . . . . . .   4
     2.1.  Terminology . . . . . . . . . . . . . . . . . . . . . . .   4
   3.  Information model . . . . . . . . . . . . . . . . . . . . . .   4
     3.1.  overview  . . . . . . . . . . . . . . . . . . . . . . . .   4
     3.2.  vBNG interface configuration  . . . . . . . . . . . . . .   4
     3.3.  Control channel configuration . . . . . . . . . . . . . .   5
     3.4.  Acl Configuration . . . . . . . . . . . . . . . . . . . .   5
     3.5.  QoS Configuration . . . . . . . . . . . . . . . . . . . .   6
   4.  vBNG YANG Data Model  . . . . . . . . . . . . . . . . . . . .   6
   5.  Security Considerations . . . . . . . . . . . . . . . . . . .  11
   6.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .  11
   7.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  11
   8.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  11
     8.1.  Normative References  . . . . . . . . . . . . . . . . . .  11
     8.2.  Informative References  . . . . . . . . . . . . . . . . .  11
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  12

1.  Introduction

   Cloud-based BNG with C/U separated conception is raised by
   [I-D.gu-nfvrg-cloud-bng-architecture].  The main idea of Control-
   Plane and User-Plane separation method is to extract and centralize
   the user management functions of multiple BNG devices, forming an
   unified and centralized control plane (CP), while the traditional
   router's Control Plane and forwarding plane are both preserved on BNG
   devices in the form of a user plane (UP).

   The architecture of C/U separated BNG is shown as the following
   figure[I-D.huang-nvo3-vxlan-extension-for-vbras].
















Hu, et al.               Expires January 3, 2018                [Page 2]

Internet-Draft         YANG for CU Separation BNG              July 2017


                     +----------------------------------+
                     |                                  |
                     |              BNG-CP              |
                     |                                  |
                     +--+--------------+--------------+-+
                        |              |              |
              Service   |   control    |   Management |
              Interface |   Interface  |    Interface |
                  |     |       |      |        |     |
                VxLAN   |    OpenFlow  |      NETCONF |
                        |              |              |
                     +--+--------------+--------------+-+
                     |                                  |
                     |              BNG-UP              |
                     |                                  |
                     +-----------------+----------------+
                                       |
                                       |
                              +--------+--------+
                              |                 |
                              | Access Network  |
                              |                 |
                              +--------+--------+
                                       |
                                  +----+----+
                                  |         |
                                  |   User  |
                                  |         |
                                  +---------+
                 Figure 1: Architecture of C/U separated vBNG


   There are three interfaces between BNG-CP and BNG-UP: Service
   interface , control interface and management interface.  The service
   interface is used to carry PPPoE/IPoE dialup packets between user
   plane and control plane.  The requirement and possible solution is
   defined in the [I-D.huang-nvo3-vxlan-extension-for-vbras].  Control
   interface is used for seting forwarding entries of user plane through
   OpenFlow or other protocols [I-D.wcg-i2rs-cu-separation-infor-model].
   Management interface is used by CP to carry out basic configurations
   of user plane through NETCONF.  The YANG data model about the
   configuration information is defined in this document.

   Though BNG-CP and BNG-UP are connected with network management, most
   of the configuration information for BNG-UP are through the BNG-CP by
   netconf protocol[RFC6241], which simplifies the implementation of
   BNG-UP in the C/U separated BNG architecture.




Hu, et al.               Expires January 3, 2018                [Page 3]

Internet-Draft         YANG for CU Separation BNG              July 2017


   Very few configuration parameters (such as IP address and port number
   for netconf protocol) for BNG-UP are configured through the network
   management directly.

2.  Concept and Terminology

   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 [RFC2119].

2.1.  Terminology

   BNG: Broadband Network Gateway.  A broadband remote access server
   routes traffic to and from broadband remote access devices such as
   digital subscriber line access multiplexers (DSLAM) on an Internet
   service provider's (ISP) network.

   CP: Control Plane.  The CP is a user control management component
   which support to manage UP's resources such as the user entry and
   forwarding policy.

   UP: User Plane.  UP is a network edge and user policy implementation
   component.

3.  Information model

3.1.  overview

   The vBNG UP or CP part can be a physical or logical network element.
   We augment [I-D.ietf-rtgwg-lne-model] to define the information model
   for vBNG CP and UP.

   module: ietf-vbng
     augment /lne:logical-network-elements/lne:logical-network-element:
       +--rw ietf-vbng
          +--rw vbng-name?         string
              +--rw enable ?            boolean

3.2.  vBNG interface configuration

   The vBNG interface configuration is to cofigure the basic interface
   informations of vBNG UP element, such as interface name, the VLAN
   parameters for the sub-interface.

   The tree structure for vBNG interface configuration is as following:






Hu, et al.               Expires January 3, 2018                [Page 4]

Internet-Draft         YANG for CU Separation BNG              July 2017


          +--rw interfaces
          |  +--rw interface* [name]
          |     +--rw name      if:interface-ref
          |     +--rw ethernet
          |     |  +--rw lacp?   boolean
          |     +--rw mac-offset?   uint32
          |     +--rw vlans
          |        +--rw tag* [index]
          |           +--rw index    uint8
          |           +--rw tag
          |              +--rw tag-type?   string
          |              +--rw vlan-id?    vlan-id

3.3.  Control channel configuration

   The control channel configuration is to configure the OpenFlow
   channel parameters and the VXLAN tunnel parameters.

   The OpenFlow channel parameters include: ofls-name, dpid, of-port.
   The tree structure for OpenFlow channel configuration parameters are
   as following:

          +--rw openflow-channel
          |  +--rw ofls-name?   string
          |  +--rw dpid?        uint32
          |  +--rw of-port?     uint32

   The static VXLAN tunnelis is suggested to be used for vBNG CP and UP.
   The VXLAN tunnel parameters include: tunnel-source-ip,tunnel-
   destination-ip, vxlan-id, vxlan-tunnel-id, vxlan-tunnel-name,etc.

          +--rw vxlan-channel* [vxlan-tunnel-id]
             +--rw vxlan-tunnel-id      uint32
             +--rw vxlan-tunnel-name?   string
             +--rw address-family* [af]
                +--rw af                       address-family-type
                +--rw tunnel-source-ip?        address-family-type
                +--rw tunnel-destination-ip?   address-family-type
                +--rw bind-vxlan-id* [vxlan-id]
                   +--rw vxlan-id    vxlan-id


3.4.  Acl Configuration

   The acl information for BNG-UP is configured through netconf from
   BNG-CP.  The ACL information includes ipv4-acl,ipv6-acl,link-acl,etc.
   The YANG data model for ACL can refer to [I-D.ietf-netmod-acl-model]




Hu, et al.               Expires January 3, 2018                [Page 5]

Internet-Draft         YANG for CU Separation BNG              July 2017


3.5.  QoS Configuration

   The QoS information for BNG-UP is also configured through netconf
   from BNG-CP.  The vBNG support QoS information includes IP-DSCP,
   MPLS,VPLS, VPWS etc.  The YANG data model for QoS refer to
   [I-D.asechoud-rtgwg-qos-model]

4.  vBNG YANG Data Model


   <CODE BEGINS> file "ietf-vbng@2017-06-29.yang"
    module ietf-vbng{
    namespace "urn:ietf:params:xml:ns:yang:ietf-vbng";
    prefix "vbng";


    import ietf-interfaces {
      prefix if;
     }

    import ietf-logical-network-element {
          prefix lne;
        }

/*
    import ietf-yang-types {
       prefix yang;
     }
*/

    organization
      "IETF NETCONF Working Group";

      contact
       "
         WG List:  <mailto:netconf@ietf.org>

         Editor:   Fangwei Hu
                   <mailto:hu.fangwei@zte.com.cn>

        ";

    description
       "The YANG module defines a generic configuration
         model for vbng";

    revision 2017-06-29 {
      description "Initial revision";



Hu, et al.               Expires January 3, 2018                [Page 6]

Internet-Draft         YANG for CU Separation BNG              July 2017


      reference
         "draft-hu-opsawg-cu-separation-yang-model-00";
    }



   /* Typedefs  */

         typedef vlan-id {
      type uint16 {
           range "0..4094";
          }
      description
        "Typedef for VLAN ID.";
    }

        typedef vxlan-id {
      type uint32;
      description
        "Typedef for VxLAN ID.";
    }

         typedef address-family-type {
       type enumeration {
         enum ipv4 {
           description
             "IPv4";
         }
         enum ipv6 {
           description
             "IPv6";
         }
       }
       description
         "Typedef for address family type.";
     }

    /* Configuration Data */

    augment /lne:logical-network-elements/lne:logical-network-element {
     container ietf-vbng{
        leaf vbng-name  {
                  type string;
                  description "configure vbng name";
                 }

                leaf enable  {
                  type boolean;



Hu, et al.               Expires January 3, 2018                [Page 7]

Internet-Draft         YANG for CU Separation BNG              July 2017


                  description "'true' to support vbng control plane and user plane separation";
                 }

        container interfaces {
                  list interface {
                    key name;
                        leaf name {
                           type if:interface-ref;
                           description "interface name";
                          }
                        container ethernet {
              leaf lacp {
               type boolean;
               description "enable lacp function";
               }
                           description "configure ethernet interface";
                          }
            leaf mac-offset {
               type uint32;
               description "configure mac offset";
              }

                        container vlans {
                list tag {
                                    key index;
                                        max-elements 2;
                    leaf index {
                       type uint8 {
                                             range "0..1";
                                                 }

                                         must ". = 0 or
                       count(../../tag[index = 0]/index) > 0" {
                       error-message "An inner tag can only be specified if an
                                outer tag has also been specified";
                      description "Ensure that an inner tag cannot be
                              specified without an outer tag'";
                      }

                     description "The index into the tag stack, outermost tag
                            assigned index 0";
                    }

                                        container tag{
                                          leaf tag-type {
                                             type string;
                                                 description "tag type";
                                                 }



Hu, et al.               Expires January 3, 2018                [Page 8]

Internet-Draft         YANG for CU Separation BNG              July 2017


                                          leaf vlan-id {
                                            type vlan-id;
                                            description "vlan id value";
                                           }

                        description "tag";
                   }
                  description "tag list";
                }
              description "vlans";
                        }
                   description "interfaces list";
          }
         description "interface container";
        }

                container openflow-channel {
                  leaf ofls-name {
                    type string;
                        description "openflow logical name";
                        }
                  leaf dpid {
                    type uint32;
                        description "dpid value";
                        }
                  leaf of-port {
            type uint32;
            description "openflow channel udp port number";
           }
                  description "configure openflow channel value";
                 }

        list vxlan-channel{
            key vxlan-tunnel-id;
            leaf vxlan-tunnel-id {
               type uint32;
               description
                     "Static VxLAN tunnel ID.";
            }

            leaf vxlan-tunnel-name {
               type string;
               description
               "Name of the static VxLAN tunnel.";
            }

            list address-family {
               key "af";



Hu, et al.               Expires January 3, 2018                [Page 9]

Internet-Draft         YANG for CU Separation BNG              July 2017


               leaf af {
                 type address-family-type;
                 description
                 "Address family type value.";
               }

               leaf tunnel-source-ip {
                 type address-family-type;
                 description
                 "Source IP address for the static VxLAN tunnel";
               }

               leaf tunnel-destination-ip {
                  type address-family-type;
                  description
                   "Destination IP address for the static VxLAN tunnel";
               }

               list bind-vxlan-id {
                  key vxlan-id;
                  leaf vxlan-id {
                    type vxlan-id;
                    description
                       "VxLAN ID.";
                  }
                  description
                     "VxLAN ID list for the VTEP.";
               }

                description
                   "Per-af params.";
             }
            description
              "Configure the VxLAN channel";
        }


          description "ietf-vbng configuration!";
    }
   description "augment lne model";
 }
}
 <CODE ENDS>








Hu, et al.               Expires January 3, 2018               [Page 10]

Internet-Draft         YANG for CU Separation BNG              July 2017


5.  Security Considerations

6.  Acknowledgements

7.  IANA Considerations

   This document requires no IANA Actions.  Please remove this section
   before RFC publication.

8.  References

8.1.  Normative References

   [I-D.asechoud-rtgwg-qos-model]
              Choudhary, A., Jethanandani, M., Strahle, N., Aries, E.,
              and I. Chen, "YANG Model for QoS", draft-asechoud-rtgwg-
              qos-model-02 (work in progress), June 2017.

   [I-D.ietf-netmod-acl-model]
              Bogdanovic, D., Jethanandani, M., Huang, L., Agarwal, S.,
              and D. Blair, "Network Access Control List (ACL) YANG Data
              Model", draft-ietf-netmod-acl-model-11 (work in progress),
              June 2017.

   [I-D.ietf-rtgwg-lne-model]
              Berger, L., Hopps, C., Lindem, A., and D. Bogdanovic,
              "YANG Logical Network Elements", draft-ietf-rtgwg-lne-
              model-02 (work in progress), March 2017.

   [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>.

   [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>.

8.2.  Informative References

   [I-D.gu-nfvrg-cloud-bng-architecture]
              Gu, R. and S. Hu, "Control and User Plane Seperation
              Architecture of Cloud based BNG", draft-gu-nfvrg-cloud-
              bng-architecture-00 (work in progress), February 2017.






Hu, et al.               Expires January 3, 2018               [Page 11]

Internet-Draft         YANG for CU Separation BNG              July 2017


   [I-D.huang-nvo3-vxlan-extension-for-vbras]
              Huang, L. and S. Hu, "VxLAN Extension Requirement for
              Signaling Exchange Between Control and User Plane of
              vBras", draft-huang-nvo3-vxlan-extension-for-vbras-00
              (work in progress), March 2017.

   [I-D.wcg-i2rs-cu-separation-infor-model]
              Wang, Z., iqjie@mail.ustc.edu.cn, i., and R. Gu,
              "Information Model of Control-Plane and User-Plane
              separation BNG", draft-wcg-i2rs-cu-separation-infor-
              model-00 (work in progress), March 2017.

Authors' Addresses

   Fangwei Hu
   ZTE Corporation
   No.889 Bibo Rd
   Shanghai  201203
   China

   Phone: +86 21 68896273
   Email: hu.fangwei@zte.com.cn


   RongRong Hua
   ZTE Corporation
   No.50 Software Avenue,Yuhuatai District
   Nanjing, Jiangsu Province  210012
   China

   Email: hua.rongrong@zte.com.cn


   Shujun Hu
   China Mobile
   32 Xuanwumen West Ave, Xicheng District
   Beijing  100053
   China

   Email: 13488683482@139.com











Hu, et al.               Expires January 3, 2018               [Page 12]

Internet-Draft         YANG for CU Separation BNG              July 2017


   Lu Huang
   China Mobile
   32 Xuanwumen West Ave, Xicheng District
   Beijing  100053
   China

   Email: hlisname@yahoo.com












































Hu, et al.               Expires January 3, 2018               [Page 13]