我们知道数据在网络中传输的总时延=发送时延+传播时延+处理时延+排队时延
其中,处理时延和排队时延比较好理解
处理时延:主机或者路由器在收到分组时要花费一定的时间进行处理,例如分析分组首部、从分组中提取数据部分、进行差错检验或者查找适当的路由等,这些消耗的时间称为处理时延。
排队时延:分组在进入路由器之后,要现在输入队列中排队等待处理。在路由器确定转发接口之后,还要在输出队列中排队等待转发。这里的输入队列和输出队列中排队的时间就是排队时延。
重点是发送时延和传播时延。
我们先看发送时延的概念和公式
发送时延:主机或者路由器发送数据帧所需要的时间
公式:发送时延=数据帧长度(bit)/发送速率(bit/s)
即数据的长度除以数据的发送速率,这个其实也不难理解,主要是经常和后面的传播时延搞在一起容易导致概念不清晰,我们看下传播时延的概念
传播时延:电磁波在信道中传播一定的距离需要花费的时间
公式:传播时延=信道长度(m)/电磁波在信道上的传播速率(m/s)
这个概念是数据在信道上的传播时间
这里经常会有疑惑的点是为什么传播时延的速率不用数据的传送速率?
这里的两个时延的概念经常用汽车通过高速收费站来类比,其实很形象了,汽车通过收费站相当于是发送时延,在高速上行驶到达目的地相当于是传播时延。
其实我们认真理解下发送时延里的数据发送速率和传播时延里的电磁波传播速率两个概念就能很容易理解清除这两个概念。一个单位是bit/s,一个单位是m/s。
数据发送速率可以类比是高速的宽度,高速越宽,每秒通过的汽车就越多,也就是数据发送速率越大,也就是意味着越高传输速率。但是这只是一个点的瞬时速度。
电磁波在信道上的传播速率可以类比为车速,车速越快,到达目的地所用的时间就越短,也就是传播速率越高,时延越小。