【网络奇遇记】揭秘计算机网络的性能指标:时延带宽积|往返时间|利用率|丢包率

本文主要是介绍【网络奇遇记】揭秘计算机网络的性能指标:时延带宽积|往返时间|利用率|丢包率,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述
🌈个人主页:聆风吟
🔥系列专栏:网络奇遇记、数据结构
🔖少年有梦不应止于心动,更要付诸行动。


文章目录

  • 📋上期回顾
  • 一. 时延带宽积
  • 二. 往返时间
  • 三. 利用率
  • 四. 丢包率
  • 📝结语

📋上期回顾

    计算机网络的性能指标是用来衡量和评估网络的各种性能方面的指标。常用的有速率带宽吞吐量时延时延带宽积往返时间利用率丢包率这8个性能指标。通过对这些指标的监测和优化,可以提升网络的性能和效率。

速率:
计算机网络中的速率是指数据的传送速率(即每秒传送多少个比特),也称为数据率或比特率。

带宽:

  • 带宽在模拟信号系统中的意义:是指某个信号所包含的各种不同频率成分所占据的频率范围;
  • 带宽在计算机网络中的意义:用来表示网络的通信线路所能传送数据的能力,即在单位时间内从网络中的某一点到另一点所能通过的最高数据率。

吞吐量:
吞吐量是指在单位时间内通过某个网络或接口的实际数据量。吞吐量会受网络带宽的限制。

时延:
时延是指数据从网络的一端传送到另一端所耗费的时间,也称为延迟或迟延。网络中的时延由发送时延、传播时延、排队时延以及处理时延这四部分组成。

  • 发送时延:发送时延是主机或路由器发送分组所耗费的时间,计算公式如下:在这里插入图片描述

  • 传播时延:传播时延是电磁波在链路(传播介质)上传播一定的距离所耗费的时间,计算公式如下:
    在这里插入图片描述

  • 排队时延:分组在路由器的输入队列和输出队列中排队缓存所耗费的时间就是排队时延,一般无法用一个简单的公式进行计算。

  • 处理时延:路由器对分组进行这一系列处理工作所耗费的时间就是处理时延,一般无法用一个简单的公式进行计算。



一. 时延带宽积

    时延带宽积是传播时延和带宽的乘积。时延带宽积的计算公式如下所示:
在这里插入图片描述
    我们可以将链路想象成一个圆形管道,管道的长度是链路的传播时延(即以时间作为单位来表示链路长度),管道的横截面积是链路的带宽,如下图所示。时延带宽积就相当于管道的容积,表示这样的链路可以容纳的比特数量。
在这里插入图片描述



二. 往返时间

    往返时间(RTT)是指从发送端发送数据分组开始,到发送端收到接收端发来的相应确认分组为止,总共耗费的时间。我们将网络简化成主机A和主机B通过一台路由器进行相连,共两段链路。主机A给主机B发送数据分组(下图 ①),主机B收到数据分组后给主机A发送相应的确认分组(下图 ②)。从主机A发送分组数据分组开始,到主机A收到主机B发发来的相应确认分组为止,就是一次交互的往返时间。
在这里插入图片描述



三. 利用率

利用率有链路利用率网络利用率两种。

链路利用率:

链路利用率是指某条链路有百分之几的时间是被利用的(即有数据通过)。完全空闲的链路的利用率为零。

网络利用率

网络利用率是指网络中所有链路的链路利用率的加权平均。

当某链路的利用率增大时,该链路引起的时延就会迅速增加。例如,当公路上的车流量增大时,公路上的某些地方会出现拥堵,所需行车时间就会变长。网络也是如此,当网络的通信量较少产生的时延并不大,但网络的通信量不断增大时,分组在交换节点(路由器或交换机)中的排队时延会随之增大,因此网络引起的时延就会增大。



四. 丢包率

    丢包率是指在一定的时间范围内,传输过程中丢失的分组数量与总分组数量的比率。丢包率可以分为接口丢包率、节点丢包率、链路丢包率、路径丢包率以及网络丢包率等等,如下图所示:
在这里插入图片描述

分组丢失主要有以下两种情况:

  • 分组在传输过程中出现误码,被传输路径中的节点交换机(例如路由器)或目的主机检测出误码而丢弃。
  • 节点交换机根据丢弃策略主动丢弃分组

丢包率可以反映网络的拥塞情况:

  • 无拥塞时路径丢包率为0
  • 轻度拥塞时路径丢包率为1%~4%
  • 严重拥塞时路径丢包率为5%~15%

当网络的丢包率较高时,通常无法正常使用网络应用。



