YANG Data Model for BIER RPCs
draft-chen-bier-rpcs-yang-01

Document Type Active Internet-Draft (individual)
Last updated 2018-08-28
Stream (None)
Intended RFC status (None)
Formats plain text pdf html bibtex
Yang Validation 6 errors, 0 warnings.
Additional URLs
- Yang catalog entry for ietf-bier-rpcs@2018-08-28.yang
- Yang impact analysis for draft-chen-bier-rpcs-yang
Stream Stream state (No stream defined)
Consensus Boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date
Responsible AD (None)
Send notices to (None)
BIER WG                                                        Ran. Chen
Internet-Draft                                                   Min. Gu
Intended status: Standards Track                         ZTE Corporation
Expires: March 1, 2019                                   August 28, 2018

                     YANG Data Model for BIER RPCs
                    draft-chen-bier-rpcs-yang-01.txt

Abstract

   This document defines a YANG data model for BIER RPCs.

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 March 1, 2019.

Copyright Notice

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

Chen & Gu                 Expires March 1, 2019                 [Page 1]
Internet-Draft               BIER RPCs YANG                  August 2018

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Design of the Data Model  . . . . . . . . . . . . . . . . . .   2
   3.  Overview the bier rpcs model  . . . . . . . . . . . . . . . .   8
   4.  BIER YANG Data Model  . . . . . . . . . . . . . . . . . . . .   9
   5.  Security Considerations . . . . . . . . . . . . . . . . . . .  18
   6.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .  18
   7.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  18
   8.  Normative references  . . . . . . . . . . . . . . . . . . . .  18
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  19

1.  Introduction

   This document defines a YANG data model for BIER RPCs.

2.  Design of the Data Model

module: ietf-bier-rpcs
  augment /coam-methods:continuity-check/coam-methods:input/coam-methods:destination-tp:
    +---- bier-address
    |  +---- (bier-address)?
    |  |  +--:(bfrs)
    |  |  |  +---- bier-bsl?           bier:bsl
    |  |  |  +---- bier-subdomainid?   bier:sub-domain-id
    |  |  |  +---- bfir?               bier:bfr-id
    |  |  |  +---- bier-bfers* [bier-bfrid]
    |  |  |     +---- bier-bfrid    bier:bfr-id
    |  |  +--:(m-addr)
    |  |     +---- vpn-id?             uint32
    |  |     +---- source-address?     inet:ip-address
    |  |     +---- source-wildcard?    uint8
    |  |     +---- group-address?      inet:ip-address
    |  |     +---- group-wildcard?     uint8
    |  +---- target-bfers* [bier-bfrid]
    |  |  +---- bier-bfrid    bier:bfr-id
    |  +---- reply-mode?         reply-mode
    +---- bier-te-address
       +---- bier-te-subdomainid?   bier:sub-domain-id
       +---- bier-te-bp-info* [bier-te-bsl]
       |  +---- bier-te-bsl       bier:bsl
       |  +---- bitstring* [si]
       |  |  +---- si              bier:si
       |  |  +---- bitpositions* [bitposition]
       |  |     +---- bitposition    bier-te:bit-string
       |  +---- fec-stack-type* [si]
       |     +---- si                bier:si
       |     +---- fec-stack-info* [bitposition]

