我们平时所说的带宽,其实是数据传输率,譬如内存带宽、总线带宽、网络带宽等等,都是以“字节/秒”为单位的。有时确切地知道网络中一台特定主机所使用的带宽或者一个网关所处理的通信量是非常有用的。作为一个快速查看网络活动的工具,Bwm-NG确实是一个不错的选择。
Bandwidth Monitor NG (简称为 Bwm-NG)是一个简单的网络和磁盘带宽监视程序,可在Linux、BSD、Solaris等平台上运行。它支持各种各样的检测元件,用于收集各种统计数据,包括/proc.net/dev、netstat、getifaddr、sysctl、kstat、 /proc/diskstats /proc/partitions、 IOKit、 devstat 、 libstatgrab等。接口或设备可以黑白方式列示,这样用户就可以只查看感兴趣的数据。Bwm-NG支持多种输出选项,如图形、纯文本、CVS及HTML等。
Bwm-NG编译和配置起来相当简单,笔者分别在OpenBSD和Linux平台上编译了源程序,在此过程中无需下载附加的库文件或对代码做出任何修改。下面我们看一下在一个OpenBSD网关上如何编译和运行Bwm-NG。
首先,从http://www.gropp.org/?id=projects&sub=bwm-ng下载Bwm-NG源程序的最新版本。在笔者写此文时,其最新版本为Bwm-NG-0.6。
下一步,转到生成的目录,对代码进行解压:
|
为了下一步的操作,查看一下可用的选项:
|
一般情况下,你会发现除了man页面位置之外,其它的默认配置都较合适。用户通过可将man设置为:
|
不过,在安装之前,我们还要测试一下Bwm-NG能够真正地工作。为了完成这一点,在src目录中执行:
|
如果能够正常工作,继续安装:
|
如果你想进一步配置Bwm-NG,那就使用man页面作为可被允许的选项值的参考,以此来进一步编辑配置文件。不过,你会发现这是不必要的,因为Bwm-NG在默认情况下已显示了你需要的几乎全部的内容。
既然程序已经安装,下面我们启动它:
|
假设你正使用标准的“curses”输出选项,那么你可能会需要使用“a” 、“t”、“u”等命令键。
“a”─在全部或选中的界面间切换(bwm-ng.conf)。
“t”─在rate(速率)、max(最大值)、sum(总计:即从程序启动后的吞吐量)及my favourite之间切换,默认情况下是平均30秒切换一次。
“u”─显示bytes(字节)/bits(位)/packets(包)/errors(错误)。
虽然Bwm-NG是一个很简单的工具,却有极大的用途。笔者通常定期地用它来检查主要的Internet网关的吞吐量或者抽查nagios所使用的带宽,用以执行主机/网络的检查。不过,对于长期的监视和趋势分析来说,我们可能会需要更深入的分析软件,如Ntop 和MRTG等。