NetHogs介绍
有很多适用于Linux系统的开源网络监视工具。比如说,可以用命令iftop来检查带宽使用情况。netstat用来查看接口统计报告,还有top监控系统当前运行进程。但是如果想要找一个能够按进程实时统计网络带宽利用率的工具,那么NetHogs值得一看。
NetHogs是一个开源、免费的,终端下的网络流量监控工具(类似于Linux的top命令),用来按进程或程序实时统计网络带宽使用率。它只能实时监控进程的网络带宽占用情况。它支持IPv4和IPv6协议,支持本地网卡以及PPP链接。
来自NetHogs项目网站:
NetHogs是一个小型的net top工具,不像大多数工具那样拖慢每个协议或者是每个子网的速度而是按照进程进行带宽分组。NetHogs不需要依赖载入某个特殊的内核模块。如果发生了网络阻塞你可以启动NetHogs立即看到哪个PID造成的这种状况。这样就很容易找出哪个程序跑飞了然后突然占用你的带宽。
NetHogs下载
NetHogs的开源代码在sourceforge上提供下载,它只提供源代码下载。http://sourceforge.net/projects/nethogs/?source=directory。如果你需要下载RPM安装包,可以去这个网址下载
安装简略。
NetHogs使用
NetHogs提供交互式控制指令:
m : Cycle between display modes (kb/s, kb, b, mb) 切换网速显示单位
r : Sort by received. 按接收流量排序
s : Sort by sent. 按发送流量排序
q : Quit and return to the shell prompt. 退出NetHogs命令工具
NetHogs 命令行参数
常用的参数:
-d delay for refresh rate. 数据刷新时间 如nethogs -d 1 就是每秒刷新一次
-h display available commands usage.
-p sniff in promiscious mode (not recommended).混合模式,不推荐
-t tracemode.跟踪模式
-V prints Version info.
设备 : 要监视的设备名称. 默认为 eth0
实例:
#5秒刷新一次数据
nethogs -d 5
#监控网卡eth0数据
nethogs eth0
#同时监视eth0和eth1接口
nethogs eth0 eth1
参考资料:
1、http://man.linuxde.net/nethogs
2、关于NetHogs命令行工具的完整参数列表,可以参考NetHogs的手册,更多信息请参考NetHogs项目主页。