Linux之网络带宽监控工具bmon

0 背景

在 linux 上做网络设备开发时,往往需要查看带宽占用情况,这里介绍一个我感觉不错的工具 bmon

1 工具介绍

安装方法很简单

sudo apt-get install bmon

安装好之后查看使用方法

nvidia@jxresearch:~$ bmon -h
bmon 4.0
Copyright (C) 2001-2015 by Thomas Graf 
Copyright (C) 2013 Red Hat, Inc.
bmon comes with ABSOLUTELY NO WARRANTY. This is free software, and you
are welcome to redistribute it under certain conditions. See the source
code for details.

Usage: bmon [OPTION]...

Options:
Startup:
   -i, --input=MODPARM             Input module(s)
   -o, --output=MODPARM            Output module(s)
   -f, --configfile=PATH           Alternative path to configuration file
   -h, --help                      Show this help text
   -V, --version                   Show version

Input:
   -p, --policy=POLICY             Element display policy (see below)
   -a, --show-all                  Show all elements (even disabled elements)
   -r, --read-interval=FLOAT       Read interval in seconds (float)
   -R, --rate-interval=FLOAT       Rate interval in seconds (float)
   -s, --sleep-interval=FLOAT      Sleep time in seconds (float)
   -L, --lifetime=LIFETIME         Lifetime of an element in seconds (float)

Output:
   -U, --use-si                    Use SI units
   -b, --use-bit                   Display in bits instead of bytes

Module configuration:
   modparm := MODULE:optlist,MODULE:optlist,...
   optlist := option;option;...
   option  := TYPE[=VALUE]

   Examples:
       -o curses:ngraph=2
       -o list            # Shows a list of available modules
       -o curses:help     # Shows a help text for html module

Interface selection:
   policy  := [!]simple_regexp,[!]simple_regexp,...

   Example: -p 'eth*,lo*,!eth1'

Please see the bmon(1) man pages for full documentation.

我们可以使用 -p 来指定我们要监控的网口,同时使用 -b 来切换带宽单位,使用 bit 为单位,因为我们常说的带宽单位是 bit/s(比特/秒),而默认单位是 byte/s ,1 byte = 8 bit(这里就是我们常说的大B、小b)。

比如我们监控 eth0 端口的带宽情况

bmon -bp eth0

输出如下

Linux之网络带宽监控工具bmon_第1张图片

按键 d 和 i 可以显示更详细的信息

Linux之网络带宽监控工具bmon_第2张图片

2 视频编码知识

在做视频开发时,涉及到视频的编码输出,本质上视频的码率就等于网络的带宽

视频码率是视频数据(视频色彩量、亮度量、像素量)每秒输出的位数

码率越高,数据量越大,视频质量越好,码率越小,数据量越小,视频质量越差。但是,码率大到一定阈值之后,码率的提升带来的视频质量改善就会变得微不足道,所以这个码率阈值就显得非常重要。

有篇文章测试了 H264 编码时,不同分辨率的码率设置情况,可以参考

文章链接:Video Encoding Settings for H.264 Excellence

Linux之网络带宽监控工具bmon_第3张图片

Linux之网络带宽监控工具bmon_第4张图片

3 其它工具

如果有其它方面的需求,如查看每个进程的带宽使用情况,可参考《Linux服务器上监控网络带宽的18个常用命令》

 

 

你可能感兴趣的:(Linux,视频开发)