跳至主要内容

VoNR高清语音方案研究及优化指导

一、问题名称及现象概述

VoNR(全称:Voice on New Radio),是一种通话技术,即在通话过程中只通过 5G信号完成语音与视频通话。如同4G时代的 VoLTE,5G SA模式下的VoNR 是基于纯5G接入的通话解决方案, 话音业务和数据业务均由5G网络承载,不依赖4G,是5G成熟发展期的目标语音解决方案。与上一代的VoLTE相比,在通话质量上有大幅度的提升,具有延迟更低、音质与画质更高的特点,可以整体提升用户的使用体验,因此未来智能手机向VoNR转移,只是时间问题。按照目前5G部署的情况来看,在5G建设初期,当手机移动到5G信号覆盖较差的区域时,仍然需要切换到LTE网络,由VoLTE来提供语音服务。

本文重在 VoNR方案介绍和优化指导, 为后续安徽移动 开通 VoNR及优化思路提供参考。

二、解决方案详细说明

1.VoNR组网

过渡方案:不开通VoNR,接入时直接回落到VoLTE

  • 标准R15支持,临时过渡方案,IMS仅先支持SIP即可(简化部署) ,未来支持用户面即可升级到 VoNR.

  • 由于网络不支持 VoNR, 用户发起语音业务时直接回落到 LTE, 数据业务将跟随切换到 LTE, 体验不如选择二


最终方案:开通VoNR,无NR覆盖切换到VoLTE

  • 语音默认采用EVS编码,MOS分更高.

  • 相比选择一,没有Fallback的流程,接入时延更低

  • 数据业务在NR侧,体验更优


2. VoNR信令流程

  • 5G 基于 5QI 建立承载, 类似 4G QCI, 基本流程同 VoLTE


①RRC 连接建立;

②(非必须) 默认承载建立:5QI=8/9;

③IMS 信令面 SIP 默认承载建立:5QI=5;

④IMS 用户面语音专用承载建立:5QI=1;

UE通话的同时存在3个Qos Flow:数据业务:5QI8或9,语音业务:5QI1,5QI5,其中,语音的5QI1和5分别勇摄到独立的DRB承载,也即UE通话过程中在空口通常存在3个DRB承载。

⑤语音通话开始。

  • VoNR切换VoLTE流程同普通数据业务切换


①UE 上报测量报告给源 gNB;

②gNB 执行切换判决, 然后向 5GC 发起切换请求;

③目标 eNB 切换准备, 然后发送切换指示;

④终端在目标 eNB 发起随机接入;

⑤UE 切换到目标小区;

⑥通知源 gNB 切换完成, 并释放 UE 上下文。

3. VoNR 特性介绍

3. 1VoNR 架构:

  • SA,UE在NR中锚定,数据和语音可同时驻留在NR。

  • UE移动到NR小区边缘,会触发基于覆盖的PS切换。

VoNR特性集(21B)

3. 3 VoNR EVS 编码

EVS(enhanced voice service) : EVS是VoNR默认的语音编解码,基于超宽带音频,音频范围更大,听觉体验越好相较于AMR-WB,MOS分约有0.1~0.3的增益提升。

3.4 VoNR黑名单

本功能支持配置VoNR黑名单:当gNodeB选择目标小区时,可以过滤掉不支持VoNR的小区,以避免正在进行VoNR语音业务的 UE 切换入不支持VoNR的gNodeB中。


3. 5 VoNR 感知提升

  • 上行 RB 资源预留

本功能支持为语音用户预留特定位置和数量的RB资源。语音用户优先使用预留的RB资源,预留的RB资源被占满后可以继续使用非预留的RB资源,非预留的RB资源按照正常的调度流程分配。非语音用户不能使用本功能预留的 RB资源。本功能通过打开参数 NRCellAlgoSwitch.VoNRSwitch 的子开关“UL_RB_RSV_SW” 来支持。预留RB资源的起始位置通过 参数 NRDUCellPusch. UlVonrRsvdRbStartPos来配置,预留RB资源个数通过参数 NRDUCellPusch. UlVonrRsvdRbNum 来配置。本功能建议在大话务场景(小区 PRB利用率≥60%) 或高语音用户比例场景(语音用户比例≥10%)开通,且要求 系统带宽大于20MHz,可以更有效的保障语音业务质量。也可在窄带干扰场景开启,规避窄带干扰对话音的影响。

  • VoNR上行RLC分段优化

