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

计算机网络 --- 计算机网络性能【七大性能指标】

目录

一、计算机网络的性能指标 

1.1  速率

1.2 带宽 

 1.3 吞吐量

1.4 总结 

1.5  时延

1.5.1 发送时延、传播时延、处理时延、排队时延

 1.5.2 例题

1.6 时延带宽积

1.7 往返时间RTT(Round-Trip Time)

1.8 信道利用率 

​编辑​编辑 1.9 总结

一、计算机网络的性能指标 

主要从以下七个性能指标进行介绍。 

1.1  速率

      速率(Speed):指连接到网络上的节点在信道上传输数据的速率。也称数据率或比特率、数据传输速率。

      我们知道,计算机发送的信号都是数字形式的。比特(bit)来源于binary digit,意思是一个“二进制数字”,因此一个比特就是二进制数字中的一个1或0。比特也是信息论中使用的信息量的单位。网络技术中的速率指的是数据的传送速率,它也称为数据率(data rate)或比特率(bit rate)。速率是计算机网络中最重要的一个性能指标。速率的单位是 bit/s(比特每秒)(或b/s,有时也写为 bps,即 bit per second)。当数据率较高时,就常常在 bit/s的前面加上一个字母。例如,k (kilo) = 10^3= 千,M(Mega) = 10^6=兆,G (Giga)= 10^9=吉,T(Tera)= 10^12= 太,P(Peta)= 10^15= 拍,E(Exa)= 10^18= 艾,Z(Zetta)= 10^21 = 泽,Y (Yotta)=10^24= 尧。这样,4×10^10 bit/s的数据率就记为40 Gbit/s。现在人们在谈到网络速率时,常省略速率单位中应有的 bit/s,而使用不太正确的说法,如“40 G的速率”。另外要注意的是,当提到网络的速率时,往往指的是额定速率标称速率,而并非网络实际上运行的速率。

      我们在实际的电脑中来查看速率,Windows操作系统中我们ctrl+shift+ESC或者 ctrl+alt+del 打开任务管理器,点击性能这一页,如下:
      由于作者的电脑连接的是WiFi,因此作者的电脑通过WIFI与路由器进行连接,我们打开WiFi这一栏,根据下图,我们得知,我们的电脑向路由器发送数据的速率为120kbps,电脑从路由器接收数据的速率是1.3Mbps。

信道( Channel) :表示向某一方向传送信息的通道(信道≠通信线路),一条通信线路在逻辑上往往对应一条发送信道和一条接收信道。

1.2 带宽 

 带宽(bandwidth):某信道所能传送的最高数据率。
      在计算机网络中,带宽用来表示网络中某通道传送数据的能力,因此网络带宽表示在单位时间内网络中的某信道所能通过的“最高数据率”。这种意义的带宽的单位就是数据率的单位bit/s,是“比特每秒”。
举例如下:

      假设你现在要办理宽带,打开微信搜索中国电信公众号,发现1000M宽带一年需要999元,这个1000M表示的是你的下行带宽速率最高为1000Mbps,也就意味着下行信道最高数据传输速率为1000Mbps,如果说你要用手机下载一个电影,那么最高下载速度为125MB/s。

例题: 

 解析:

 故该题选择B选项。

结论:节点间通信实际能达到的最高速率,由带宽、节点性能共同限制。
学以致用,不当冤种
      通过上面这个题目,那我们不妨检查一下家里的路由器以及路由器与光猫之间的网线需不需要更新换代一下。假如你们家开通了1000Mbps的宽带,通常来说,运营商会将光纤连接到你们家的光猫【调制解调器,它可以将光信号转换成在网线上传输的电信号】,你们家的路由器一般来说会用一根网线与光猫相连接。
      那我们可以测一下网速,如果达不到运营商承诺的带宽的话,那首先应该怀疑光猫与路由器之间的这根网线是不是太老了,它的带宽不够。网线如下图所示,例如:五类百兆网线,它的带宽就只能到100Mbps,而六类网线带宽为1000Mbps,假如你家路由器与光猫之间接了一根五类网线,即使你们家装了一个千兆宽带,但由于这根五类网线的限制,导致你们家实际使用到的带宽不会超过100Mbps,即你下载一个东西不会超过12MB/秒。
      如果这根网线没有问题,那就应该怀疑路由器是否为百兆路由器,检查WAN口最高速率。

 


 1.3 吞吐量

      吞吐量(throughput)表示在单位时间内通过某个网络(或信道、接口)的实际数据量。
      吞吐量更经常地用于对现实世界中的网络的一种测量,以便知道实际上到底有多少数据量能够通过网络。显然,吞吐量受网络带宽或网络额定速率的限制。例如,对于一个1 Gbit/s的以太网,就是说其额定速率是 1 Gbit/s,那么这个数值也是该以太网的吞吐量的绝对上限值。因此,对1 Gbit/s的以太网,其实际的吞吐量可能只有100 Mbit/s,甚至更低,并没有达到其额定速率。请注意,有时吞吐量还可用每秒传送的字节数或帧数来表示。
      接入到互联网的主机的实际吞吐量,取决于互联网的具体情况。假定主机A和服务器B接入到互联网的链路速率分别是100 Mbit/s和 1 Gbitis。如果互联网的各链路的容量都足够大,那么当A和B交换数据时,其吞吐量显然应当是100 Mbit/s。这是因为,尽管服务器B能够以超过100 Mbit/s的速率发送数据,但主机A最高只能以100 Mbit/s 的速率接收数据。现在假定有100个用户同时连接到服务器B(例如,同时观看服务器B发送的视频节目)。在这种情况下,服务器B连接到互联网的链路容量被100 个用户平分,每个用户平均只能分到10 Mbit/s的带宽。这时,主机A连接到服务器B的吞吐量就只有10 Mbit/s了。
      最糟糕的情况就是如果互联网的某处发生了严重的拥塞,则可能导致主机A暂时收不到服务器发来的视频数据,因而使主机A 的吞吐量下降到零!主机A的用户或许会想,我已经向运营商的ISP交了速率为100 Mbit/s的宽带接入费用,怎么现在不能保证这个速率呢?其实你交的宽带费用,只是保证了从你家里到运营商ISP的某个路由器之间的数据传输速率。再往后的速率就取决于整个互联网的流量分布了,这是任何单个用户都无法控制的。了解这一点,对理解互联网的吞吐量是有帮助的。
      在电脑上实际查看吞吐量,如下所示:

