Management system overviewΒΆ

The management system is built on top of standards:

  • YANG is a data modeling language used to model configuration data, state data, Remote Procedure Calls (RPCs), and notifications for network management protocols. It is described in RFC 7950.

  • NETCONF provides mechanisms to install, manipulate, and delete the configuration of network devices. It uses an XML-based data encoding for the configuration data as well as the protocol messages. The NETCONF protocol operations are realized as RPCs. It is described in RFC 6241.

../../../_images/architecture1.svg

The management system in 6WINDGate is composed of several components:

  • YAMS is the main management daemon: it configures and monitors the system, and it answers to configuration and status requests. The features are organized as services, written in Python. The NETCONF API of these services are described in YANG format.

  • nc-cli is a NETCONF client that provides an interactive command line interface (CLI), automatically generated from YANG models. It is written in C.

  • Sysrepo is a YANG-based configuration and operational state data store. It notifies YAMS on configuration changes or operational state requests. It is written is C and is open-source. More information on sysrepo.org or on the Sysrepo github repository.

  • Netopeer is a NETCONF server. It communicates with Sysrepo to process the received requests. It is written is C and is open-source. More information on the Netopeer2 github repository.