VOLTE语音时延问题定位

本文主要讨论了VOLTE语音时延问题的定位和解决过程。在特定场景下,4G VOLTE终端出现秒级语音延迟,而2/3G终端正常。通过抓包分析,发现基站内部存在语音包攒包现象,进一步通过代码干预验证了网口收包任务优先级可能过低导致时延。提高该任务优先级后,问题得到缓解,但仍有未解的遗留问题,如为何只在特定场景出现、终端如何处理语音包等。
摘要由CSDN通过智能技术生成

现象

两个终端拨打VOLTE存在语音时延的问题。其中,一个终端为4G VOLTE,位于SMC站下,另外一个终端为2/3G,位于宏站下。在此场景下,随着呼叫时间变长,极大概率出现4G终端接收到的语音延迟,时间为秒级,但是2/3G终端依然正常。

定位

尝试了其他场景,包括两路VOLTE(一个终端在SMC下,一个终端在宏站下以及两个终端都在宏站/SMC下),宏站下一路VOLTE一路2/3G,均未出现时延问题。首先,需要定位时延点是在核心网还是在基站设备。在出现问题的场景下,拔掉SMC的WAN口网线后,终端在几秒内仍然能够接收到语音,说明语音包已经到达了基站设备,缓存在了基站设备或终端中。
在实验室进行复现,同时抓包,对比了交换机的镜像抓包以及基站内部tcpdump抓包,发现交换机的镜像抓包中,下行语音包以20ms的间隔均匀到达,在基站内部的tcpdump抓包中,存在攒包的现象,即较长一段时间内(几百毫秒级别),基站没有接收到任何网口数据,随后基站以极小的间隔收到了这一段的所有语音包。怀疑是由于网口的攒包现象,造成了语音时延。
做了一个测试版本,在frwk接收UDP报文的代码中,手动增加时延。在出现问题的场景下,手动构造收包时延。发现构造时延后,终端果然出现语音延迟,至此,已经基本确认了产生语音延迟的直接原因。
下一步,需要确认发生攒包现象的原因。又做了一个测试版本,可以手动创建一个指定优先级的任务,该任务持续执行死循环若干秒。在终端建立呼叫后,创建各个优先级任务进行测试&#x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值