VoNR上行RLC分段优化:当信道质量较低时,UE发射功率受限, 上行动态调度分配的TBS(transport block size)会随之调小,使得RLC分段变多。RLC分段变多会导致VoNR语音包时延增大、丢包率抬升以及上行开销增多的语音质量问题。上行RLC分段优化功能通过限制上行动态调度分配的TBS来控制上行RLC分段数,以提高信道质量较低时的语音质量。


  • 基于覆盖的VoNR 和EPS Fallback自适应

当网络中同时支持VoNR功能和EPS Fallback功能时,可通过参数NRCellAlgoSwitch. VoiceStrategySwitch的子开关 “VONR_EPS_FB_ADAPT_SWITCH” 来支持基于覆盖的VoNR和 EPS Fallback语音解决方案自适应选择功能。仅处于空闲态和Inactive态的UE支持本功能。根据5QI1承载建立请求前是否上报 A2测量来判断该UE是否处于弱覆盖区域,如果上报A2测量则判断该UE处于弱覆盖区域。针对弱覆盖区域的UE,当gNodeB收到核心网发送的PDU Session Resource Modify Request消息要求建立5QI1语音承载时,gNodeB向核心网回复的PDU Session Resource Modify Response消息中携带失败原因值IMS voice EPS fallback or RAT fallback triggered,即拒绝建立5QI1语音承载,而是进入EPS Fallback语音呼叫流程。

  • 语音用户的PUSCH功率差异化配置

语音用户的PUSCH功率差异化配置:语音小包业务可能由于功率不足导致丢包,为提高语音小包业务可靠性,需要提高用户在功率未用满时的PSD,保证当用户发 送小包时,可以尽量用满功率。

针对语音用户,设置差异于数据用户的PSD:

  • 为了提高VoNR小包业务的可靠性,在功率没有用完的情况 下,可以增大功率谱密度。

  • 通过配置VoNR PUSCH功率偏置,保证UE发送小包业务时 功率可用满。



3.6、VoNR 覆盖提升

  • ROHC语音包头压缩

ROHC:通过减少语音包头部负荷来降低无线链路误码率和时延、 减少无线资源消耗。ROHC支持IPv4和IPv6包头的压缩 。


Profile1用于RTP,Profile2用于RTCP. Profile 0不压缩。gNodeB将在用户进行语音业务时启动ROHC流程:gNodeB首先确认与UE支持的Profile的交集,再与UE协商ROHC 最大上下文。


  • ROHC头解压失败恢复

价值:使ROHC解压失败的包能够恢复正确,减少丢包,减少MOS 分降低概率,同时避免在远点时退出ROHC引起语音中断丢包,进一步发挥ROHC提升覆盖的价值 。

原理:远点处存在空口丢包的时候,若出现通话期和静默 期转换的时候有关键压缩包丢失(TS_Scaled的更新,或者TS_Stride的更新等),ROHC解压更容易出错,从而导致ROHC解压失败。ROHC头解压失败恢复功能主要针对Timestamp 进行恢复,适用于RTP协议(RTCP 没有 timestamp 字段)。

增益:解压恢复成功率约为0%~15%。解压失败的恢复比例与终端的ROHC具体实现机制有关,部分场景下可能无增益。Timestamp 的变化与TS_Scaled、TS_Stride、TS_Offset三个变量均有关, 不同终端的实现,在语音期、静默期之间切换时可能会调整其中的一个或者多个变量。因此出现Timestamp跳变的概率也不同。但不会带来额外的负增益。


  • 基于重传次数增加的上行覆盖优化

