Linux服务器上监控网络带宽的18个常用命令

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前在阿里

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上运维知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化的资料的朋友,可以点击这里获取!

这些工具使用不同的机制来制作流量报告。nload等一些工具可以读取"proc/net/dev"文件,以获得流量统计信息;而一些工具使用pcap库来捕获所有数据包,然后计算总数据量,从而估计流量负载。

下面是按功能划分的命令名称。

  • 监控总体带宽使用――nload、bmon、slurm、bwm-ng、cbm、speedometer和netload
  • 监控总体带宽使用(批量式输出)――vnstat、ifstat、dstat和collectl
  • 每个套接字连接的带宽使用――iftop、iptraf、tcptrack、pktstat、netwatch和trafshow
  • 每个进程的带宽使用――nethogs

1. nload

nload是一个命令行工具,让用户可以分开来监控入站流量和出站流量。它还可以绘制图表以显示入站流量和出站流量,视图比例可以调整。用起来很简单,不支持许多选项。

所以,如果你只需要快速查看总带宽使用情况,无需每个进程的详细情况,那么nload用起来很方便。

  1. $ nload

安装nload:Fedora和Ubuntu在默认软件库里面就有nload。CentOS用户则需要从Epel软件库获得nload。

  1. # fedora或centos
  2. $ yum install nload -y
  3. # ubuntu/debian
  4. $ sudo apt-get install nload

2. iftop

iftop可测量通过每一个套接字连接传输的数据;它采用的工作方式有别于nload。iftop使用pcap库来捕获进出网络适配器的数据包,然后汇总数据包大小和数量,搞清楚总的带宽使用情况。

虽然iftop报告每个连接所使用的带宽,但它无法报告参与某个套按字连接的进程名称/编号(ID)。不过由于基于pcap库,iftop能够过滤流量,并报告由过滤器指定的所选定主机连接的带宽使用情况。

  1. $ sudo iftop -n

n选项可以防止iftop将IP地址解析成主机名,解析本身就会带来额外的网络流量。

安装iftop:Ubuntu/Debian/Fedora用户可以从默认软件库获得它。CentOS用户可以从Epel获得它。

  1. # fedora或centos
  2. yum install iftop -y
  3. # ubuntu或 debian
  4. $ sudo apt-get install iftop

3. iptraf

iptraf是一款交互式、色彩鲜艳的IP局域网监控工具。它可以显示每个连接以及主机之间传输的数据量。下面是屏幕截图。

  1. $ sudo iptraf

安装iptraf:

  1. # Centos(基本软件库)
  2. $ yum install iptraf
  3. # fedora或centos(带epel)
  4. $ yum install iptraf-ng -y
  5. # ubuntu或debian
  6. $ sudo apt-get install iptraf iptraf-ng

4. nethogs

nethogs是一款小巧的"net top"工具,可以显示每个进程所使用的带宽,并对列表排序,将耗用带宽最多的进程排在最上面。万一出现带宽使用突然激增的情况,用户迅速打开nethogs,就可以找到导致带宽使用激增的进程。nethogs可以报告程序的进程编号(PID)、用户和路径。

  1. $ sudo nethogs

安装nethogs:Ubuntu、Debian和Fedora用户可以从默认软件库获得。CentOS用户则需要Epel。

  1. # ubuntu或debian(默认软件库)
  2. $ sudo apt-get install nethogs
  3. # fedora或centos(来自epel)
  4. $ sudo yum install nethogs -y

5. bmon

bmon(带宽监控器)是一款类似nload的工具,它可以显示系统上所有网络接口的流量负载。输出结果还含有图表和剖面,附有数据包层面的详细信息。

安装bmon:Ubuntu、Debian和Fedora用户可以从默认软件库来安装。CentOS用户则需要安装repoforge,因为Epel里面没有bmon。

  1. # ubuntu或debian
  2. $ sudo apt-get install bmon
  3. # fedora或centos(来自repoforge)
  4. $ sudo yum install bmon

bmon支持许多选项,能够制作HTML格式的报告。欲知更多信息,请参阅参考手册页。

6. slurm

slurm是另一款网络负载监控器,可以显示设备的统计信息,还能显示ASCII图形。它支持三种不同类型的图形,使用c键、s键和l键即可激活每种图形。slurm功能简单,无法显示关于网络负载的任何更进一步的详细信息。

  1. $ slurm -s -i eth0

安装slurm

  1. # debian或ubuntu
  2. $ sudo apt-get install slurm
  3. # fedora或centos
  4. $ sudo yum install slurm -y

7. tcptrack

