NETCONF

NETCONF

The Network Configuration Protocol, NETCONF, is an IETF network management protocol. It was developed in the NETCONF working group and published in December 2006 as RFC 4741 and later revised in June 2011 and published as RFC 6241.

NETCONF provides mechanisms to install, manipulate, and delete the configuration of network devices. Its operations are realized on top of a simple Remote Procedure Call (RPC) layer. The NETCONF protocol uses an Extensible Markup Language (XML) based data encoding for the configuration data as well as the protocol messages. This in turn is realized on top of the transport protocol.

The NETCONF protocol can be conceptually partitioned into four layers:

       Layer                            Example
   +-------------+      +-------------------------------------------+
   |   Content   |      |     Configuration data                    |
   +-------------+      +-------------------------------------------+
             |                           |
   +-------------+      +-------------------------------------------+
   | Operations  |      |<get-config>, <edit-config>, <notification>|
   +-------------+      +-------------------------------------------+
             |                           |                    |
   +-------------+      +-----------------------------+       |
   |     RPC     |      |    <rpc>, <rpc-reply>       |       |
   +-------------+      +-----------------------------+       |
             |                           |                    |
   +-------------+      +-------------------------------------------+
   |  Transport  |      |   BEEP, SSH, SSL, console                 |
   |  Protocol   |      |                                           |
   +-------------+      +-------------------------------------------+

Contents

Operations

Basic Operations

The base protocol includes the following protocol operations: <get>, <get-config>, <edit-config>, <copy-config>, <delete-config>, <lock>, <unlock>, <close-session>, <kill-session>.

Capabilities

Basic NETCONF functionality can be extended by the definition of NETCONF capabilities. The set of additional protocol features that an implementation supports is communicated between the server and the client during the capability exchange portion of session setup. Mandatory protocol features are not included in the capability exchange since they are assumed. RFC 4741 defines a number of optional capabilities including :xpath and :validate. Note that RFC 6241 obsoletes RFC 4741.

A capability to support subscribing and receiving asynchronous event notifications is published in RFC 5277. It defines the <create-subscription> operation, which enables creating real-time and replay subscriptions. Notifications are then sent asynchronously using the <notification> construct. The RFC also defines the :interleave capability, which when supported with the basic :notification capability facilitates the processing of other NETCONF operations while the subscription is active.

A capability to support partial locking of the running configuration is defined in RFC 5717. This allows multiple sessions to edit non-overlapping sub-trees within the running configuration. Without this capability, the only lock available is for the entire configuration.


The working group is also working on a new capability to retrieve the schema definitions (XML Schema, Relax NG, etc.) that define NETCONF content.

Transport Protocols

NETCONF defines four transport mappings

Content

The content of NETCONF operations is well-formed XML. Most content is related to network management.

The NETMOD working group has completed work to define a "human-friendly" modeling language for defining the semantics of operational data, configuration data, notifications, and operations, called YANG. YANG is defined in RFC 6020, and is accompanied by the "Common YANG Data Types" found in RFC 6021.

During the summer of 2010, the NETMOD working group was re-chartered to work on core configuration models (system, interface, and routing) as well as work on compatibility with the SNMP modeling language.

History

The IETF developed SNMP in the late 1980s and it proved to be a very popular network management protocol. In the early part of the 21st century it became apparent that in spite of what was originally intended, SNMP was not being used to configure network equipment, but was mainly being used for network monitoring. In 2002, the Internet Architecture Board and key members of the IETF's network management community got together with network operators to discuss the situation. The results of this meeting are documented in RFC 3535. It turned out that operators were primarily using proprietary Command Line Interfaces (CLI) to configure their boxes. This had a number of features that the operators liked, including the fact that it was text-based, as opposed to the BER-encoded SNMP. In addition, many equipment vendors did not provide the option to completely configure their devices via SNMP. As operators generally liked to write scripts to help manage their boxes, they did find the CLI lacking in a number of ways. Most notably was the unpredictable nature of the output. The content and formatting of output was prone to change in unpredictable ways.

Around this same time, Juniper Networks had been using an XML-based network management approach. This was brought to the IETF and shared with the broader community.

Collectively, these two events led the IETF to the creation of a protocol which it hopes will better align with the needs of network operators and equipment vendors.

See also

External links


Wikimedia Foundation. 2010.

Игры ⚽ Поможем решить контрольную работу

Look at other dictionaries:

  • Netconf — is a network management protocol developed in the IETF by the Netconf working group. It was published as RFC 4741.The NETCONF protocol provides mechanisms to install, manipulate, and delete the configuration of network devices. It also can… …   Wikipedia

  • NETCONF — Сетевой протокол конфигурации, NETCONF, является протоколом сетевого управления устройствами. Он был разработан в рамках рабочей группы NETCONF и впервые опубликован в RFC 4741, который был переработан в RFC 6241 в июне 2011. NETCONF… …   Википедия

  • Martin Krafft — Infobox Scientist name = Martin Felix Krafft caption = Martin Krafft (photograph taken in 2004) birth date = 1979 02 14 birth place = Munich, Germany death date = death place = residence = Zurich, Switzerland nationality = German field = computer …   Wikipedia

  • Secure Shell — SSH im TCP/IP‑Protokollstapel: Anwendung SSH Transport TCP Internet IP (IPv4, IPv6) Netzzugang Ethernet Token …   Deutsch Wikipedia

  • OSI model — 7. Application layer NNTP  · SIP  · SSI  · DNS  · FTP  · Gopher  · …   Wikipedia

  • Configuration management — Top level Configuration Management Activity model Configuration management (CM) is a field of management that focuses on establishing and maintaining consistency of a system or product s performance and its functional and physical attributes with …   Wikipedia

  • Network architecture — is the design of a communications network. It is a framework for the specification of a network s physical components and their functional organization and configuration, its operational principles and procedures, as well as data formats used in… …   Wikipedia

  • Network management — refers to the activities, methods, procedures, and tools that pertain to the operation, administration, maintenance, and provisioning of networked systems.[1] Operation deals with keeping the network (and the services that the network provides)… …   Wikipedia

  • Application Layer — The Application Layer is the seventh level of the seven layer OSI model, and the top layer of the TCP/IP model. It interfaces directly to and performs common application services for the application processes; it also issues requests to the… …   Wikipedia

  • Syslog — is a standard for forwarding log messages in an IP network. The term syslog is often used for both the actual syslog protocol, as well as the application or library sendingsyslog messages .Syslog is a client/server protocol: the syslog sender… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”