微信同步更新欢迎关注同名modem协议笔记
小区选择和小区重选都是idle态行为,小区重选无非是为了让UE驻留在信号状况最好的小区上,以便之后在connected mode获得更好的体验,小区重选的目标小区也要满足S准则,下面就来具体看下小区重选。
通过38.331中的状态图,可以看出NR只支持和LTE的inter RAT小区重选,并不涉及其他RAT,通过系统消息包含的信息,SIB2 serving cell reselection info,SIB3 NR intra freq,SIB4 NR inter freq,SIB5 inter RAT E-UTRA,也说明NR只支持LTE和NR间的重选,及协议上规定NR不能重选到3g和2g。
作为中介的LTE,小区重选就比较全面,可以到任何RAT,其与小区重选有关的系统消息如下,SIB3 common cell-reselection info;SIB4 intra-freq cell info;SIB5 inter freq cell info;SIB6 inter -rat (UTRA)cell info;SIB7 INTER-RAT(GERAN) cell info;SIB8 inter rat(CMDA 2000) info;SIB24 NR cell info。
另外在切换过程,R15仅仅支持NR 到LTE的切换,但是R16支持了rat utra-fdd,这个修改主要是为了VONR到WCDMA的voice;某些运营商可能NR有IMS但没有VONR,本来可以通过EPSFB进行,但是又没开VOLTE,这样就可以直接到WCDMA进行voice,具体可以看R2-2001693。
扯远了,回到cell reselection过程。
Priority
首先说优先级问题,在小区重选过程中要用到NR freq或者inter RAT LTE 的优先级信息,优先级信息一般可以通过系统消息/RRCRelease/从其他RAT中带过来。系统消息中的NR freq或者inter RAT freq 可能没有带priority信息(cellReselectionPriority),这时候这些没有优先级的freq不在小区重选的评估范围;如果dedicated 信令中有带freq的优先级信息,那要忽略系统消息中对应的优先级信息,以dedicated信令的信息为准。
如果UE收到一个携带deprioritisationReq字段的RRCRelease消息,并且在T325超时之前,不管UE驻留在哪种RAT下,UE 都会认为以下NR频点的重选优先级是最低的(看具体配置了,可能配置成如下情况):
1 UE 当前频点;
2 和UE之前可能存储的NR频点(之前UE可能收到一个携带deprioritisationReq字段的RRCRelease消息);
3 所有NR频点,也就是说整个NR频点的重选优先级都是最低的。
当NAS 请求执行一个PLMN选择的时候,UE必须删除存储的deprioritisationReq信息;一旦优先级有变化,UE就应该尽快搜寻一个更高优先级的小区进行重选。
如果RRCRelease携带deprioritisationReq字段,则UE:
1 启动或重启T325 =deprioritisationTimer;
2 保存deprioritisationReq字段,直到T325超时
deprioritisationReq:指示是否当前的频点或整个RAT(NR)的优先级都被de-prioritised,注意这里可以在配置指定的frequency或整个NR。
deprioritisationTimer:指定一个Timer,也就是T325.
通过上图可以看出 T325 一旦启动或重启,就不会停止,除非超时;收到携带deprioritisationReq字段的RRCRelease T325就会开启,当超时 对应的NR频点就恢复原有的优先级。
满足以下条件时,UE就要删除dedicate 信令提供的priority信息:
1 当UE 进入一个不同的RRC 状态
2 当T320 超时,若有的话;
3 当NAS 请求执行一个PLMN 选择;
4 UE收到RRCRelease没带cellReselectionPriorities
UE不会考虑将在黑名单list中的小区作为小区重选候选小区;当发生inter-RAT小区选择/重选时,UE应该继承前RAT配置的专用优先级和可能存在的remaining validity timer(比如T320)。
下面就开始看cell re selection具体的内容。
Measurement rules for cell re-selection
如果当前服务小区满足Srxlev > SIntraSearchP and Squal > SIntraSearchQ,UE可能就不去执行intra-freq测量,否则就要进行intra-freq测量。
NR freq或inter RAT freq的重选优先级高于当前NR freq时,UE就要对高优先级的NR freq或inter RAT freq进行测量;
对于重选优先级<=当前NR freq的NR inter freq及重选优先级小于当前NR freq的inter RAT freq,如果服务小区满足Srxlev > SnonIntraSearchP and Squal > SnonIntraSearchQ,UE就可能否不会对上述freq进行测量;否则就要对上述freq进行测量。
Mobility states of a UE
38.304中有关对移动状态进行区分,具体来说就是根据一定时间段内的重选次数的多少,判断所处的状态,然后根据移动状态的不同,对Treselection Qhyst等参数进行相应的scaling,进而对小区重选评估过程形成想要的影响,但是这些Mobility参数在看到的log中都没有配置过,先把截图贴这,遇到再说,这块内容也很好理解。
Scaling rules
NR Inter-frequency and inter-RAT Cell Reselection criteria
high priority
系统消息中有配置threshServingLowQ且UE在当前小区驻留的话时间超过1s,当满足以下条件时就要重选到高优先级的NR freq或inter RAT freq:
高优先级的NR freq或inter RAT freq在TreselectionRAT内都满足 Squal > ThreshX, HighQ 。
如果系统消息中没有配置threshServingLowQ,当满足在TreselectionRAT内都满足 Srxlev > ThreshX, HighP且在当前小区驻留时间超过1s,就要重选到高优先级的NR freq或inter RAT freq。
lower priority
系统消息中有配置threshServingLowQ且UE在当前小区驻留的话时间超过1s,当满足以下条件时就要重选到低优先级的NR freq或inter RAT freq:
当前服务小区 Squal < ThreshServing, LowQ且低优先级的NR freq或inter RAT freq在TreselectionRAT内都满足 Squal > ThreshX, LowQ ;
如果系统消息中没有配置threshServingLowQ,当服务小区 Srxlev < ThreshServing, LowP 且低优先级freq 满足在TreselectionRAT内都满足 Srxlev > ThreshX, LowP外加UE在当前小区驻留时间超过1s,就要重选到低优先级的NR freq或inter RAT freq。
当多个小区满足小区重选准则时,UE要首先考虑优先级高低,其次要考虑RAT高低决定重选到哪个小区。例如最终满足重选准则的是 5g 小区A(priority=5),LTE小区B(priority=5),NR小区C(priority=4),最终要重选到5G 小区A。
Intra-frequency and equal priority inter-frequency Cell Reselection criteria
对于同优先级的freq 应该基于Ranking 准则进行重选,进行Ranking的小区首先要满足S准则,然后分别对serving cell和neighbouring cell计算R值。
Qoffsettemp 来自SIB1中的connEstFailOffset,如果该值缺省,则Qoffsettemp=无穷大,结合公式-Qoffsettemp,负无穷 就是0。
在对邻区进行R计算时,Qoffset的取值要分情况;如果邻区是intra freq,UE要看SIB3中是否有配置 Qoffsets,n,有则Qoffset= Qoffsets,n,没有配置 Qoffsets=0。
如果邻区是inter Freq,要看SIB4中是否有配置 Qoffsets,n和Qoffsetfrequency,有则Qoffsets=Qoffsets,n+Qoffsetfrequency,如果没有配置Qoffsets,n时,Qoffsets=Qoffsetfrequency。
如果小区重选对应的小区有多个 beam,小区的测量要基于cell SSB测量得到:
如果没有配置absThreshSS-BlocksConsolidation或nrofSS-BlocksToAverage或者beam测量值<=absThreshSS-BlocksConsolidation,则
highest beam 测量值作为小区级别的测量值;
否则,就将高于门限absThreshSS-BlocksConsolidation的nrofSS-BlocksToAverage个 beam的线性平均power值作为小区测量值。
rangeToBestCell
没有配置rangeToBestCell时,UE就重选到R值最高的小区上即可。
rangeToBestCell对应一个门限,当cell R>rangeToBestCell时,对应的cell会作为highest ranked cell的候选小区。
absThreshSS-BlocksConsolidation对应的是用于highest ranked cell的beam级别测量的最小门限值。
nrofSS-BlocksToAverage指定用于highest ranked cell的beams number。
当配置rangeToBestCell时,某个小区大于absThreshSS-BlocksConsolidation 的beam数最多且其R 值也在rangeToBestCell范围内,那UE就要重选到这个小区。
如果有多个小区满足上面的要求,则要优先重选到R 值最高的小区。
Ranking 准则,新小区R值大于服务小区R值的时间大于Treselection_RAT且UE在目前小区驻留的时间超过1s,UE就要重选至新小区。
Cells with cell reservations, access restrictions or unsuitable for normal camping
如果某些小于由于SIB 消息中的IE cellBarred/cellReservedForOperatorUse/cellReservedForOtherUse/cellReservedForFutureUse等原因导致被bar,这些cell也不能作为小区重选的候选小区。
如果基于优先级重选准则的highest rank cell或best cell是intra freq或inter freq,由于处于5GS forbidden TA for roaming list中或PLMN不是RPLMN的EPLMN,这些cell在300s内不能作为候选小区;如果inter RAT因为处于forbidden TA for roaming list或因为PLMN不是RPLMN的EPLMN,那inter RAT cell在300s内不能作为候选小区。
UE处于any cell selection状态时,所有的限制都要移除;如果是因为NR触发UE redirect 到其他Freq,对应的限制也应该移除。
虽然协议上小区重选过程规定的很详细,但是实网中会遇到ping-pong重选的场景,两个小区配置的重选参数和实际信号状况,会导致UE在两个小区间不断的发生重选,最明显的后果就是耗电会增加,用户体验也不好,因而芯片厂会针对这种情况,提前根据参数预测是否会有ping-pong重选场景,进而有效避免该场景。
另外如开头所述,系统消息中的NR freq或者inter RAT freq没有带cellReselectionPriority的话,UE不会把这些没有优先级的freq作为小区重选的候选小区,直接忽略。
最后以2个NR重选的例子结尾。
此例只涉及intra freq,所以只考虑Ranking 准则即可。先整理下计算Rank 相关的参数。
log中没有配置rangeToBestCell,故在发生小区重选时,直接选到R值最高的小区上即可。
Qoffsettemp 来自SIB1中的connEstFailOffset,SIB1中没有配置该值,则Qoffsettemp=无穷大,结合公式-Qoffsettemp,负无穷 就是0。
Qhyst=4dB,Qoffset(SIB3)=q-offsetcell=0dB。
则公式简化如下
Rs=Qmeas,s+4
Rn=Qmeas,n
t-ReselectionNR =1s
Qmeas 对应RSRP value。
serving cell 504990/15 RSRP=-92.711 Rs=-92.711+4=-88.711
邻区504990/8 RSRP=-83.438 Rn=-83.438
此时Rn>Rs
serving cell 504990/15 RSRP=-92.977 Rs=-92.977+4=-88.977
邻区504990/8 RSRP=-83.242 Rn=-83.242
此时Rn>Rs t-ReselectionNR =1s 持续时间超过了1s,且邻区是满足S准则的,接下来就触发intra freq 小区重选,UE重选到了邻区504990/8上。
高优先级异频重选
SIB2 服务小区重选参数threshServingLowP 3, cellReselectionPriority 6, cellReselectionSubPriority oDot2
服务小区6+0.2=6.2;SIB4 inter freq 510990 重选优先级7+0.2=7.2,属于高优先级小区重选,对于高优先级小区,UE在收到对应参数时就要开始测量。
SIB2中没有配置 threshServingLowQ,则高优先级小区需要在TreselectionRAT内满足 Srxlev > ThreshX, HighP且在当前小区驻留时间超过1s,就要重选到高优先级的NR freq或inter RAT freq。
ThreshX, HighP取自SIB4中的threshX-HighP= 8
Srxlev的计算来自S准则
Srxlev = Qrxlevmeas – (Qrxlevmin + Qrxlevminoffset )– Pcompensation - Qoffsettemp
高优先级小区的参数来自SIB4,SIB4中没有配置Qrxlevminoffset
Qoffsettemp 来自SIB1中的connEstFailOffset,SIB1中没有配置该值,则Qoffsettemp=无穷大,结合公式-Qoffsettemp,负无穷 就是0。
Pcompensation=0,最后Srxlev = Qrxlevmeas – Qrxlevmin= Qrxlevmeas+120。
t-ReselectionNR =1s
连续2次的测量显示Srxlev = Qrxlevmeas – Qrxlevmin= Qrxlevmeas+120>threshX-HighP= 8 且持续时间超过 t-ReselectionNR =1s,
Srxlev = Qrxlevmeas +120>0
Squal = Qqualmeas +19>0
邻区是满足S准则的,接下来就触发intra freq 小区重选,UE重选到了邻区510990/237上。