当前位置: 首页 > news >正文

Linux评估网络性能

网络性能直接影响应用程序对外提供服务的稳定性和可靠性

  1. ping命令检测网络的连通性
    如果网络反应缓慢,或连接中断,可以用ping来测试网络的连通情况

    在这里插入图片描述

    time值(单位为毫秒)显示了两台主机之间的网络延时情况。如果此值很大,则表示网络的延时很大。
    在这个输出的最后,是对上面输出信息的一个总结。packet loss表示网络的丢包率,此值越小,表示网络的质量越高。

  2. 通过netstat -i命令组合检测网络接口状况
    netstat命令提供了网络接口的详细信息

    E540:~$ netstat -i
    Kernel Interface table
    Iface      MTU    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg
    docker0   1500        0      0      0 0             0      0      0      0 BMU
    enp4s0    1500        0      0      0 0             0      0      0      0 BMU
    lo       65536     5932      0      0 0          5932      0      0      0 LRU
    wlp5s0    1500   199831      0     73 0        169157      0      0      0 BMRU
    
    • face表示网络设备的接口名称
    • MTU表示最大传输单元,单位为字节
    • RX-OK/TX-OK表示已经准确无误地接收/发送了多少数据包
    • RX-ERR/TX-ERR表示接收/发送数据包时产生了多少错误
    • RX-DRP/TX-DRP表示接收/发送数据包时丢弃了多少数据包
    • RX-OVR/TX-OVR表示由于误差而遗失了多少数据包
    • Flg表示接口标记。其中,各个选项的含义如下
      • L表示该接口是个回环设备
      • B表示设置了广播地址
      • M表示接收所有数据包
      • R表示接口正在运行
      • U表示接口处于活动状态
      • O表示在该接口上禁用arp
      • P表示一个点到点的连接

    正常情况下,RX-ERR/TX-ERR、RX-DRP/TX-DRP和RX-OVR/TX-OVR的值都应该为0。如果这几个选项的值不为0,并且很大,那么网络质量肯定有问题,网络传输性能也一定会下降

  3. 通过netstat -r命令组合检测系统的路由表信息
    在网络不通或者网络异常时,首先要检查系统的路由表信息。netstat -r的输出结果与route命令的输出完全相同

    E540:~$ netstat -r
    Kernel IP routing table
    Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
    default         _gateway        0.0.0.0         UG        0 0          0 wlp5s0
    link-local      0.0.0.0         255.255.0.0     U         0 0          0 wlp5s0
    172.17.0.0      0.0.0.0         255.255.0.0     U         0 0          0 docker0
    192.168.0.0     0.0.0.0         255.255.255.0   U         0 0          0 wlp5s0
    

    重点关注的是default行对应的值,default项表示系统的默认路由,对应的网络接口为eth0

  4. 通过sar –n命令组合显示系统的网络运行状态
    sar提供4种不同的选项来显示网络统计信息
    通过“-n”选项可以指定4个不同类型的开关:

    • DEV
    • EDEV
    • SOCK
    • FULL
    E540:~$ sar -n DEV 1
    Linux 5.15.0-126-generic (Edge-E540) 	2024年12月08日 	_x86_64_	(8 CPU)14时54分17秒     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s   %ifutil
    14时54分18秒        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
    14时54分18秒    enp4s0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
    14时54分18秒    wlp5s0      2.00      0.00      0.12      0.00      0.00      0.00      0.00      0.00
    14时54分18秒   docker0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00# -------------------------------------------------------------------------------------
    E540:~$ sar -n DEV 2 3
    Linux 5.15.0-126-generic (Edge-E540) 	2024年12月08日 	_x86_64_	(8 CPU)14时53分23秒     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s   %ifutil
    14时53分25秒        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
    14时53分25秒    enp4s0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
    14时53分25秒    wlp5s0      1.50      0.00      0.08      0.00      0.00      0.00      0.00      0.00
    14时53分25秒   docker0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.0014时53分25秒     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s   %ifutil
    14时53分27秒        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
    14时53分27秒    enp4s0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
    14时53分27秒    wlp5s0     12.00      2.50      3.36      1.15      0.00      0.00      0.00      0.00
    14时53分27秒   docker0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.0014时53分27秒     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s   %ifutil
    14时53分29秒        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
    14时53分29秒    enp4s0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
    14时53分29秒    wlp5s0      2.50      0.50      0.16      0.05      0.00      0.00      0.00      0.00
    14时53分29秒   docker0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00Average:        IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s   %ifutil
    Average:           lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
    Average:       enp4s0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
    Average:       wlp5s0      5.33      1.00      1.20      0.40      0.00      0.00      0.00      0.00
    Average:      docker0      0.00      0.00      0.00      0.00      0.00      0.00      0.00      0.00
    
    • IFACE表示网络接口设备。
    • rxpck/s表示每秒钟接收的数据包大小。
    • txpck/s表示每秒钟发送的数据包大小。
    • rxkB/s表示每秒钟接收的字节数。
    • txkB/s表示每秒钟发送的字节数。
    • rxcmp/s表示每秒钟接收的压缩数据包。
    • txcmp/s表示每秒钟发送的压缩数据包。
    • rxmcst/s表示每秒钟接收的多播数据包。

    通过“sar –n”的输出,可以清楚地显示网络接口发送、接收数据的统计信息。此外还可以通过“sar -n EDEV 2 3”来统计网络错误信息等。

