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

一口Linux 2021-10-12 11:50

到了谈婚论嫁的时候,想必很多单身狗都希望身边的朋友有好的资源给介绍介绍对象。这时你朋友就会问,你想找什么样的对象?

每个人的背景、条件不同,找对象的需求就会不同,那怎么去描述一个对象的情况呢?一般都会从这几方面去介绍,  如身高、体重、收入、学历等。其实不管找什么样的,主要还是看两个人是否门当户对,看自己的需求是什么?找个差不多就行。
其实,今天龙哥与大家分享的主题也跟这个如何描述对象有点类似,就是我们怎么去描述网络性能的好坏?  作为一个网络工程师,你在跟客户、跟领导汇报网络性能时,总不能直接说 这个网络很好!那里的网络有点差!我们得用专业的术语去描述它,那就是今天要介绍的网络性能四大指标:宽、时延、抖动、丢包。



(目录)



一、带宽





1、带宽概念:

带宽,在网络世界里,是多指数字信号,在规定的时间内,从一端传输到另一端的数据量,即数据传输率。


我们都知道数字信息流的基本单位是bit(比特),时间按秒来算,即bps,每秒传输多少比特,所以带宽的单位可用bps来表示,bps(bit per second)









从上面动态图,我们可以直观地知道,1bps的带宽和3bps的带宽的区别,有点类似我们日常生活中的道路一样,3车道的道路和6车道的道路,每秒的交通流量是不一样的。


两车道的“带宽”





多车道的“带宽”







2、带宽的表示:


带宽好比公路的宽度,网速好比车流的速度。

带宽基本单位“比特”,简写为小写字母“b”,更大的单位是:Kb、Mb、Gb等;网速基本单位“字节”,简写为大写字母“B”,更大的单位有:KB、MB、GB等。

1字节=8比特


带宽和网速的进率都是1024:




带宽换算成网速除以8便可;网速换算成带宽乘以8便可。例如20Mb带宽的最高网速为20÷8=2.5MB;最高网速为12.5MB的网络带宽为100Mb;1Gb带宽的最高网速是1÷8=0.125GB,换算成MB是1024×0.125=128MB。

我们以1M的带宽为例,

                          



我们都知道 8  bit为 1 Byte,所以Kb 转化为KB时,就需要除以8,1024Kb/s就等于128KB/s。不过,理论上市128KB/s的带宽,实际上可能不足,因为还会受到用户计算机性能、网络设备质量、资源使用情况、网络高峰期、网站服务能力、线路衰耗,信号衰减等多因素的影响。




二、时延





时延:其实就是时间的意思,指报文从A传输到B所需的时间。好比如,快递从深圳发出寄到北京需要1天,那么时延就等于1天。

如下图,A的报文到达B,需要6毫秒才能完成,即,时延=6ms。







举个栗子:

我用自己的电脑去ping 一下百度服务器, 从结果,我们可以知道平均时延为11ms

不过,这里的11 ms 是指往返所学的时间,即ICMP请求报文从我的电脑出去,到达百度服务器,然后百度服务器返回的ICMP响应报文到达我电脑总共的时延。




给个动态图,看一下,你就恍然大悟了!




上述,我们只是介绍了时延的概念,其实时延还可以细分4大类,发送时延,传播时延,处理时延,排队时延。






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




1、发送时延:

如上述动态,电脑、网络设备把数据包队列发到链路上所学的时间,就是发送时延。

假设报文的长度为L,路由器A把该报文传输到链路上的速率为V,则发送时延为L/V,发送时延通常在毫秒到微秒级。


2、处理时延:

是指网络设备,如交换机、路由器,收到报文后进行解析所需要的时间,比如解封装分析首部,查找路由表、路由策略等,处理时延通常是微秒或更低的数量级。



3、排队时延

排队时延,即当网络设备(路由器、交换机等)收到多个报文时,来不及处理,会先放到缓存队列,所有数据包进行排队,等待处理,这个等待的时间即为 排队时延。  排队时延的长度取决于队列中是否有其他数据包,

好比如红绿灯路口,虽然当前是绿灯,但是前面如果有很多车辆,这时就无法立即通过路口,需要排队,缓慢通过路口。如果没有车辆,又是绿灯,则无需排队,直接通过,此时排队时延 视为0;

网络时间的排队时延也是一样的,如果队列没有其他报文,此时排队时延就为0;如果报文很多,流量太大了,网络设备来不及处理,就需要进行排队等候处理,所以排队时延就会很大。



4、传播时延

传播时延,指报文在实际(有线、无线)链路上传播数据所需要的时间

假设路由器A到路由器B的传播时延为t,A到B之间的链路长度为L,数据包在链路上的传播速率为v,则t=L/v。通常传播时延都是在毫秒级的,如果是秒级以上,那传播时延太大了,人类会无法忍受这种速率,太卡了。  




三、抖动







平常,我们坐车的时候,一定遇到过 颠簸的路段,坐在车里能够很明显地感受到这种抖动。

网络也是有抖动的,所谓抖动,就是偏离了预期的时延,即不稳定的时延,网络抖动主要是指最大延迟与最小延迟的时间差。



例如,你刷抖音,观看一个视频最大延迟是12ms,最小延迟是4ms,那么该网络抖动就是8ms。

你想想看,当年在观看视频,一会儿卡顿,一会儿流畅,此时的你,是不是各种“问候”运营商!!!简直无法忍受!!!
  
所以说,要评价网络稳定性,离不开抖动这个指标,越小的抖动,网络越稳定。

网络抖动是无法完全消除的,受环境变化影响。如干扰、网络拥塞情况等,都可造成网络抖动。



四、丢包





丢包,我联想到就是快递,比如龙哥通过某快递公司,寄了五本书给粉丝,从深圳寄到河北,结果粉丝只收到3本,那其余2本被快递小哥弄丢了。  
学网络,就是这么有趣,简单易学,入门没有门槛。所以,网络丢包,也是一样的,就是指数据包从一端被传输到另一端过程中,部分数据未能到达目的地。
不过,接收端如果发现数据丢失,可以根据序列号向源端发出“重传请求”。

接下来,龙哥,给大家演示一下,因为网络丢包,惹的祸:



造成丢包的原因有很多,比如 设备网卡处理不了过多的数据,网络拥塞、就会发生丢包。

所谓的丢包率,就是丢失数据包总的数量 占  总发出的数据包数量的 比率。

例如,我发了6个包 给百度服务器,4个包被接收了,2个包丢失了,
那么丢失率就等于 2/6 = 33%




end


-----END-----

关注,回复【1024】海量Linux资料赠送

精彩文章合集

linux入门

C语言
Linux驱动
ARM
计算机网络
粉丝问答
所有原创
点击“阅读原文”查看更多分享,欢迎点分享、收藏、点赞、在看
一口Linux 写点代码,写点人生!
评论 (0)
  • 报名中:IIC Shenzhen - 2022国际集成电路展览会暨研讨会


我要评论
0
16
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