Chen & Gu                 Expires March 1, 2019                 [Page 2]
Internet-Draft               BIER RPCs YANG                  August 2018

       |        +---- bitposition        bier-te:bit-string
       |        +---- (fec-stack-type)
       |           +--:(connected)
       |           |  +---- local-bfr?         inet:ip-address
       |           |  +---- local-interface?   if:interface-ref
       |           +--:(routed)
       |           |  +---- routed-bfr?        inet:ip-address
       |           +--:(local-decap)
       |              +---- bfer?              inet:ip-address
       +---- reply-mode-te?         reply-mode
  augment /coam-methods:continuity-check/coam-methods:output/coam-methods:src-test-point:
    +---- bier-address
    |  +---- (bier-address)?
    |  |  +--:(bfrs)
    |  |  |  +---- bier-bsl?           bier:bsl
    |  |  |  +---- bier-subdomainid?   bier:sub-domain-id
    |  |  |  +---- bfir?               bier:bfr-id
    |  |  |  +---- bier-bfers* [bier-bfrid]
    |  |  |     +---- bier-bfrid    bier:bfr-id
    |  |  +--:(m-addr)
    |  |     +---- vpn-id?             uint32
    |  |     +---- source-address?     inet:ip-address
    |  |     +---- source-wildcard?    uint8
    |  |     +---- group-address?      inet:ip-address
    |  |     +---- group-wildcard?     uint8
    |  +---- target-bfers* [bier-bfrid]
    |  |  +---- bier-bfrid    bier:bfr-id
    |  +---- reply-mode?         reply-mode
    +---- bier-te-address
       +---- bier-te-subdomainid?   bier:sub-domain-id
       +---- bier-te-bp-info* [bier-te-bsl]
       |  +---- bier-te-bsl       bier:bsl
       |  +---- bitstring* [si]
       |  |  +---- si              bier:si
       |  |  +---- bitpositions* [bitposition]
       |  |     +---- bitposition    bier-te:bit-string
       |  +---- fec-stack-type* [si]
       |     +---- si                bier:si
       |     +---- fec-stack-info* [bitposition]
       |        +---- bitposition        bier-te:bit-string
       |        +---- (fec-stack-type)
       |           +--:(connected)
       |           |  +---- local-bfr?         inet:ip-address
       |           |  +---- local-interface?   if:interface-ref
       |           +--:(routed)
       |           |  +---- routed-bfr?        inet:ip-address
       |           +--:(local-decap)
       |              +---- bfer?              inet:ip-address

Chen & Gu                 Expires March 1, 2019                 [Page 3]
Internet-Draft               BIER RPCs YANG                  August 2018

       +---- reply-mode-te?         reply-mode
  augment /coam-methods:continuity-check/coam-methods:output/coam-methods:dest-test-point:
    +---- bier-address
    |  +---- (bier-address)?
    |  |  +--:(bfrs)
    |  |  |  +---- bier-bsl?           bier:bsl
    |  |  |  +---- bier-subdomainid?   bier:sub-domain-id
    |  |  |  +---- bfir?               bier:bfr-id
    |  |  |  +---- bier-bfers* [bier-bfrid]
    |  |  |     +---- bier-bfrid    bier:bfr-id
    |  |  +--:(m-addr)
    |  |     +---- vpn-id?             uint32
    |  |     +---- source-address?     inet:ip-address
    |  |     +---- source-wildcard?    uint8
    |  |     +---- group-address?      inet:ip-address
    |  |     +---- group-wildcard?     uint8
    |  +---- target-bfers* [bier-bfrid]
    |  |  +---- bier-bfrid    bier:bfr-id
    |  +---- reply-mode?         reply-mode
    +---- bier-te-address
       +---- bier-te-subdomainid?   bier:sub-domain-id
       +---- bier-te-bp-info* [bier-te-bsl]
       |  +---- bier-te-bsl       bier:bsl
       |  +---- bitstring* [si]
       |  |  +---- si              bier:si
       |  |  +---- bitpositions* [bitposition]
       |  |     +---- bitposition    bier-te:bit-string
       |  +---- fec-stack-type* [si]
       |     +---- si                bier:si
       |     +---- fec-stack-info* [bitposition]
       |        +---- bitposition        bier-te:bit-string
       |        +---- (fec-stack-type)
       |           +--:(connected)
       |           |  +---- local-bfr?         inet:ip-address
       |           |  +---- local-interface?   if:interface-ref
       |           +--:(routed)
       |           |  +---- routed-bfr?        inet:ip-address
       |           +--:(local-decap)
       |              +---- bfer?              inet:ip-address
       +---- reply-mode-te?         reply-mode
  augment /coam-methods:path-discovery/coam-methods:input/coam-methods:destination-tp:
    +---- bier-address
    |  +---- (bier-address)?
    |  |  +--:(bfrs)
    |  |  |  +---- bier-bsl?           bier:bsl
    |  |  |  +---- bier-subdomainid?   bier:sub-domain-id
    |  |  |  +---- bfir?               bier:bfr-id
    |  |  |  +---- bier-bfers* [bier-bfrid]

