如何使用来自通过 SNMP 访问的路由器的 InOctets 计数器来计算每月的下载使用量。
显然,它必须跟踪该月第一天的值,然后在月底进行减法,但我到底如何将八位字节转换为千兆字节???
还必须采取预防措施,以防有人重置路由器上的计数器,但这可以毫无问题地进行编码。
最佳答案
请记住,SNMP InOctets 是接口(interface)上发送和接收的八位字节总数,包括帧字符。请记住,InOctet SNMP 值会循环并在达到 16 或 32 位值可用的最大值时从 0 重新启动,因此您必须定期轮询该值并通过以下方式计算八位位组总数与上次轮询的八位位组差异。
您可以将某个时间范围内收集的总 InOctets 值乘以 8 以获得位数。千兆字节有 8,589,934,592 位。
(InOctets * 8) / 8,589,934,592 = Total GB transfer inbound
此外,我建议使用 MRTG、Cacti、RTG 或其他几个可以为您完成此操作的免费工具。
希望这有帮助。
关于download - 使用 SNMP 和 InOctets 计数器来跟踪下载使用情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8760177/