php – 如何在远程设备/交换机/服务器上收集带宽利用率数据?

如何在设备/交换机上收集带宽使用/利用率.根据我的理解,有些系统可以做这样的事情.他们似乎都有共鸣.

我正在寻找关于可能滚动我自己的系统以收集这些数据的信息,这些数据稍后将用于基于Web的前端.对于一个真实的世界,但也许有点过于复杂的例子我要谈的是ubersmith de.它大部分将在LAMP环境中.谢谢.

解决方法:

从纯SNMP的角度来看,SNMP设备上有一个管理信息库(MIB).

此基础是一种树,其中数据使用对象标识符(OID)命名.其中一个数据是MIBII接口组中名为“ifInOctets”的计数器,它表示SNMP设备接口之一上的“In”八位字节数,另一个(“ifOutOctets”)表示“Out”的数量“八位字节.你会发现用你最喜欢的语言(PHP)来获得这两个计数器.您还可以在“ifSpeed”计数器中获得接口速度的信息.安装NET-SNMP工具(在Linux或Microsoft上),您可以通过“snmpget”获取信息

snmpget -v 1 -c public localhost ifInOctets.65539
IF-MIB :: ifInOctets.65539 ​​= Counter32:82929271

想象一下,你以2秒的间隔S秒获取“ifInOctets”I1和I2的值.你可以计算你的“In”bandith.

“In”Bandwith用法%=(((I2-I1)* 8)* 100)/(ifSpeed * S)

如果您只想获得设备带宽使用的精美图表,请尝试使用MRTG工具.

最好的祝福.

J.P

上一篇:python通过SNMP协议收集服务器监控信息


下一篇:如何使用C#发送SNMP陷阱?