Chen & Gu                 Expires March 1, 2019                 [Page 4]
Internet-Draft               BIER RPCs YANG                  August 2018

    |  |  |     +---- bier-bfrid    bier:bfr-id
    |  |  +--:(m-addr)
    |  |     +---- vpn-id?             uint32
    |  |     +---- source-address?     inet:ip-address
    |  |     +---- source-wildcard?    uint8
    |  |     +---- group-address?      inet:ip-address
    |  |     +---- group-wildcard?     uint8
    |  +---- target-bfers* [bier-bfrid]
    |  |  +---- bier-bfrid    bier:bfr-id
    |  +---- reply-mode?         reply-mode
    +---- bier-te-address
       +---- bier-te-subdomainid?   bier:sub-domain-id
       +---- bier-te-bp-info* [bier-te-bsl]
       |  +---- bier-te-bsl       bier:bsl
       |  +---- bitstring* [si]
       |  |  +---- si              bier:si
       |  |  +---- bitpositions* [bitposition]
       |  |     +---- bitposition    bier-te:bit-string
       |  +---- fec-stack-type* [si]
       |     +---- si                bier:si
       |     +---- fec-stack-info* [bitposition]
       |        +---- bitposition        bier-te:bit-string
       |        +---- (fec-stack-type)
       |           +--:(connected)
       |           |  +---- local-bfr?         inet:ip-address
       |           |  +---- local-interface?   if:interface-ref
       |           +--:(routed)
       |           |  +---- routed-bfr?        inet:ip-address
       |           +--:(local-decap)
       |              +---- bfer?              inet:ip-address
       +---- reply-mode-te?         reply-mode
  augment /coam-methods:path-discovery/coam-methods:output/coam-methods:src-test-point:
    +---- bier-address
    |  +---- (bier-address)?
    |  |  +--:(bfrs)
    |  |  |  +---- bier-bsl?           bier:bsl
    |  |  |  +---- bier-subdomainid?   bier:sub-domain-id
    |  |  |  +---- bfir?               bier:bfr-id
    |  |  |  +---- bier-bfers* [bier-bfrid]
    |  |  |     +---- bier-bfrid    bier:bfr-id
    |  |  +--:(m-addr)
    |  |     +---- vpn-id?             uint32
    |  |     +---- source-address?     inet:ip-address
    |  |     +---- source-wildcard?    uint8
    |  |     +---- group-address?      inet:ip-address
    |  |     +---- group-wildcard?     uint8
    |  +---- target-bfers* [bier-bfrid]
    |  |  +---- bier-bfrid    bier:bfr-id

