gpt4 book ai didi

c++ - Linux 中的实时 RX 和 TX 速率

转载 作者:太空狗 更新时间:2023-10-29 23:43:02 29 4
gpt4 key购买 nike

我正在寻找一种以编程方式(无论是调用库还是独立程序)监视 linux 中实时 ip 流量的方法。我不想要总数,我想要当前正在使用的带宽。我正在寻找与 OS X 的 istat 菜单的网络流量监视器类似(但非图形)的工具。

我相当确定存在这样的东西,但我不确定去哪里找,而且我宁愿不必重新发明轮子。

是不是监控一个socket那么简单?还是我需要一个实用程序来为我处理大量开销?

最佳答案

我们在/proc/net/dev 中有字节和数据包计数器,所以:

import time

last={}

def diff(col): return counters[col] - last[iface][col]

while True:
print "\n%10s: %10s %10s %10s %10s"%("interface","bytes recv","bytes sent", "pkts recv", "pkts sent")
for line in open('/proc/net/dev').readlines()[2:]:
iface, counters = line.split(':')
counters = map(int,counters.split())
if iface in last:
print "%10s: %10d %10d %10d %10d"%(iface,diff(0), diff(8), diff(1), diff(9))

last[iface] = counters

time.sleep(1)

关于c++ - Linux 中的实时 RX 和 TX 速率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1119683/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com