If a system has an SNMP agent with an improper MIB implementation, SNMP requests from the discovery process might loop over a table. Looping over a table is a violation of the standard protocol and prevents the discovery process from retrieving the necessary information to fully discover a system.

When the IP Manager encounters such a problem, it notifies a DiscoveryError and writes an error message to its log file. Both the DiscoveryError notification and the error message identify the OID where the agent loop occurred. As an example, the following error message identifies “.” as the OID where an agent loop occurred:

[25-Jun-2009 16:57:54+047ms EDT] t@60 Discovery #9
SWFE-W-ELOOP-Agent loops in response to GET_NEXT: Agent:, First
    OID: .

You can also invoke the sm_snmp command or the sm_snmpwalk command from the BASEDIR/smarts/bin directory to identify the location of an agent loop. The sm_snmp command is used to browse through a specific portion of the MIB, and the sm_snmpwalk command is used to browse through the entire MIB.

Here is an example of using the sm_snmp or sm_snmpwalk command to identify the location of an agent loop:

sm_snmp -d get .

You should see an error message similar to the following:

SNMP-E-Agent, port 161 loops in response to

The sm_snmp command is described in the HTML pages that are located in the BASEDIR/smarts/doc/html/usage directory of any Domain Manager installation area.

Upon encountering an agent loop, the discovery process continues with the next probe until the discovery process completes.

If the error is the result of a problem with the system’s MIB, you should contact the system vendor to see if an update is available.