DRX测试总结高度精华.docx
《DRX测试总结高度精华.docx》由会员分享,可在线阅读,更多相关《DRX测试总结高度精华.docx(30页珍藏版)》请在冰点文库上搜索。
DRX测试总结高度精华
1基础知识
针对Volte业务:
终端建议是LongDRX40ms,对业务体验没有影响。
最好的配置是160msDeactive40ms第二好的是160ms长+20ms短。
视频测试时延在2s内。
研究院原计划15号在全网开启DRX,被网络部叫停了,担心对网络性能有影响。
DRX+SPS同时打开的效果怎样?
1.1空闲模式下的DRX功能机制[1]
目前LTE中空闲模式下对PDCCH的监视功能采用DRX方式,从而降低了功耗,空闲模式下的DRX工作机制固定,采用固定的周期,并在寻呼时刻(PO)到来时启动监视PDCCH的功能,进入空闲模式下的激活期(OndurationTimer),在激活期需要全面监视PDCCH,在DRX激活期过去之后再次进入睡眠状态,PF(PagingFrame)表示含有一个或者多个PO的无线帧;若使用DRX,那么UE仅监控每个DRX周期的PO。
在UE开机后将会按照默认的DRX周期配置进行周期循环。
在寻呼时刻到来时将用P-RNTI对PDCCH进行扰码以便解出上面的数据。
1.2RRC连接状态下的DRX工作机制[3]
在RRC连接状态下的DRX工作机制,采用的是定时器与DRX环结合的工作方式,且eNB也会保持与UE保持相同的DRX工作方式,并实时了解UE是处于激活期还是睡眠期,因此保证在激活期传递数据,而在睡眠期不会进行数据传输。
1.2.1激活时间:
1onDurationTimer或InactivityTimer或drx-RetransmissionTimer或mac-ContentionResolutionTimer正在运行时;
2在PUCCH上已经发送了SR,此时处于等待状态,需要监视PDCCH,目的是获取传输上行数据的上行授权。
在获取了新的上行授权之后将会通知DRX按照固定的DRX流程运行,进入drx-InactivityTimer运行阶段。
3UE的HARQbuffer存在数据,并等待用于HARQ重传的ULgrant时;
4UE成功接收用于响应非UE选择的preamble的RAR,却没有收到指示初传(使用C-RNTI)的PDCCH时。
1.2.2DRX流程
图二:
DRX流程
当UE在“OnDuration”期间收到一个调度消息时,UE会启动一个“drx-InactivityTimer”并在该timer运行期间的每一个子帧监听PDCCH。
当“drx-InactivityTimer”运行期间收到一个调度信息时,UE会重启该Timer。
(对应上图标红为
(2)的部分)
当“drx-InactivityTimer”超时或收到DRXCommandMACcontrolelement时:
1)如果UE没有配置shortDRXcycle,则直接进入longDRXcycle;2)如果UE配置了shortDRXcycle,UE会进入shortDRXcycle并启动(或重启)“drxShortCycleTimer”,当“drxShortCycleTimer”超时,UE进入longDRXcycle。
(对应图中标红为(3)的部分)
如果UE当前处于shortDRXcycle,且[(SFN*10)+subframenumber]modulo(shortDRX-Cycle)=(drxStartOffset)modulo(shortDRX-Cycle);或者当UE当前处于longDRXcycle,且[(SFN*10)+subframenumber]modulo(longDRX-Cycle)=drxStartOffset,启动“onDurationTimer”。
(对应上图标红为
(1)的部分)
DRX是UE级别的特性,而不是基于每个无线承载来配置的。
当UE配置了DRX时,UE只能在“激活期”的时间内发送周期性CQI。
eNodeB在使用RRC来配置周期性CQI上报时,可以进一步地限制UE只能在“on-duration”的时间内发送CQI。
Timer
Start(Restart)
Stop
onDurationTimer
当前使用LongDRX Cycle且[(SFN*10)+subframenumber]modulo(longDRX-Cycle)=drxStartOffset。
(1)收到DRX Command MACcontrolelement;
(2)timer超时
drx-InactivityTimer
收到用于调度newtransmission的PDCCH(DL和UL的均可)
(1)收到DRX Command MACcontrolelement;
(2)timer超时
drx-RetransmissionTimer
HARQRTTTimer超时且对应HARQprocess的buffer中的数据没有成功解码
(1)收到指示下行传输的PDCCH;
(2)timer超时
drxShortCycleTimer
当配置了ShortDRXcycle时,如果drx-InactivityTimer超时,或收到DRX Command MACcontrolelement,则启动或重启drxShortCycleTimer,并开始使用ShortDRXcycle
Timer超时,此时开始使用LongDRXcycle
HARQ RTT timer
UE收到一个指示下行传输的PDCCH
Timer超时
参数名称
取值范围
单位
参数说明
级别
说明
LongDRXCycle
[10、20、32、40、64、80、128、160、256、320、512、640、1024、1280、2048、2560]
1ms,子帧个数;是DRXshortCycle的整数倍
长DRX周期的时间长度,由RRC信令消息进行配置。
UE级
计数器的起点以空口时间点进行计算
DRXInactivityTimer
[1、2、3、4、5、6、8、10、20、30、40、50、60、80、100、200、300、500、750、1280、1920、2560],
1ms,PDCCH子帧个数
在激活期,如果UE收到一个调度新数据传输的PDCCH调度信令,延长激活期的时间长度。
由RRC信令消息进行配置。
UE级
只针对新传数据,重传数据不启动或者不重启该计数器。
以空口时间点进行计数
DRXStartOffset
[0、1、2……LongDRXCycle-1]
1ms,子帧个数,与LongDRXCycle具有绑定关系
DRX周期的起点偏移量,对于长DRX周期和短DRX周期采用同一个起点偏移量。
由RRC信令消息进行配置。
UE级
ShortDRXCycle
[2、5、8、10、16、20、32、40、64、80、128、160、256、320、512、640],
1ms,子帧个数
短DRX周期的时间长度,由RRC信令消息进行配置。
UE级
以空口时间点进行计数
HARQRTTTimer
K+4;K为213协议中的Table10.1-1所示
1ms,子帧个数
HARQRTTTimer=t1+t2,其中,t1为UE接收下行数据块处理与反馈ACK/NACK之间的时延,t2为eNB接收ACK/NACK反馈的处理时延,t2固定为4ms。
HARQ进程级
eNB不需要维护该定时器。
DRXRetransmissionTimer
[1、2、4、6、8、16、24、33],
1ms,PDCCH子帧个数
UE接收PDSCH数据块时如果解码错误,当HARQRTTTimer超时后等待eNB重传数据块调度信令的时间。
由RRC信令消息进行配置。
HARQ进程级
以空口时间点进行计数
DRXShortCycleTimer
[1……16]
ShortDRXCycle,即DRXShortCycleTimer时长为ShortDRXCycle的整数倍
转入长DRX周期前使用短DRX周期的时间长度,DRXShortCycleTimer=n*ShortDRXCycle,n由RRC信令消息进行配置。
UE级
以空口时间点进行计数
OnDurationTimer
[1、2、3、4、5、6、8、10、20、30、40、50、60、80、100、200],
1ms,PDCCH子帧个数
在一个DRX周期内UE处于激活期的时间长度,对于长DRX周期和短DRX周期采用相同的OnDurationTimer值。
由RRC信令消息进行配置。
UE级
以空口时间点进行计数
MACContentionResolutionTimer
[8、16、24、32、40、48、56、64],
1ms,子帧个数
UE发送Msg3后启动该计数器。
由RRC信令消息进行配置。
UE级
以空口时间点进行计数
图三:
与DRX相关timer的启动和停止
除了HARQRTTtimer和drx-RetransmissionTimer是每个DLHARQprocess都有一个外,其它的timer是每个UE只有一个。
从图三可以看出,当任一timer启动时,不会影响其它timer的运行。
也即,UE处于激活态的最短时间为onDurationTimer指定的时间,而最长时间是不定的。
各种定时器都是以空口时间点进行计数
1.2.3MAC设计
区分调度点和空口发送点:
定时器有效的时间点为调度点,定时器启动时间点为空口发送点
1)特殊定时器:
更新DRXInactivityTimer、各进程的DRXRetransmissionTimer。
更新内容:
定时器启动时间点(帧号/子帧号)、定时器的剩余时长(ms数)、定时器已耗费时长、是否有效字段。
每个刷新点,将已启动且未超时的定时器的已耗费时长进行记录,并将定时器启动时间点更新到更新时刻的帧号及子帧号。
2)SR定时器:
默认时长设置为2000ms,如图所示,假设在子帧2接收到终端的SR,基站在子帧5调度空口子帧9的DCI0,即InactivityTimer的启动时间点是子帧9,按照协议子帧2到子帧9终端都会监听PDCCH。
如果调度后就停止SR定时器,则从子帧5到子帧9可能因为无有效定时器而进入DRX状态,为防止此类情况出现,基站在子帧5调度完DCI0后更新SR定时器的长度,使之在子帧9超时,从而保证此段时间内基站不进入DRXActivity状态。
图3.3.2.4-1SR定时器的说明(仅供示意,不代表真实调度时序)
3)ContentionResolutionTimer:
基于竞争的随机接入:
基站在收到MSG3后启动ContentionResolutionTimer。
跟SR定时器的处理类似,为了避免基站提前调度导致的DRX状态错误,MAC在调度完上行或下行的PDCCH后修改ContentionResolutionTimer时长,使其在PDCCH空口子帧超时。
非竞争的随机接入:
基站在下发MSG2后启动ContentionResolutionTimer,虽然非竞争的情况不需要该定时器,但实现上也使用该定时器对msg2后激活时间进行限制。
跟SR定时器的处理类似,MAC在调度完上行新传或下行新传的PDCCH后修改ContentionResolutionTimer时长,使其在PDCCH空口子帧超时。
SR定时器或者ContentionResolutionTimer是根据收到SR或者msg2/3设置有效的,启动的时间点就是该设置时间点
4)DRXInactivityTimer:
定时器有效的时间点为调度点<1>,定时器启动时间点为空口发送点<2>,从<1>到<2>点之间的各时刻点的DRX状态应当不考虑OnDurationTimer定时器,具体判断办法是:
(当前时间点算术减<2>对应的时间点)并赋值给一个无符号u32类型数,结果大于5120则认为处于<1>到<2>之间,即定时器还没有生效;小于等于5120则认为定时器是有效的;能这么认为是因为DRX特殊定时器总是每2560ms就进行一次刷新
5)RetransmissionTimer:
收到了NACK时设置为有效的,而该定时器的实际起点却是在k+4(k对应了PDSCH从空口下发到HARQ-NACK到空口的子帧数)子帧后;停止时间为:
协议规定在发送了对应的PDSCH;当调度了PDCCH后需要将DRXRetransmissionTimer的已耗费时长/定时器剩余时长更新到不超过PDCCH下发的空口时间点,注意,如果原已耗费时长/定时器剩余时长比PDCCH下发到空口的时间点对应的时长还要短,则不需更新;
上下行调度PDCCH及PUCCHCQI/SRS时的设计:
在调度点对各个定时器进行判断,定时器的判断顺序为:
DRXInactivityTimer、DRXRetransmissionTimer、OnDurationTimer、SR定时器或者ContentionResolutionTimer
图3.3.2.7-1定时器超时的判断
6)更新定时器的其他时机
DRX模块在调度结束后和收到反馈后对相关定时器进行更新。
在调度之后,DRX模块需要更新相应的定时器的状态,具体做法如下:
(1)如果调度的是新传,启动或重新启动DRXInactivityTimer,把调度的PDCCH的空口时间点作为该定时器的起始时间点。
(2)如果调度的是重传,应该关闭这个用户这个进程的DRXRetransmissionTimer,即把这个定时器置为无效。
(3)如果是处于pending状态的SR,启动或重新启动DRXInactivityTimer,把调度的PDCCH的空口时间点作为该定时器的起始时间点。
在收到反馈的点,DRX模块需要更新相应的定时器的状态,具体做法如下:
(1)如果收到的反馈是ACK,DRX模块不做任何处理。
(2)如果收到的反馈是NACK。
DRX模块需要开启这个用户这个进程的DRXRetransmissionTimer,即把这个定时器置为是有效的,该定时器的起始时间设为反馈HARQ-NACK的空口时间+4;特别指出,对于协议上定义HARQRTTTimer超时后才应当启动RetransmissionTimer的情况,在实现上由于HARQRTTTimer超时时就是RetransmissionTimer启动之时,为节省内存目的可不设计HARQRTTTimer,而是将RetransmissionTimer的定时起点设置为反馈HARQ-NACK的空口时间点+4的帧号/子帧号,根据3.3.2.7节的设计,这么做并不影响对RetransmissionTimer是否有效及是否超时的判断;
(3)对于没有过激活检测门限的情况,认为之前发送的PDCCH没有被收到,将RetransmissionTimer设置为无效,同时判断DRXInactivityTimer是否有效,如有效且启动时间点/已耗费时长对应了该HARQ-ACK反馈的时间点(多个PDSCH对应同一个HARQ-ACK的情况,则只要满足与任一个PDSCH的时间关系则认为满足对应关系),则认为DRXInactivityTimer是由于此PDCCH调度启动的,从而停止该DRXInactivityTimer,否则不处理DRXInactivityTimer。
6)DRX下TM7/8的调度设计方案
DRX与TM7/8问题的引入主要是考虑由于静默期不发送SRS,PL无法进行波束赋形,如果在激活态需要马上传数据,可能会导致赋形系数不准确,影响网络的性能。
MAC维护一个SRS链表,当RRC配置开启了用户的DRX功能时,将用户插入到SRS链表的有效链上。
MAC按照RRC配置的SRS参数维护用户的SRS周期,每ms查看将要到达SRS周期时间点的用户,并检查用户此时所有DRX相关定时器的状态,如果用户此时处于DRXACTIVE状态,则认为用户不会发送对应空口点的SRS,给PLM1发送一条SRS无效指示消息,内容含:
小区索引、用户索引、srs空口半帧号,srs空口子帧号。
根据MAC的时序,MAC提前2ms通知PLM1模块SRS无效指示。
PLM1模块收到SRS无效指示消息后,认为本次的赋形系数无效,不再上报给MAC。
建议实现方案2来保证DRX下的TM7/8的调度性能。
7)DRX下CQI/PMI/SRS/RI/HARQFeedback的上报设计方案
当UE处于“DRXActivity状态”时,UE不上报周期CQI/PMI/RI,MAC需要通知PLDE模块不进行检测。
当UE处于“DRXActivity状态”时,UE不上报SRS,MAC需要做特殊处理,如果在SRS调度的周期点处于DRX激活状态,则MAC设置UE结构下的标记变量(该变量指示紧跟的SRS测量上报是否有效)为无效,从而不处理紧跟的那条PL上报的SRS测量消息;否则标记为有效,即处理紧跟的那条PL上报的SRS测量消息。
UE接收PHICH和发送下行HARQ的反馈不受DRX影响,需要时,可随时发送,MAC需要及时发送和通知PLDE模块进行检测。
1.2.4LongDRX周期和shortDRX周期的转换
关系如下:
1、初次配置DRX或DRX配置下MAC复位后默认为longDRX周期
2、drx-InactivityTimer超时后或者在当前子帧收到MACCE命令,则使用shortDRX周期,同时启动或重启drxShortCycleTimer;
使用短DRX周期时onDurationTimer的起点由下面公式确定:
[(SFN*10)+subframenumber]modulo(shortDRX-Cycle)=(drxStartOffset)modulo(shortDRX-Cycle)
3、drxShortCycleTimer超时后使用longDRX周期
对于VoIP业务,在SPS静默期,基站可以通过发送DRXMACCE来控制终端进入shortDRX以保证SPS业务及时从静默期切到激活期;在SPS激活期,如果一直没有动态调度,那么使用longDRX以达到省电的目的,如果存在动态调度或者调整SPS资源的动态调度或者释放SPS资源的动态调度等,基站可以通过发送DRXMACCE来控制终端尽快进入shortDRX以保证调度时延。
2voip业务新增
2.1配置相关
半持续调度用户如果配置了DRX,半持续调度传输时间需配置在DRX的激活期。
SPS初传之外的新数据发送虽然不需要pdcch调度,但是SPS的初传和下行重传需要pdcch调度,所以最好将下行SPS传输放在DRX激活期内。
各DRX用户的drxStartOffset取值要错开,保证各子帧调度负荷比较均匀。
异频测量GAP优选配置在用户的静默期。
切换时直接释放用户的DRX配置
每个小区中不同的QCI对应不同的DRX参数配置,如果建立QCI不同的多条承载,则取PDB(PacketDelayBudget)较小的一类业务参数来配置UE的DRX。
在建立承载、修改承载和删除承载的过程中,如果该UE业务承载组合发生变化导致维护的最小PDB业务发生变化,RRC通过重配置消息对终端的DRX参数进行重新配置。
比如,对于VoIP的半持续调度业务,通过设置QCI为1业务的专用的DRX参数,用于配置半持续调度业务使用。
各QCI对应的DRX周期的配置范围及默认配置如下表所示:
(该表来源于创新中心提供的算法)
QCI等级
PDB
LongDRX周期范围
LongDRX周期默认值
1
100ms
10ms~640ms
20ms
2
150ms
10ms~640ms
20ms
3
300ms
10ms~30ms
10ms
4
50ms
10ms~2560ms
160ms
5
100ms
10ms~50ms
20ms
6
100ms
10ms~2560ms
160ms
7
300ms
10ms~50ms
20ms
8
300ms
10ms~2560ms
160ms
9
300ms
10ms~2560ms
40ms
2.2针对SPS调度,DRX参数配置表
通过将longDRX-Cycle的周期配置为20ms,匹配SPS激活期每20ms的语音包,保证SPS的调度时延,同时也保证了SPS静默期及时的向激活期转换。
通过将onDurationTimer配置成较小的2个PDCCH,保证了DRX激活期足够短,有利于终端省电。
为了最大化省电的目的,onDurationTimer最小可配置psf1,但是该值配置过小,在多用户开启DRX功能时,由于用户可用的PDCCH子帧很少,可能导致多用户间抢占资源,导致资源分配失败的问题,虽然这个问题可通过《资源分配参数关系特性实现报告v1.00.00》中介绍的方法,将用户的DRX起始位置在时域上岔开来规避这个问题,但是用户过多时,资源也有可能错不开,所以建议具体配置值还是需根据实际应用场景决定。
DRX参数
建议配置值
longDRX-Cycle
sf20
onDurationTimer
psf2
drx-InactivityTime
psf5
drx-RetransmissionTimer
sf5
针对SPS调度,相应的DRX的参数配置如下表,通过下表参数的配置,能尽可能的保证SPS调度时延和省电的目的,表中给出了两种方案的参数配置建议,后续通过对比测试,确定最终的配置组合。
DRX参数
建议配置值
方案一:
仅配置longDRX,不配置shortDRX
longDRX-Cycle
sf20
onDurationTimer
psf1,2
drx-InactivityTime
psf10
drx-RetransmissionTimer
psf8
方案二:
配置longDRX及shortDRX
longDRX-Cycle
sf160
ShortDRX-Cycle
sf20
drxShortCycleTimer
8*sf20
onDurationTimer
psf6
drx-InactivityTime
psf10
drx-RetransmissionTimer
psf8
2.3通过参数配置达到测试FTP业务时使用短DRX的目的
具体建议参数建议取值如下:
参数名称
建议取值
drxOnDurationTimer
psf3
drxInactivityTimer
psf10
drxRetransmissionTimer
psf8
drxLongCycle
160ms
drxShortCycleTimer
10ms
drxShortCycle
4
2.4spscqi等的资源分配简化策略
1、HL按照lmt-b上的DRX配置参数配置,Drx时间偏移点配置在SRS时间点。
2、MAC在CQI和DRX冲突时调度非周期CQI。
(参考《资源分配参数关系特性实现报告》)
3、HL和MAC修改SPSHARQACK资源分配和调度方法。
(参考《资源分配参数关系特性实现报告》)
4、H