Chen & Gu                 Expires March 1, 2019                 [Page 5]
Internet-Draft               BIER RPCs YANG                  August 2018

    |  +---- reply-mode?         reply-mode
    +---- bier-te-address
       +---- bier-te-subdomainid?   bier:sub-domain-id
       +---- bier-te-bp-info* [bier-te-bsl]
       |  +---- bier-te-bsl       bier:bsl
       |  +---- bitstring* [si]
       |  |  +---- si              bier:si
       |  |  +---- bitpositions* [bitposition]
       |  |     +---- bitposition    bier-te:bit-string
       |  +---- fec-stack-type* [si]
       |     +---- si                bier:si
       |     +---- fec-stack-info* [bitposition]
       |        +---- bitposition        bier-te:bit-string
       |        +---- (fec-stack-type)
       |           +--:(connected)
       |           |  +---- local-bfr?         inet:ip-address
       |           |  +---- local-interface?   if:interface-ref
       |           +--:(routed)
       |           |  +---- routed-bfr?        inet:ip-address
       |           +--:(local-decap)
       |              +---- bfer?              inet:ip-address
       +---- reply-mode-te?         reply-mode
  augment /coam-methods:path-discovery/coam-methods:output/coam-methods:dest-test-point:
    +---- bier-address
    |  +---- (bier-address)?
    |  |  +--:(bfrs)
    |  |  |  +---- bier-bsl?           bier:bsl
    |  |  |  +---- bier-subdomainid?   bier:sub-domain-id
    |  |  |  +---- bfir?               bier:bfr-id
    |  |  |  +---- bier-bfers* [bier-bfrid]
    |  |  |     +---- bier-bfrid    bier:bfr-id
    |  |  +--:(m-addr)
    |  |     +---- vpn-id?             uint32
    |  |     +---- source-address?     inet:ip-address
    |  |     +---- source-wildcard?    uint8
    |  |     +---- group-address?      inet:ip-address
    |  |     +---- group-wildcard?     uint8
    |  +---- target-bfers* [bier-bfrid]
    |  |  +---- bier-bfrid    bier:bfr-id
    |  +---- reply-mode?         reply-mode
    +---- bier-te-address
       +---- bier-te-subdomainid?   bier:sub-domain-id
       +---- bier-te-bp-info* [bier-te-bsl]
       |  +---- bier-te-bsl       bier:bsl
       |  +---- bitstring* [si]
       |  |  +---- si              bier:si
       |  |  +---- bitpositions* [bitposition]
       |  |     +---- bitposition    bier-te:bit-string

Chen & Gu                 Expires March 1, 2019                 [Page 6]
Internet-Draft               BIER RPCs YANG                  August 2018

       |  +---- fec-stack-type* [si]
       |     +---- si                bier:si
       |     +---- fec-stack-info* [bitposition]
       |        +---- bitposition        bier-te:bit-string
       |        +---- (fec-stack-type)
       |           +--:(connected)
       |           |  +---- local-bfr?         inet:ip-address
       |           |  +---- local-interface?   if:interface-ref
       |           +--:(routed)
       |           |  +---- routed-bfr?        inet:ip-address
       |           +--:(local-decap)
       |              +---- bfer?              inet:ip-address
       +---- reply-mode-te?         reply-mode
  augment /coam-methods:path-discovery/coam-methods:output/coam-methods:path-trace-info/coam-methods:path-trace-info-list:
     +---- bier-address
    |  +---- (bier-address)?
    |  |  +--:(bfrs)
    |  |  |  +---- bier-bsl?           bier:bsl
    |  |  |  +---- bier-subdomainid?   bier:sub-domain-id
    |  |  |  +---- bfir?               bier:bfr-id
    |  |  |  +---- bier-bfers* [bier-bfrid]
    |  |  |     +---- bier-bfrid    bier:bfr-id
    |  |  +--:(m-addr)
    |  |     +---- vpn-id?             uint32
    |  |     +---- source-address?     inet:ip-address
    |  |     +---- source-wildcard?    uint8
    |  |     +---- group-address?      inet:ip-address
    |  |     +---- group-wildcard?     uint8
    |  +---- target-bfers* [bier-bfrid]
    |  |  +---- bier-bfrid    bier:bfr-id
    |  +---- reply-mode?         reply-mode
    +---- bier-te-address
    |  +---- bier-te-subdomainid?   bier:sub-domain-id
    |  +---- bier-te-bp-info* [bier-te-bsl]
    |  |  +---- bier-te-bsl       bier:bsl
    |  |  +---- bitstring* [si]
    |  |  |  +---- si              bier:si
    |  |  |  +---- bitpositions* [bitposition]
    |  |  |     +---- bitposition    bier-te:bit-string
    |  |  +---- fec-stack-type* [si]
    |  |     +---- si                bier:si
    |  |     +---- fec-stack-info* [bitposition]
    |  |        +---- bitposition        bier-te:bit-string
    |  |        +---- (fec-stack-type)
    |  |           +--:(connected)
    |  |           |  +---- local-bfr?         inet:ip-address
    |  |           |  +---- local-interface?   if:interface-ref
    |  |           +--:(routed)

