SNMP is currently the most popular management protocol and this is for good reason. But how does SNMP compares with other protocols, and why would somebody choose to use SNMP? Are there any cases where other protocols should be used or are being used?

These are questions that most of us ask from time to time. This is why I will try to answer them now, based on my 20+ years experience in Element, Network and Service Management. Note that despite my experience, this article should be used as food for thought, so if you disagree with something included here, please leave a comment which I will surely read and reply.

Now, this article will focus on the characteristics and benefits of each protocol, their adoption by the industry, the current trends and will recommend a set of protocols for network elements. The paragraphs are:

[accordion]
Overview gives a short history of management protocols, explains how SNMP is rarely used to configure devices and how that lead to the introduction of NetConf. It also discusses CISCOs innovations for Performance data collection with Netflow.
Describes  the current options available:

    • SNMP, giving a quick summary of SNMP three versions and discusses security
    • CLI, describing CLI usage
    • NetConf, giving a quick summary of protocols characteristics
    • Netflow/IPFIX, giving a quick summary of CISCOs and ITF protocols characteristics
Recommendation gives the authors opinion about the best fit for every protocol, based on industry adoption, trends, and personal experience.
[/fusion_accordion] Read below for more.

Overview

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, i.e. Fault and Performance Management.

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 the NetConf protocol which is expected to be better aligned with the needs of network operators and equipment vendors.

Regarding Performance Management on routers/switches for IP, CISCO soon realized that a more compact protocol than SNMP was needed to scale better for performance collection on IP networks.  Netflow originally introduced by CISCO has become a standard now (named IPfix) that has been implemented by many routers/switches Vendors.

 

Management Protocols

Recommendation

Monitoring

Use SNMP for monitoring (alarms, performance). Alarms and events reception via SNMP traps, while performance collection via SNMP get or multi-get. For traffic-intensive devices, such as routers and switches, check the manufacturers documentation to see if performance-specific protocols such as Netflow are supported.

Configuration

Try to use SNMP for configuration (provisioning, setup) if SNMP is well documented. Otherwise try manufacturers proprietary protocols and interfaces, they may be more efficient.

Image copyright: HP

Do you agree with the above? Use the comment box below to give me your opinion!