按端口进行长期带宽监控

按端口进行长期带宽监控

我代表澳大利亚一个相当受欢迎的游戏服务器社区。我们租用了一台带宽有限的专用服务器。尽管我们将下载服务器外包给了美国,但在过去几天里,我们的带宽消耗量还是大幅增加。

我们非常想知道究竟是什么突然占用了这么多带宽。我们的每台服务器都分配有特定的端口,因此按端口监控带宽是有意义的。我们希望在一段相当长的时间内进行这种监控,以便我们能够看到准确的结果。

以下是我尝试过的方法以及遇到的问题的列表。

nethogs - 监控每个进程的带宽,因此似乎无法正确计算使用子进程的服务的带宽(例如,我很确定 Apache 在过去 2 天内使用了超过 0.8MB 的带宽)

iftop - 监控主机的带宽,考虑到我们的用户数量,数据似乎没什么用。我们的负载很可能不是由一个人造成的,而是由所有人造成的。

iptraf——通过连接而不是端口监控带宽,因此数据对我们来说毫无用处。

darkstat — 按主机而不是按端口对连接进行分组。

vnstat — 通过接口而不是端口监控带宽。

bandwidthd——通过主机或子网而不是端口进行测量。

是否存在可以帮助我的工具?

谢谢,

耀明

答案1

看看ntop。

# dpkg -l ntop
ii  ntop  3:4.99.3+ndpi5517+dfsg3-1 amd64 display network usage in web browser

有一个不错的选项--sticky-hosts,因此您可以找到哪个主机吸收了所有的流量。

再看看 nethogs:

# dpkg -l nethogs
ii  nethogs   0.8.0-1 amd64   Net top tool grouping bandwidth per process

您可以通过应用程序获取带宽,但如果您的游戏服务以一种方式而不是另一种方式编写,您将只能获得有关整个游戏服务带宽的一个字符串。

但是这两个应用程序都无法通过端口进行登录。

有商业项目斯普朗克,它有 30 天免费试用期。您可以注册为新客户,无需任何信用信息(匿名)并获取 deb 包。它很棒,但是 adobe flash。检查一下。特别是插件部分。

相关内容