Skip to main content

YANG data model for SFC
draft-ao-sfc-yang-00

The information below is for an old version of the document.
Document Type
This is an older version of an Internet-Draft whose latest revision state is "Expired".
Authors Ting Ao , Ran Chen , Wei Wei
Last updated 2019-03-10
RFC stream (None)
Formats
Stream Stream state (No stream defined)
Consensus boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date (None)
Responsible AD (None)
Send notices to (None)
draft-ao-sfc-yang-00
SFC WG                                                             T. Ao
Internet-Draft                                                   R. Chen
Intended status: Standards Track                                  W. Wei
Expires: September 11, 2019                              ZTE Corporation
                                                          March 10, 2019

                        YANG data model for SFC
                          draft-ao-sfc-yang-00

Abstract

   This document is to define the YANG data model for SFC configuration.

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 https://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 September 11, 2019.

Copyright Notice

   Copyright (c) 2019 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
   (https://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.

Ao, et al.             Expires September 11, 2019               [Page 1]
Internet-Draft           YANG data model for SFC              March 2019

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Design tree for SFC YANG data model . . . . . . . . . . . . .   2
   3.  YANG data model for SFC configuration . . . . . . . . . . . .   3
   4.  Security Considerations . . . . . . . . . . . . . . . . . . .   8
   5.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   8
   6.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   8
     6.1.  Normative References  . . . . . . . . . . . . . . . . . .   8
     6.2.  Information References  . . . . . . . . . . . . . . . . .   8
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .   9

1.  Introduction

   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 for the configuration of SFC which data plane has
   been defined in [RFC8300].

2.  Design tree for SFC YANG data model

     module: ietf-sfc
     +--rw sfc-config
     |  +--rw sfc-enable?   boolean
     |  +--rw sfc-domain* [sfc-domain-id]
     |     +--rw sfc-domain-id    uint32
     |     +--rw ipv4-prefix?     inet:ipv4-prefix
     |     +--rw ipv6-prefix?     inet:ipv6-prefix
     |     +--rw sfc-sfp* [sfpid si]
     |        +--rw sfpid                   uint32
     |        +--rw si                      uint16
     |        +--rw metric?                 uint16
     |        +--rw (nexthop-trans-type)?
     |        |  +--:(ipv4-nexthop)
     |        |  |  +--rw nh-node-type?     sfp-nexthop-type
     |        |  |  +--rw remote-ipv4?      inet:ipv4-address
     |        |  +--:(ipv6-nexthop)
     |        |  |  +--rw nh-node-type?     sfp-nexthop-type
     |        |  |  +--rw remote-ipv6?      inet:ipv6-address
     |        |  +--:(mac-nexthops)
     |        |  |  +--rw nh-node-type?     sfp-nexthop-type
     |        |  |  +--rw remote-mac?       yang:mac-address
     |        |  +--:(vxlan-gpe-nexthop)
     |        |     +--rw nh-node-type?     sfp-nexthop-type
     |        |     +--rw remote-ip?        inet:ipv4-address
     |        |     +--rw source-ip?        inet:ipv4-address
     |        |     +--rw destination-ip?   inet:ipv4-address

Ao, et al.             Expires September 11, 2019               [Page 2]
Internet-Draft           YANG data model for SFC              March 2019

     |        |     +--rw vni               uint32
     |        +--rw last-sff                boolean
     +--ro sfc-state
        +--ro sfc-enable?      boolean
        +--ro sfc-domain * [sfc-domain-id]
           +--ro sfc-domain-id               uint32
           +--ro ipv4-prefix?        inet:ipv4-prefix
           +--ro ipv6-prefix?        inet:ipv6-prefix
           +--ro sfc-sfp-state
              +--ro sfc-sfp*[sfpid si]
              +--ro sfpid?                 uint32
              +--ro si?                    uint16
              +--ro metric?                uint16
              +--ro nexthop-trans-type?    enumeration
              |  +--:(ipv4-nexthop)
              |  |  +--ro nx-node-type?    node-type
              |  |  +--ro remote-ipv4?     inet:ipv4-address
              |  +--:(ipv6-nexthop)
              |  |  +--ro nx-node-type?    node-type
              |  |  +--ro remote-ipv6?     inet:ipv6-address
              |  +--:(mac-nexthop)
              |  |  +--ro nx-node-type?    node-type
              |  |  +--ro remote-mac?      yang:mac-address
              |  +--:(vxlan-gpe-nexthop)
              |  |  +--ro nx-node-type?    node-type
              |  |  +--ro remote-ip?       inet:ipv4-address
              |  |  +--ro source-ip?       inet:ipv4-address
              |  |  +--ro destination-ip?  inet:ipv4-address
              |  |  +--ro vni?             uint32
              +--ro last-sff?              boolean

3.  YANG data model for SFC configuration

   This container defines a YANG model to configurate of SFC.  The SF
   Type listed in this YANG model is referenced by
   [I-D.ietf-sfc-use-case-mobility] and [I-D.ietf-sfc-dc-use-cases].

        <CODEBEGINS> file "ietf-sfc@2019-03-10.yang"
        module ietf-sfc {
        namespace "urn:ietf:params:xml:ns:yang:ietf-sfc";
        prefix "sfc";
        import ietf-inet-types {
        prefix "inet";
        }

        import ietf-yang-types {
        prefix "yang";
        }

Ao, et al.             Expires September 11, 2019               [Page 3]
Internet-Draft           YANG data model for SFC              March 2019

        organization "IETF SFC Working Group";

        contact
       "WG Web:   <http://tools.ietf.org/wg/sfc/>
        WG List:  <mailto:sfc@ietf.org>
            WG Chair:Jim Guichard
             <mailto:james.n.guichard@huawei.com>
        WG Chair:Joel M. Halpern
             <mailto:jmh@joelhalpern.com>

        Editor: Ting Ao
            <mailto:ao.ting@zte.com.cn>
        Editor: Ran Chen
                    <mailto:chen.ran@zte.com.cn>
        Editor: Wei Wei
                    <mailto:wei.wei@zte.com.cn>
                        ";
        description
         "The YANG module defines a generic configuration
          model for SFC.";

       revision 2019-03-07{
             description
           "Initial revision.";
         reference "RFC XXXX: YANG Data Model for SFC Protocol.";
     }
   /*Typedefs*/
        typedef sfp-nexthop-type {

                type enumeration {
            enum sff {
                value 1 ;
                                }
            enum sf-firewall {
                value 2 ;
                                }
                        enum sf-dpi {
                value 3 ;
                                }
                        enum sf-ids {
                value 4 ;
                                }
                        enum sf-edgefw {
                value 5 ;
                                }
                        enum sf-segfw {
                value 6 ;
                                }

Ao, et al.             Expires September 11, 2019               [Page 4]
Internet-Draft           YANG data model for SFC              March 2019

                        enum sf-appfw {
                value 7 ;
                                }
                        enum sf-adc {
                value 8 ;
                                }
                        enum sf-woc {
                value 9 ;
                                }
                        enum sf-mon {
                value 10 ;
                                }
                        enum sf-sgw {
                value 11 ;
                                }
                        enum sf-pgw {
                value 12 ;
                                }
                        enum sf-hss {
                value 13 ;
                                }
                        enum sf-mme {
                value 14 ;
                                }
                        enum sf-pcrf {
                value 15 ;
                                }
                        enum sf-pcef {
                value 16 ;
                                }
                        enum sf-tdf {
                value 17 ;
                                }
                        enum sf-tssf {
                value 18 ;
                                }
                        enum sf-tds {
                value 19 ;
                                }
                        enum sf-pep {
                value 20 ;
                                }
                        enum sf-ims {
                value 21 ;
                                }
                        enum sf-li {
                value 22 ;
                                }

Ao, et al.             Expires September 11, 2019               [Page 5]
Internet-Draft           YANG data model for SFC              March 2019

                        enum sf-proxy {
                                value 23;
                                }
                        }
                description "The nexthop node type.";
                }

    container sfc-config {
        leaf sfc-enable {
            type boolean;
            default false ;
            description "Enable SFC." ;
            }
        list sfc-domain {
            key "sfc-domain-id";
            leaf sfc-domain-id {
                type uint32;
                description "The identifier of the sfc domain." ;
                }
            leaf ipv4-prefix {
                type inet:ipv4-prefix ;
                description "The IPv4 address of the sff.";
                }
            leaf ipv6-prefix {
                type inet:ipv6-prefix ;
                description "The IPv6 address of the sff.";
                }
            list sfc-sfp {
                key "sfpid si";
                leaf sfpid {
                    type uint32;
                    description "The identifier of the SFP";
                    }
                leaf si {
                    type uint16;
                    description "Service index.";
                    }
                leaf metric {
                    type uint16;
                    description "Forwarding metric.";
                    }
                choice nexthop-trans-type {
                    case ipv4-nexthop {
                        leaf nh-node-type {
                            type sfp-nexthop-type ;
                            description "Nexthop node type.";
                            }
                        leaf remote-ipv4 {

Ao, et al.             Expires September 11, 2019               [Page 6]
Internet-Draft           YANG data model for SFC              March 2019

                            type inet:ipv4-address ;
                            description "Remote IPv4 address.";
                            }
                        description "The configuration for SFP nexthop which encapsulation type is ethernet&ipv4.";
                        }

                    case ipv6-nexthop {
                        leaf nh-node-type {
                            type sfp-nexthop-type ;
                            description "Nexthop node type." ;
                            }
                        leaf remote-ipv6 {
                            type inet:ipv6-address ;
                            description "Remote IPv6 address.";
                            }
                        description "The configuration for SFP nexthop which encapsulation type is ethernet&ipv6.";
                        }

                    case mac-nexthops {
                        leaf nh-node-type {
                            type sfp-nexthop-type ;
                            description "Nexthop node type.";
                            }
                        leaf remote-mac {
                            type yang:mac-address ;
                            description "MAC address.";
                            }
                        description "The configuration for SFP nexthop which specifies the MAC address." ;
                        }

                    case vxlan-gpe-nexthop {
                        leaf nh-node-type {
                            type sfp-nexthop-type ;
                            description "Nexthop node type.";
                            }
                        leaf remote-ip   {
                            type inet:ip-address ;
                            description "Remote IP address.";
                            }
                        leaf source-ip {
                            description "The source IP address.";
                            type inet:ipv4-address ;
                            }
                        leaf destination-ip {
                            description "The destination address.";
                            type inet:ipv4-address ;
                            }
                        leaf vni {

Ao, et al.             Expires September 11, 2019               [Page 7]
Internet-Draft           YANG data model for SFC              March 2019

                            type uint32;
                            mandatory true;
                            description "VNI value of the tunnel.";
                            }
                        description "The configuration for SFP nexthop is vxlan-gpe." ;
                        }
                    description "The configuration for SFP nexthop." ;
                    }

                leaf last-sff {
                    type boolean ;
                    default false ;
                    description "This is the SFP terminal.";
                    }
                }
            }
        }
    }
        <CODE ENDS>

4.  Security Considerations

   TBD.

5.  IANA Considerations

   TBD.

6.  References

6.1.  Normative References

   [RFC7665]  Halpern, J., Ed. and C. Pignataro, Ed., "Service Function
              Chaining (SFC) Architecture", RFC 7665,
              DOI 10.17487/RFC7665, October 2015,
              <https://www.rfc-editor.org/info/rfc7665>.

   [RFC8300]  Quinn, P., Ed., Elzur, U., Ed., and C. Pignataro, Ed.,
              "Network Service Header (NSH)", RFC 8300,
              DOI 10.17487/RFC8300, January 2018,
              <https://www.rfc-editor.org/info/rfc8300>.

6.2.  Information References

   [I-D.ietf-bess-nsh-bgp-control-plane]
              Farrel, A., Drake, J., Rosen, E., Uttaro, J., and L.
              Jalil, "BGP Control Plane for NSH SFC", draft-ietf-bess-
              nsh-bgp-control-plane-09 (work in progress), March 2019.

Ao, et al.             Expires September 11, 2019               [Page 8]
Internet-Draft           YANG data model for SFC              March 2019

   [I-D.ietf-sfc-dc-use-cases]
              Kumar, S., Tufail, M., Majee, S., Captari, C., and S.
              Homma, "Service Function Chaining Use Cases In Data
              Centers", draft-ietf-sfc-dc-use-cases-06 (work in
              progress), February 2017.

   [I-D.ietf-sfc-use-case-mobility]
              Haeffner, W., Napper, J., Stiemerling, M., Lopez, D., and
              J. Uttaro, "Service Function Chaining Use Cases in Mobile
              Networks", draft-ietf-sfc-use-case-mobility-09 (work in
              progress), January 2019.

Authors' Addresses

   Ting Ao
   ZTE Corporation
   No.889, BiBo Road
   Shanghai  201203
   China

   Phone: +86 21 68897642
   Email: ao.ting@zte.com.cn

   Ran Chen
   ZTE Corporation

   Email: ran.chen@zte.com.cn

   Wei Wei
   ZTE Corporation

   Email: wei.wei@zte.com.cn

Ao, et al.             Expires September 11, 2019               [Page 9]