1.4 总结 

 

1.5  时延

时延(Delay) :指数据(一个报文或分组,甚至比特)从网络(或链路)的一端传送到另一端所需的时间。有时也称为延迟或迟延。

1.5.1 发送时延、传播时延、处理时延、排队时延

发送时延(transmission delay)是主机或路由器发送数据帧所需要的时间,也就是从发送数据帧的第一个比特算起,到该帧的最后一个比特发送完毕所需要的时间。因此,发送时延也叫作传输时延(我们尽量不采用传输时延这个名词,因为它很容易和下面要讲到的传播时延弄混)。

举例说明:
      假设主机A到主机B之间需要经过两段信道以及一个路由器,主机A要给主机B发送80Mb的数据,那这些数据传输到信道1上是需要一定的时间开销的,这个时间开销取决于数据大小以及数据传输速率。在这个场景中,时间开销为80Mb/100Mbps = 0.8s,这个时间就是所谓的发送时延,又称传输时延。

那么接下来,这80Mb数据在信道上是以电磁波的形式传播的,电磁波在信道中传播一定的距离所需要花费的时间被称为传播时延,在这个场景中,传播时延为[1000km/(2.3×10^5)km/s]s。

发送时延(传输时延)与传播时延的区别:

      发送时延发生在机器内部的发送器中(一般就是发生在网络适配器中),与传输信道的长度(或信号传送的距离)没有任何关系。但传播时延则发生在机器外部的传输信道媒体上,而与信号的发送速率无关。信号传送的距离越远,传播时延就越大。
      
可以用一个简单的比喻来说明。假定有10辆车按顺序从公路收费站入口出发到相距50公里的目的地。再假定每一辆车过收费站要花费6秒,而车速是每小时100 公里。现在可以算出这10辆车从收费站到目的地总共要花费的时间:发车时间共需60秒(相当于网络中的发送时延),在公路上的行车时间需要30分钟(相当于网络中的传播时延)。因此从第一辆车到收费站开始计算,到最后一辆车到达目的地为止,总共花费的时间是二者之和,即31分钟。

(3)处理时延------主机或路由器在收到分组时要花费一定的时间进行处理,例如分析分组的首部、从分组中提取数据部分、进行差错检验或查找转发表等,这就产生了处理时延。
(4)排队时延------分组在经过网络传输时,要经过许多路由器。但分组在进入路由器后要先在输入队列中排队等待处理。在路由器确定了转发接口后,还要在输出队列中排队等待转发。这就产生了排队时延。排队时延的长短往往取决于网络当时的通信量。当网络的通信量很大时会发生队列溢出,使分组丢失,这相当于排队时延为无穷大。

处理时延和排队时延受网络负载、路由器性能等诸多因素影响。

 1.5.2 例题

H1向链路A发送数据分组的发送时延为:1000B/100Mbps = 8000b/[(10^8)b/s]=0.08ms
数据分组在链路A上的传播时延为:0.01ms
路由器向链路B发送数据分组的发送时延为:1000B/80Mbps = 8000b/[(8×10^7)b/s]=0.1ms
数据分组在链路B上的传播时延为:0.05ms
因此总时延为:0.08+0.01+0.1+0.05 = 0.24ms

若考虑路由器对分组的处理时延、排队时延,假设这两种时延之和为0.04ms,那么最终的总时延为多少呢?
总时延为0.28ms,且传送过程图如下图所示:

1.6 时延带宽积

时延带宽积(bit)=传播时延(s)×带宽(bit/s) 

      时延带宽积表示链路(相当于一个管道)的体积,表示这样的链路可容纳多少个比特。例如,设某段链路的传播时延为20 ms,带宽为10 Mbit/s,算出时延带宽积=20×10^-3x10x10^6= 2 x 10^5 bit。
      这就表明,若发送端连续发送数据,则在发送的第一个比特即将到达终点时,发送端就已经发送了20万个比特,而这20万个比特都正在链路上向前移动。因此,链路的时延带宽积又称为以比特为单位的链路长度。
 


