时延抖动
计算机科学领域术语
时延抖动是指时延变化。数据业务对时延抖动不敏感,所以该指标没有出现在Benchmarking测试中。由于IP上多业务,包括语音、视频业务的出现,该指标才有测试的必要性。变化的时延被称作抖动(Jitter),抖动大多起源于网络中的队列或缓冲,尤其是在低速链路时。而且抖动的产生是随机的,比如你无法预测在语音包前的数据包的大小,既便你使用LLQ,如果大数据包正在传输过程中,当语音分组到达时,它还是要等待数据分组被发送完。而在低速的链路中,语音数据混传时,抖动是不可避免的。通常使用LFI将大包拆小,来减少大包对时延的影响。
时延
时延是指数据包第一个比特进入路由器到最后一比特从路由器输出的时间间隔。在测试中通常使用测试仪表发出测试包到收到数据包的时间间隔。时延与数据包长相关,通常在路由器端口吞吐量范围内测试,超过吞吐量测试该指标没有意义。
时延的产生有多种因素,下面列出了主要的时延源:
编码的处理:模拟形式的声音信号在CODEC被采样和量化为PCM信号,DSP对PCM信号进行压缩处理所产生的时延为编码处理时延。 这种时延产生在设备侧,如果设备的编码器固定,则编码时延也固定。
包化:包化就是将编码器输出的语音净荷放置到RTP/UDP/IP包中的过程,相对于编码的时延,包化的时延很小,因为包化的过程没有复杂的运算,仅仅是增加包头和计算校验和,而编码则有大量的数学运算。
队列(Queuing):语音的净荷放置到IP包中后,要被设备转发到目的地,这些包会在设备的出接口队列中,等待被调度。转发设备不同的队列机制对IP包的处理有很大不同。可以通过合理的配置来减少语音包在队列中等待的时间,进而减少队列时延。
串行化(Serialization):接口队列中的语音IP包,被送离设备前会放置到接口的物理队列当中,如果物理队列中有一个较大分组,还在发送状态,则语音分组必须等待这个较大的分组发送完毕后才能发送,这个等待的时间就是串行化时延。比如一个时钟速率为64kbps的链路要发送一个1600Bytes大小的FTP分组,则串行化产生的时延会达到200ms(1600×8/64000×1000)。这对于后面等待的语音包来说已经是很大的时延了。
广域网时延:对于ISP提供的广域网链路,对于用户来说只是一个黑盒子,除了上述的编码时延外,构成广域网链路的路由器交换机都会产生包化、队列、串行化的时延。而且到达同一目的的路径不同,其每个包的时延也不同,而这些时延对于用户来说是不可控的,当然我们在租用ISP的线路时,可以要求ISP提供符合时延要求的线路。
参考资料
最新修订时间:2023-07-28 18:30
目录
概述
参考资料