当5QI1承载采用UM模式时,gNodeB针对语音用户进行最大4次 HARQ重传,如果用户处于小区边缘,重传4次可能也无法确保上行数据完全准确传输。本功能支持将最大HARQ重传次数调整为8次,通过增加上行重传机会,在弱覆盖场景下提高上行数据传输的成功率。本功能在语音业务发起时生效,语音业务结束后失效。本功能通过开关控制,关闭时,最大重传4次。打开后最大重传8次,重传次数不可配置。在降低丢包率,提升覆盖的同时 ,每增加一次HARQ 重传,会增加一定时延。


  • 基于MAC CE的调速

ANBR (access network bitrate recommendations) : 本功能支持 gNodeB 根据 MAC CE 反馈的 上行空口能力,向UE提供推荐速率信息,以配合UE实现语音速率调整功能。


(1) VoNR 逃生

  • 基于语音质量的异频切换

NR 支持基于语音质量的异频切换功能,在干扰(重叠覆盖、大气波导等)、上下行信道质量差异大等场景下, RSRP还没到基于覆盖切换门限的时候,可以通过基于语音切换到异频邻区,实现逃生, 以确保用户的语音业务体验。本功能通过打开参数NRCellAlgoSwitch. VoiceStrategySwitch 的子开关“VONR_QLTY_INTER_FREQ_HO_SW”来支持。基于语音质 量的异频切换功能开启后 ,在语音质 量判决周期 ( 通过参数NRCellServExp.VonrPlrJudgePeriod来配置) 内:

  • 当语音业务上行丢包率或下行丢包率 > 基于语音质量的异频切换的丢包率门限时,表示用户语音质量变低,此时将触发基于语音质量的异频测量。

  • 当语音业务上行丢包率和下行丢包率 ≤ 语音质量恢复的丢包 率门限时,表示用户语音质量变高,此时将停止基于语音质 量的异频测量。

  • 基于覆盖/语音质量的VoNR到VoLTE的切换






4. VoNR 开通准备条件

1、基站版本要求

21B版本,lic在基本包包含

2、核心网要求

运营商网络需部署IMS网元,且5GC支持IMS语音

3、终端要求:UE需支持VoNR(MAC CE功能需UE支持ANBR能力,ROHC功能需UE支持 Profile1和Profile2)


3、 VoNR 开通脚本-1

//打开 VoNR 功能开关

MOD NRCELLALGOSWITCH: NrCellId=7, VoNRSwitch=VoNR_SW-1;

//打开 ROHC 功能开关和子协议开关(根据网络规划配置)

MOD NRCELLALGOSWITCH: NrCellId=7, ROHCSwitch=ROHC_SW-1,ROHCProfiles=PROFILE0X0001-1&PROFILE0X0002-1;

//打开基于 MAC CE 的调速开关(可选, 根据网络规划配置)

MOD NRCELLALGOSWITCH: NrCellId=7,VoNRSwitch=ANBR_SW-1;

//打开基于重传次数增加的上行覆盖优化开关(可选, 根据网络规划配置)

MOD NRCELLALGOSWITCH: NrCellId=7, VoNRSwitch=UL_DELAY_COV_OPT_SW-1;

//配置 gNodeB PDCP 参数组、 上行 PDCP 丢弃定时器和 gNodeB PDCP 重排序定时器

MOD GNBPDCPPARAMGROUP: PdcpParamGroupId=0, UlPdcpDiscardTimer=MS300,gNBPdcpReorderingTimer=MS100;

//配置 gNodeB RLC 参数组和 gNodeB RLC 重组定时器为 100

MOD GNBRLCPARAMGROUP: RlcParamGroupId=0, gNBRlcReassemblyTimer=MS100;

//关联 gNodeB PDCP 参数组和 5QI1承载

MOD NRCELLQCIBEARER: NrCellId=0, Qci=1, UmPdcpParamGroupId=0, RlcMode=UM;

//关联 gNodeB RLC 参数组和 5QI1 承载