网络问题是简单而且容易处理的,一般都能迅速定位问题。解决问题的方法一般是增加网络带宽,或者优化网络部署环境。

除了上面介绍的几个命令外,排查网络问题经常用到的命令还有traceroute(它主要用于跟踪数据包的传输路径),以及nslookup命令(它主要用于判断DNS解析信息)

相关文章:

Linux评估网络性能

网络性能直接影响应用程序对外提供服务的稳定性和可靠性 ping命令检测网络的连通性 如果网络反应缓慢,或连接中断,可以用ping来测试网络的连通情况 time值(单位为毫秒)显示了两台主机之间的网络延时情况。如果此值很大,则表示网络的延时很大…...

实战ansible-playbook(四) -文件操作重定向/追加

原始命令: ----------阶段1--------------- apt-get update -y apt install nano vim iputils-ping net-tools dialog gcc apt-utils make -y systemctl stop unattended-upgradessystemctl disable unattended-upgradesecho APT::Periodic::Update-Package-Lists "1&qu…...

简单题:1.两数之和

题目描述: 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 要求: 可以假设每种输入只会对应一个答案,并且你不能使用两次相同的元素…...

RTCMultiConnection 跨域问题解决

js套件地址 https://github.com/muaz-khan/RTCMultiConnection server套件地址 https://github.com/muaz-khan/RTCMultiConnection-Server 要解决的就是server代码的跨域问题 原装写法: 解决写法: // 喜欢组合语法的自己组 const io new ioServer.S…...

23种设计模式之解释器模式

目录 1. 简介2. 代码2.1 Expression (抽象表达式类)2.2 TerminalExpression (终结符表达式类)2.3 OrExpression (非终结符表达式类)2.4 AndExpression (非终结符表达式类)2.5 Test &…...

Postgresql内核源码分析-表数据膨胀是怎么回事

专栏内容:postgresql内核源码分析个人主页:我的主页座右铭:天行健,君子以自强不息;地势坤,君子以厚德载物. 目录 前言 表数据膨胀的由来 什么时候产生膨胀 首先是update 还有delete 如何消…...

github使用SSH进行克隆仓库

SSH 密钥拉取git 查询密钥是否存在 s -al ~/.ssh这个文件夹下 known_hosts 就是存在的密钥文件 创建密钥文件 ssh-keygen -t rsa -b 4096 -C "testtt.com"-t rsa 是 rsa 算法加密 -b 是指定密钥的长度(以位为单位)。 -C 是用于给密钥添加注…...

【Linux系统】 Linux内核与UNIX设计哲学的结合

