【博客631】监控网卡与进程网络IO使用情况
监控进程的网络IO使用情况
1、vnstat
由于 vnstat 依赖于内核提供的信息,因此执行以下命令来验证内核是否提供了 vnStat 所期望的所有信息:
# vnstat --testkernel
This test will take about 60 seconds.
Everything is ok.
不带任何参数的 vnstat 将为您提供包含以下信息的快速摘要:
- 上次更新位于 /var/lib/vnstat/ 下的 vnstat 数据库时
- 从它开始收集特定接口的统计信息开始
- 过去两个月和过去两天的网络统计数据(传输的字节数、接收的字节数)。
# vnstat
Database updated: Sat Oct 15 11:54:00 2011eth0 since 10/01/11rx: 12.89 MiB tx: 6.94 MiB total: 19.82 MiBmonthlyrx | tx | total | avg. rate------------------------+-------------+-------------+---------------Sep '11 12.90 MiB | 6.90 MiB | 19.81 MiB | 0.14 kbit/sOct '11 12.89 MiB | 6.94 MiB | 19.82 MiB | 0.15 kbit/s------------------------+-------------+-------------+---------------estimated 29 MiB | 14 MiB | 43 MiB |dailyrx | tx | total | avg. rate------------------------+-------------+-------------+---------------yesterday 4.30 MiB | 2.42 MiB | 6.72 MiB | 0.64 kbit/stoday 2.03 MiB | 1.07 MiB | 3.10 MiB | 0.59 kbit/s------------------------+-------------+-------------+---------------estimated 4 MiB | 2 MiB | 6 MiB |
注意:如果刚刚安装了 vnStat,它将给出以下消息“eth0:还没有足够的数据可用。”。等待一段时间,然后再次尝试该命令。
显示实时网络统计:
使用vnstat -l显示实时网络统计信息,按 Ctrl-C 停止它后,vnstat 将显示实时监$ vnstat -l
Monitoring eth0... (press CTRL-C to stop)rx: 2 kbit/s 5 p/s tx: 2 kbit/s 4 p/s
2、ftop
界面说明
=>代表发送数据,<= 代表接收数据
TX:发送流量
RX:接收流量
TOTAL:总流量
Cumm:运行iftop到目前时间的总流量
peak:流量峰值
rates:分别表示过去 2s 10s 40s 的平均流量
常用参数
-i 指定需要检测的网卡, 如果有多个网络接口,则需要注意网络接口的选择,如:# iftop -i eth1
-B 将输出以byte为单位显示网卡流量,默认是bit
-n 将输出的主机信息都通过IP显示,不进行DNS解析
-N 只显示连接端口号,不显示端口对应的服务名称
-F 显示特定网段的网卡进出流量 如iftop -F 192.168.85.0/24
-h 帮助,显示参数信息
-p 以混杂模式运行iftop,此时iftop可以用作网络嗅探器 ;
-P 显示主机以及端口信息
-m 设置输出界面中最上面的流量刻度最大值,流量刻度分5个大段显示 如:# iftop -m 100M
-f 使用筛选码选择数据包来计数 如iftop -f filter code
-b 不显示流量图形条
-c 指定可选的配置文件 如iftop -c config file
-t 使用不带ncurses的文本界面,以下两个是只和-t一起用的:-s num num秒后打印一次文本输出后退出,-t -s 60组合使用,表示取60秒网络流量输出到终端-L num 打印的行数
-f 参数支持tcpdump的语法,可以使用各种过滤条件。
进入界面后的操作
一般参数
P 切换暂停/继续显示
h 在交互界面/状态输出界面之间切换
b 切换是否显示平均流量图形条
B 切换显示2s 10s和40s内的平均流量
T 切换是否显示每个连接的总流量
j/k 向上或向下滚动屏幕显示当前的连接信息
f 编辑筛选码
l 打开iftop输出过滤功能 ,如输入要显示的IP按回车键后屏幕就只显示与这个IP相关的流量信息
L 切换显示流量刻度范围,刻度不同,流量图形条也会不同
q 退出iftop
主机参数
n 使iftop输出结果以IP或主机名的方式显示
s 切换是否显示源主机信息
d 切换是否显示远端目标主机信息
t 切换输出模式,一行或多行
端口显示参数
N 切换显示端口号/端口号对应服务名称
S 切换是否显示本地源主机的端口信息
D 切换是否显示远端目标主机的端口信息
p 切换是否显示端口信息
输出排序参数
1/2/3 通过第一列/第二列/第三列排序
< 根据左边的本地主机名或IP地址进行排序
> 根据远端目标主机的主机名或IP地址进行排序
o 切换是否固定显示当前的连接
使用示例
1、显示网卡eth0的信息,主机通过ip显示
iftop -i eth0 -n2、显示端口号(添加-P参数,进入界面可通过p参数关闭)
iftop -i eth0 -n -P3、显示将输出以byte为单位显示网卡流量,默认是bit
iftop -i eth0 -n -B4、显示流量进度条
iftop -i eth0 -n(进入界面后按下L)5、显示每个连接的总流量
iftop -i eth0 -n(进入界面后按下T)6、显示指定ip 172.17.1.158的流量
iftop -i eth0 -n(进入界面后按下l,输入172.17.1.158回车)
实战-找出最费流量的ip和端口号:









3、nethogs
语法
nethogs(选项)(参数)
选项
usage: nethogs [-V] [-h] [-b] [-d seconds] [-v mode] [-c count] [-t] [-p] [-s] [device [device [device ...]]]-V : 打印版本。-h : 打印此帮助。-b : bughunt模式 - 暗示tracemode。-d : 延迟更新刷新率(以秒为单位)。 默认值为1。-v : 视图模式(0 = KB / s,1 =总KB,2 =总B,3 =总MB)。 默认值为0。-c : 更新次数。 默认为0(无限制)。-t : tracemode.-p : 煽动混乱模式(不推荐)。-s : 按发送列排序输出。-a : 监控所有设备,甚至环回/停止。device : 要监控的设备。 默认是所有接口启动和运行,不包括环回
当nethogs运行时,按:
q:退出s:按SENT流量排序r:按RECEIVE流量排序m:在总(KB,B,MB)和KB / s模式之间切换
其他参数和用法
-d : 刷新间隔
-h : 帮助
-p : promiscious 模式
-t : trace模式
-V : 版本
NetHogs 命令行参数
用-d来添加刷新频率参数,device name 用来检测给定的某个或者某些设备的带宽(默认是eth0)。
例如:设置5秒钟的刷新频率,键入如下命令即可:
nethogs -d 5
如果只用来监视设备(eth0)的网络带宽可以使用如下命令:
nethogs eth0
如果要同时监视eth0和eth1接口,使用以下命令即可:
nethogs eth0 eth1
效果如图所示:
相关文章:
【博客631】监控网卡与进程网络IO使用情况
监控进程的网络IO使用情况 1、vnstat 由于 vnstat 依赖于内核提供的信息,因此执行以下命令来验证内核是否提供了 vnStat 所期望的所有信息: # vnstat --testkernel This test will take about 60 seconds. Everything is ok.不带任何参数的 vnstat 将…...
【Leetcode】【简单】35. 搜索插入位置
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 示例 1: 输入: nums [1,3,5,6], target 5 输出: 2 示例 2: 输入:…...
sql面试题
mysql优化 优化准则: 建表时:合理选择字段的类型,单表字段数量 sql查询尽量单表操作,避免复杂操作,复杂的多表通过java代码实现 构建复合索引优化,索引尽量可以覆盖主要业务查询 sql避免索引失效 避免大…...
SQL 进阶刷题笔记
SQL 进阶刷题笔记 一、MySQL 进阶 这里主要是 MySQL 刷题相关笔记,方便后面温习和查阅,希望可以帮到大家!!! 题1 请计算每张SQL类别试卷发布后,当天5级以上的用户作答的人数uv和平均分avg_score࿰…...
[网鼎杯 2020 朱雀组]Think Java
SqlDict.java ,其中sql语句处存在sql注入漏洞 package .sqldict;import cn.abc.core.sqldict.Row; import cn.abc.core.sqldict.Table; import java...
AIR32F103(十) 在无系统环境和FreeRTOS环境集成LVGL
目录 AIR32F103(一) 合宙AIR32F103CBT6开发板上手报告AIR32F103(二) Linux环境和LibOpenCM3项目模板AIR32F103(三) Linux环境基于标准外设库的项目模板AIR32F103(四) 27倍频216MHz,CoreMark跑分测试AIR32F103(五) FreeRTOSv202112核心库的集成和示例代码AIR32F103(六) ADC,I2S…...
SpringBoot接口 - 如何统一异常处理
SpringBoot接口如何对异常进行统一封装,并统一返回呢?以上文的参数校验为例,如何优雅的将参数校验的错误信息统一处理并封装返回呢?为什么要优雅的处理异常如果我们不统一的处理异常,经常会在controller层有大量的异常…...
如何使用Python进行数据可视化
数据可视化是一种将数据呈现为图形或图表的技术,它有助于理解和发现数据中的模式和趋势。Python是一种流行的编程语言,有很多库可以帮助我们进行数据可视化。在本文中,我们将介绍使用Python进行数据可视化的基本步骤。 第一步:导…...
vue -- 自定义指令钩子函数补充 自定义过滤器filter参数
自定义指令补充 自定义指令通过钩子函数的形式来实现自定义的功能 这里是几个常用的钩子函数以及它的方法: bind:只调用一次,指令第一次绑定到元素时调用,在这里可以进行一次性的初始化设置。 inserted:被绑定元素插…...
Qt不会操作?Qt原理不知道? | Qt详细讲解
文章目录Qt界面开发必备知识UI界面与控件类型介绍Qt设计器原理控件类型的介绍信号与槽机制处理常用控件创建与设置常见展示型控件创建与设置常见动作型控件创建与设置常见输入型控件创建与设置常见列表控件创建于设置Qt中对象树的介绍项目源码结构刨析.pro.hmain.cpp.cppQt界面…...
LeetCode-面试题 17.05. 字母与数字【前缀和,哈希表】
LeetCode-面试题 17.05. 字母与数字【前缀和,哈希表】题目描述:解题思路一:前缀和。数字为-1,字母为1。我们需要找到的子数组是前缀和之差为0的,例如s[right]-s[left]0,那么s[right]s[left],变为…...
华为OD机试题 - 叠放书籍(JavaScript)| 机考必刷
更多题库,搜索引擎搜 梦想橡皮擦华为OD 👑👑👑 更多华为OD题库,搜 梦想橡皮擦 华为OD 👑👑👑 更多华为机考题库,搜 梦想橡皮擦华为OD 👑👑👑 华为OD机试题 最近更新的博客使用说明本篇题解:叠放书籍题目输入输出示例一输入输出Code解题思路版权说明华为O…...
【数据库概论】第十一章 数据库并发控制
第十一章 并发控制 在多处理机系统中,每个处理机可以运行一个事务,多个处理机可以同时运行多个事务,实现多个事务并行运行,这就是同时并发方式。当多个用户并发存取数据库时会产生多个事务同时存取同一事务的情况,如果…...
Nginx配置实例-反向代理案例二
实现效果:使用nginx反向代理,根据访问的路径跳转到不同端口服务 nginx监听端口为9000, 访问 http://127.0.0.1:9000/edu/ 直接跳转到127.0.0.1:8080 访问 http://127.0.0.1:9000/vod/ 直接跳转到127.0.0.1:8081 一、准备工作 1. 准备两个tom…...
HTML 字符集
为了正确显示 HTML 页面,Web 浏览器必须知道要使用哪个字符集。 从 ASCII 到 UTF-8 ASCII 是第一个字符编码标准。ASCII 定义了 128 种可以在互联网上使用的字符:数字(0-9)、英文字母(A-Z)和一些特殊字符…...
【C语言】每日刷题 —— 牛客语法篇(3)
前言 大家好,继续更新专栏c_牛客,不出意外的话每天更新十道题,难度也是从易到难,自己复习的同时也希望能帮助到大家,题目答案会根据我所学到的知识提供最优解。 🏡个人主页:悲伤的猪大肠9的博客…...
基于Vue3和element-plus实现一个完整的登录功能
先看一下最终要实现的效果:登录页面:注册页面:(1)引入element-plus组件库引入组件库的方式有好多种,在这里我就在main.js全局引入了.npm i element-plus -Smain.js中代码:import { createApp } from "vue"; //element-plus import ElementPlus from "element-pl…...
【java】Java 中泛型的实现原理
文章目录前序1. 泛型1.1 泛型方法1.2 泛型类1.3 泛型接口2. 泛型的基本原理3. 小结前序 泛型是 Java 开发中常用的技术,了解泛型的几种形式和实现泛型的基本原理,有助于写出更优质的代码。本文总结了 Java 泛型的三种形式以及泛型实现原理。 1. 泛型 …...
【C++提高编程】C++全栈体系(二十七)
C提高编程 第五章 STL- 常用算法 三、常用排序算法 算法简介: sort //对容器内元素进行排序random_shuffle //洗牌 指定范围内的元素随机调整次序merge // 容器元素合并,并存储到另一容器中reverse // 反转指定范围的元素 1. sort 功能描述&#…...
软考高级信息系统项目管理师系列之三十九:项目集管理
软考高级信息系统项目管理师系列之三十九:项目集管理 一、项目集管理内容二、项目集管理基础概述1.项目集定义2.项目集活动3.项目集管理三、项目集的管理过程四、项目集治理1.项目集治理概述2.项目集指导委员会的职责3.项目集治理功能五、项目集生命周期1.项目集生命周期三个阶…...
FLUX.小红书极致真实V2惊艳效果:玻璃反光+金属光泽+织物垂坠感同步呈现
FLUX.小红书极致真实V2惊艳效果:玻璃反光金属光泽织物垂坠感同步呈现 你是否曾惊叹于小红书上那些质感炸裂、光影绝美的图片?那些照片里,玻璃杯的反光清澈透亮,金属饰品的光泽锐利逼真,毛衣的垂坠感仿佛能触摸到纹理。…...
Qwen3-32B-Chat多场景落地:制造业设备说明书生成+故障排查话术训练
Qwen3-32B-Chat多场景落地:制造业设备说明书生成故障排查话术训练 1. 引言:制造业智能化转型的痛点与机遇 在制造业数字化转型浪潮中,技术文档管理与设备故障处理一直是两大核心痛点: 设备说明书难题:传统设备手册更…...
Qwen3.5-9B一文详解:9B参数开源镜像+Gradio界面完整部署流程
Qwen3.5-9B一文详解:9B参数开源镜像Gradio界面完整部署流程 1. 引言 Qwen3.5-9B作为新一代开源大模型,凭借其9B参数的强大能力和创新架构,正在成为开发者社区的热门选择。本文将带您从零开始,完整部署这个集成了Gradio界面的强大…...
电子科技大学计算机复试面试:如何用一份‘挖坑式’简历引导老师提问?
电子科技大学计算机复试面试:如何用一份‘挖坑式’简历引导老师提问? 面试的本质是一场精心设计的对话博弈。对于电子科技大学计算机专业的复试考生而言,简历不仅是经历的罗列,更是引导面试走向的战略地图。本文将揭示如何通过&qu…...
嵌入式脉冲时间间隔分析库:高精度低频信号测量方案
1. 项目概述"Pulses" 是一个面向嵌入式电能计量与低频信号测量场景的轻量级脉冲时间间隔分析库。其核心设计目标并非通用频率计,而是精准捕获并解析由电能表、霍尔传感器、机械式转盘或光电编码器等物理设备输出的低频、非周期性、高精度时间戳脉冲序列—…...
【电路笔记 STM32】Cortex-M3 Cortex-M4 Cortex-M7 ARM架构区别+关键不同+图示对比+代码兼容性
文章目录 内核特性Cortex-M3架构特性:Cortex-M4架构特性:Cortex-M7架构特性: Cortex-M3 和 Cortex-M4关键不同点图示对比代码兼容性 Cortex-M4 和 Cortex-M7关键不同点图示对比代码兼容性 CG 内核特性 Cortex-M3架构特性: 特性 …...
RSL10 dongle 驱动识别不到
RSL10 USB Dongle(PN: RSL10-USB001GEVK ) 可作为central 设备对peripheral 设备进行确认与诊断也可在开发E7160sl presuite产品作为无线验配编程器使用。 有客户反馈在使用RSL10 USB Dongle作为无线验配编程器时,无法搜索到设备。...
Python+OpenCV图像去噪指南:如何用中值滤波拯救你的椒盐噪声照片(附完整代码)
PythonOpenCV图像去噪实战:中值滤波拯救椒盐噪声照片的完整指南 每次翻看手机相册时,那些被"雪花点"毁掉的重要照片总让人懊恼——毕业典礼上的集体照、旅行时抓拍的绝美瞬间,因为突如其来的噪点变得难以辨认。这种黑白杂点正是图像…...
五种新鲜与腐烂果蔬识别分割数据集labelme格式1131张5类别
注意数据集中有部分增强图片数据集格式:labelme格式(不包含mask文件,仅仅包含jpg图片和对应的json文件)图片数量(jpg文件个数):1131标注数量(json文件个数):1131标注类别数:10标注类别名称:["fresh_apple",&…...
SMUDebugTool全栈调试指南:从硬件交互到性能优化的认知升级之路
SMUDebugTool全栈调试指南:从硬件交互到性能优化的认知升级之路 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: h…...
