The idea
A network has hundreds of routers, switches and hosts. Logging in to each one to read its counters or change its settings does not scale. Network management gives operators a way to ask devices questions, change their settings and hear from them when something goes wrong, from one place.
This page covers the oldest standard way to do it, SNMP, and the vocabulary that the newer NETCONF approach in the next topic shares.
How it works
Definition and components
Network management is monitoring, testing, configuring and troubleshooting network components to meet a set of requirements.
The lecture’s components are:
- Managing server: an application, typically with network managers (humans) in the loop.
- Managed device: equipment with manageable, configurable hardware and software components.
- Data: the device state, made of configuration data, operational data and device statistics.
- Network management protocol: used by the managing server to query, configure and manage devices, and by devices to inform the managing server of data and events.
How it works
Operator approaches to management
The lecture gives three.
- CLI (command line interface): the operator issues commands, typed or scripted, directly to individual devices, for example via ssh.
- SNMP/MIB: the operator queries and sets device data (the MIB) using the Simple Network Management Protocol.
- NETCONF/YANG: more abstract, network-wide and holistic, with emphasis on multi-device configuration management. YANG is a data modelling language and NETCONF communicates YANG-compatible actions and data to, from and among remote devices.
How it works
SNMP
SNMP is an application layer protocol for managing devices in the Internet using the TCP/IP protocol suite.
- The manager is a host that runs the SNMP client program.
- The agent is a router or host that runs the SNMP server program.
SNMP rests on three basic ideas:
- The manager checks an agent by requesting information from it.
- The manager forces the agent to perform a task by resetting values in the agent database.
- The agent warns the manager of an unusual situation.
How it works
The three management protocols
Internet management needs three things working together.
- SNMP defines the format of the packets exchanged between a manager and an agent, and reads and changes the status of objects in SNMP packets.
- Structure of Management Information (SMI) defines the general rules for naming objects, defines object types, and defines how to encode objects and values.
- Management Information Base (MIB) creates a collection of named objects, their types and their relationships.
How it works
The MIB
A managed device’s operational data, and some configuration data, is gathered
into a device MIB module. The lecture says about 400 MIB modules are
defined in RFCs, with many more vendor-specific MIBs. SMI is the data
definition language used to describe them.
The lecture’s example is a set of MIB variables for the UDP protocol:
| Object ID | Name | Type | Comment |
|---|---|---|---|
1.3.6.1.2.1.7.1 | UDPInDatagrams | 32-bit counter | Total number of datagrams delivered |
1.3.6.1.2.1.7.2 | UDPNoPorts | 32-bit counter | Number of undeliverable datagrams (no application at the port) |
1.3.6.1.2.1.7.3 | UDPInErrors | 32-bit counter | Number of undeliverable datagrams (all other reasons) |
1.3.6.1.2.1.7.4 | UDPOutDatagrams | 32-bit counter | Total number of datagrams sent |
1.3.6.1.2.1.7.5 | udpTable | SEQUENCE | One entry for each port currently in use |
How it works
Two ways to convey MIB information
SNMP carries MIB information and commands in two modes.
- Request/response mode: the managing server sends a request and the managed device returns a response.
- Trap mode: the agent sends an unsolicited message, a trap message, without being asked.
How it works
SNMP operations
SNMPv3 defines eight types of packets, called protocol data units (PDUs): GetRequest, GetNextRequest, GetBulkRequest, SetRequest, Response, Trap, InformRequest and Report.
| Message type | Direction | Function |
|---|---|---|
| GetRequest | Manager to agent | Retrieve the value of variables (an instance) |
| GetNextRequest | Manager to agent | Retrieve the value of variables (the next in the list) |
| GetBulkRequest | Manager to agent | Retrieve the value of variables (a block) |
| SetRequest | Manager to agent | Set the value in a variable |
| Response | Agent to manager | Give the value of the variables requested by the manager |
| Trap | Agent to manager | Inform the manager of an exceptional event |
| InformRequest | Manager to manager | Get the value of variables from an agent under the control of a remote manager |
| Report | Manager to manager | Report errors between managers |
Aside
Table layout in the extraction
The slide’s table lost its row alignment, so the direction of each message was matched to its function by the order of the six directions printed and by what each function means. The match is consistent, but the extraction does not mark it row by row. Check the slide if a question hinges on one direction.
Aside
Transport
The SNMP slides do not name a transport protocol. The UDP topic in module 8 lists SNMP among the management processes that use UDP.
Where marks get lost
A trap is not an answer to a request. Responses reply to manager requests. Traps are sent by the agent on its own when something exceptional happens, so the manager does not have to poll for it.
In the exam
- Definition: monitoring, testing, configuring and troubleshooting network components to meet a set of requirements.
- Roles: manager runs the SNMP client, agent runs the SNMP server.
- The three ideas: request information, force a task by resetting values, warn of an unusual situation.
- SNMP, SMI, MIB: packet format, naming and encoding rules, and the collection of named objects.
- Eight PDUs with direction. Be ready to sort them into manager to agent, agent to manager and manager to manager.
Check yourself
- Network management means monitoring, testing, configuring and troubleshooting devices from a managing server.
- Three approaches: CLI, SNMP/MIB, NETCONF/YANG.
- SNMP has a manager (client) and agent (server), and works in request/response mode or trap mode.
- SNMP formats packets, SMI names and encodes objects, MIB holds them.
- Eight PDUs: GetRequest, GetNextRequest, GetBulkRequest, SetRequest, Response, Trap, InformRequest, Report.