Issuing a single SNMP GET request that requests 10 variables is more efficient than issuing 10 GET requests each requesting a single variable. The SNMP poller consolidates as many variables as possible into a single SNMP GET request. The consolidation is not restricted to variables from the same SNMP table. Polling consolidation continually adapts to changes in the MIB variable poll list.
Upon encountering a non-fatal error during polling consolidation, the SNMP poller responds differently to an SNMPv1 agent than to an SNMPv2c or v3 agent for the following reason: Where an SNMPv1 agent stops processing a request upon encountering an error, an SNMPv2c or v3 agent continues processing a request upon encountering an error. An SNMPv2c or v3 agent handles errors on a per-OID basis.
If a non-fatal error is encountered by an SNMPv1 agent during a GET request that is seeking multiple variables, the SNMP poller suspends the polling of the affected variable because continuing to poll that variable would require the resending of the remainder of the request after receiving the error. An example of an affected variable is one that has become unavailable due to a configuration change. Of course, the SNMP poller continues to poll the unaffected variables. This behavior enables the SNMP poller to operate efficiently with an SNMPv1 agent during unexpected changes to a device’s configuration.
In contrast, if a non-fatal error is encountered by an SNMPv2c or v3 agent during a GET request that is seeking multiple variables, the SNMP poller continues the polling of the affected variable as well as the unaffected variables.