Chen & Gu                 Expires March 1, 2019                 [Page 7]
Internet-Draft               BIER RPCs YANG                  August 2018

    |  |           |  +---- routed-bfr?        inet:ip-address
    |  |           +--:(local-decap)
    |  |              +---- bfer?              inet:ip-address
    |  +---- reply-mode-te?         reply-mode
    +---- bier-response
       +---- ttl?             int16
       +---- responder-bfr?   inet:ip-address

3.  Overview the bier rpcs model

   There are seven parts of the bier rpcs data model.

   o  This Module augments the "coam-methods:continuity-check/coam-
      methods:input/coam-methods:destination-tp:" with a bier-address
      container and bier-te address container.  The Containers define
      all the input parameters related to 'continuity-check' operation.

   o  This Module augments the "coam-methods:continuity-check/coam-
      methods:output/coam-methods:src-test-point: " with a bier-address
      container and bier-te address container.  The Containers define
      all the output src-test-point parameters related to 'continuity-
      check' operation.

   o  This Module augments the "coam-methods:continuity-check/coam-
      methods:output/coam-methods:dest-test-point: " with a bier-address
      container and bier-te address container.  The Containers define
      all the output dest-test-point parameters related to 'continuity-
      check' operation.

   o  This Module augments the " coam-methods:path-discovery/coam-
      methods:input/coam-methods:destination-tp: " with a bier-address
      container and bier-te address container.  The Containers define
      all the input parameters related to 'path-discovery' operation.

   o  This Module augments the "coam-methods:path-discovery/coam-
      methods:output/coam-methods:src-test-point: " with a bier-address
      container and bier-te address container.  The Containers define
      all the output src-test-point parameters related to 'path-
      discovery' operation.

   o  This Module augments the "coam-methods:path-discovery/coam-
      methods:output/coam-methods:dest-test-point: " with a bier-address
      container and bier-te address container.  The Containers define
      all the output dest-test-point parameters related to 'path-
      discovery' operation.

Chen & Gu                 Expires March 1, 2019                 [Page 8]
Internet-Draft               BIER RPCs YANG                  August 2018

   o  This Module augments the "coam-methods:path-discovery/coam-
      methods:output/coam-methods:path-trace-info/coam-methods:path-
      trace-info-list" with a bier-address container,bier-te address
      container and bier-response container.  The Containers define all
      the output path trace infomation list related to 'path-discovery'
      operation.

4.  BIER YANG Data Model

<CODE BEGINS> file "ietf-bier-rpcs@2018-02-08.yang"
module ietf-bier-rpcs {
        namespace "urn:ietf:params:xml:ns:yang:ietf-bier-rpcs";
        prefix bier-rpcs;

        import ietf-bier {
    prefix bier;
    }

        import ietf-bier-te{
    prefix bier-te;
        }

        import ietf-connectionless-oam-methods {
    prefix coam-methods;
        }

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

        import ietf-interfaces {
    prefix if;
        }

        import ietf-multicast-information {
      prefix multicast-info;
        }

        organization
        "IETF BIER(Bit Indexed Explicit Replication ) Working Group";

        contact
                "WG List:  <mailto:bier@ietf.org>
                WG Chair: Tony Przygienda
                                <mailto:tonysietf@gmail.com>

Chen & Gu                 Expires March 1, 2019                 [Page 9]
Internet-Draft               BIER RPCs YANG                  August 2018

                WG Chair: Greg Shepherd
                                <mailto:gjshep@gmail.com>
                Editor:   Ran Chen
                                <mailto:chen.ran@zte.com.cn>
                Editor:   Min Gu
                                <mailto:gu.min@zte.com.cn>

                ";

                description
                "The YANG module defines BIER RPCs data model.";
        revision 2018-08-28{
                description
                "01 revision";
                reference "RFC XXXX: YANG module defines BIER RPCs data model.";
        }

