【计算机网络笔记】计算机网络性能(1)——速率、带宽、延迟

系列文章目录

什么是计算机网络?
什么是网络协议?
计算机网络的结构
数据交换之电路交换
数据交换之报文交换和分组交换
分组交换 vs 电路交换



下面介绍一些计算机网络中常用的性能指标。在本篇中涉及速率、带宽、延迟这三个指标。


速率

是经常使用的一个指标。比如我们常常会说到某个链路的数据传输速率等等。

在计算机网络中,速率即数据率 (data rate)或称数据传输速率或比特率(bit rate),以单位时间内传送信息(比特)量的快慢来衡量。它是计算机网络中最重要的一个性能指标。它的单位是:b/s(或bps)、kb/s、Mb/s、Gb/s。其中k=103、M=106 、G=10^9。

速率往往是指额定速率 或标称速率,即理想传输速率或最大传输速率


带宽

带宽有两个含义。

在通信以及信号处理领域里面,它指信号具有的频带宽度, 即最高频率与最低频率之差,单位是赫兹(Hz)。

在网络中,"带宽"通常是数字信道所能传送的"最高数据率",单位:b/s (bps)。


延迟/时延(delay或latency)

前面在介绍分组交换的时候提过传输延迟。那分组交换为什么会发生丢包和时延?

在一个分组交换网络中,分组到达了路由器,路由器首先会按照存储-转发的工作方式把收到的数据占存起来,确定了这个分组在哪个链路进行转发后,再在这个连路上进行转发,当然如果这条链路正在转发其他的分组的话,那么这个分组就要排队等候,当轮到这个分组的时候,再一个比特一个比特的进行转发。所以也会有排队的时间。对于路由器,可供缓存的地方是有限的,如果缓存满了,到达分组就会被丢弃,这就产生了丢包。

分组从到达一个节点开始,到这个分组成功转发到下一个节点所消耗的时间主要有哪几种?

概括起来主要有四种:

  • 结点处理延迟:对分组做处理。看分组有没有出错、确定输出链路。这个时间比较小,一般小于毫秒级,往往会忽略掉。
  • 排队延迟:确定了分组要从哪个输出链路进行传输时,如果这个链路正在传输其他分组,那这个分组就需要排队等待。这就会产生排队延迟。但这个延迟时间是非常不确定的,取决于路由器当前的拥塞程度。
  • 传输延迟:当链路开始传输这个分组时,从传输这个分组的第一个比特开始到最后一个比特传完这个过程就是传输延迟。这个时间取决于分组长度和链路带宽。传输延迟可以由这样的式子计算: L/R。
  • 传播延迟:信号(比如无线电波信号、光信号)在介质上传播也需要时间。传播延迟是信号从这一点到下一点需要的时间。和物理链路长度和信号传播速度有关。

我们通过下面这样一个例子来理解传输延迟和传播延迟的区别:

对于排队延迟,我们指定:

那么

相关推荐
L@ncor5 小时前
第五章 基于低代码平台的智能体搭建 · 学习笔记(Coze / Dify / FastGPT / n8n)
笔记·学习·低代码·agent·prompt工程
知潮网5 小时前
被嫌弃的五仁月饼,一吨千元在养猪场翻了身
笔记
2601_960631235 小时前
中药前处理及提取的工艺环节与技术要点
笔记
2601_965384265 小时前
口腔黏膜清洁中的几何约束与流体动力学边界层问题分析
经验分享·笔记
一米阳光86616 小时前
软考高级【信息系统项目管理师】高项重要考点(9)组织 助你顺利上岸!
笔记·职场发展·软考·高项·信息系统项目管理师·高级职称
白杨尚青6 小时前
C++入门篇(十):string(上)——认识string:构造与三大遍历(一条龙讲透operator[]、迭代器、auto、范围for)
java·开发语言·c++·笔记·stl
Chen—LSN7 小时前
C语言——⽂件操作(1)
c语言·开发语言·c++·经验分享·笔记·算法·链表
Chen—LSN7 小时前
C语言——文件操作(2)
c语言·开发语言·c++·经验分享·笔记·算法·c#
Lintongzg8 小时前
千卡训练的隐形账单:通信不是瓶颈
笔记·学习·性能优化·llm
LuminousCPP8 小时前
从零开始学 C++(三):类和对象入门|从 struct 到 class,理解封装、对象与 this 指针
c++·笔记·学习·类和对象