网络性能的四大指标:带宽、时延、抖动、丢包

十月飞翔
• 阅读 1154

衡量网络性能的四大指标:带宽、时延、抖动、丢包。

如何客户需要我们去评估一个网络的性能,我们就可以从这四方面去进行评估。

带宽 1、带宽概念:

带宽在百度百科中定义:在单位时间内从网络中的某一点到另一点所能通过的“最高数据率”。

计算机网络的带宽是指网络可通过的最高数据率,即每秒多少比特(常用的单位是bps(bit per second))。

简单的讲:带宽可以比喻是高速公路,表示单位时间内的能通过的车辆数;

2、带宽的表示:

带宽通常用bps表示,表示每秒多少bit;

描述带宽时常常把“比特/秒”省略。例如,带宽是100M,实际上是100Mbps,这里的Mbps是指兆位/s。

但是我们平时下载软件的速度的单位是Byte/s(字节/秒)。这里涉及到Byte和bit的换算,二进制数系统中每个0或1就是一个位(bit),位是数据存储的最小单位,其中8bit就称为一个字节(Byte)。

因此我们在办理宽带的时候,100M的带宽表示100Mbps,理论的的网络下载速度只有12.5M Bps,实际可能还不足10MBps,这是因为受用户计算机性能、网络设备质量、资源使用情况、网络高峰期、网站服务能力、线路衰耗,信号衰减等多因素的影响,实际网速是无法到达理论网速的。

时延 时延:简单的说,时延就是指报文从网络的一端到另一端所需要的的时间;

举个例子:我在自己的电脑上ping 百度的地址;

从ping的结果中,可以看到时延为12ms,这个时延就是指ICMP报文从我的电脑到百度的服务器所需要得往返时延是12ms;

(Ping指一个数据包从用户的设备发送到测速点,然后再立即从测速点返回用户设备的来回时间。也就是俗称的网络延时,以毫秒ms计算。)

网络时延包括了处理时延、排队时延、发送时延、传播时延这四大部分。在实际中我们主要考虑发送时延与传播时延。

下面我们具体看下每一个时延的含义;

1、处理时延:

交换机、路由器等网络设备在收到报文后要使用一定的时间进行处理。比如解封装分析首部,提取数据,差错检验,路由选择等。

一般高速路由器的处理时延通常是微秒或更低的数量级。

2、排队时延

排队时延简单来说就是路由器或交换机等网络设备处理数据包排队所消耗的时间。

一个数据包的排队时延取决于当前队列中是否有其它报文在传输。

如果该队列是空的,并且当前没有其他报文在传输,则该报文的排队时延为0;反之,如果流量很大,并且许多其他报文也在等待传输,该排队时延将很大;

实际的排队时延通常在毫秒到微秒级。

3、发送时延

发送时延简单讲就是路由器、交换机等网络设备发送数据所需要的时间,也就是路由器队列递交给网络链路所需要的时间。

如果用L比特表示分组的长度,用R bps表示从路由器A到路由器B的链路传输速率,发送时延则是L/R。

实际的发送时延通常在毫秒到微秒级。

4、传播时延

传播时延是指报文在实际的物理链路上传播数据所需要的时间。

传播时延等于两台路由器之间的距离除以传播速率,即传播时延是D/S,其中D是两台路由器之间的距离,S是该链路的传播速率。

实际传播时延在毫秒级。

抖动 抖动:网络抖动是指最大延迟与最小延迟的时间差,比如你访问一个网站的最大延迟是10ms,最小延迟为5ms,那么网络抖动就是5ms;

抖动可以用来评价网络的稳定性,抖动越小,网络越稳定;

尤其是我们在打游戏的时候,需要网络具有较高的稳定性,否则会影响游戏体验。

关于网络抖动产生的原因:如果网络发生拥塞后,排队时延会影响端到端的延迟,可能造成从路由器A到路由器B的延迟忽大忽小,造成网络的抖动;

丢包 丢包:简单来说丢包就是指一个或多个数据包的数据无法通过网络到达目的地,接收端如果发现数据丢失,会根据队列序号向发送端发出请求,进行丢包重传。

丢包的原因比较多,最常见的可能是网络发生拥塞,数据流量太大,网络设备处理不过来自然而然就有些数据包会丢了。

丢包率是指测试中所丢失数据包数量占所发送数据包的比率。比如发送100个数据包,丢失一个数据包,那么丢包率就是1%。 ———————————————— 版权声明:本文为CSDN博主「网络工程师笔记」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/sinat_38673660/article/details/120070683

点赞
收藏
评论区
推荐文章
blmius blmius
2年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Jacquelyn38 Jacquelyn38
2年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Wesley13 Wesley13
2年前
Java日期时间API系列31
  时间戳是指格林威治时间1970年01月01日00时00分00秒起至现在的总毫秒数,是所有时间的基础,其他时间可以通过时间戳转换得到。Java中本来已经有相关获取时间戳的方法,Java8后增加新的类Instant等专用于处理时间戳问题。 1获取时间戳的方法和性能对比1.1获取时间戳方法Java8以前
good123 good123
2年前
RIP路由协议
动态路由定义:各个路由器之间运行某种协议(算法),通过收发数据包的形式获取未知路径(路由器交换信息)。动态路由的特点减少了管理任务占用了网络带宽动态路由协议概述路由器协议:路由器之间用来交换信息的语言。度量值:跳数、带宽、负载、时延、可靠性、成本路由器通过度量值来确定最优路由路径收敛使所有路由表都达到一致状态的过程静态路由和动态路由的关系网络中静态路由和动态
Wesley13 Wesley13
2年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Stella981 Stella981
2年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
2年前
DDoS的攻击方法
DDoS攻击DDoS攻击的方法攻击网络带宽资源我们可以采用对目标的网络带宽资源进行攻击,目的就是浪费对方有限的网络带宽资源,使得目标服务出现网络滞缓直至网络带宽资源匮乏,无法访问或访问速度慢。直接攻击直接攻击,使用大量的受控主机直接向被攻击目标发送大量的网络数据包,占用目标的网络
Wesley13 Wesley13
2年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
3个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这