                revision 2018-02-08{
                description
                "00 revision";
                reference "RFC XXXX: YANG module defines BIER RPCs data model.";
        }

        typedef reply-mode {
    type enumeration{
      enum "do not Reply"{
        value 1;
          description
            "reply mode is do not reply";
      }
      enum "reply via IPv4/IPv6 UDP packet"{
        value 2;
          description
            "reply mode is via IPv4/IPv6 UDP packet.";
      }
      enum "reply via BIER-TE packet"{
        value 3;
          description
            "reply mode is via BIER-TE packet.";
      }
    }
                description "Reply mode.";
        }

        grouping general-multicast {
                description "The general multicast address information.";

Chen & Gu                 Expires March 1, 2019                [Page 10]
Internet-Draft               BIER RPCs YANG                  August 2018

                leaf source-address {
                        type inet:ip-address;
                        description "The address of multicast source. The value set to zero
        means that the receiver interests in all source that relevant to
        one group.";
                }
                leaf source-wildcard {
                        type uint8;
                        description "The wildcard information of source.";
                }
                leaf group-address {
                        type inet:ip-address;
                        description "The address of multicast group.";
                }
                leaf group-wildcard {
                        type uint8;
                        description "The wildcard information of group.";
                }
        }

        grouping m-addr {
                description "The vpn multicast information.";
                leaf vpn-id {
                        type uint32;
                        description "The vpn-id of the multicast flow.
                        If there is global instance, the vpnid value should be zero.";
                }
                uses general-multicast;
        }

        grouping bier-address{
    description
      "bier test point address.";

        choice bier-address {
        case bfrs {
      description "use bfrs as address.";
      leaf bier-bsl{
        type bier:bsl;
        description
          "bier bitstringlength.";
      }
      leaf bier-subdomainid {
        type bier:sub-domain-id;
        description
          "bier sub-domain id.";
      }

Chen & Gu                 Expires March 1, 2019                [Page 11]
Internet-Draft               BIER RPCs YANG                  August 2018

      leaf bfir {
          type bier:bfr-id;
                description
          "bier bfir id.";
      }
      list bier-bfers {
        key bier-bfrid;
        leaf bier-bfrid {
        type bier:bfr-id;
          description
          "bier bfr identifier.";
                        }
                        description
        "bier BFERs.";
      }
        }
        case m-addr {
      description "use multicast flow address as address.";
      uses multicast-info:m-addr;
        }
        description "BIER address."     ;
        }

        list target-bfers {
                        key bier-bfrid;
                        leaf bier-bfrid {
                        type bier:bfr-id;
                                description
          "bier bfr identifier.";
      }
      description
                                "target BFERs.";
                }

                leaf reply-mode{
      type reply-mode;
                        description
        "reply mode.";
    }

        }

