SNMP is a fairly complex protocol, and the fact that it primarily operates over UDP does not exactly help matters. As a consequence, there are a number of potential problems that affect NMIS' ability to collect information from SNMP agents efficiently and quickly.
...
The default for snmp_max_msg_size
is 1472 bytes, just below the 1500 byte packet limit for normal Ethernets. In LAN-only scenarios it is possible to increase this past 1500 bytes: this causes IP fragments and packet reassembly, but unless your LAN is saturated and starving for bandwidth fragmentation is not a problem. The benefit of a larger SNMP packet would be that the data to be collected fits into fewer fewer packets.
max_repetitions
This option was added in NMIS 8.5G. It controls how many SNMP PDUs will be packaged into a single SNMP packet. The max_repetitions
setting is named a bit oddly - that comes from the SNMP module that NMIS uses: Net::SNMP calls it "-maxrepetitions
".
...
If you observe SNMP error messages in the logs which look similar to "SNMP ERROR (X) (Y) The message size exceeded the buffer maxMsgSize of N", then you should set a lower max_repetitions
value (or increase the snmp_max_msg_size
if you're operating in a LAN-only scenario). Otherwise, a value of 40-50 minimizes the number of SNMP packets and thus speeds up collection. Not setting this option at all leaves it to the Net::SNMP module to guess a suitable value.
...