Understanding the SNMP Implementation in JUNOS Software
SNMP enables the monitoring of network devices from a central location. This topic provides an overview of SNMP and describes how SNMP is implemented in JUNOS Software.
This topic includes the following sections:
SNMP Architecture
The SNMP agent exchanges network management information with SNMP manager software running on a network management system (NMS), or host. The agent responds to requests for information and actions from the manager. The agent also controls access to the agent’s MIB, the collection of objects that can be viewed or changed by the SNMP manager.
The SNMP manager collects information about network connectivity, activity, and events by polling managed devices.
Communication between the agent and the manager occurs in one of the following forms:
- Get, GetBulk, and GetNext requests—The manager requests information from the agent; the agent returns the information in a Get response message.
- Set requests—The manager changes the value of a MIB object controlled by the agent; the agent indicates status in a Set response message.
- Traps notification—The agent sends traps to notify the manager of significant events that occur on the network device.
This topic contains the following sections:
Management Information Base (MIB)
A MIB is a hierarchy of information used to define managed objects in a network device. The MIB structure is based on a tree structure, which defines a grouping of objects into related sets. Each object in the MIB is associated with an object identifier (OID), which names the object. The “leaf” in the tree structure is the actual managed object instance, which represents a resource, event, or activity that occurs in your network device.
MIBs are either standard or enterprise-specific. Standard MIBs are created by the Internet Engineering Task Force (IETF) and documented in various RFCs. Depending on the vendor, many standard MIBs are delivered with the NMS software. You can also download the standard MIBs from the IETF website, http://www.ietf.org, and compile them into your NMS, if necessary.
For a list of standard supported MIBs, see “Standard SNMP MIBs Supported by JUNOS Software” in the JUNOS Software SNMP MIBs and Traps Reference.
Enterprise-specific MIBs are developed and supported by a specific equipment manufacturer. If your network contains devices that have enterprise-specific MIBs, you must obtain them from the manufacturer and compile them into your network management software.
For a list of Juniper Networks enterprise-specific supported MIBs, see “Juniper Networks Enterprise-Specific MIBs” in the JUNOS Software SNMP MIBs and Traps Reference.
SNMP Traps and Informs
Routers can send notifications to SNMP managers when significant events occur on a network device, most often errors or failures. SNMP notifications can be sent as traps or inform requests. SNMP traps are unconfirmed notifications. SNMP informs are confirmed notifications.
SNMP traps are defined in either standard or enterprise-specific MIBs. Standard traps are created by the IETF and documented in various RFCs. The standard traps are compiled into the network management software. You can also download the standard traps from the IETF website, http://www.ietf.org.
For more information about standard traps supported by JUNOS Software, see “Standard SNMP Traps Supported on Devices Running JUNOS Software” in JUNOS Software SNMP MIBs and Traps Reference.
Enterprise-specific traps are developed and supported by a specific equipment manufacturer. If your network contains devices that have enterprise-specific traps, you must obtain them from the manufacturer and compile them into your network management software.
For more information about enterprise-specific traps supported by JUNOS Software, see “Juniper Networks Enterprise-Specific SNMP Traps” in the JUNOS Software SNMP MIBs and Traps Reference. For information about system logging severity levels for SNMP traps, see System Logging Severity Levels for SNMP Traps.
With traps, the receiver does not send any acknowledgment when it receives a trap and the sender cannot determine if the trap was received. To increase reliability, SNMP informs are supported in SNMPv3. An SNMP manager that receives an inform acknowledges the message with a response. For information about SNMP informs, see Configuring SNMP Informs.
SNMP Trap Queuing
JUNOS Software supports trap queuing to ensure that traps are not lost because of temporary unavailability of routes. Two types of queues, destination queues and a throttle queue, are formed to ensure delivery of traps and control the trap traffic.
JUNOS Software forms a destination queue when a trap to a particular destination is returned because the host is not reachable, and adds the subsequent traps to the same destination to the queue. JUNOS Software checks for availability of routes every 30 seconds, and sends the traps from the destination queue in a round-robin fashion. If the trap delivery fails, the trap is added back to the queue, and the delivery attempt counter and the next delivery attempt timer for the queue are reset. Subsequent attempts occur at progressive intervals of 1 minute, 2 minutes, 4 minutes, and 8 minutes. The maximum delay between the attempts is 8 minutes, and the maximum number of attempts is ten. After ten unsuccessful attempts, the destination queue and all the traps in the queue are deleted.
JUNOS Software also has a throttle mechanism to control the number of traps (throttle threshold; default value of 500 traps) sent during a particular time period (throttle interval; default of 5 seconds) and to ensure consistency in trap traffic, especially when large number of traps are generated because of interface status changes. The throttle interval period begins when the first trap arrives at the throttle. All traps within the trap threshold are processed, and the traps beyond the threshold limit are queued. The maximum size of the throttle queue is 50k. When a trap is added to the throttle queue, or if the throttle queue has exceeded the maximum size, the trap is added back on top of the destination queue, and all subsequent attempts from the destination queue are stopped for a 30-second period, after which the destination queue restarts sending the traps.
![]() | Note: Users cannot configure JUNOS Software for trap queuing. Users cannot view any information about trap queues except what is available in the syslog. |
System Logging Severity Levels for SNMP Traps
For some traps, when a trap condition occurs, regardless of whether the SNMP agent sends a trap to an NMS, the trap is logged if the system logging is configured to log an event with that system logging severity level. For more information about system logging severity levels, see the Junos System Basics Configuration Guide.
For more information about system logging severity levels for standard traps, see “Standard SNMP Version 1 Traps” and “Standard SNMP Version 2 Traps” in the JUNOS Software SNMP MIBs and Traps Reference. For more information about system logging severity levels for enterprise-specific traps, see “Juniper Networks Enterprise-Specific SNMP Version 1 Traps” and “Juniper Networks Enterprise-Specific SNMP Version 2 Traps” in the JUNOS Software SNMP MIBs and Traps Reference.
JUNOS SNMP Agent Features
The JUNOS SNMP agent software consists of an SNMP master agent that delegates all SNMP requests to subagents. Each subagent is responsible for the support of a specific set of MIBs.
JUNOS Software supports the following versions of SNMP:
- SNMPv1—The initial implementation of SNMP that defines the architecture and framework for SNMP.
- SNMPv2c—The revised protocol, with improvements to performance and manager-to-manager communications. Specifically, SNMPv2c implements community strings, which act as passwords when determining who, what, and how the SNMP clients can access the data in the SNMP agent. The community string is contained in SNMP Get, GetBulk, GetNext, and Set requests. The agent may require a different community string for Get, GetBulk, and GetNext requests (read-only access) than it does for Set requests (read-write access).
- SNMPv3—The most up-to-date protocol focuses on security. SNMPv3 defines a security model, user-based security model (USM), and a view-based access control model (VACM). SNMPv3 USM provides data integrity, data origin authentication, message replay protection, and protection against disclosure of the message payload. SNMPv3 VACM provides access control to determine whether a specific type of access (read or write) to the management information is allowed.
In addition, the JUNOS SNMP agent software accepts IPv4 and IPv6 addresses for transport over IPv4 and IPv6. For IPv6, JUNOS Software supports the following features:
- SNMP data over IPv6 networks
- IPv6-specific MIB data
- SNMP agents for IPv6