YANG 1.1 数据建模语言详解

需积分: 50 23 下载量 42 浏览量 更新于2024-08-31 收藏 2.23MB PDF 举报
"YANG 1.1 数据建模语言.pdf" YANG是一种数据建模语言,主要用于网络配置和管理协议,如NETCONF。YANG 1.1是该语言的一个版本,它在YANG 1.0的基础上进行了改进和扩展,提供了更强大的功能和更精细的数据模型控制。 1. **介绍**:RFC6020的变化摘要介绍了YANG 1.1相对于1.0版的主要更新,包括新特性、修正和增强。 2. **关键词**:关键词通常包括YANG语言的关键概念,如“module”,“submodule”,“typedef”,“data model”等,用于描述语言的核心组成部分。 3. **术语**:定义了与YANG相关的专业术语,如“配置数据”(configuration data)、“状态数据”(state data)等,帮助理解文档内容。 4. **YANG概述**: - **功能概述**:YANG用于定义网络配置和管理数据的结构,支持数据的创建、读取、更新和删除操作。 - **语言概述**:包括模块和子模块的概念,它们是YANG数据模型的基本单元。数据建模基础涉及数据结构的定义,配置和状态数据区分了静态配置信息和动态运行时状态。内置类型如整型、字符串、布尔值等提供基本的数据类型。typedef允许创建自定义类型。分组用于复用数据结构。选择机制允许基于条件选择不同的数据结构。操作和通知定义了客户端和服务器之间的交互。 5. **语言概念**: - **模块和子模块**:描述了它们的组织方式、导入和包含其他模块的方式以及模块层次结构。 - **文件布局**:规定了YANG文件的结构和元素的排列。 - **XML名称空间**:YANG数据在XML中的表示,包括YANGXML命名空间的使用。 - **名称解析**:解释了如何解析分组、类型和标识名称。 - **一致性**:讨论了模块的合规性要求,包括基本行为、可选功能、偏差处理,以及在NETCONF中的一致性信息公布和模块实现。 6. **YANG语法**: - **词法标记**:定义了YANG源代码的构成部分,如注释、令牌和引用。 - **身份标识**:描述了YANG中的标识符及其在命名空间中的使用。 7. **YANG声明**:详细介绍了各种声明,如模块声明、子模块声明、typedef声明等,这些都是构建YANG数据模型的基础。 8. **约束**:定义了对数据模型的限制,包括数据约束和配置数据修改的规则,以及NETCONF环境下的约束执行模型。 9. **内置类型**:详述了YANG内置的类型系统,包括其规范表示和整数类型的细节。 YANG 1.1数据建模语言是网络管理和配置的重要工具,它通过精确的语法规则和强大的数据模型定义能力,使得网络设备和应用能够以标准化的方式交换和管理数据。