时延带宽积的含义:一条链路中,已从发送端发出但尚未到达接收端的最大比特数。
      这句话比较难理解,我们举个例子来理解这句话:
      把上图中的链路比作水管,带宽就是水管的横截面,传播时延就是水管的长度,那么带宽×传播时延=时延带宽积(链路中比特数)类似于水管的横截面×水管的长度=水管的储水量。
时延带宽积用于设计最短帧长。

2023-408例题


1.7 往返时间RTT(Round-Trip Time)

表示从发送方发送完数据,到发送方收到来自接收方的确认总共经历的时间。 

      在计算机网络中,往返时间RTT(Round-Trip Time)也是一个重要的性能指标。这是因为在许多情况下,互联网上的信息不仅仅单方向传输而是双向交互的。因此,我们有时很需要知道双向交互一次所需的时间。例如,A向B发送数据。如果数据长度是100 MB,发送速率是100 Mbit/s,那么

      假定B正确收完100 MB的数据后,就立即向A发送确认。再假定A只有在收到B的确认信息后,才能继续向B发送数据。显然,这就要等待一个往返时间RTT(这里假定确认信息很短,可忽略B发送确认的发送时延)。如果RTT = 2s,那么可以算出A向B发送数据的有效数据率。

比原来的数据率100Mbit/s小不少。
      在互联网中,往返时间还包括各中间节点的处理时延、排队时延以及转发数据时的发送时延。当使用卫星通信时,往返时间RTT相对较长,是很重要的一个性能指标。
      顺便指出,在计算机网络的文献中,也有把RTT称为往返时延(Round-Trip Time delay)的,强调发送方至少要经过这样多的时间,才能知道自己所发送的数据是否被对方接收了。

举例如下:

      假设A发送数据到B,发送方A将数据发送到链路上所需要的时间为t1,即发送时延,数据在AB之间的链路进行传播所需要的时间为t2,接收方B接收到数据后,需要一定的时间进行处理,处理的时间为t3,发送方A发送数据到接收方接收到来自B的数据,这期间花费t1+t2这么多时间。
      接下来接收方B给发送方A返回确认消息,确认消息的发送时延为t4,确认消息在链路上的传播时延为t5,即接收方B发送确认消息到发送方A接收到确认消息共需t4+t5这么多时间。
往返时间RTT=发送方A发送完数据后开始计算到发送方A接收到确认消息后截至这一段时间。则在该场景下RTT=t2+t3+t4+t5。
 

游戏延迟举例: 

      经常打游戏的人都知道,在每个网络游戏中都会有一个指标,叫做游戏延迟, 反映的就是 “手机 ---- 服务器” 之间的往返时延RTT。
      你在打游戏的时候,当你按完一个按键之后,你按下按键的这个动作最终会被封装为一坨数据,这坨数据会发给服务器,游戏服务器接收到这坨数据之后,他就知道你是按下了某个动作,接下来,游戏服务器会对你这个操作做出响应,并且会给你的手机返回一个结果,而当你的手机接收到服务器发回来的返回消息之后,服务器就可以实时渲染游戏画面,对这个游戏画面进行更新。
      因此,大家在打游戏的时候,游戏延迟越高,当你做一个操作之后,手机的反应会越卡顿,你可能按下一个按键过了好久之后,这个新的游戏画面才出现响应。其实本质上就是手机与游戏服务器之间的RTT太长导致的。

 

1.8 信道利用率 


 1.9 总结


http://www.kler.cn/a/306192.html

相关文章:

  • A029-基于Spring Boot的物流管理系统的设计与实现
  • 统信UOS开发接口DTK
  • 云运维基础
  • Linux——GPIO输入输出裸机实验
  • 数字后端教程之Innovus report_property和get_property使用方法及应用案例
  • Vector 深度复制记录
  • 如何精确统计Pytorch模型推理时间
  • c语言写的环形队列
  • emWin5的图片半透明之旅
  • 高级java每日一道面试题-2024年9月12日-架构篇[DDD领域驱动篇]-如何使用领域驱动设计(DDD)中的事务脚本模式?
  • Spring4-IoC2-基于注解管理bean
  • comfyui中,sam detector与yoloworld图像分割算法测试以及影响
  • [极客大挑战 2019]PHP
  • 1、常用的数据库、表操作
  • 蒸!--数据在内存中的存储
  • node express 开启多进程
  • python多线程程序设计 之二
  • C#获取计算机信息
  • C++入门基础知识68(高级)——【关于C++ 异常处理】
  • 【系统架构设计师-2010年真题】案例分析-答案及详解
  • Superset二次开发之源码asyncEvent.ts 分析
  • 嵌入式C语言自我修养:C语言的面向对象编程思想
  • 问题 H: 三角数
  • 【在Linux世界中追寻伟大的One Piece】五种IO模型和阻塞IO
  • 13. 神经网络基本骨架--nn.Module
  • 长业务事务的离线并发问题