Linux 内核虽然不是 UNIX 的直接衍生物,但它深受 UNIX 设计哲学的影响。Linux 的开发者,尤其是 Linus Torvalds,在设计和实现 Linux 时,借鉴了 UNIX 的核心思想,使 Linux 成为一个类 UNIX 系统。 以下从 UNIX 设计哲学…...

以太网PHY_RGMII通信(基于RTL8211)--FPGA学习笔记22

一、以太网基础知识 FPGA千兆网口数据传输MDIO接口——FPGA学习笔记3_yt8531sh原理图-CSDN博客 二、通信协议 1、MDIO协议格式 (1)Pre:前导码32bit全是1,同步通信 32bit (2)ST:开始字段 01 表示开始通信 2bit…...

PowerShell 脚本实战:解决 GitLab 仓库文件批量重命名难题

使用PowerShell脚本解决文件重命名问题:一次实践经验分享 在软件开发过程中,我们经常会遇到需要批量处理文件的情况。最近,我在一个项目中就遇到了这样一个需求:将GitLab仓库中所有的.ts和.py文件的扩展名修改为原扩展名加上&quo…...

数据分析及应用:滴滴出行打车日志数据分析

目录 0 日志数据集介绍 1 构建数据仓库 1.1 ods创建用户打车订单表 1.2 创建分区 1.3 上传到对应分区...

Odoo :一款免费且开源的食品生鲜领域ERP管理系统

文 / 贝思纳斯 Odoo金牌合作伙伴 引言 提供业财人资税的精益化管理,实现研产供销的融通、食品安全的追踪与溯源,达成渠道的扁平化以及直面消费者的 D2C 等数字化解决方案,以此提升运营效率与核心竞争力,支撑高质量的变速扩张。…...

请求路径中缺少必需的路径变量[xxxId]

一、请求路径中缺少了必需的路径变量 xxxId。 这通常发生在构建API请求时,未正确设置URL中的参数。以下是解决此问题的步骤: 检查API文档:确认 xxxId是否确实是请求路径中的必需参数。 构建请求URL:确保在构建请求URL时&#xff…...

【在Linux世界中追寻伟大的One Piece】HTTP cookie

目录 1 -> 引入HTTP cookie 1.1 -> 定义 1.2 -> 工作原理 1.3 -> 分类 1.4 -> 安全性 2 -> 认识cookie 2.1 -> 基本格式 2.2 -> GMT vs UTC 3 -> cookie的生命周期 3.1 -> 安全性考虑 3.2 -> 安全测试cookie 3.2.1 -> 测试co…...

COLA学习之DDD各种术语分析(一)

小伙伴们,你们好,我是老寇,前段时间,老寇刚看完张健飞老师的两本书《代码精进之路:从码农到工匠》和《程序员的底层思维》,书中的内容让我受益匪浅,因此,我把对COLA的理解做成专栏分…...

Pygments:高效的语法高亮工具

简介:Pygments 是一个强大的 Python 库,旨在为代码和文本提供优雅的语法高亮支持。无论是 Web 开发、文档生成,还是代码审阅,Pygments 都能轻松应对多种编程语言的高亮需求。其设计简洁、功能丰富,适合需要频繁进行代码…...

算法-字符串-43.字符串相乘

一、题目 二、思路解析 1.思路: 1.双重for循环,倒序依次相乘 2.在倒序处理进位问题 3.最后返回参数的类型是string,用StringBuilder拼接,再转换为字符串 2.常用方法: 1.equals,比较对象内容是否一致 "0".eq…...

linux的vdagent框架设计

1、vdagent Linux 的 spice 客户代理由两部分组成,一个系统范围的守护进程 spice-vdagentd 和一个 X11 会话代理 spice-vdagent,每个 X11 会话有一个。spice-vdagentd 通过 Sys-V initscript 或 systemd 单元启动。 如下图:spice-vdagent&a…...

CV工程师专用键盘开源项目硬件分析