        grouping bier-te-address{
    description
      "bier-te test point address.";
    leaf bier-te-subdomainid {
      type bier:sub-domain-id;
        description

Chen & Gu                 Expires March 1, 2019                [Page 12]
Internet-Draft               BIER RPCs YANG                  August 2018

        "bier-te sub-domain id.";
    }
    list bier-te-bp-info {
        key "bier-te-bsl";
                description
              "bier-te bitpositions information.";
                leaf bier-te-bsl{
                  type bier:bsl;
                  description
                        "bier bitstringlength.";
                }
                list bitstring{
                  key "si";
                  description
                        "The bitstring of BIER-TE path.";
                  leaf si {
                        type bier:si;
                        description
                        "The set identifier of this forwarding item.";
                  }
                  list bitpositions {
                        key "bitposition";
                        description
                        "the list of bitposition information.";
                        leaf bitposition{
                        type bier-te:bit-string;
                          description
                          "the bitposition information.";
                        }
                  }
                }
                list fec-stack-type{
                  key "si";
                  description
                        "The FEC stack info.";
                  leaf si {
                        type bier:si;
                        description
                        "The set identifier of this forwarding item.";
                  }
                  list fec-stack-info {
                        key "bitposition";
                        description
                        "the choice of fec stack type.";
                        leaf bitposition{
                          type bier-te:bit-string;
                          description
                          "the bitposition information.";

Chen & Gu                 Expires March 1, 2019                [Page 13]
Internet-Draft               BIER RPCs YANG                  August 2018

                        }
                        choice fec-stack-type{
                          mandatory true;
                          case connected {
                                description "The type of adjacency is connected. Mostly connected interfaces.";
                                leaf local-bfr{
                                  type inet:ip-address;
                                  description
                                        "the local bfr identifier.";
                                }
                                leaf local-interface{
                                  type if:interface-ref;
                                  description
                                        "the local interface.";
                                }
                          }
                          case routed {
                                description "The type of adjacency is routed. Mostly not connected interfaces.";
                                leaf routed-bfr{
                                  type inet:ip-address;
                                  description
                                        "the loopback address of bfr.";
                                }
                          }
                          case local-decap {
                                description "Means that the packet should be decapsulated and forward out BIER domain.";
                                leaf bfer{
                                  type inet:ip-address;
                                  description
                                        "bfer indentifier.";
                                }
                          }
                          description "FEC stack type.";
                        }
                  }
                }

    }

    leaf reply-mode-te{
      type reply-mode;
      description
        "the reply mode.";
    }

  }

Chen & Gu                 Expires March 1, 2019                [Page 14]
Internet-Draft               BIER RPCs YANG                  August 2018

  identity tp-address-technology-type {
    description
      "Test point address type";
  }

        identity bier-address-type {
    base tp-address-technology-type;
    description
      "bier address address type";
        }

        identity bier-te-address-type {
    base tp-address-technology-type;
    description
      "bier te address address type";
        }

        augment /coam-methods:continuity-check/coam-methods:input/coam-methods:destination-tp{
        description
                "augment the connectionless oam methods yang for input CC destination test point address";
                container bier-address {
                uses bier-address;
                description
                        "bier Address.";
                }

                container bier-te-address {
                uses bier-te-address;
                description
                        "bier te Address.";
                }
                }

                augment /coam-methods:continuity-check/coam-methods:output/coam-methods:src-test-point{
                description
                "augment the connectionless oam methods yang for output CC source test point address";

                container bier-address {
                uses bier-address;
                description
                        "bier Address.";
                }

                container bier-te-address {
                uses bier-te-address;

Chen & Gu                 Expires March 1, 2019                [Page 15]
Internet-Draft               BIER RPCs YANG                  August 2018

                description
                        "bier te Address.";
                }
                }
                augment /coam-methods:continuity-check/coam-methods:output/coam-methods:dest-test-point{
                description
                "augment the connectionless oam methods yang for output CC destination test point address";
                container bier-address {
                uses bier-address;
                description
                        "bier Address.";
                }

                container bier-te-address {
                uses bier-te-address;
                description
                        "bier te Address.";
                }
                }
                augment  /coam-methods:path-discovery/coam-methods:input/coam-methods:destination-tp {
                description
                "augment the connectionless oam methods yang for input path-discovery destination test point address";
                container bier-address {
                uses bier-address;
                description
                        "bier Address.";
                }

                container bier-te-address {
                uses bier-te-address;
                description
                        "bier te Address.";
                }
                }

                augment /coam-methods:path-discovery/coam-methods:output/coam-methods:src-test-point{
                description
                "augment the connectionless oam methods yang for output path-discovery src test point address";
                container bier-address {
                uses bier-address;
                description
                        "bier Address.";
                }

                container bier-te-address {
                uses bier-te-address;
                description
                        "bier te Address.";

Chen & Gu                 Expires March 1, 2019                [Page 16]
Internet-Draft               BIER RPCs YANG                  August 2018

                }
                }

                augment "/coam-methods:path-discovery/coam-methods:output/coam-methods:dest-test-point"{
                description
                "augment the connectionless oam methods yang for output path-discovery destination test point address";
                container bier-address {
                uses bier-address;
                description
                        "bier Address.";
                }

                container bier-te-address {
                uses bier-te-address;
                description
                        "bier te Address.";
                }
                }

