use Net::SNMP; my $host = 'blah'; my $community = 'blah'; #my $in = '1.3.6.1.2.1.2.2.1.10.1'; my $in = '1.3.6.1.2.1.31.1.1.1.6.1'; my $speed = 155000000; my $speed_oct = $speed /8; my $session = Net::SNMP->session( -hostname=>$host, -version => 'v2c', -community => $community ); my $old_time = undef; my $old_val = undef; while (1) { my $time = time; my $result = $session->get_request( -varbindlist => [$in] ); print "ifhcinoctets=".$result->{$in}."\n"; if (defined $old_time) { my $tick = $time - $old_time; my $dif = $result->{$in} - $old_val; my $dif_ps = $dif / $tick; my $percent = ($dif_ps * 100) / $speed_oct; print "tick=$tick; speed=$speed_oct; dif=$dif; dif_ps=$dif_ps; percent=$percent\n" } $old_time = $time; $old_val = $result->{$in}; sleep(30); }