77范文网 - 专业文章范例文档资料分享平台

YANG模型介绍及语法

来源:网络收集 时间:2018-12-29 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

YANG 模型介绍及语法

YANG模型是什么?

YANG模型是一种数据建模语言,用来建模由NETCONF协议、NETCONF远端过程调用(RPCs)、和NETCONF通知(notification)操作的配置数据和状态数据。YANG建模NETCONF协议的操作和内容层(RFC4741,Section 1.1)。

YANG模型特性:

?建模XML格式数据并由控制器元素提供功能:具有自己的语法格式,可以无差地转化为XML格式,同时通过yangtools plugin可以生成相应的java接口、类及方法等,为OpenDaylight内部数据(控制器元素)处理编程提供了便利。 ?定义语义元素和他们的关系,模拟所有的元素作为一个系统,YANG模型是一种树形结构的建模语言,通过YANG模型本身的语法和语义关系可以看出其定义方式的灵活性。

?YANG数据模型的XML特性提供了一种自表述数据的方式,控制器元素和采用控制器北向接口API的应用可以以一种原生格式与数据模型一起调用。

?利用一种模式语言简化控制器元素和应用的开发。模块中提供功能的开发者可以定义一个模型,从而可以创建对于所提供功能的更简单的、数据类型的API。因此降低了通过服务抽象层提供的数据结构的错误交互。

YANG模型与NETCONF

由最初YANG模型的定义可知,YANG模型与NETCONF密切相关,其产生是为了对NETCONF协议所操作的数据进行建模。最初的网络管理协议SNMP也有对应的建模语言SMI。下图给出NETCONF/YANG与SNMP/SMI相关概念对比。

图1

如图中所示,NETCONF在很多方面体现出对于SNMP协议的优越性,NETCONF协议由XML编码,以SSH加密,采用TCP连接,体现出更好的安全性和可靠性。

下面简单引出NETCONF协议的configuration data store。 Pic

YANG模型通过树形结构的节点定义描述了数据模型的层级嵌套结构以及各属性的数据类型。YANG具有自己的语法格式,也可以无差别地转换为XML格式,称之为YIN。可以使用第三方工具pyang进行转换。pyang地址:

http://www.yang-central.org/twiki/pub/Main/YangTools/pyang.1.html

接下来将会对YANG模型的语法和语义进行描述,说明在YANG中数据模型是如何定义的,并且以XML格式展示,以及NETCONF操作如何来操作数据。(https://tools.ietf.org/html/rfc6020#section-1)

YANG模型语义及语法

YANG模型主要内容

图2

正如之前所提到的,除去header information、imports&includes、Type definitions之外,YANG模型的主要内容Configuration&Operational data declarations和Action(RPC)&Notification declarations对应了YANG模型定义中的“NETCONF协议、NETCONF远端过程调用(RPCs)、和NETCONF通知(notification)”。下面将通过基本示例来介绍以上所述主要内容。

YANG HEADER

图3

上图所示是一个YANG文件的HEADER,其中module name(vxlan)要与YANG文件的文件名一致(即这个YANG文件的名字为vxlan.yang),namespace用来唯一标识这个YANG模型与其他YANG模型不同,prefix作为namespace的一种简写,其次import用来定义导入的其他YANG模型,注意到在后面的大括号中包括这个YANG模型的prefix和revision-data。revision用来唯一定义这个YANG模型的revision。其余一些organization、contact、description定义仅用于描述。YANG模型是一个XML格式定义语言。另外,针对上图示例中没有体现的“include”来说,include是用于将sub-module引入到module里面,这个module不一定要有一个文件。Submodule没有namespace而是以belongs-to来表征属于哪一个main module.

YANG TYPES

Data Type

YANG模型的Data Type包括Base Type和Derived Type, Base Type即为一个简单的类型,Derived Type或许是typedefs定义的一个Base Type或许是grouping定义的具有结构的类型。接下来在Typedef Statement和Grouping Statement中将会进一步介绍Derived Type。Base Type

The leaf Statement

The leaf-list Statement

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库YANG模型介绍及语法在线全文阅读。

YANG模型介绍及语法.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/395678.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: