Internet-Draft | BIER YANG | July 2024 |
Chen, et al. | Expires 9 January 2025 | [Page] |
This document defines a YANG data model that can be used to configure and manage devices supporting Bit Index Explicit Replication"(BIER). The YANG module in this document conforms to the Network Management Datastore Architecture (NMDA).¶
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 9 January 2025.¶
Copyright (c) 2024 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 Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License.¶
[RFC8279] describes a new architecture for the forwarding of multicast data packets. Known as "Bit Index Explicit Replication"(BIER), that architecture provides optimal forwarding of multicast data packets through a "multicast domain".¶
YANG [RFC7950] is a data modeling language that was introduced to model the configuration and operational state of a device managed using network management protocols such as the Network Configuration Protocol (NETCONF) [RFC6241] or RESTCONF [RFC8040]. YANG is now also being used as a component of other management interfaces, such as command-line interfaces (CLIs).¶
This document defines a YANG data model that can be used to configure and manage devices supporting Bit Index Explicit Replication"(BIER). The YANG module in this document conforms to the Network Management Datastore Architecture (NMDA).¶
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.¶
The terminology for describing YANG data models is found in [RFC7950].¶
The following abbreviations are used in this document and the defined model:¶
Tree diagrams used in this document follow the notation defined in [RFC8340].¶
In this document, names of data nodes, actions, and other data model objects are often used without a prefix, as long as the context clearly indicates the YANG module in which each name is defined. Otherwise, names are prefixed using the standard prefix associated with the corresponding YANG module, as shown in Table 1.¶
The data model can be used to configure and manage BIER protocol [RFC8279] features. The operational state data and statistics can be retrieved by this model. The protocol-specific notifications are also defined in the model.¶
This model is used to consistently provision the BIER parameters for one or more BIER subdomains across all BFIR/BFR/BFER. This configuration will also be read by BIER enabled IGPs, such as IS-IS [RFC8401] ,OSPFv2 [RFC8444] and OSPFv3[I-D.ietf-bier-ospfv3-extensions] to learn the BIER parameters. In scenarios where the IGP protocol is not used/available, this model defines the writeable BIFT and all BFIR/BFR/BFER can get the BIFT directly from the controller, or by any other ways such as configuration.¶
The ietf-bier YANG module augments the routing container in the ietf-routing model [RFC8349] with a BIER container and defines generic BIER configuration and operational state. This module is augmented by modules supporting different data planes.¶
module: ietf-bier augment /rt:routing: +--rw bier +--rw sub-domain* [sub-domain-id address-family] | +--rw sub-domain-id uint8 | +--rw address-family identityref | +--rw bfr-prefix? inet:ip-prefix | +--rw underlay-protocol-type? underlay-protocol-type | +--rw mt-id? uint16 | +--rw bfr-id? uint16 | +--rw bsl? bsl | +--rw igp-algorithm? uint8 | +--rw bier-algorithm? uint8 | +--rw load-balance-num? uint8 | +--rw encapsulation* [bsl encapsulation-type] | +--rw bsl uint16 | +--rw encapsulation-type identityref | +--rw max-si? uint8 | +--rw in-bift-id? | +--rw:(in-bift-id-base) | | +--rw in-bift-id-base? uint32 | +--rw (in-bift-id-encoding) | +--rw in-bift-id-encoding boolean +--rw bift* [bfr-id] +--rw bfr-id bsl +--rw birt-bitstringlength* [bsl] +--rw bsl bsl +--rw bfr-nbr* [bfr-nbr] +--rw bfr-nbr inet:ip-prefix +--rw encapsulation-type? identityref +--rw our-bift-id? +--rw:(out-bift-id) | +--rw out-bift-id? uint32 +--rw:(out-bift-id-encoding) +--rw out-bift-id-encoding boolean notifications: +---n bfr-id-collision | +--ro bfr-id-collisions*[] | +--ro received-bfr-id? uint16 +---n bfr-id-out-of-range | +--ro received-bfr-id? uint16 +---n bfr-zero | +--ro ipv4-bfr-prefix? inet:ipv4-prefix | +--ro ipv6-bfr-prefix? inet:ipv6-prefix +---n sub-domain-id-collision +--ro received-sub-domain-id? uint16 +--ro received-mt-id? uint16¶
The ietf-bier YANG module augments the routing container in the ietf-routing model [RFC8349] with a BIER container and defines generic BIER configuration. It includes:¶
sub-domain:Defines the relevant BIER information of the BIER subdomain, such as configuring the BIER domain identifier, configuring the BFR prefix in the BIER subdomain, configuring the Underlay protocol for advertising BIER information, etc. It contains two in-bift-id generation methods, one is direct configuration, the other is calculated based on <BSL,SD,SI>. The leaf "in-bift-id" is the first BIFT-id of the BIFT-id range. The "BIFT-id range" is the set of 20-bit values beginning with the in-bift-id and ending with (in-bift-id + (Max SI)).The leaf "in-bift-id-encoding" is defined as a boolean, used to enable or disable whether to calculate in-bift-id based on < BSL,SD,SI>.¶
bift: Defines the Bit Index Forwarding Table. The grouping "bfr-nbr" is to define the BFR neighbor, and it contains two bift-id generation methods, one is direct configuration, the other is calculated based on < BSL,SD,SI>. The leaf "out-bift-id-encoding" is defined as a boolean, used to enable or disable whether to calculate out-bift-id based on < BSL,SD,SI>.¶
Support of BIER extensions for a particular IGP control plane is achieved by augmenting routing-protocol configuration with BIER extensions. This augmentation SHOULD be part of the routing-protocol YANG modules as not to create any dependency for implementations to support BIER extensions for all routing protocols.¶
This module defines groupings that SHOULD be used by IGP BIER modules.¶
The "enabled" leaf enables BIER extensions for the routing-protocol instance.¶
The "sub-domain" container controls the routing-protocol instance's advertisement of the relevant BIER information of the BIER subdomain and the processing of received the relevant BIER information of the BIER subdomain.¶
The model defines the following notifications for BIER.¶
This module defines groupings that SHOULD be used by IGP BIER modules.¶
bfr-id-collision: Raised when control-plane-advertised BFR ID have conflicts.¶
bfr-id-out-of-range: Raised when control-plane-advertised BFR ID is larger than locally configured (bsl * max-si).¶
bfr-zero: Raised when invalid value associated with prefix.¶
sub-domain-id-collision: Raised when control-plane-advertised Sub domain ID have conflicts.¶
This document registers a URI in the "IETF XML Registry" [RFC3688]. Following the format in [RFC3688], the following registration is requested to be made:¶
ID: yang:ietf-bier URI: urn:ietf:params:xml:ns:yang:ietf-bier Registrant Contact: The IESG. XML: N/A, the requested URI is an XML namespace.¶
This document registers YANG modules in the "YANG Module Names"registry [RFC6020].¶
Name: ietf-bier Maintained by IANA: N Namespace: urn:ietf:params:xml:ns:yang:ietf-bier Prefix: bier Reference: RFC ****¶
TBD.¶