downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | conferences | my php.net

search for in the

snmp3_get> <snmp2_set
[edit] Last updated: Fri, 26 Apr 2013

view this page in

snmp2_walk

(PHP >= 5.2.0)

snmp2_walkFetch all the SNMP objects from an agent

Description

array snmp2_walk ( string $host , string $community , string $object_id [, string $timeout = 1000000 [, string $retries = 5 ]] )

snmp2_walk() function is used to read all the values from an SNMP agent specified by the hostname.

Parameters

host

The SNMP agent (server).

community

The read community.

object_id

If NULL, object_id is taken as the root of the SNMP objects tree and all objects under that tree are returned as an array.

If object_id is specified, all the SNMP objects below that object_id are returned.

timeout

The number of microseconds until the first timeout.

retries

The number of times to retry if timeouts occur.

Return Values

Returns an array of SNMP object values starting from the object_id as root or FALSE on error.

Examples

Example #1 snm2_pwalk() Example

<?php
$a 
snmp2_walk("127.0.0.1""public""");

foreach (
$a as $val) {
    echo 
"$val\n";
}

?>

Above function call would return all the SNMP objects from the SNMP agent running on localhost. One can step through the values with a loop

See Also

  • snmp2_real_walk() - Return all objects including their respective object ID within the specified one



add a note add a note User Contributed Notes snmp2_walk - [1 notes]
up
0
Adam
1 year ago
After some testing, I have found that SNMPWalk is considerably slower than multiple SNMPGet.

I was aiming to retrieve 6 Objects from a MIB; the device being polled was attached via a 100mbps network link.
I decided to run SNMPGet within a loop to retrieve each Object from the specified OID's.
As these OID's were within the same tree, I then thought about using walk as this would consolidate the data into a single request. I then walked the tree to get the same result.

I subsequently testing the time it took to retrieve this information via microtime().
As a result, you can retrieve 1 walk containing 6 OID's within the same time as requesting 18 OIDs via get.

I hope this helps someone whom is looking to speed up their SNMP requests.

 
show source | credits | stats | sitemap | contact | advertising | mirror sites