📝结语

     今天的干货分享到这里就结束啦!如果觉得文章还可以的话,希望能给个三连支持一下,聆风吟的主页还有很多有趣的文章,欢迎小伙伴们前去点评,您的支持就是作者前进的最大动力!
在这里插入图片描述

这篇关于【网络奇遇记】揭秘计算机网络的性能指标:时延带宽积|往返时间|利用率|丢包率的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/556222

相关文章

Python的Darts库实现时间序列预测

《Python的Darts库实现时间序列预测》Darts一个集统计、机器学习与深度学习模型于一体的Python时间序列预测库,本文主要介绍了Python的Darts库实现时间序列预测,感兴趣的可以了解... 目录目录一、什么是 Darts?二、安装与基本配置安装 Darts导入基础模块三、时间序列数据结构与

MyBatis Plus实现时间字段自动填充的完整方案

《MyBatisPlus实现时间字段自动填充的完整方案》在日常开发中,我们经常需要记录数据的创建时间和更新时间,传统的做法是在每次插入或更新操作时手动设置这些时间字段,这种方式不仅繁琐,还容易遗漏,... 目录前言解决目标技术栈实现步骤1. 实体类注解配置2. 创建元数据处理器3. 服务层代码优化填充机制详

C++统计函数执行时间的最佳实践

《C++统计函数执行时间的最佳实践》在软件开发过程中,性能分析是优化程序的重要环节,了解函数的执行时间分布对于识别性能瓶颈至关重要,本文将分享一个C++函数执行时间统计工具,希望对大家有所帮助... 目录前言工具特性核心设计1. 数据结构设计2. 单例模式管理器3. RAII自动计时使用方法基本用法高级用法

Debian 13升级后网络转发等功能异常怎么办? 并非错误而是管理机制变更

《Debian13升级后网络转发等功能异常怎么办?并非错误而是管理机制变更》很多朋友反馈,更新到Debian13后网络转发等功能异常,这并非BUG而是Debian13Trixie调整... 日前 Debian 13 Trixie 发布后已经有众多网友升级到新版本,只不过升级后发现某些功能存在异常,例如网络转

C# LiteDB处理时间序列数据的高性能解决方案

《C#LiteDB处理时间序列数据的高性能解决方案》LiteDB作为.NET生态下的轻量级嵌入式NoSQL数据库,一直是时间序列处理的优选方案,本文将为大家大家简单介绍一下LiteDB处理时间序列数... 目录为什么选择LiteDB处理时间序列数据第一章:LiteDB时间序列数据模型设计1.1 核心设计原则

MySQL按时间维度对亿级数据表进行平滑分表

《MySQL按时间维度对亿级数据表进行平滑分表》本文将以一个真实的4亿数据表分表案例为基础,详细介绍如何在不影响线上业务的情况下,完成按时间维度分表的完整过程,感兴趣的小伙伴可以了解一下... 目录引言一、为什么我们需要分表1.1 单表数据量过大的问题1.2 分表方案选型二、分表前的准备工作2.1 数据评估

Python开发简易网络服务器的示例详解(新手入门)

《Python开发简易网络服务器的示例详解(新手入门)》网络服务器是互联网基础设施的核心组件,它本质上是一个持续运行的程序,负责监听特定端口,本文将使用Python开发一个简单的网络服务器,感兴趣的小... 目录网络服务器基础概念python内置服务器模块1. HTTP服务器模块2. Socket服务器模块

Go语言网络故障诊断与调试技巧

《Go语言网络故障诊断与调试技巧》在分布式系统和微服务架构的浪潮中,网络编程成为系统性能和可靠性的核心支柱,从高并发的API服务到实时通信应用,网络的稳定性直接影响用户体验,本文面向熟悉Go基本语法和... 目录1. 引言2. Go 语言网络编程的优势与特色2.1 简洁高效的标准库2.2 强大的并发模型2.

MySQL中DATE_FORMAT时间函数的使用小结

《MySQL中DATE_FORMAT时间函数的使用小结》本文主要介绍了MySQL中DATE_FORMAT时间函数的使用小结,用于格式化日期/时间字段,可提取年月、统计月份数据、精确到天,对大家的学习或... 目录前言DATE_FORMAT时间函数总结前言mysql可以使用DATE_FORMAT获取日期字段

Python标准库datetime模块日期和时间数据类型解读

《Python标准库datetime模块日期和时间数据类型解读》文章介绍Python中datetime模块的date、time、datetime类,用于处理日期、时间及日期时间结合体,通过属性获取时间... 目录Datetime常用类日期date类型使用时间 time 类型使用日期和时间的结合体–日期时间(