Site icon Techplayon

What Is NETCONF? Why Do We Need It?

Introduction

NETCONF full-name is Network Configuration Protocol. It is a network management protocol which allow a NMS (Network Management System) to deliver, modify and delete configuration of connected n/w device i.e. router, eNodeB, gNodeB, DU, CU or RU. It is developed and standardized by the IETF and for O-RAN, it is looked after WG4 (Work Group#4).

NETCONF protocol is based on XML (Extensible Markup Language) based data encoding for configuration data and protocol messages. It works on server client concept and use RPC (Remote Procedure Call) mechanism to implement communication between server and client.

The client process runs on NMS which can be a script or an application  and the server is a typical network device.

NETCONF Key Pointer

Why we Need NETCONF

New emerging Cloud Network’s on key requirement is Network automation for fast and on-demand service provisioning and automatic Operations & Management. This requirement cannot be met using the traditional available methods like CLI and SNMP have. CLI and SNMP have following limitation which is taken care with NETCONF.

Disadvantages of CLI

Disadvantages of SNMP

How Does NETCONF Work?

A basic NETCONF system contains at least one NMS that manages network-wide devices as shown in  following figure. The NETCONF architecture consists of two roles: client and server.

A client provides the following functions:

A server maintains information about managed devices and responds to the client-initiated requests.

Establishing a NETCONF Session

The NETCONF client and server use the RPC mechanism to communicate with each other. The communication is allowed only after a secure and connection-oriented session is established between them. The client sends an RPC request to the server, and the server returns a reply to the client after processing the request.

The process of establishing and terminating a NETCONF session is as follows:

  1. A client establishes an SSH connection with a server, and then establishes a NETCONF session with the server after authentication and authorization are complete.
  2. The client and server send Hello messages to negotiate capabilities.
  3. The client sends one or more RPC requests to the server. The following lists some request examples:
    • Modify and commit the configuration.
    • Query the configuration data or status.
    • Perform maintenance operations on the device.
  4. The client terminates the NETCONF session.
  5. The SSH connection is terminated.

Protocol Framework for NETCONF

NETCONF protocol framework uses a hierarchical structure. Each layer encapsulates certain functions and provides services for its upper layer. This structure enables each layer to focus only on a single aspect of NETCONF and reduces the dependencies between layers. In this way, the internal implementation changes of one layer have minimum impact on other layers.

NETCONF can be conceptually partitioned into four layers, which are the Secure Transport, Messages, Operations, and Content layers from bottom to top.

NETCONF Message Format

The following figure shows the structure of a complete NETCONF YANG request message

NETCONF Communication Framework

The client-initiated RPC requests and the server-originated replies are both encoded in <rpc> and <rpc-reply> elements using XML. This request-reply framework is independent of transport layer protocols. The following lists some basic RPC elements:

NETCONF Configuration Database

A configuration database is a complete set of configuration parameters for a device. NETCONF defines the existence of one or more configuration database and allows configuration operations on them. Only the <running/> configuration database is available in the base model of NETCONF. Additional configuration databases can be defined by capabilities, and are available only on devices that support the capabilities.

NETCONF Operations and Capabilities

NETCONF provides a set of basic operations for managing device configurations and querying device configuration and status data. It also supports additional operations based on the capabilities advertised by a device.

Basic Operations of NETCONF

NETCONF base capability provides a set of operations to modify configurations in datastores and obtain information from datastores. The base capability provides only a small set of low-level operations as given in below table.

NETCONF Standard Capabilities

NETCONF defines a series of standard capabilities, which enhance the NETCONF functionality and strengthen the fault tolerance and scalability. This facilitates the implementation of the NETCONF-based open network management architecture, and provides an efficient method for vendors to develop new functions.

NETCONF Extended Capabilities

In addition to NETCONF-defined capabilities, vendors can customize capabilities to extend management functions.

Related Post

 

Exit mobile version