tcptrack类似iftop,使用pcap库来捕获数据包,并计算各种统计信息,比如每个连接所使用的带宽。它还支持标准的pcap过滤器,这些过滤器可用来监控特定的连接。

安装tcptrack:Ubuntu、Debian和Fedora在默认软件库里面就有它。CentOS用户则需要从RepoForge获得它,因为Epel里面没有它。

  1. # ubuntu, debian
  2. $ sudo apt-get install tcptrack
  3. # fedora, centos(来自repoforge软件库)
  4. $ sudo yum install tcptrack

8. vnstat

vnstat与另外大多数工具有点不一样。它实际上运行后台服务/守护进程,始终不停地记录所传输数据的大小。之外,它可以用来制作显示网络使用历史情况的报告。

  1. $ service vnstat status
  2. * vnStat daemon is running

运行没有任何选项的vnstat,只会显示自守护进程运行以来所传输的数据总量。

  1. $ vnstat
  2. Database updated: Mon Mar 17 15:26:59 2014
  3. eth0 since 06/12/13
  4. rx:  135.14 GiB      tx:  35.76 GiB      total:  170.90 GiB
  5. monthly
  6. rx      |     tx      |    total    |   avg. rate
  7. ------------------------±------------±------------±------------
  8. Feb '14      8.19 GiB  |    2.08 GiB  |   10.27 GiB |   35.60 kbit/s
  9. Mar '14      4.98 GiB  |    1.52 GiB  |    6.50 GiB |   37.93 kbit/s
  10. ------------------------±------------±------------±------------
  11. estimated       9.28 GiB |    2.83 GiB  |   12.11 GiB |
  12. daily
  13. rx      |     tx      |    total    |   avg. rate
  14. ------------------------±------------±------------±------------
  15. yesterday     236.11 MiB |   98.61 MiB |  334.72 MiB |   31.74 kbit/s
  16. today    128.55 MiB |   41.00 MiB |  169.56 MiB |   24.97 kbit/s
  17. ------------------------±------------±------------±------------
  18. estimated       199 MiB |      63 MiB |     262 MiB |

想实时监控带宽使用情况,请使用"-l"选项(实时模式)。然后,它会显示入站数据和出站数据所使用的总带宽量,但非常精确地显示,没有关于主机连接或进程的任何内部详细信息。

  1. $ vnstat -l -i eth0
  2. Monitoring eth0…    (press CTRL-C to stop)
  3. rx:       12 kbit/s    10 p/s          tx:       12 kbit/s    11 p/s

vnstat更像是一款制作历史报告的工具,显示每天或过去一个月使用了多少带宽。它并不是严格意义上的实时监控网络的工具。

vnstat支持许多选项,支持哪些选项方面的详细信息请参阅参考手册页。

安装vnstat

  1. # ubuntu或debian
  2. $ sudo apt-get install vnstat
  3. # fedora或 centos(来自epel)
  4. $ sudo yum install vnstat

9. bwm-ng

bwm-ng(下一代带宽监控器)是另一款非常简单的实时网络负载监控工具,可以报告摘要信息,显示进出系统上所有可用网络接口的不同数据的传输速度。

  1. $ bwm-ng
  2. bwm-ng v0.6 (probing every 0.500s), press ‘h’ for help
  3. input: /proc/net/dev type: rate
  4. /         iface                   Rx                   Tx                T
  5. ot=================================================================
  6. ==           eth0:           0.53 KB/s            1.31 KB/s            1.84
  7. KB             lo:           0.00 KB/s            0.00 KB/s            0.00
  8. KB-------------------------------------------------------------------------------------------------------------
  9. total:           0.53 KB/s            1.31 KB/s            1.84
  10. KB/s

如果控制台足够大,bwm-ng还能使用curses2输出模式,为流量绘制条形图。

  1. $ bwm-ng -o curses2

安装bwm-ng:在CentOS上,可以从Epel来安装bwm-ng。

  1. # ubuntu或debian
  2. $ sudo apt-get install bwm-ng
  3. # fedora或centos(来自epel)
  4. $ sudo apt-get install bwm-ng

10. cbm:Color Bandwidth Meter

这是一款小巧简单的带宽监控工具,可以显示通过诸网络接口的流量大小。没有进一步的选项,仅仅实时显示和更新流量的统计信息。

  1. $ sudo apt-get install cbm

11. speedometer

这是另一款小巧而简单的工具,仅仅绘制外观漂亮的图形,显示通过某个接口传输的入站流量和出站流量。

  1. $ speedometer -r eth0 -t eth0