                augment /coam-methods:path-discovery/coam-methods:output/coam-methods:path-trace-info/coam-methods:path-trace-info-list{
                description
                "augment the connectionless oam methods yang for output path trace info.";
                container bier-address {
                uses bier-address;
                description
                        "bier Address.";
                }

                container bier-te-address {
                uses bier-te-address;
                description
                        "bier te Address.";
                }

        container bier-te-address {
                uses bier-te-address;
                description
                        "bier te Address.";
                }
                container bier-response{
                        leaf ttl{
                                type int16;
                                description
                                "TTL is ";
                                }
                        leaf responder-bfr{
                                type inet:ip-address;

Chen & Gu                 Expires March 1, 2019                [Page 17]
Internet-Draft               BIER RPCs YANG                  August 2018

                                description
                                "Responder bfr.";
                                }
                        description
                                "Bier response.";
                        }

                }

}

 <CODE ENDS>

5.  Security Considerations

   TBD.

6.  Acknowledgements

   We would like to thank IJsbrand Wijnands, Reshad Rahman and Giles
   Heron for their comments and support of this work.

7.  IANA Considerations

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

8.  Normative references

   [I-D.ietf-bier-architecture]
              Wijnands, I., Rosen, E., Dolganow, A., Przygienda, T., and
              S. Aldrin, "Multicast using Bit Index Explicit
              Replication", draft-ietf-bier-architecture-08 (work in
              progress), September 2017.

   [I-D.ietf-bier-bier-yang]
              Chen, R., hu, f., Zhang, Z., dai.xianxian@zte.com.cn, d.,
              and M. Sivakumar, "YANG Data Model for BIER Protocol",
              draft-ietf-bier-bier-yang-03 (work in progress), February
              2018.

   [I-D.ietf-bier-te-arch]
              Eckert, T., Cauchie, G., Braun, W., and M. Menth, "Traffic
              Engineering for Bit Index Explicit Replication (BIER-TE)",
              draft-ietf-bier-te-arch-00 (work in progress), January
              2018.

Chen & Gu                 Expires March 1, 2019                [Page 18]
Internet-Draft               BIER RPCs YANG                  August 2018

   [I-D.ietf-lime-yang-connectionless-oam-methods]
              Kumar, D., Wang, Z., Wu, Q., Rahman, R., and S. Raghavan,
              "Retrieval Methods YANG Data Model for the Management of
              Operations, Administration, and Maintenance (OAM)
              Protocols that use Connectionless Communications", draft-
              ietf-lime-yang-connectionless-oam-methods-13 (work in
              progress), November 2017.

   [RFC6020]  Bjorklund, M., Ed., "YANG - A Data Modeling Language for
              the Network Configuration Protocol (NETCONF)", RFC 6020,
              DOI 10.17487/RFC6020, October 2010,
              <https://www.rfc-editor.org/info/rfc6020>.

   [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,
              <https://www.rfc-editor.org/info/rfc6241>.

   [RFC6991]  Schoenwaelder, J., Ed., "Common YANG Data Types",
              RFC 6991, DOI 10.17487/RFC6991, July 2013,
              <https://www.rfc-editor.org/info/rfc6991>.

   [RFC7223]  Bjorklund, M., "A YANG Data Model for Interface
              Management", RFC 7223, DOI 10.17487/RFC7223, May 2014,
              <https://www.rfc-editor.org/info/rfc7223>.

Authors' Addresses

   Ran Chen
   ZTE Corporation
   No.50 Software Avenue,Yuhuatai District
   Nanjing, Jiangsu Province  210012
   China

   Phone: +86 025 88014636
   Email: chen.ran@zte.com.cn

   Min Gu
   ZTE Corporation
   No.50 Software Avenue,Yuhuatai District
   Nanjing, Jiangsu Province  210012
   China

Chen & Gu                 Expires March 1, 2019                [Page 19]