当前位置: 首页 > 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) 控件,这个控件可以折叠。部分用户体验后&#…...

地震勘探——干扰波识别、井中地震时距曲线特点

目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波:可以用来解决所提出的地质任务的波;干扰波:所有妨碍辨认、追踪有效波的其他波。 地震勘探中,有效波和干扰波是相对的。例如,在反射波…...

pam_env.so模块配置解析

在PAM(Pluggable Authentication Modules)配置中, /etc/pam.d/su 文件相关配置含义如下: 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块,负责验证用户身份&am…...

macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用

文章目录 问题现象问题原因解决办法 问题现象 macOS启动台(Launchpad)多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显,都是Google家的办公全家桶。这些应用并不是通过独立安装的…...

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

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

使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台

🎯 使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台 📌 项目背景 随着大语言模型(LLM)的广泛应用,开发者常面临多个挑战: 各大模型(OpenAI、Claude、Gemini、Ollama)接口风格不统一;缺乏一个统一平台进行模型调用与测试;本地模型 Ollama 的集成与前…...

代理篇12|深入理解 Vite中的Proxy接口代理配置

在前端开发中,常常会遇到 跨域请求接口 的情况。为了解决这个问题,Vite 和 Webpack 都提供了 proxy 代理功能,用于将本地开发请求转发到后端服务器。 什么是代理(proxy)? 代理是在开发过程中,前端项目通过开发服务器,将指定的请求“转发”到真实的后端服务器,从而绕…...

【数据分析】R版IntelliGenes用于生物标志物发现的可解释机器学习

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍流程步骤1. 输入数据2. 特征选择3. 模型训练4. I-Genes 评分计算5. 输出结果 IntelliGenesR 安装包1. 特征选择2. 模型训练和评估3. I-Genes 评分计…...

【Java学习笔记】BigInteger 和 BigDecimal 类

BigInteger 和 BigDecimal 类 二者共有的常见方法 方法功能add加subtract减multiply乘divide除 注意点:传参类型必须是类对象 一、BigInteger 1. 作用:适合保存比较大的整型数 2. 使用说明 创建BigInteger对象 传入字符串 3. 代码示例 import j…...

Docker 本地安装 mysql 数据库

Docker: Accelerated Container Application Development 下载对应操作系统版本的 docker ;并安装。 基础操作不再赘述。 打开 macOS 终端,开始 docker 安装mysql之旅 第一步 docker search mysql 》〉docker search mysql NAME DE…...

A2A JS SDK 完整教程:快速入门指南

目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库&#xff…...