安装speedometer

  1. # ubuntu或debian用户
  2. $ sudo apt-get install speedometer

12. pktstat

pktstat可以实时显示所有活动连接,并显示哪些数据通过这些活动连接传输的速度。它还可以显示连接类型,比如TCP连接或UDP连接;如果涉及HTTP连接,还会显示关于HTTP请求的详细信息。

  1. $ sudo pktstat -i eth0 -nt
  2. $ sudo apt-get install pktstat

13. netwatch

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以点击这里获取!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  1. $ sudo pktstat -i eth0 -nt
  2. $ sudo apt-get install pktstat

13. netwatch

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以点击这里获取!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 11
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Linux 服务器资源评估公式主要是用于评估服务器的硬件资源是否足够满足用户的需求。以下是一个简单的评估公式: 1. CPU 资源评估:通过查看服务器的 CPU 核心数和频率,估算服务器的处理能力。常用的公式是: (CPU 核心数)×(每核心频率)= CPU 总频率 (CPU 总频率)/(每个请求的平均处理时间)= 并发请求数量 2. 内存资源评估:评估服务器的内存容量是否足够存储和处理用户请求。常用的公式是: (每个请求的内存占用量)× (并发请求数量)= 要求的总内存容量 3. 存储资源评估:评估服务器的存储容量是否足够存储用户数据。常用的公式是: (每个用户数据的平均大小)× (用户数量)= 存储需求 4. 网络资源评估:评估服务器网络带宽是否足够传输用户数据。常用的公式是: (每个请求的平均数据量)× (并发请求数量)= 需要的网络带宽 以上公式只是一个初步的评估方法,实际评估时还需要考虑服务器的负载均衡、缓存优化等因素。此外,还需要结合实际业务场景和预期的系统性能要求来进行资源评估。 总之,服务器资源评估公式应该是一个综合考虑各项硬件资源和实际需求的方法,以确保服务器能够稳定运行并满足用户的需求。 ### 回答2: Linux 服务器资源评估公式是指根据服务器的配置和使用情况,来评估服务器所需的资源。这些资源包括CPU、内存、磁盘空间和网络带宽等。 首先,对于CPU资源评估,可以使用每个核心的利用率来衡量。通过CPU使用率和负载均衡来确定服务器是否需要更多的CPU资源。如果CPU使用率持续高于80%且负载均衡过高,就可能需要增加CPU资源。 其次,对于内存资源评估,可以通过监测内存使用率和交换空间使用情况来确定是否需要增加内存。如果内存使用率高且交换空间持续使用,就可能需要增加内存。 再次,对于磁盘空间评估,需要考虑服务器上的数据量和文件大小。通过检查磁盘使用率和数据增长率,来确定是否需要增加磁盘空间。如果磁盘使用率快速增长且接近满载,就需要增加磁盘空间。 最后,对于网络带宽评估,可以通过监测网络流量和带宽使用率来确定是否需要增加带宽。如果网络流量太大且带宽使用率持续高于80%,就可能需要增加带宽。 综上所述,Linux 服务器资源评估公式需要考虑CPU、内存、磁盘空间和网络带宽等因素,并通过监测相关指标来确定是否需要增加相应的资源。对这些指标进行连续监控和评估,可以及时对服务器进行资源调整,以保证服务器的正常运行和性能优化。 ### 回答3: Linux服务器资源评估公式是用于评估服务器所需资源的公式。 服务器资源评估的目的是确定服务器所需的处理能力和存储能力,以确保服务器能够正常运行,并满足用户的需求。 一般来说,服务器的资源评估公式包括以下几个方面: 1. CPU资源评估:根据服务器所需处理的请求量和请求类型,以及所需的处理速度,可以使用公式:CPU资源 = 平均请求率 * 平均请求处理时间。 2. 内存资源评估:根据服务器所需处理的数据量和访问模式,以及所需的内存大小,可以使用公式:内存资源 = 平均数据量 * 平均访问时间。 3. 存储资源评估:根据服务器所需存储的数据量和访问模式,以及所需的存储空间,可以使用公式:存储资源 = 平均数据量 * 平均存储时间。 4. 网络资源评估:根据服务器所需传输的数据量和传输模式,以及所需的网络带宽,可以使用公式:网络资源 = 平均数据量 * 平均传输时间。 在实际应用中,根据具体情况,可以进一步细化和调整这些公式,考虑服务器的负载均衡、容错能力、安全性等因素。 通过对服务器资源进行评估,可以帮助管理员合理规划服务器硬件配置,提高服务器的性能和稳定性,满足用户的需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值