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

计算机网络(超详解!) 第一节计算机网络的性能指标

1.速率

比特(bit)是计算机中数据量的单位,也是信息论中使用的信息量的单位。

比特(bit)来源于 binary digit,意思是一个“二进制数字”,因此一个比特就是二进制数字中的一个 1 或 0。

速率是计算机网络中最重要的一个性能指标,指的是数据的传送速率,它也称为数据率 (data rate)或比特率 (bit rate)。

速率的单位是 bit/s,或 kbit/s、Mbit/s、 Gbit/s 等。

例如:4 * 10^10 bit/s 的数据率就记为 40 Gbit/s。

速率往往是指额定速率或标称速率,非实际运行速率。

2. 带宽

两种不同意义:

 “带宽”(bandwidth) 本来是指信号具有的频带宽度,其单位是赫(或千赫、兆赫、吉赫等)。

在计算机网络中,带宽用来表示网络中某通道传送数据的能力。表示在单位时间内网络中的某信道所能通过的“最高数据率”。单位是 bit/s ,即 “比特每秒”。

在“带宽”的上述两种表述中,前者为频域称谓,而后者为时域称谓,其本质是相同的。也就是说,一条通信链路的“带宽”越宽,其所能传输的“最高数据率”也越高

3. 吞吐量

吞吐量 (throughput) 表示在单位时间内通过某个网络(或信道、接口)的数据量。

吞吐量更经常地用于对现实世界中的网络的一种测量,以便知道实际上到底有多少数据量能够通过网络。

吞吐量受网络的带宽或网络的额定速率的限制。

4. 时延 (delay 或 latency)

时延 (delay 或 latency) 是指数据(一个报文或分组,甚至比特)从网络(或链路)的一端传

送到另一端所需的时间。

有时也称为延迟或迟延。

网络中的时延由以下几个不同的部分组成:

(1) 发送时延

也称为传输时延。

发送数据时,数据帧从结点进入到传输媒体所需要的时间。

也就是从发送数据帧的第一个比特算起,到该帧的最后一个比特发送完毕所需的时间。

(2) 传播时延

电磁波在信道中需要传播一定的距离而花费的时间。

发送时延与传播时延有本质上的不同。

信号发送速率和信号在信道上的传播速率是完全不同的概念。

(3) 处理时延

主机或路由器在收到分组时,为处理分组(例如分析首部、提取数据、差错检验或查找路由)所花费的时间。

(4) 排队时延

分组在路由器输入输出队列中排队等待处理所经历的时延。

排队时延的长短往往取决于网络中当时的通信量。

数据在网络中经历的总时延就是发送时延、传播时延、处理时延和排队时延之和。

总时延 = 发送时延+ 传播时延+ 处理时延+ 排队时延

必须指出,在总时延中,究竟是哪一种时延占主导地位,必须具体分析。

容易产生的错误概念

对于高速网络链路,我们提高的仅仅是数据的发送速率而不是比特在链路上的传播速率。

提高链路带宽减小了数据的发送时延。

以下说法是错误的:

“在高速链路(或高带宽链路)上,比特会传送得更快些”。

5. 时延带宽积

链路的时延带宽积又称为以比特为单位的链路长度。

时延带宽积 = 传播时延 *带宽

只有在代表链路的管道都充满比特时,链路才得到了充分利用。

6. 往返时间 RTT

互联网上的信息不仅仅单方向传输,而是双向交互的。因此,有时很需要知道双向交互一次所需的时间。

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

在互联网中,往返时间还包括各中间结点的处理时延、排队时延以及转发数据时的发送时延。

当使用卫星通信时,往返时间 RTT 相对较长,是很重要的一个性能指标。

7. 利用率

分为信道利用率和网络利用率。

信道利用率指出某信道有百分之几的时间是被利用的(有数据通过)。完全空闲的信道的利用率是零。

网络利用率则是全网络的信道利用率的加权平均值。

信道利用率并非越高越好。当某信道的利用率增大时,该信道引起的时延也就迅速增加。时延与网络利用率的关系

根据排队论的理论,当某信道的利用率增大时,该信道引起的时延也就迅速增加。

若令 D0 表示网络空闲时的时延,D 表示网络当前的时延,则在适当的假定条件下,可以用下面的简单公式表示 D 和 D0之间的关系:

其中:U 是网络的利用率,数值在 0 到 1 之间。

时延与网络利用率的关系

当信道的利用率增大时,该信道引起的时延迅速增加


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

相关文章:

  • 【鸿蒙开发】第十一章 Stage模型应用组件-任务Mission
  • Python教程笔记(3)
  • 【PyTorch】libtorch_cpu.so: undefined symbol: iJIT_NotifyEvent
  • kubesphere环境-本地Harbor仓库+k8s集群(单master 多master)+Prometheus监控平台部署
  • Go开发指南- Goroutine
  • 【Rust 编程语言工具】rustup-init.exe 安装与使用指南
  • DELPHI开发APP回忆录二安卓与pc端路径的选择
  • C语言--根据成绩判断等级
  • String类讲解(1)
  • 一文例说嵌入式 C 程序的内聚和耦合
  • Git学习笔记01
  • 基于单片机体温心率脉搏检测仪系统设计
  • 利用ogr2ogr从PostGIS中导出/导入Tab/Dxf/Geojson等格式数据
  • 十八数藏的文化数字革新:传统之美的数字转变
  • C#简化工作之实现网页爬虫获取数据
  • 软件工程 课后题 acmakb 总结
  • pgsql常用命令总结
  • SpringBoot——自定义start
  • k8s中安装consul集群
  • zlmediakit实现rtsp流服务器
  • 健全隧道健康监测,保障隧道安全管理
  • CocosCreator 面试题(十七)Cocos creator 固定宽度与固定高度的底层原理是什么?Cocos creator是如何做适配的?
  • 百度云Ubuntu22.04
  • OpenAI Whisper 语音识别 模型部署及接口封装【干货】
  • 内网隧道学习
  • 消息中间件——RabbitMQ(三)理解RabbitMQ核心概念和AMQP协议!