1. NETCONF简介
NETCONF协议是一种最新的基于XML的网络配置和管理协议。该协议提出了一整套对于网络设备的配置信息和状态信息进行管理的机制。
2. YANG模型和语言
YANG(Yet Another Next Generation )
YANG语法略
YANG文件举略
3. 网管的NETCONF接口中的 YANG
业务bean到xml字符流的转换:
Service Bean Object—(业务编码适配)—>YANG Bean Object—(只要调用YANG Bean Object接口)—>XML String Content
网管生成中间YANG Class的两条路线:
YANG文件—(com.tailf.jnc工具pyang)—> YANG Bean Class
YANG文件—(rosng工具)—> XSD文件—(Apach xmlbeans工具)—>YANG Bean Class
4. OpenDaylight中的 YANG
OpenDaylight 对YANG说明如下:
“MD-SALRESTCONF Northbound APIs
Yang models are used in the MD-SAL and in MD-SAL-based applications to define all APIs: inter-component APIs, plugin APIs, northbound APIs, etc. Yang models are used to generate Java APIs at compile time with OpenDaylight Yang Tools and to render REST APIs at run time according to the RESTCONF specification. Plugins designed for MD-SAL define yang models for their northbound REST APIs, which are then exposed to applications via an MD-SAL RESTCONF adapter.”
结合网管中的应用例子和OpenDaylight中的MD-SAL例子PingService https://wiki.opendaylight.org/view/Ping 可以知:
1、ODL中只是借用Yang模型和工具来定义全部的API:Componet之间、plugin、北向等API,使得这种接口和AD-SAL REST接口相比更抽象,符合模型驱动(MD)的思想。
2、Yang模型和工具就是实现XML字符信息和ODL内部Bean Object之间的转换,无论从可扩展性、耦合、开发效率上都有优势。
3、前期研究可以不关心这个,因为暂时可以用AD-SAL RESTAPI。