您如何衡量每个用户的下游带宽?

时间:2008-09-16 19:30:01

标签: linux bandwidth inbound

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

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

1 个答案:

答案 0 :(得分:1)

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