MOD NRDUCELLQCIBEARER: NrDuCellId=0, Qci=1, UmRlcParamGroupId=0;

//打开上行 RB 预留开关(可选, 根据网络规划配置)

MOD NRCELLALGOSWITCH: NrCellId=7, VoNRSwitch=UL_RB_RSV_SW-1;

//配置上行 RB 预留个数和上行 RB 预留起始位置(可选, 打开上行 RB 预留功能时需配置)

MOD NRDUCellPusch: NrCellId=7, UlVonrRsvdRbNum=N10, UlVonrRsvdRbStartPos=10;

//增加 VoNR 黑名单(可选, 根据网络规划配置)

ADD GNBSERVICEBLACKLIST: Mcc="302", Mnc="220", Tac=1,ImsServiceIndicator=VONR_SUPPORT_INDICATOR-0;

//添加运营商级的语音策略配置

ADD NRCELLOPPOLICY: NrCellId=1, OperatorId=0,VoicePolicySwitch=OPERATOR_VONR_SW-1;

//打开 ROHC 解压失败恢复功能(可选, 根据网络规划配置)

MOD NRCELLALGOSWITCH: NrCellId=7, RohcSwitch= ROHC_RECOVERY_SW-1;

//打开基于覆盖的 VoNR 和 EPS Fallback 自适应(可选, 根据网络规划配置)

MOD NRCELLALGOSWITCH: NrCellId=7,VoiceStrategySwitch=VONR_EPS_FB_ADAPT_SWITCH-1;

//配置基于覆盖的 VoNR 和 EPS Fallback 自适应 A2 RSRP 门限

ADD NRCELLINTERRHOMEAGRP: NrCellId=5, InterRatHoMeasGroupId=2,InterRatHoA1A2Hyst=1,InterRatHoA1A2TimeToTrig=160MS,VonrEpsfbAdaptA2RsrpThld=-100;

//打开基于语音质量的异频切换功能(可选, 打开基于语音质量的异频切换功能时需配置) 

MOD NRCELLALGOSWITCH: NrCellId=7,VoiceQltyBasedHoSwitch=VONR_QLTY_INTER_FREQ_HO_SW-1;

//配置基于语音质量异频切换的丢包率评估周期、丢包率门限、异频切换 A5 事件的 RSRP和 RSRQ 门限(可选, 打开基于语音质量的异频切换功能时需配置)

MOD NRCELLSERVEXP: NrCellId=7, VonrPlrJudgePeriod=2,VonrQltylnterFreqHoPlrThld=5, VonrQltyRecoveryPlrThld=1,VonrQltylnterFA5RsrpThld2=-105, VonrQltyInterFA5RsrqThld=-34;

//配置基于语音质量的频点优先级(可选, 打开基于语音质量的异频切换功能时需配置)

MOD NRCELLFREQRELATION: NrCellId=7,VonrQualityFreqPriority=1;

// 配置上行 RLC 分段数(可选, 打开上行 RLC 分段优化功能时需配置) 

MOD NRDUCELLSERVEXP: NrDuCellId=7,UlVonrRlcSegNum=4;

VoNR 测试信令如下:




此外还可以导出RTP包个数、丢包率、时延、抖动、编码方式等关键指标,并生成宏观的业务统计报表。

5. VoNR 优化思路

RF 性能是"基础",VoNR 语音质量是"重点", 端到端定位是"难点"

  • VoNR语音相对数据业务,对网络覆盖,邻区规划, 系统干扰、传输质量等的影响更灵敏,对网络优化的要求更高;

  • 在聚焦VoNR性能优化的同事增强特殊场景覆盖、关注高负荷场景的容量,打造全覆盖的 VoNR 优质网络。



5.1、VoNR 接通优化

接通率的分析入口为接通失败点的分析, 分析思路如下:


5.2VoNR 时延优化

核心网组网方式对时延影响大, 可根据分段时延来对应本地测试情况, 如果 发现某一段较大, 针对此段分析:


5.3、VoNR 掉话优化


5.4MOS 优化



此博客中的热门博文