思科IOS-XE的NETCONF网络管理协议
首先,咱们从协议和数据编码语言开始讲起,有多种方式来配置网络设备,常见的实施方式有:linux
CLI(你们熟悉的命令行),该实施方案因为是基于“字符串”的方式,因此易于“人类”来阅读,但相对而言可视化程度偏低,另一个问题是计算机语言很难分析这些命令
2.NETCONF(升级版的SNMP-简单网络管理协议,本质在于SNMP并非面向配置的协议),不一样于CLI,它使用XML的方式来构造数据结构,从而更加容易分析和处理。网络管理员能够利用这套机制在网管上增长、修改、删除网络设备的配置,获取网络设备的配置和状态信息。网络设备提供了规范的应用程序编程接口API(Application Programming Interface),网管能够经过NETCONF使用这些API管理网络设备。编程
REST API(各厂商私有的配置方式)windows
2大类编码语言:JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式)和XML(基于可扩展标记语言XML(Extensible Markup Language))网络
思科开发了一个yang-explorer软件,能够用于查询网络设备管理节点的内容(安装在linux系统下,并不支持windows系统,可是能够在windows系统下使用yang-explorer)。关于YANG,它是一种支持NETCONF协议数据模块的一个数据模块语言,针对NETCONF的请求和相应,YANG会提供一个定义对象和数据的方式。下图是一个典型的YANG的XML例子数据结构