计算机网络基础系列(二)计算机网络性能
文章目录
- 速率
- 带宽
- 延迟/时延(delay或latency)
- 四种分组延迟
- 结点处理延迟
- 排队延迟
- 传输、传播延迟
- 时延带宽积
- 分组丢失(丢包)
- 吞吐量/率
??任何一个系统都需要一些指标来衡量这个系统。
速率 ??速率即数据率(
data rate
)或称数据传输速率或比特率(bit rate
),是计算机网络中最重要的一个性能指标。表示单位时间(秒)传输信息(比特)量。单位:b/s(或bps)、kb/s、Mb/s、Gb/s。这里的 K = 1 0 3 K=10^{3} K=103、 M = 1 0 3 M=10^{3} M=103、 G = 1 0 9 G=10^{9} G=109。??速率往往是指额定速率或标称速率。比如说某个网络是
100M
,指的是这个网络理想的数据传输速率,实际上可能并不一定能达到。带宽 ??“带宽”(
bandwidth
)原本指信号具有的频带宽度,即最高频率与最低频率之差,单位是赫兹(Hz)。??计算机网络中所说的带宽:网络的“带宽”通常是数字信道所能传送的“最高数据率”,单位:
b/s
(bps)。也就是最大数据传输速率。根据单位可以判断两个带宽的不同。??常用的带宽单位:kb/s ( 1 0 3 10^{3} 103 b/s);Mb/s( 1 0 6 10^{6} 106 b/s)、Gb/s( 1 0 9 10^{9} 109 b/s)Tb/s( 1 0 12 10^{12} 1012 b/s)。
延迟/时延(delay或latency) ??还有一类指标为时间问题,我们把它称之为时延。之前在说分组交换的时候介绍过其中一种延迟叫传输延迟,发送一个分组,从第
0
个比特开始发送,到最后一个比特分组的发送完成,这段时间就是这个分组的传输延迟。分组在网络中传输,除了这个传输延迟之外,还有其它的延迟。??分组在路由器缓存中排队时发生的丢包和时延。
文章图片
??
B
的数组分组到达了一个路由器,路由器会按照存储转发的方式将其收下来,收下来之后先暂存,然后确定了这一个分组在哪一个链路进行转发之后,再在这个链路上进行转发,如果这个链路正在转发其它的分组,它就得排队等,这也需要时间,叫排队延迟。??当轮到转发这个分组的时候,才从第一个比特开始发,依次类推直到发完。这个时间就是传输延迟。
??任何一个路由器供排队缓存的空间是有限的,如果缓存满了还有源源不断的分组到达,那就没地方放了。此时就会发生丢包现象。
??总结来说就是当分组到达速率超出输出链路的容量的时候,这种现象就难以避免了。
四种分组延迟
文章图片
??分组从达到一个节点开始,到这个分组成功转发到下一个路由器所消耗的时间,主要有4种:
结点处理延迟 ??分组达到一个路由器,路由器需要对这个节点需要处理,这个时间称之为结点处理延迟(
nodal processing delay
)d p r o c d_{proc} dproc?。这个处理通常需要检查一下分组有没有错(差错检测);根据分组携带的地址信息,看看应该在哪个接口将其发出去(确定输出链路);还有一些其它的事情。现在路由器的处理能力都比较强,一般来说这个时间比较短 (一般来说不会超过毫秒级,当然也要看讨论的问题是一个什么样的层级的)。排队延迟 ??当分组确定从哪一个输出链路往外传输的时候,而那个链路刚好在传输其它分组的时候,它就得在这个路由器上进行排队,这个时间的消耗通常称之为排队延迟(
queueing delay
)d q u e u e d_{queue} dqueue?。??很显然这个排队时间是很不确定的,取决于路由器拥塞程度。
传输、传播延迟 ??当链路开始传输一个分组的时候,传输第一个比特开始,到最后一个比特发完,需要一段时间,这段时间称作传输延迟(
transmission delay
) d t r a n s d_{trans} dtrans?。传输延迟取决于以下几点:- 分组长度 L L L(bits)。
- 链路带宽 R R R(bps)。
??通过电信号、光信号、无线信号传输到下一个节点。而在这个介质上传播也需要时间,我们将其称之为传播延迟(
propagation delay
)d p r o p d_{prop} dprop?。取决于以下几点:- 物理链路长度d d d。
- 信号传播速度s s s 有关( ≈ 2 × 1 0 8 m / s e c \approx 2 \times 10^{8} m/sec ≈2×108m/sec)
??在分组交换过程中,一个分组从到达某一个节点开始,到其离开这个节点到达下一个节点,这样所谓的一跳过程中,所消耗的时间可表示为:
d n o d a l = d p r o c + d q u e u e + d t r a n s + d p r o p d_{nodal} = d_{proc} + d_{queue} + d_{trans} + d_{prop} dnodal?=dproc?+dqueue?+dtrans?+dprop?
时延带宽积 ??计算机网络中另一个经常听到的描述就是时延带宽积,有时也称为带宽时延机。一段链路,或者称之为一段信号它的传播延时乘以这段链路的带宽(最高的数据传输速率)。
文章图片
时延带宽积 = 传播时延 × 带宽 d p r o p × R ( b i t ) \text{时延带宽积} = \text{传播时延} \times \text{带宽} \\ d_{prop} \times R (bit) 时延带宽积=传播时延×带宽dprop?×R(bit)
??可以理解为这个链路上能够容纳多少个比特,因此链路的时延带宽积又称为以比特为单位的链路长度。
分组丢失(丢包) ??队列缓存容量有限,分组到达已满队列将被丢弃 (即丢包)。
??不同的网络对于丢包的处理是不一样的,有些丢掉就丢掉了,有些则会选择重发。也就是:丢弃分组可能由前序结点或源重发(也可能不重发)。
??在网络中,丢包是一个要考虑的现象。一般用丢包率来衡量这个丢包的现象:
文章图片
丢包率 丢包数 已发分组总数 \text{丢包率}\frac{\text{丢包数}}{\text{已发分组总数}} 丢包率已发分组总数丢包数?
吞吐量/率 ??吞吐量/率(Throughput)说的实际上也是一种速率。
吞吐量:表示在发送端与接收端之间传送数据速率 (b/s)。这样一个两端之间数据传输的实际速率。有两种指标:
- 即时吞吐量:给定时刻的速率。
- 平均吞吐量:一段时间的平均速率。
文章图片
文章图片
【计算机网络基础系列(二)计算机网络性能】??如果考虑一个互联网的实际场景:
??每条"连接"的端到端吞吐量取决于最小值: m i n ( R c , R s , R / 10 ) min(R_{c}, R_{s}, R/10) min(Rc?,Rs?,R/10)
文章图片
??实际情况下,通常取决于瓶颈链路,一般是端系统或者主机。
推荐阅读
- 【欢喜是你·三宅系列①】⑶
- 你不可不知的真相系列之科学
- 人脸识别|【人脸识别系列】| 实现自动化妆
- ACSL|ACSL 美国计算机科学联赛 2016-2017 R4 摩天大楼-Skyscraper 题解
- 2018-06-13金句系列7(金句结构-改编古现代诗词)
- Unity和Android通信系列文章2——扩展UnityPlayerActivity
- 乡野村趣系列之烧仙草
- Java内存泄漏分析系列之二(jstack生成的Thread|Java内存泄漏分析系列之二:jstack生成的Thread Dump日志结构解析)
- 15、IDEA学习系列之其他设置(生成javadoc、缓存和索引的清理等)
- 【年终激励系列】之五(年终奖如何与考核紧密相连)