SNMP Operations
SNMP standards specify a set of operations that can be invoked by manager or agent to perform their management/monitoring tasks. All the functions agents provide are modeled by SNMP as read and write operations applied to variables agent exposes.
Read and Write Operations
There are several SNMP operations defined by standards. We'll group those operations into two main categories according to the basic management operations: read (monitoring) operations, and write (control) operations.
Read Operations
Monitoring tasks can be performed by read operations. Here are included polling operations initiated by manager and unsolicited notifications (events) sent by agents. Polling operations are implemented as various get operations (e.g. GetRequest
, GetNextRequest
, GetBulkRequest
), while events are presented by Trap
and InformRequest
operations.
Write Operations
Control operations are implemented as alterations, i.e. write operations, of SNMP variables exposed by managed agent. Specifically, SetRequest
operations are used to initiate a remote modification of agent's variables.
Confirmed and Unconfirmed Operations
The SNMP protocol has been designed to support confirmed as well as unconfirmed operations. For example, the Trap
is an unconfirmed operation, while the InformRequest
is a confirmed one.
The confirmed operations were introduced to establish a mechanism of reliable SNMP data delivery and processing. For example, traps are not guaranteed to be delivered and processed by the manager. Even a reliable transport like TCP does not ensure that, because the management application can crash while accepting and/or processing the data. With a confirmed SNMP operation, the receiving SNMP engine acknowledges that the data was actually received. For example, the response to an InformRequest
protocol operation indicates that the notification was delivered, passed the security model and processed by manager. Similarly, the response to a SetRequest
indicates that the write request was actually processed by agent.
Was this page helpful?