YANG语言PPT课件_第1页
YANG语言PPT课件_第2页
YANG语言PPT课件_第3页
YANG语言PPT课件_第4页
YANG语言PPT课件_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2021/3/91YANG语言nYANG是一种被用来为NETCONF协议建模的语言nYANG使用module和submodule进行数据建模nYANG定义了四种用于数据建模的节点类型2021/3/92数据建模节点之leaf nodesYANG示例:NETCONF XML示例:只有值,没有子节点Data tree中,有0个或1个leaf节点Leaf节点的默认值 Leaf的substatementXML映射规则NETCONF的操作使用实例2021/3/93数据建模节点之leaf nodes -Leaf的substatementl Type声明必须存在1. Type声明有一个YANG build-i

2、n类型或派生类型的参数l default声明,可选l mandatory声明,可选,参数为”true”或”false”返回2021/3/94数据建模节点之leaf nodes- -NETCONF的操作实例Leaf的YANG示例XML示例中设置leaf的值2021/3/95数据建模节点之leaf-list nodesYANG示例:NETCONF XML示例:值必须唯一默认值对leaf-list没有影响Leaf-list节点的排序 Leaf-list的substatement使用实例2021/3/96数据建模节点之leaf-list nodes -Leaf-list的substatementl M

3、in-elements声明,可选,leaf-list至少有多少项l Max-elements声明,可选l Ordered-by声明,可选,参数为”system”或”usr”返回2021/3/97数据建模节点之leaf-list nodes -NETCONF的操作实例XML示例Leaf-list的YANG示例使用中默认的 “merge”操作,添加一个元素2021/3/98数据建模节点之Container nodesYANG示例:NETCONF XML示例:Data tree中,只有子节点,没有值具有两种形式:presence和non-presenceContainer 的substatement

4、NETCONF的操作使用实例2021/3/99数据建模节点之container nodes -container的substatement返回l Must声明,可选2021/3/910数据建模节点之container nodes -container的substatement返回l Must声明,可选l presence声明,可选l Container子节点声明,可选2021/3/911数据建模节点之container nodes -container的使用实例YANG示例:XML示例:利用删除container节点2021/3/912数据建模节点之list nodesYANG示例:NETCO

5、NF XML示例:1 由key leafs (如果存在的话)唯一识别2 可以定义多个key leafs,包含多个子节点3 list的substatement4 NETCONF的操作使用实例下一节点2021/3/913数据建模节点之list nodes -list的substatement返回l key声明,list表示配置信息时,必须存在;否则可能存在。l List的子节点声明,可选l unique声明,可选,要求key leafs中的leaf都存在且唯一注意:多个key leafs之间用空格隔开,每个leaf标识符最多出现一次2021/3/914数据建模节点之list nodes -list

6、的substatement返回YANG示例:非法配置:2021/3/915数据建模节点之list nodes -NETCONF的的使用实例返回List的YANG示例:XML示例:创建一个新的usr:“barney”2021/3/916数据建模节点之list nodes -NETCONF的的使用实例返回List的YANG示例:2021/3/917Module示例下一节点2021/3/918State data下一节点configfalsetrueState data2021/3/919可重用节点组(grouping)下一节点YANG示例:NETCONF XML示例:1 可重新定义2 声明(sta

7、tement) 不是数据定义声明,不会定义任何节点,只是定义节点的集合 利用uses声明引用grouping,uses的作用就是将grouping中的节点复制到当前的schema tree中2021/3/920choices下一节点YANG示例:NETCONF XML示例:1 利用“choice”和“case”可以隔离不兼容的节点2 当某个元素在其中一个case中创建,所有其他case中的元素将被自动删除3 choice节点中出现在schema tree中,不会出现在data tree中4 statement2021/3/921Choices-statement下一节点l Case声明Case

8、的标识符用于标识case节点,不会出现在data tree中Case中的子节点标识符在所有cases中必须唯一Case分支中只有一个节点,case声明可以省略l default声明当任何case中的子节点不存在时,默认的case声明才有效Mandatory值为“true”时,不能出现default声明l mandatory声明Mandatory值为“true”时,case中,至少有一个节点存在2021/3/922扩展数据模型(augment)下一节点YANG示例:NETCONF XML示例:2021/3/923RPC定义下一节点YANG示例:NETCONF XML示例:1 input不带有标识

9、符2 input下leaf中的mandatory值为“true”时,leaf必须存在,否则server端会返回错误信息3 output类似2021/3/924Notification声明下一节点YANG示例:NETCONF XML示例:Notification下leaf中的mandatory值为“true”时,该leaf必须在netconf notification中存在2021/3/925l module定义了一种分层的配置树结构,一个module是自包含的(self-contained),可重用的。它可以使能NETCONF的所有功能,如配置操作(operation),RPC和异步通知(notification)。开发者可根据配置数据的语义来定义不同的modulel namespace用于唯一的标识module,等同于xml文件中的namespace。l container节点把相关的子节点组织在一起。l list节点可以有多个实例,每个实

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论