【计算机网络】聊一聊那些常见的网络通信的性能指标

带宽

信道传输的是电磁波信号,而电磁波是有一定的频率范围,带宽指的就是这段有效的频率范围的值

即:带宽 = 最高有效频率 - 最低有效频率

好比我们人的耳朵能听见一定频率范围内的声音(20 -20000Hz),那么19000Hz就是我们耳朵的“带宽”

不同的信道,其带宽(频率范围)是不一样的,根据带宽的不同,可将信道划分为窄带信道(0 - 300Hz), 音频信道(300 - 3400Hz)和宽带信道(带宽为3400Hz以上)。我们平常说的“装宽带”,意思就是安装3400Hz以上带宽的信道的意思

数据传输速率

数据传输速率信道每秒能传输的比特数,所以它的单位自然就是bps(比特每秒),除此外还有Kbps,Mbps等

【注意】理论分析证明,信道的最大数据传输速率和带宽有直接联系,信道带宽越宽,数据传输速率就越大,因此在许多情况下,“带宽”和“传输速率”是可以互换的。

时延

分组交换网络的时延为例(因为当前因特网和计算机网络主要采用的数据交换技术是分组交换)

时延

当一个分组在节点间传输时,主要的时延分为四种类型: 节点处理时延(nodal processing delay),排队时延(queuing delay),传输时延(transmission delay)和传播时延(propagation delay)

如果将这四种类型的时延分别表示为d(proc),  d(queue),d(trans), d(prop)

对一个分组而言,两个节点间的总时延d = d(proc) + d(queue)  + d(trans) + d(prop)

假设发送端到接收端间有N条链路

则对一个分组而言,忽略其他因素,端到端总时延d(end-end) = N × (   d(proc) + d(queue)  + d(trans) + d(prop)  )

下面我将从单个分组从路由器A到相邻的路由器B的传输的情况入手,分别介绍这四种不同类型的时延

图示如下:

处理时延

当分组到达路由器A时,首先要做的是检查分组首部并决定将该分组导向何处,并检查比特级差错,这部分的时间消耗叫做处理时延。

排队时延

分组在经过路由器A的处理后,下一步就是传输出去。一个分组的排队时延取决于先到达的,正在排队等待向链路传输的分组的数量

1.如果前面没有分组正在从路由器A向链路传输的话,排队时延为0

2.如果流量很大,前面有很多分组正在传输或也在等待传输,那么就要消耗很大的排队时延了。

传输时延

传输时延是路由器A将分组的所有比特推出路由器A,推向链路所需要的时间。传输时延取决于两个因素:

1. 单个分组长度

2. 数据传输速率

假设分组的长度为L比特,数据传输速率为R (bps) 那么  传输时延 = L/R

【注意】传输时延又叫做存储转发时延

传播时延

(这个概念听起来和传输时延很相似,区别我下面会讲)

传播时延指的是分组的一个比特从路由器A到达到路由器B所需要的时间,传播时延取决于两个因素:

1.链路介质(双绞线,光纤)的传播速率

2. 节点间的距离(两个路由器间的距离)

假设路由A,B距离为d, 链路介质传播速率为s,那么传播时延 = d/s

传输时延和传播时延的比较

