Internet Engineering Task Force (IETF)                     D. Bogdanovic
Request for Comments: 8199                          Volta Networks, Inc.
Category: Informational                                        B. Claise
ISSN: 2070-1721                                                C. Moberg
                                                     Cisco Systems, Inc.
                                                               July 2017
        
Internet Engineering Task Force (IETF)                     D. Bogdanovic
Request for Comments: 8199                          Volta Networks, Inc.
Category: Informational                                        B. Claise
ISSN: 2070-1721                                                C. Moberg
                                                     Cisco Systems, Inc.
                                                               July 2017
        

YANG Module Classification

杨氏模量分类

Abstract

摘要

The YANG data modeling language is currently being considered for a wide variety of applications throughout the networking industry at large. Many standards development organizations (SDOs), open-source software projects, vendors, and users are using YANG to develop and publish YANG modules for a wide variety of applications. At the same time, there is currently no well-known terminology to categorize various types of YANG modules.

YANG数据建模语言目前正被广泛考虑用于整个网络行业的各种应用。许多标准开发组织(SDO)、开源软件项目、供应商和用户都在使用YANG为各种应用程序开发和发布YANG模块。同时,目前还没有一个众所周知的术语来分类各种类型的阳模块。

A consistent terminology would help with the categorization of YANG modules, assist in the analysis of the YANG data modeling efforts in the IETF and other organizations, and bring clarity to the YANG-related discussions between the different groups.

一致的术语将有助于YANG模块的分类,有助于分析IETF和其他组织中的YANG数据建模工作,并使不同小组之间与YANG相关的讨论更加清晰。

This document describes a set of concepts and associated terms to support consistent classification of YANG modules.

本文档描述了一组概念和相关术语,以支持模块的一致分类。

Status of This Memo

关于下段备忘

This document is not an Internet Standards Track specification; it is published for informational purposes.

本文件不是互联网标准跟踪规范;它是为了提供信息而发布的。

This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Not all documents approved by the IESG are a candidate for any level of Internet Standard; see Section 2 of RFC 7841.

本文件是互联网工程任务组(IETF)的产品。它代表了IETF社区的共识。它已经接受了公众审查,并已被互联网工程指导小组(IESG)批准出版。并非IESG批准的所有文件都适用于任何级别的互联网标准;见RFC 7841第2节。

Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at http://www.rfc-editor.org/info/rfc8199.

有关本文件当前状态、任何勘误表以及如何提供反馈的信息,请访问http://www.rfc-editor.org/info/rfc8199.

Copyright Notice

版权公告

Copyright (c) 2017 IETF Trust and the persons identified as the document authors. All rights reserved.

版权所有(c)2017 IETF信托基金和确定为文件作者的人员。版权所有。

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 the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.

