(本文根据互联网资料整理)
延时和抖动是相互关联的两个东西,但是它们并不相同。延时是网络中的一个重要指标,它由四个关键部分组成:处理延时(processing delay),排队延时(queueing delay),传输延时(transmission delay)和传播延时(propagation delay)。它会影响用户体验,并可能因多种因素而发生变化。抖动是基于延时产生的—具体而言,就是前后延时的值不一致。抖动是两个数据包延时值之间的差异。它通常会导致丢包和网络拥塞。虽然延时和抖动有很多共同点和关联,但是它们并不相同。
什么是延时(delay)
延时是网络中的一项重要指标,可衡量数据从一个端点移动到另一个端点所需的时间。网络延时通常在几秒钟的时间范围内,并且可以更具许多因素进行更改,包括端点的位置,数据包的大小以及流量大小。
延时(delay)与延迟(latency)有何不同
延迟和延时相互联系紧密,并且很多时候可以混用。但是,他们并不总是相同的。延时是数据从一个端点传输到另一个端点所花费的时间。然而,延迟可以表示两个量。
延迟有时被认为是数据包从一个端点传输到另一个端点所用的时间,这与单向延时是一样的。
但更多的情况,延迟表示的是往返时间。往返时间包括发送数据包所需的时间加上它返回所需的时间。这不包括在目的地处理数据包所需的时间。
网络监控工具可以确定给定网络上的精确往返时间。可以从发送处计算往返时间,因为它跟踪数据包发送的时间,并在确认返回时计算差值。但是,两个端点之间的延时可能难以确定,因为发送端没有到达接收端的时间信息。
延时的组成
延时可以理解为四个关键延时部分的组合:处理延时,排队延时,传输延时和传播延时。
1. 处理延时:处理延时是系统分析数据包报头并确定数据包必须发送到何处的时间。这很大程度上取决于路由表中的条目,系统中数据结构的执行以及硬件实现。
2. 排队延时:排队延时是数据包排队和发送之间的时间。这取决于数据流量的大小,流量类型以及实现哪些路由器队列算法。不同的算法可以调整系统偏好的延时,或者对所有流量要求相同的延时。
3. 传输延时:传输延时是将数据包的数据推入线路所需的时间。这会根据数据包的不同大小和带宽大小而不同。这并不取决于传输线的距离,因为它仅仅是将包中数据推入传输线的时间,而不是沿着传输线到达接收端的时间。
4. 传播延时:传播延时是与从发送端传输到接收端的数据包的第一个比特相关的时间。这通常被称为距离延时,并且因此数据比特受到传播距离和传播速度的影响。
这些延时组合在一起构成网络中的总延时。往返时间由这些延时和接收端到发送端之间的时间组成。
延时的影响
延时主要会影响用户体验。在严格的音频通话中,150毫秒的延时是非常明显的并且会影响用户。在严格的视频通话中,认为400毫秒是可辨识的。将这两种呼叫功能集中在一起后,联合的音频和视频呼叫应该保持同步,并且延时要少于150毫秒以不影响用户。但是,一般来说,延时尽可能低是非常重要的。无论如何,ITU建议将网络延时保持在100毫秒以下。
什么是抖动
在网络上连续传输的数据包即便使用相同的路径,也会有不同的延时。这是由于分组交换网络固有的两个关键原因造成的。第一,数据包被单独路由。第二,网络设备接收队列中的数据包,因此无法保证延时调度不变。
每个数据包之间的这种延时不一致称为抖动。对于实时通信而言,这可能是一个相当大的问题,包括IP电话,视频会议和虚拟桌面基础架构。抖动可能由网络上的许多因素引起,并且每个网络都有延时时间变化。
抖动会导致什么后果
1. 丢包:当数据包不是均匀的到达接收端时,接收端必须进行弥补并尝试更正。在某些情况下,接收端无法进行适当的更正,并丢失数据包。就最终用户体验而言,这可以有多种呈现出的形式。比如,如果用户正在观看视频并且画面变成像素化,这就是潜在抖动的指示。
2. 网络拥塞:网络设备无法发送相同数据的流量,因此他们的数据包缓冲区已满并开始丢弃数据包。如果端点上的网络没有干扰,则每个数据包都会到达。但是,如果端点缓冲区满了,会使数据包到达的越来越晚,导致抖动。这被称为初期拥塞(incipient congestion)。通过监视抖动,可以观察到初期拥塞。同样,如果出现初期网络拥塞,则说明抖动正在迅速变化。
当网络设备开始丢弃数据包,并且端点没有收到数据包时就会发生拥塞。终端可能会要求重发丢失的数据包,这会导致拥塞崩溃。
需要注意的是接收端不会直接导致拥塞,也不会丢弃数据包。请想象一条高速公路,其中有旅店A和旅店B。旅店B拥挤不是由于B没有足够的停车位而造成的。拥挤是由A引起的,所以它会不断地将公路上的骑车送到B旅店。
我该如何补偿抖动
为了弥补抖动,在连接的接收端使用抖动缓冲区。抖动缓冲区收集并存储传入数据包,以便它可以确定如何以一致的间隔发送它们。
1. 静态抖动缓冲—其在系统的硬件中实现,并且通常由制造商配置。
2. 动态抖动缓冲—其在系统软件中实现,并由管理员进行配置。他们可对缓冲进行调整以适应网络变化。
播放延时
播放延时是数据包到达时和播放时间之间的延时。当抖动缓冲区存储传入数据包并等待以均匀间隔分配它们时,这会增加数据包到达时间与播放时间之间的时间,也被称为播放延时。这个延时是由抖动缓冲区引入的,因为它负责规定传入数据包何时分发。
总结
延时和抖动天生就紧密相连,但它们其实并不同。延时是数据从网络上的一个端点移动到另一个端点所花费的时间。这是一个受多种因素影响的复杂的值。另一方面,抖动是两个数据包之间的延时差异。同样,它也可能是由网络上的几个因素造成的。尽管抖动和延时有相似之处,但是抖动仅仅是基于延时产生的而已,但不等于它。
补充
音视频常见问题分析:延迟和抖动
关于音视频常见的问题,比如延时和抖动
延迟:是网络传输中的一个重要指标,测量了数据从一个端点到另外一个端点所需的时间。一般我们用毫秒作为其单位。通常我们也把延迟叫做延时,但是延时有时还会表示数据包发送端到接受端的往返时间。这个往返时间我们可以通过网络监控工具测量,测量数据包的发送时间点和接受到确认的时间点,两者之差就是延时。单向时间就是延迟。
抖动:由于数据包的大小,网络路由的路径选择等众多因素,我们无法保证数据包的延迟时间是一致的,数据包和数据包延迟的差异我们称为抖动。也就是说因为数据包的延时值忽大忽小的现象我们称为是抖动。 可以看出延迟会造成抖动,但是抖动并不完全等价于延迟,所以有时我
网络抖动:即PDV(packet delay variation)网络延时变化,最大延迟与最小延迟的时间差; 如最大延迟是20毫秒,最小延迟为5毫秒,那么网络抖动就是15毫秒,它主要标识一个网络的稳定性。
抖动造成原因:如果网络发生拥塞,排队延迟将影响端到端的延迟,并导致通过同一连接传输的分组延迟各不相同; 当网络设备无法发送相同数据的流量,因此他们的数据包缓冲区已满并开始丢弃数据包。
吞吐量(throughput)、抖动率(jitter)、丢包率(drop)、端到端延迟(delay)
吞吐量:单位时间内,某个节点发送和接收的数据量,单位一般是b/s 丢包率(Loss Tolerance或packet loss rate):指测试中所丢失数据包数量占所发送数据包的比率,通常在吞吐量范围内测试。丢包率与数据包长度以及包发送频率相关。通常,千兆网卡在流量大于200
抖动和迟延
为何而抖!
指最大迟延和最小迟延的差值即抖动迟延,运营商网络多为ms级别。 在网路中经过的网络设备层数越多经过设备越多,就需要更多的处理时间去排队等待转发,因此时延由此而来,抖动由此而来。
迟延的影响!
从玩游戏的角度出发的话,就是指你当前玩游戏的电脑的客户端和游戏服务器的服务端之间传送数据所需的时间,这里的数据就是当前玩的角色各项数值以及对方各项数值包括战力、技能、坐标等。
ping、网络抖动与丢包
基本概念:
ping: PING指一个数据包从用户的设备发送到测速点,然后再立即从测速点返回用户设备的来回时间。也就是俗称的“网络延迟” 一般以毫秒(ms)计算。 一般PING在0~100ms都是正常的速度,不会有较为明显的卡顿。
测试ping值方法: 在powershell中输入ping [网络地址]即可测试,默认会测4次。
什么叫网络抖动
本文为方便以后自己记忆记录,如有问题,请指正。
网络抖动: 网络中的延迟是指信息从发送到接收经过的延迟时间,一般由传输延迟及处理延迟组成; 而抖动是指最大延迟与最小延迟的时间差,如最大延迟是20毫秒,最小延迟为5毫秒,那么网络抖动就是15毫秒, 它主要标识一个网络的稳定性。 但是个人从直观表现上看指的是每两个相邻的数据包接收时的时间间隔之差,比如第一个数据包的与第二个数据包到达的时间差是20ms,可能第三个包和第二个包的时间差是5ms, 那么网络抖动就是15ms。 t表示一个个的数据包
网络抖动: 一组数据包再网络中传输过程中,相邻数据包达到目的地时间差值,统计出来,所有相邻的数据包时间差比较,取最大和最小的时间差值,并将两个差值相减,就是网络抖动; 网路抖动是指信息从发送到接收经过的延迟时间,一般由传输延迟及处理延迟组成; 而抖动是指最大延迟与最小延迟的时间差,如最大延迟是20毫秒,最小延迟为5毫秒,那么网络抖动就是15毫秒, 它主要标识一个网络的稳定性。