我们把一个分组从路由器A传输到路由器B的过程,比作一批车队(10辆汽车), 全部从收费站A行驶到收费站B的过程(中间经过高速公路

一批车队 == 一个分组

一辆汽车 == 一个比特 (暂时不管分组长度是否合理)

收费站A,B == 路由器A,B

这批车队遵守一个“奇怪”的规则,那就是无论哪一辆汽车先到达收费站A,它都必须等待其他9辆汽车也都尾随其后到达了A,才带领这批车队依次驶出收费站A。(这就是存储转发机制,只有当一个分组的所有比特都到达了路由器,“存储完毕“后,才能转发整个分组

传输时延就是这批车队依次(前后紧跟)地驶出收费站A所用的时间(将分组的所有比特推出路由器A,推向链路所用的时间)

传播时延就是每辆汽车经过高速公路,从收费站A到达收费站B所用的时间(分组的一个比特从路由器A到达到路由器B所需要的时间)

假设收费站办理手续,通过汽车的效率是 5 (辆/每分钟),而汽车在高速公路上行驶速度是100km/h。那么,因为两个收费站间距离为100km,一批汽车有10辆

我们可以得出,这批汽车通过收费站所用的时间为10辆 ÷ 5(辆/每分钟) = 2分 (传输时延)

汽车在高速公路上行驶所用的时间为100km ÷  100km/h = 1h (传播时延)

总共用时62分钟

丢包率

丢包意为分组丢失,什么原因会导致分组丢失呢? 这和我们上面所说的”排队时延“有关,我们说到:当大量分组在短时间内到达路由器的时候,因为无法一次性处理完毕,分组需要”排队“,但是基于路由器的设计和成本,分组队列的长度是有限的。所以,当队列满了的时候,下一个分组到达的时候,路由器会选择丢弃(drop)该分组, 这个分组便丢失了(lost),这就是所谓的丢包

丢包率与分组长度以及分组发送频率相关。

吞吐量

吞吐量的单位和数据传输速率一样,也是bps,所以它虽然名为“量”,其实也还是一种“速率”

瞬时吞吐量和平均吞吐量

从服务器到客户机通过计算机网络传送一个大文件,任意时刻客户机接收该文件的速率叫做瞬时吞吐量(instantaneous throughput)

假设客户机接收该文件的所有F比特用了T秒,那么 F/T就叫做平均吞吐量(average throughput)

吞吐量 == 瓶颈链路的传输速率

吞吐量等于瓶颈链路(bottle link)的传输速率

让我们考虑下图中尽可能简单的情况,R(s)表示服务器和路由器之间的链路速率,R(c)表示路由器和客户机之间的链路速率,显然,该服务器不能以快于R(s)的速率向链路中输送比特,路由器也不能以快于R(c)的速率转发比特。

如果R(s) < R(c),那么服务器输送的比特能够"畅快地"通过路由器和客户机间的链路到达客户机。速率为R(s)

如果R(s) > R(c) 则因为路由器将不能以接收的速率转发比特,所以链路速率为R(c)

所以 上图中吞吐量为min{ Rc, Rs } bps

同样的,对下面这n条链路

吞吐量为min{ R1, R2, ... Rn }

误码率

误码率是衡量通信系统传输可靠性的指标,它指的是错误接收的码元数在所传输的总码元数的比例

计算公式: 误码率=错误码元数/传输总码元数

参考书籍

《计算机网络-自顶向下》  作者 James F. Kurose

《计算机网络技术基础教程》作者 刘四清

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java3y

数据链路层

数据链路 (data link) 除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。

1751
来自专栏xcywt

TCP/IP详解 卷1 第二十一章 TCP的超时与重传

21.1 引言 可靠性的保证之一就是超时重传 前面两个超时重传的例子 1)  ICMP端口不能到达时,TFTP客户使用UDP实现了一个简单的超时和重传机制,假定...

2925
来自专栏大眼瞪小眼

计算机网络简介

网路定义 :以实现资源共享为目的,一些互相连接的、独立的自治系统(能够独立运行并提供服务的系统)的集合。

991
来自专栏土豆的专栏

计算机网络概述

ps: internet(互联网或者互连网)是一个通用名词,泛指多个计算机网络互连而成的网络,在这些网络之间的通信协议可以是任意的;Internet(因特网)则...

65013
来自专栏Golang语言社区

golang使用原始套接字构造UDP包

RAW SOCKET 介绍 TCP/IP协议中,最常见的就是原始(SOCKET_RAW)、tcp(SOCKET_STREAM)、udp(SOCKET_DGRA)...

4454
来自专栏互联网技术杂谈

udp的若干问题

参考链接:https://blog.csdn.net/dog250/article/details/6896949

42910
来自专栏take time, save time

三十天学不会TCP,UDP/IP网络编程 - 绅士的开始

经过了过年的忙碌和年初的懈怠一切的日子,我又开始重新更新了~这是最新的一篇~完整版可以去gitbook(https://www.gitbook.com/@rog...

35810
来自专栏Java Edge

计算机网络之数据链路层1 链路层概述4 交换局域网5 交换机(switch)

5347
来自专栏用户画像

1.1.6 计算机网络的性能指标

1)宽带(Bandwidth)本来表示通信线路允许通过的信号频带范围,单位是赫兹(HZ)。而在计算机网络中,宽带表示网络的通信线路所能传达数据的能力,是数字信道...

1202
来自专栏JetpropelledSnake

Python Web学习笔记之图解TCP/IP协议和浅析算法

1894

扫码关注云+社区