本文件受BCP 78和IETF信托有关IETF文件的法律规定的约束(http://trustee.ietf.org/license-info)自本文件出版之日起生效。请仔细阅读这些文件,因为它们描述了您对本文件的权利和限制。从本文件中提取的代码组件必须包括信托法律条款第4.e节中所述的简化BSD许可证文本,并提供简化BSD许可证中所述的无担保。

Table of Contents

目录

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
     1.1.  Terminology . . . . . . . . . . . . . . . . . . . . . . .   4
   2.  First Dimension: YANG Module Abstraction Layers . . . . . . .   4
     2.1.  Network Service YANG Modules  . . . . . . . . . . . . . .   6
     2.2.  Network Element YANG Modules  . . . . . . . . . . . . . .   7
   3.  Second Dimension: YANG Module Origin Types  . . . . . . . . .   7
     3.1.  Standard YANG Modules . . . . . . . . . . . . . . . . . .   8
     3.2.  Vendor-Specific YANG Modules and Extensions . . . . . . .   8
     3.3.  User-Specific YANG Modules and Extensions . . . . . . . .   9
   4.  Security Considerations . . . . . . . . . . . . . . . . . . .   9
   5.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   9
   6.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  10
     6.1.  Normative References  . . . . . . . . . . . . . . . . . .  10
     6.2.  Informative References  . . . . . . . . . . . . . . . . .  10
   Acknowledgements  . . . . . . . . . . . . . . . . . . . . . . . .  11
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  11
        
   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
     1.1.  Terminology . . . . . . . . . . . . . . . . . . . . . . .   4
   2.  First Dimension: YANG Module Abstraction Layers . . . . . . .   4
     2.1.  Network Service YANG Modules  . . . . . . . . . . . . . .   6
     2.2.  Network Element YANG Modules  . . . . . . . . . . . . . .   7
   3.  Second Dimension: YANG Module Origin Types  . . . . . . . . .   7
     3.1.  Standard YANG Modules . . . . . . . . . . . . . . . . . .   8
     3.2.  Vendor-Specific YANG Modules and Extensions . . . . . . .   8
     3.3.  User-Specific YANG Modules and Extensions . . . . . . . .   9
   4.  Security Considerations . . . . . . . . . . . . . . . . . . .   9
   5.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   9
   6.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  10
     6.1.  Normative References  . . . . . . . . . . . . . . . . . .  10
     6.2.  Informative References  . . . . . . . . . . . . . . . . .  10
   Acknowledgements  . . . . . . . . . . . . . . . . . . . . . . . .  11
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  11
        
1. Introduction
1. 介绍

The Internet Engineering Steering Group (IESG) has been actively encouraging IETF working groups to use the YANG data modeling language [RFC7950] and the Network Configuration Protocol (NETCONF) [RFC6241] for configuration management purposes, especially in new working group charters [IESG-Statement].

互联网工程指导小组(IESG)一直积极鼓励IETF工作组使用YANG数据建模语言[RFC7950]和网络配置协议(NETCONF)[RFC6241]进行配置管理,特别是在新的工作组章程[IESG声明]中。

YANG is also gaining wide acceptance as the de facto standard data modeling language in the broader industry. This extends beyond the IETF to include many SDOs, industry consortia, ad hoc groups, open-source projects, vendors, and end users.

作为更广泛行业中事实上的标准数据建模语言,YANG也获得了广泛认可。这超出了IETF,包括许多SDO、行业联盟、特设小组、开源项目、供应商和最终用户。

There are currently no clear guidelines on how to classify the layering of YANG modules according to abstraction or how to classify modules along the continuum spanning formal standards publications, vendor-specific modules, and modules provided by end users.

目前还没有明确的指南来说明如何根据抽象对模块分层进行分类,或者如何沿着跨越正式标准出版物、供应商特定模块和最终用户提供的模块的连续统一体对模块进行分类。

This document presents a set of concepts and terms to form a useful taxonomy for consistent classification of YANG modules in two dimensions:

本文件提供了一组概念和术语,以形成有用的分类法,用于在两个维度上对YANG模块进行一致分类:

o The layering of modules based on their abstraction levels

o 基于抽象级别的模块分层

o The module origin type based on the nature and intent of the content

o 基于内容的性质和意图的模块源类型

The intent of this document is to provide a taxonomy to simplify human communication around YANG modules. While the classification boundaries are at times blurry, this document should provide a robust starting point as the YANG community gains further experience with designing and deploying modules. To be more explicit, it is expected that the classification criteria will change over time.

本文档旨在提供一种分类法,以简化模块周围的人类通信。虽然分类边界有时很模糊,但随着YANG社区在设计和部署模块方面获得更多经验,本文档应提供一个可靠的起点。更明确地说,预计分类标准将随着时间的推移而变化。

A number of modules, for example, modules concerned with topologies, created substantial discussion during the development of this document. Topology modules are useful both on the network element level (e.g., link-state database content) and on the network service level (e.g., network-wide, configured topologies). In the end, it is the module developer that classifies the module according to the initial intent of the module content.

许多模块,例如与拓扑有关的模块,在本文档的开发过程中进行了大量讨论。拓扑模块在网元级别(例如,链路状态数据库内容)和网络服务级别(例如,网络范围、配置的拓扑)上都很有用。最后,模块开发人员根据模块内容的初始意图对模块进行分类。

This document should provide benefits to multiple audiences:

本文件应为多个受众提供好处:

o First, a common taxonomy helps with discussions among SDOs and industry consortia; the goals of such discussions are determined by the respective areas of work.

o 首先,通用分类法有助于SDO和行业联盟之间的讨论;这些讨论的目标由各自的工作领域决定。

o Second, operators might look at the YANG module abstraction layers to understand which Network Service YANG Modules and Network Element YANG Modules are available for their service composition. It is difficult to determine the module type without inspecting the YANG module itself. The YANG module name might provide some useful information but is not a definite answer. For example, a Layer 2 Virtual Private Network (L2VPN) YANG module might be a Network Service YANG Module, ready to be used as a service model by a network operator. Alternatively, it might be a Network Element YANG Module that contains the L2VPN data definitions required to be configured on a single device.

o 其次,运营商可以查看YANG模块抽象层,以了解哪些网络服务YANG模块和网络元素YANG模块可用于其服务组合。在不检查模块本身的情况下,很难确定模块类型。YANG模块名称可能提供一些有用的信息,但不是一个明确的答案。例如,第2层虚拟专用网(L2VPN)YANG模块可能是网络服务YANG模块,可供网络运营商用作服务模型。或者,它可能是包含需要在单个设备上配置的L2VPN数据定义的网元模块。

o Third, this taxonomy will help equipment vendors (whether physical or virtual), controller vendors, and orchestrator vendors to explain to their customers the relationship between the different YANG modules they support in their products.

o 第三,这种分类法将帮助设备供应商(无论是物理的还是虚拟的)、控制器供应商和编排器供应商向客户解释他们在产品中支持的不同模块之间的关系。

1.1. Terminology
1.1. 术语

[RFC7950] specifies:

[RFC7950]指定:

o data model: A data model describes how data is represented and accessed.

o 数据模型:数据模型描述如何表示和访问数据。

o module: A YANG module defines hierarchies of schema nodes. With its definitions and the definitions it imports or includes from elsewhere, a module is self-contained and "compilable".

o 模块:模块定义模式节点的层次结构。通过定义以及从其他地方导入或包含的定义,模块是自包含的且“可编译的”。

2. First Dimension: YANG Module Abstraction Layers
2. 第一维度:模块抽象层

Module developers have taken two approaches to developing YANG modules: top-down and bottom-up. The top-down approach starts with high-level abstractions modeling business or customer requirements and maps them to specific networking technologies. The bottom-up approach starts with fundamental networking technologies and maps them into more abstract constructs.

模块开发人员采用了两种方法来开发模块:自顶向下和自底向上。自上而下的方法从高层抽象开始,对业务或客户需求进行建模,并将其映射到特定的网络技术。自下而上的方法从基本的网络技术开始,并将它们映射到更抽象的结构中。

There are currently no specific requirements or well-defined best practices for the development of YANG modules. This document considers both bottom-up and top-down approaches as they are both used and they each provide benefits that appeal to different groups.

目前对于模块的开发没有具体的要求或定义良好的最佳实践。本文件考虑了自下而上和自上而下的方法,因为它们都被使用,并且它们都提供了吸引不同群体的好处。

For layering purposes, this document suggests the classification of YANG modules into two distinct abstraction layers:

出于分层目的,本文件建议将YANG模块分为两个不同的抽象层:

o Network Element YANG Modules describe the configuration, state data, operations, and notifications of specific device-centric technologies or features.

o 网元模块描述特定以设备为中心的技术或功能的配置、状态数据、操作和通知。

o Network Service YANG Modules describe the configuration, state data, operations, and notifications of abstract representations of services implemented on one or multiple network elements.

o 网络服务模块描述在一个或多个网络元素上实现的服务的抽象表示的配置、状态数据、操作和通知。

                        +--------------------------+
                        |  Operations and Business |
                        |      Support Systems     |
                        |      (OSSs and BSSs)     |
                        +--------------------------+
        
                        +--------------------------+
                        |  Operations and Business |
                        |      Support Systems     |
                        |      (OSSs and BSSs)     |
                        +--------------------------+
        
        - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        Network Service YANG Modules
        
        - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        Network Service YANG Modules
        
             +------------+      +-------------+      +-------------+
             |            |      |             |      |             |
             |  - L2VPN   |      |   - L2VPN   |      |    L3VPN    |
             |  - VPWS    |      |   - VPLS    |      |             |
             |            |      |             |      |             |
             +------------+      +-------------+      +-------------+
        
             +------------+      +-------------+      +-------------+
             |            |      |             |      |             |
             |  - L2VPN   |      |   - L2VPN   |      |    L3VPN    |
             |  - VPWS    |      |   - VPLS    |      |             |
             |            |      |             |      |             |
             +------------+      +-------------+      +-------------+
        
        - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        Network Element YANG Modules
        
        - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        Network Element YANG Modules
        
        +------------+  +------------+  +-------------+  +------------+
        |            |  |            |  |             |  |            |
        |    MPLS    |  |    BGP     |  | IPv4 / IPv6 |  |  Ethernet  |
        |            |  |            |  |             |  |            |
        +------------+  +------------+  +-------------+  +------------+
        
        +------------+  +------------+  +-------------+  +------------+
        |            |  |            |  |             |  |            |
        |    MPLS    |  |    BGP     |  | IPv4 / IPv6 |  |  Ethernet  |
        |            |  |            |  |             |  |            |
        +------------+  +------------+  +-------------+  +------------+
        

L2VPN: Layer 2 Virtual Private Network L3VPN: Layer 3 Virtual Private Network VPWS: Virtual Private Wire Service VPLS: Virtual Private LAN Service

L2VPN:第二层虚拟专用网L3VPN:第三层虚拟专用网VPWS:虚拟专用线服务VPLS:虚拟专用局域网服务

Figure 1: YANG Module Abstraction Layers

图1:模块抽象层

Figure 1 illustrates the application of YANG modules at different layers of abstraction. Layering of modules allows for reusability of existing lower-layer modules by higher-level modules while limiting duplication of features across layers.

图1展示了YANG模块在不同抽象层上的应用。模块分层允许高层模块重用现有的底层模块,同时限制跨层复制功能。

For module developers, per-layer modeling allows for separation of concern across editing teams focusing on specific areas.

对于模块开发人员来说,每层建模允许跨专注于特定领域的编辑团队分离关注点。

As an example, experience from the IETF shows that creating useful Network Element YANG Modules (e.g., for routing or switching protocols) requires teams that include developers with experience implementing those protocols.

例如,IETF的经验表明,创建有用的网元模块(例如,用于路由或交换协议)需要团队包括具有实施这些协议经验的开发人员。

On the other hand, Network Service YANG Modules are best developed by network operators experienced in defining network services for consumption by programmers, e.g., those developing flow-through provisioning systems or self-service portals.

另一方面,网络服务模块最好由网络运营商开发,这些运营商在定义供程序员使用的网络服务方面经验丰富,例如开发直通式供应系统或自助门户的运营商。

2.1. Network Service YANG Modules
2.1. 网络服务模块

Network Service YANG Modules describe the characteristics of a service, as agreed upon with consumers of that service. That is, a service module does not expose the detailed configuration parameters of all participating network elements and features but describes an abstract model that allows instances of the service to be decomposed into instance data according to the Network Element YANG Modules of the participating network elements. The service-to-element decomposition is a separate process; the details depend on how the network operator chooses to realize the service. For the purpose of this document, the term "orchestrator" is used to describe a system implementing such a process.

网络服务模块描述服务的特征,与该服务的消费者达成一致。即,服务模块不公开所有参与网元和特征的详细配置参数,而是描述一个抽象模型,该抽象模型允许根据参与网元的网元模块将服务实例分解为实例数据。服务到元素分解是一个独立的过程;细节取决于网络运营商如何选择实现服务。在本文档中,术语“orchestrator”用于描述实现此类流程的系统。

External systems can be provisioning systems, service orchestrators, Operations Support Systems, Business Support Systems, and applications exposed to network service consumers (either internal network operations people or external customers). These modules are commonly designed, developed, and deployed by network infrastructure teams.

外部系统可以是供应系统、服务编排器、操作支持系统、业务支持系统,以及向网络服务使用者(内部网络操作人员或外部客户)公开的应用程序。这些模块通常由网络基础设施团队设计、开发和部署。

YANG allows for different design patterns to describe network services, ranging from monolithic to component-based approaches.

YANG允许不同的设计模式来描述网络服务,从单片到基于组件的方法。

The monolithic approach captures the entire service in a single module and does not put focus on reusability of internal data definitions and groupings. The monolithic approach has the advantages of single-purpose development, including development speed at the expense of reusability.

单片方法在单个模块中捕获整个服务,不关注内部数据定义和分组的可重用性。单片方法具有单一目的开发的优点,包括以牺牲可重用性为代价的开发速度。

The component-based approach captures device-centric features (e.g., VPN Routing and Forwarding (VRF), routing protocols, or packet filtering) in a vendor-independent manner. The components are designed for reuse across many service modules. The set of components required for a specific service is then composed into the higher-level service. The component-based approach has the advantages of modular development, including a higher degree of reusability at the expense of initial development speed.

基于组件的方法以独立于供应商的方式捕获以设备为中心的功能(例如,VPN路由和转发(VRF)、路由协议或数据包过滤)。这些组件是为跨多个服务模块重用而设计的。然后将特定服务所需的组件集组合到更高级别的服务中。基于组件的方法具有模块化开发的优点,包括以牺牲初始开发速度为代价的更高程度的可重用性。

As an example, an L2VPN service can be built on many different types of transport network technologies, including, e.g., MPLS or Carrier Ethernet. A component-based approach would allow for reuse of User-Network Interface (UNI) definitions, such as the MEF UNI interface or

例如,L2VPN服务可以构建在许多不同类型的传输网络技术上,包括例如MPLS或载波以太网。基于组件的方法将允许重用用户网络接口(UNI)定义,例如MEF UNI接口或

MPLS interface, independent of the underlying transport network. The monolithic approach would assume a specific set of transport technologies and interface definitions.

MPLS接口,独立于底层传输网络。整体方法将假定一组特定的传输技术和接口定义。

An example of a Network Service YANG Module is in [RFC8049]. It provides an abstract model for Layer 3 IP VPN service configuration. This module includes the concept of a 'site-network-access' to represent bearer and connection parameters. An orchestrator receives operations on service instances according to the service module and decomposes the data into configuration data according to specific Network Element YANG Modules to configure the participating network elements to the service. In the case of the L3VPN module, this would include translating the 'site-network-access' parameters to the appropriate parameters in the Network Element YANG Module implemented on the constituent elements.

[RFC8049]中有一个网络服务模块示例。它为第三层IP VPN服务配置提供了一个抽象模型。该模块包括“站点网络访问”的概念,以表示承载和连接参数。编排器根据服务模块接收对服务实例的操作,并根据特定网元模块将数据分解为配置数据,以将参与的网元配置到服务。对于L3VPN模块,这将包括将“站点网络访问”参数转换为在组成元素上实现的网元模块中的适当参数。

2.2. Network Element YANG Modules
2.2. 网元模块

Network Element YANG Modules describe the characteristics of a network device as defined by the vendor of that device. The modules are commonly structured around features of the device, e.g., interface configuration [RFC7223], OSPF configuration [OSPF-YANG], and access control list (ACL) configuration [ACL-YANG].

网元模块描述由设备供应商定义的网络设备的特性。这些模块通常围绕设备的功能进行构造,例如,接口配置[RFC7223]、OSPF配置[OSPF-YANG]和访问控制列表(ACL)配置[ACL-YANG]。

The Network Element YANG Module provides a coherent data model representation of the software environment consisting of the operating system and applications running on the device. The decomposition, ordering, and execution of changes to the operating system and application configuration is the task of the agent that implements the module.

网元模块提供软件环境的一致数据模型表示,该软件环境由设备上运行的操作系统和应用程序组成。对操作系统和应用程序配置的更改进行分解、排序和执行是实现该模块的代理的任务。

3. Second Dimension: YANG Module Origin Types
3. 第二维度:阳模原点类型

This document suggests classifying YANG module origin types as Standard YANG Modules, Vendor-Specific YANG Modules and Extensions, or User-Specific YANG Modules and Extensions.

本文件建议将YANG模块源类型分类为标准YANG模块、供应商特定的YANG模块和扩展,或用户特定的YANG模块和扩展。

The suggested classification applies to both Network Element YANG Modules and Network Service YANG Modules.

建议的分类适用于网元YANG模块和网络服务YANG模块。

It is to be expected that real-world implementations of both Network Service YANG Modules and Network Element YANG Modules will include a mix of all three module origin types.

可以预期,网络服务模块和网元模块的实际实现将包括所有三种模块源类型的混合。

Figure 2 illustrates the relationship between the three types of modules.

图2说明了三种类型的模块之间的关系。

  +--------------+
  |     User     |
  |   Extensions |
  +------+-------+
      Augments
  +------+-------+  +--------------+  +--------------+
  |   Vendor     |  |     User     |  |     User     |
  |  Extensions  |  |  Extensions  |  |  Extensions  |
  +------+-------+  +------+-------+  +------+-------+
      Augments          Augments          Augments
  +------+-----------------+-------+  +------+-------+  +--------------+
  |            Standard            |  |    Vendor    |  |    User      |
  |            Modules             |  |    Modules   |  |   Modules    |
  +--------------------------------+  +--------------+  +--------------+
        
  +--------------+
  |     User     |
  |   Extensions |
  +------+-------+
      Augments
  +------+-------+  +--------------+  +--------------+
  |   Vendor     |  |     User     |  |     User     |
  |  Extensions  |  |  Extensions  |  |  Extensions  |
  +------+-------+  +------+-------+  +------+-------+
      Augments          Augments          Augments
  +------+-----------------+-------+  +------+-------+  +--------------+
  |            Standard            |  |    Vendor    |  |    User      |
  |            Modules             |  |    Modules   |  |   Modules    |
  +--------------------------------+  +--------------+  +--------------+
        

Figure 2: YANG Module Origin Types

图2:YANG模块原点类型

3.1. Standard YANG Modules
3.1. 标准杨氏模

Standard YANG Modules are published by SDOs. Most SDOs create specifications according to a formal process in order to produce a standard that is useful for their constituencies.

标准模块由SDO发布。大多数SDO根据正式流程创建规范,以生成对其用户有用的标准。

The lifecycles of these modules are driven by the editing cycles of the specifications and not tied to a specific implementation.

这些模块的生命周期由规范的编辑周期驱动,而不是与特定的实现绑定。

Examples of SDOs in the networking industry are the IETF and the IEEE.

网络行业中的SDO示例有IETF和IEEE。

3.2. Vendor-Specific YANG Modules and Extensions
3.2. 特定于供应商的模块和扩展

Vendor-Specific YANG Modules are developed by organizations with the intent to support a specific set of implementations under control of that organization, for example, vendors of virtual or physical equipment, industry consortia, and open-source projects. The intent of these modules ranges from providing openly published YANG modules that may eventually be contributed back to or adopted by an SDO to strictly internal YANG modules not intended for external consumption.

特定于供应商的模块由组织开发,旨在支持该组织控制下的一组特定实现,例如,虚拟或物理设备供应商、行业联盟和开源项目。这些模块的目的包括提供公开发布的YANG模块,这些模块最终可能被SDO贡献或采用,以及严格的内部YANG模块,不用于外部消费。

The lifecycles of these modules are generally aligned with the release cycles of the product or open-source software project deliverables.

这些模块的生命周期通常与产品或开源软件项目交付物的发布周期一致。

It is worth noting that there is an increasing amount of interaction between open-source projects and SDOs in the networking industry. This includes open-source projects implementing published standards as well as open-source projects contributing content to SDO processes.

值得注意的是,在网络行业中,开源项目和SDO之间的交互越来越多。这包括实施已发布标准的开源项目,以及为SDO流程提供内容的开源项目。

Vendors also develop vendor-specific extensions to standard modules using YANG constructs for extending data definitions of previously published modules. This is done using the 'augment' statement that allows locally defined data trees to be added into locations in externally defined data trees.

供应商还使用YANG构造来扩展以前发布的模块的数据定义,为标准模块开发特定于供应商的扩展。这是使用“augment”语句完成的,该语句允许将本地定义的数据树添加到外部定义的数据树中的位置。

Vendors use this to extend standard modules to cover the full scope of features in implementations, which commonly is broader than that covered by the standard module.

供应商使用它来扩展标准模块,以涵盖实现中的全部功能,这通常比标准模块所涵盖的范围更广。

3.3. User-Specific YANG Modules and Extensions
3.3. 用户特定模块和扩展

User-Specific YANG Modules are developed by organizations that operate YANG-based infrastructure including devices and orchestrators, for example, network administrators in enterprises or at service providers. The intent of these modules is to express the specific needs for a certain implementation, above and beyond what is provided by vendors.

特定于用户的YANG模块由运行基于YANG的基础设施的组织开发,包括设备和协调器,例如企业或服务提供商的网络管理员。这些模块的目的是表达特定实现的特定需求,超出供应商提供的范围。

This module type obviously requires the infrastructure to support the introduction of user-provided modules and extensions. This would include the ability to describe the service-to-network decomposition in orchestrators and the module-to-configuration decomposition in devices.

这种模块类型显然需要基础设施来支持引入用户提供的模块和扩展。这将包括在编排器中描述服务到网络分解的能力,以及在设备中描述模块到配置分解的能力。

The lifecycles of these modules are generally aligned with the change cadence of the infrastructure.

这些模块的生命周期通常与基础设施的变化节奏保持一致。

4. Security Considerations
4. 安全考虑

This document doesn't have any Security Considerations.

此文档没有任何安全注意事项。

5. IANA Considerations
5. IANA考虑

This document does not require any IANA actions.

本文件不要求IANA采取任何行动。

6. References
6. 工具书类
6.1. Normative References
6.1. 规范性引用文件

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

[RFC6241]Enns,R.,Ed.,Bjorklund,M.,Ed.,Schoenwaeld,J.,Ed.,和A.Bierman,Ed.,“网络配置协议(NETCONF)”,RFC 6241,DOI 10.17487/RFC6241,2011年6月<http://www.rfc-editor.org/info/rfc6241>.

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

[RFC7223]Bjorklund,M.,“用于接口管理的YANG数据模型”,RFC 7223,DOI 10.17487/RFC7223,2014年5月<http://www.rfc-editor.org/info/rfc7223>.

[RFC7950] Bjorklund, M., Ed., "The YANG 1.1 Data Modeling Language", RFC 7950, DOI 10.17487/RFC7950, August 2016, <http://www.rfc-editor.org/info/rfc7950>.

[RFC7950]Bjorklund,M.,Ed.“YANG 1.1数据建模语言”,RFC 7950,DOI 10.17487/RFC7950,2016年8月<http://www.rfc-editor.org/info/rfc7950>.

[RFC8049] Litkowski, S., Tomotaki, L., and K. Ogaki, "YANG Data Model for L3VPN Service Delivery", RFC 8049, DOI 10.17487/RFC8049, February 2017, <http://www.rfc-editor.org/info/rfc8049>.

[RFC8049]Litkowski,S.,Tomotaki,L.,和K.Ogaki,“L3VPN服务交付的YANG数据模型”,RFC 8049,DOI 10.17487/RFC8049,2017年2月<http://www.rfc-editor.org/info/rfc8049>.

6.2. Informative References
6.2. 资料性引用

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

[ACL-YANG]Bogdanovic,D.,Jethanandani,M.,Huang,L.,Agarwal,S.,和D.Blair,“网络访问控制列表(ACL)YANG数据模型”,正在进行的工作,草稿-ietf-netmod-ACL-Model-112017年6月。

[IESG-Statement] "Writable MIB Module IESG Statement", <https://www.ietf.org/iesg/statement/ writable-mib-module.html>.

[IESG语句]“可写MIB模块IESG语句”<https://www.ietf.org/iesg/statement/ 可写mib模块.html>。

[OSPF-YANG] Yeung, D., Qu, Y., Zhang, Z., Chen, I., and A. Lindem, "Yang Data Model for OSPF Protocol", Work in Progress, draft-ietf-ospf-yang-08, July 2017.

[OSPF-YANG]杨,D.,曲,Y.,张,Z.,陈,I.,和A.林登,“OSPF协议的YANG数据模型”,正在进行的工作,草稿-ietf-OSPF-YANG-082017年7月。

Acknowledgements

致谢

Thanks to David Ball and Jonathan Hansford for feedback and suggestions.

感谢David Ball和Jonathan Hansford的反馈和建议。

Authors' Addresses

作者地址

Dean Bogdanovic Volta Networks, Inc.

迪安·博格达诺维奇·沃尔塔网络公司。

   Email: dean@voltanet.io
        
   Email: dean@voltanet.io
        

Benoit Claise Cisco Systems, Inc. De Kleetlaan 6a b1 1831 Diegem Belgium

Benoit Claise Cisco Systems,Inc.De Kleetlaan 6a b1 1831 Diegem比利时

   Phone: +32 2 704 5622
   Email: bclaise@cisco.com
        
   Phone: +32 2 704 5622
   Email: bclaise@cisco.com
        

Carl Moberg Cisco Systems, Inc.

卡尔·莫伯格思科系统公司。

   Email: camoberg@cisco.com
        
   Email: camoberg@cisco.com