1、前言 作为一个电子发烧友,你是否有遇到过这样的问题呢。当我们去查看函数定义的时候,需要敲击鼠标右键之后选择go to definition。更高级一些,我们使用键盘的快捷键来查看定义,这时候可以想象一下,你左手按下ALT&a…...

qtcanpool 知 08:Docking

文章目录 前言口味改造后语 前言 很久以前,作者用 Qt 仿照前端 UI 设计了一个 ministack(https://gitee.com/icanpool/qtcanpool/blob/release-1.x/src/libs/qcanpool/ministack.h) 控件,这个控件可以折叠。部分用户体验后&#…...

浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)

✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义(Task Definition&…...

2025年能源电力系统与流体力学国际会议 (EPSFD 2025)

2025年能源电力系统与流体力学国际会议(EPSFD 2025)将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会,EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...

解锁数据库简洁之道:FastAPI与SQLModel实战指南

在构建现代Web应用程序时,与数据库的交互无疑是核心环节。虽然传统的数据库操作方式(如直接编写SQL语句与psycopg2交互)赋予了我们精细的控制权,但在面对日益复杂的业务逻辑和快速迭代的需求时,这种方式的开发效率和可…...

数据链路层的主要功能是什么

数据链路层(OSI模型第2层)的核心功能是在相邻网络节点(如交换机、主机)间提供可靠的数据帧传输服务,主要职责包括: 🔑 核心功能详解: 帧封装与解封装 封装: 将网络层下发…...

Springcloud:Eureka 高可用集群搭建实战(服务注册与发现的底层原理与避坑指南)

引言:为什么 Eureka 依然是存量系统的核心? 尽管 Nacos 等新注册中心崛起,但金融、电力等保守行业仍有大量系统运行在 Eureka 上。理解其高可用设计与自我保护机制,是保障分布式系统稳定的必修课。本文将手把手带你搭建生产级 Eur…...

Python ROS2【机器人中间件框架】 简介

销量过万TEEIS德国护膝夏天用薄款 优惠券冠生园 百花蜂蜜428g 挤压瓶纯蜂蜜巨奇严选 鞋子除臭剂360ml 多芬身体磨砂膏280g健70%-75%酒精消毒棉片湿巾1418cm 80片/袋3袋大包清洁食品用消毒 优惠券AIMORNY52朵红玫瑰永生香皂花同城配送非鲜花七夕情人节生日礼物送女友 热卖妙洁棉…...

wpf在image控件上快速显示内存图像

wpf在image控件上快速显示内存图像https://www.cnblogs.com/haodafeng/p/10431387.html 如果你在寻找能够快速在image控件刷新大图像(比如分辨率3000*3000的图像)的办法,尤其是想把内存中的裸数据(只有图像的数据,不包…...

嵌入式学习之系统编程(九)OSI模型、TCP/IP模型、UDP协议网络相关编程(6.3)

目录 一、网络编程--OSI模型 二、网络编程--TCP/IP模型 三、网络接口 四、UDP网络相关编程及主要函数 ​编辑​编辑 UDP的特征 socke函数 bind函数 recvfrom函数(接收函数) sendto函数(发送函数) 五、网络编程之 UDP 用…...

第一篇:Liunx环境下搭建PaddlePaddle 3.0基础环境(Liunx Centos8.5安装Python3.10+pip3.10)

第一篇:Liunx环境下搭建PaddlePaddle 3.0基础环境(Liunx Centos8.5安装Python3.10pip3.10) 一:前言二:安装编译依赖二:安装Python3.10三:安装PIP3.10四:安装Paddlepaddle基础框架4.1…...

Spring Boot + MyBatis 集成支付宝支付流程

Spring Boot MyBatis 集成支付宝支付流程 核心流程 商户系统生成订单调用支付宝创建预支付订单用户跳转支付宝完成支付支付宝异步通知支付结果商户处理支付结果更新订单状态支付宝同步跳转回商户页面 代码实现示例&#xff08;电脑网站支付&#xff09; 1. 添加依赖 <!…...