| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> 03-----带宽分析-----Linux服务器上监控网络带宽的18个常用命令和linux带宽流量监控查看工具 -> 正文阅读 |
|
[系统运维]03-----带宽分析-----Linux服务器上监控网络带宽的18个常用命令和linux带宽流量监控查看工具 |
参考文章 Linux服务器上监控网络带宽的18个常用命令和linux带宽流量监控查看工具。 简述这些工具使用不同的机制来制作流量报告。nload等一些工具可以读取"proc/net/dev"文件,以获得流量统计信息; 下面是按功能划分的命令名称。
一 Linux服务器上监控网络带宽的18个常用命令和linux带宽流量监控查看工具1. nloadnload是一个命令行工具,让用户可以分开来监控入站流量和出站流量。它还可以绘制图表以显示入站流量和出站流量,视图比例可以调整。用起来很简单,不支持许多选项。 所以,如果你只需要快速查看总带宽使用情况,无需每个进程的详细情况,那么nload用起来很方便。 安装nload:Fedora和Ubuntu在默认软件库里面就有nload。CentOS用户则需要从Epel软件库获得nload。
使用:
效果: 2. iftopiftop可测量通过每一个套接字连接传输的数据;它采用的工作方式有别于nload。iftop使用pcap库来捕获进出网络适配器的数据包,然后汇总数据包大小和数量,搞清楚总的带宽使用情况。 虽然iftop报告每个连接所使用的带宽,但它无法报告参与某个套按字连接的进程名称/编号(ID)。不过由于基于pcap库,iftop能够过滤流量,并报告由过滤器指定的所选定主机连接的带宽使用情况。 安装iftop:Ubuntu/Debian/Fedora用户可以从默认软件库获得它。CentOS用户可以从Epel获得它。
使用:
n选项可以防止iftop将IP地址解析成主机名,解析本身就会带来额外的网络流量。 效果: 看图技巧,所以实际上我们只需要查看TOTAL那一行即可,并且主要看rates的描述。 3. iptrafiptraf是一款交互式、色彩鲜艳的IP局域网监控工具。它可以显示每个连接以及主机之间传输的数据量。
运行:
效果: 解释该图: 实际上我也不怎么用这个命令,不太熟,具体可以自行单独百度这个命令的参数意思。 4. nethogsnethogs是一款小巧的"net top"工具,可以显示每个进程所使用的带宽,并对列表排序,将耗用带宽最多的进程排在最上面。万一出现带宽使用突然激增的情况,用户迅速打开nethogs,就可以找到导致带宽使用激增的进程。nethogs可以报告程序的进程编号(PID)、用户和路径。 安装nethogs:Ubuntu、Debian和Fedora用户可以从默认软件库获得。CentOS用户则需要Epel。
运行:
效果: 对于查看某个进程是否占用高带宽,nethogs是个不错的选择。 5. bmonbmon(带宽监控器)是一款类似nload的工具,它可以显示系统上所有网络接口的流量负载。输出结果还含有图表和剖面,附有数据包层面的详细信息。 安装bmon:Ubuntu、Debian和Fedora用户可以从默认软件库来安装。CentOS用户则需要安装repoforge,因为Epel里面没有bmon。
运行:
效果: bmon支持许多选项,能够制作HTML格式的报告。欲知更多信息,请参阅参考手册页。 6. slurmslurm是另一款网络负载监控器,可以显示设备的统计信息,还能显示ASCII图形。它支持三种不同类型的图形,使用c键、s键和l键即可激活每种图形。slurm功能简单,无法显示关于网络负载的任何更进一步的详细信息。 安装slurm:
运行:
效果: 更详细的用法请自行百度。 7. tcptracktcptrack类似iftop,使用pcap库来捕获数据包,并计算各种统计信息,比如每个连接所使用的带宽。它还支持标准的pcap过滤器,这些过滤器可用来监控特定的连接。 安装tcptrack:Ubuntu、Debian和Fedora在默认软件库里面就有它。CentOS用户则需要从RepoForge获得它,因为Epel里面没有它。
运行:
效果: 8. vnstatvnstat与另外大多数工具有点不一样。它实际上运行后台服务/守护进程,始终不停地记录所传输数据的大小。之外,它可以用来制作显示网络使用历史情况的报告。 安装vnstat:
运行:
效果: 历史数据如下: 2)带选项的vnstat 。 想实时监控带宽使用情况,请使用"-l"选项(实时模式)。然后,它会显示入站数据和出站数据所使用的总带宽量,但非精确地显示,没有关于主机连接或进程的任何内部详细信息。
效果: vnstat更像是一款制作历史报告的工具,显示每天或过去一个月使用了多少带宽。它并不是严格意义上的实时监控网络的工具。 vnstat支持许多选项,支持哪些选项方面的详细信息请参阅参考手册页。 9. bwm-ngbwm-ng(下一代带宽监控器)是另一款非常简单的实时网络负载监控工具,可以报告摘要信息,显示进出系统上所有可用网络接口的不同数据的传输速度。 安装bwm-ng:在CentOS上,可以从Epel来安装bwm-ng。
运行:
效果: 如果控制台足够大,bwm-ng还能使用curses2输出模式,为流量绘制条形图。
效果: 10. cbm:Color Bandwidth Meter这是一款小巧简单的带宽监控工具,可以显示通过诸网络接口的流量大小。没有进一步的选项,仅仅实时显示和更新流量的统计信息。
运行:
效果: 这款和nload都是可以使用的,非常方便,感觉比nload还方便。 11. speedometer这是另一款小巧而简单的工具,仅仅绘制外观漂亮的图形,显示通过某个接口传输的入站流量和出站流量。 安装speedometer:
centos中的安装:
监控流量,运行:
另外,Speedometer 还可以监测某个文件的下载速率,比如你正在下载 downlod.iso 这个文件,那么只要:
就会显示出文件下载的速率,不过这招有时也不是很灵,因为大多数文件下载工具,会缓存下载的数据,或者在临时文件中保存下载的数据,而 Speedometer 只能通过监测文件大小的变化算出速率。 如果你知道下载文件的大小,可以在命令中指定大小,这样 Speedometer 就会帮你显示一个进度条,比如我知道 download.iso 是 80M:
效果如下: 因为 Speedometer 可以监控文件大小的变化,所以除了网速之外,你还可以用他来监测其他的数据。
前面的 dd 命令在当前目录写入一个全零的 1G 大小的文件,然后在写入中,用 Speedmeter 监测速度: Speedometer 可以同时检测多个网络接口、文件,并在一起显示出来,只要你的屏幕够大~。 最终常用的一个命令:
效果: 注:本命令我在测试的时候报错了,所以没进一步处理。因为我本身也很少这个命令。 12. pktstatpktstat可以实时显示所有活动连接,并显示哪些数据通过这些活动连接传输的速度。它还可以显示连接类型,比如TCP连接或UDP连接;如果涉及HTTP连接,还会显示关于HTTP请求的详细信息。
运行:
效果: 13. netwatchnetwatch是netdiag工具库的一部分,它也可以显示本地主机与其他远程主机之间的连接,并显示哪些数据在每个连接上所传输的速度。 安装:
运行:
效果: 关于netwatch更详细的用法与参数意思,请自行百度。因为这个命令看起来挺费人的,所以我本人也很少用,用上面几个也满足开发需求了。 14. trafshow与netwatch和pktstat一样,trafshow也可以报告当前活动连接、它们使用的协议以及每条连接上的数据传输速度。它能使用pcap类型过滤器,对连接进行过滤。 安装:
运行:
效果: 关于 trafshow 更详细的用法与参数意思,请自行百度。 15. netloadnetload命令只显示关于当前流量负载的一份简短报告,并显示自程序启动以来所传输的总字节量。没有更多的功能特性。它是netdiag的一部分。 安装:
运行:
效果: 16. ifstatifstat能够以批处理式模式显示网络带宽。输出采用的一种格式便于用户使用其他程序或实用工具来记入日志和分析。
运行:
效果: 后续自己可以百度一下ifstat的单位意思即可。 可以查看具体的网卡以及每秒刷新时间。
17. dstatdstat是一款用途广泛的工具(用python语言编写),它可以监控系统的不同统计信息,并使用批处理模式来报告,或者将相关数据记入到CSV或类似的文件。这个例子显示了如何使用dstat来报告网络带宽。
这里我没安装成功,就先不处理这个命令,具体请自行百度。 18. collectlcollectl以一种类似dstat的格式报告系统的统计信息;与dstat一样,它也收集关于系统不同资源(如处理器、内存和网络等)的统计信息。这里给出的一个简单例子显示了如何使用collectl来报告网络使用/带宽。 安装collectl:
额外命令监控带宽信息1. sar安装:
运行:
效果: rxpck/s txpck/s代表:查看每秒接收/发送包的速度。 实际上sar更多是查看服务器的系统资源,例如CPU,磁盘等,不仅仅是带宽。 2. watch ifconfig实际上watch搭配ifconfig也可以大概的查看带宽数据,只不过需要自己统计。 这个命令的意思是:默认s执行一次ifconfig,这样就可以不断的查看到接收与发送的字节数。但是一般不会使用这个组合去看带宽,只是想告诉大家可以这样使用。
大概看一下效果即可。 上面的命令的单位KB/s,应该都是指带宽的意思。如果不是带宽的话而是字节每秒,则需要乘以8。 二 总结上面常用和观察直观的命令
三 卸载上面的命令如果不想要上面的命令了,可以使用下面方式进行卸载,注意,上面我都是使用apt-get的环境去下载的,所以使用apt-get去卸载。
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 13:53:20- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |