linux - 您如何衡量每个用户的下行带宽?

标签 linux bandwidth inbound

在基于 Linux 的系统(特别是 Ubuntu Server 8.04)中,如何测量每个用户的下行带宽?最理想的是,我想要一种直接提供数据的方法,而不必运行另一个进程并解析其输出。我有一种通过为每个用户设置一个 iptables 过滤器并定期检查其计数器来测量每个用户上行带宽的技术,但这似乎不支持下游连接,我认为这是因为 iptables 在它们之前检查数据包被路由到一个进程。

[edit 20080916 153434 EST] “每用户”是指系统上的文字帐户。也就是说,任何具有真实 POSIX UID 的帐户都拥有实际运行的进程。因此,对于 Ubuntu Server 8.04,测量将包括 rootwww-data、我自己的帐户等的值。

最佳答案

我没有看到任何明显的方法来执行此操作,但我希望您可以使用自定义 ip_conntrack 模块来执行此操作。您将在首次创建 conntrack 条目时捕获 uid,然后在两个方向上应用相同的 uid。

关于linux - 您如何衡量每个用户的下行带宽?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76029/

相关文章:

linux - 当我激活 conda 环境时,用户名和当前目录在终端中消失

memory - cuda 'memory bound' vs 'latency bound' vs 'bandwidth bound' vs 'compute bound'

CUDA:主机到设备的带宽大于 PCIe 的峰值带宽?

tcp - 源端口与目标端口

java - 消息驱动 bean,不根据轮询间隔获取新电子邮件

linux - x86 程序集,没有遵循小字节序(或者是?)(Linux)

c++ - g++ 编译对外部 hpp 文件的 undefined reference

linux - 将 "module"别名(调用 modulecmd)从 tcsh 适配到 bash

algorithm - 是否有一个完善的增量算法来维护特定时间范围内累积的值(value)历史?