1.为什么需要加入系统信息变更机制

世事无绝对,考虑到网侧某些特定情况下可能需要对一些参数进行修改,比如修改SIB1中的RACH参数,或者修改SIB2中的ac-BarringInfo参数,因而需要增加一种机制,可以让SIB参数有变更的时候,UE能及时的获取到更新之后的系统信息。这种机制也就是本文将要描述的“系统信息变更过程”(change of system information)。

可能有的同学会问了,UE难道不会在每个系统信息的周期时刻都去解码吗?UE显然是知道所有每个系统信息的发送时刻的,eNB也是周期广播的,所以只要UE愿意去读,是能及时获取到最新的系统信息的,那为什么UE不去这么做呢?因为在很多情况下系统信息是不会变化的,如果让UE在已经获取了系统信息的情况下,仍然每隔几十ms不间断的去读系统信息,那是比较费电的。功耗问题是影响UE整体性能的一个非常关键的问题,其它诸如寻呼、CDRX机制也是基于类似的出发点考虑的。

既然UE不会在每个系统信息的发送时刻都去读,那什么时候UE需要去读呢?当发生下面场景中的其中一种时,UE就需要去获取或重新获取系统信息:

(1)开机后的小区选择过程。
(2)准备重选到另一个小区时。
(3)切换过程完成之后。
(4)从其他制式进入到LTE制式之后。
(5)从丢失覆盖返回。
上面这5种场景可以归纳为当UE进入一个新的服务小区之后,需要获取该小区的系统信息。

(6)收到系统信息变更指示。
(7)收到ETWS消息指示。由寻呼消息中是否出现etws-Indication字段决定。
(8)收到CMAS消息指示。寻呼消息中是否出现cmas-Indication字段决定。
上面这3种场景可以归纳为服务小区中的广播参数发生了变化,需要UE重新获取。

(9)收到CDMA2000上层指示。此时UE需要重新获取携带CDMA2000参数的SIB8。
(10)超过系统信息的最大有效期。如果UE已经读过系统信息,那么UE存储的系统信息只有3个小时的有效期,超过3个小时就需要重新获取系统信息。

2.系统信息变更过程

系统信息的变更只能发生在特定的无线帧中,这些特定的无线帧也被称作“变更周期”(modification period,简称MP)。变更周期的边界或者说起始的帧位置要符合条件(SFN mod m = 0)。其中,m表示变更周期,由SIB2块中的modificationPeriodCoeff参数和defaultPagingCycle参数共同决定,如图1所示。比如,modificationPeriodCoeff=n2,defaultPagingCycle=rf32,那么变更周期m=2×32=64,单位是无线帧的个数。


(图1 SIB2中与变更周期相关的参数)

当网络需要修改系统信息时,将执行下面的2个过程:

(1)发送系统信息变更指示。eNB会给UE发送一个系统信息变更指示,告知UE在接下来的系统变更周期中需要重新读取系统信息。UE一旦收到系统信息变更指示,就会在下个变更周期的起始位置开始获取新的系统信息。UE在解码到新的系统信息之前,需要继续使用旧的系统信息参数。

(2)在接下来的一个变更周期里,网侧广播修改后的系统信息。

如图2所示,不同的颜色块代表不同的系统信息。在系统变更周期n里,UE收到了系统变更指示,但此时的系统信息仍然是旧的系统信息,即图中的红色标识块,在接下来系统变更周期(n+1)里,网侧开始广播新的系统信息块,即图中的粉色内容。黄色的系统信息块在此过程中没有改变。


(图2 系统信息变更过程)

根据待修改的系统信息参数的不同,这个变更指示参数被分成了2个部分:寻呼消息里的systemInfoModification字段和SIB1中的systemInfoValueTag字段。如果是修改除SIB10/11/12三种之外的系统信息,则需要在寻呼消息里增加systemInfoModification字段;而如果是修改除MIB/SIB1/SIB10/SIB11/SIB12之外的系统信息,则需要修改SIB1中的systemInfoValueTag字段。

博文《DRX不连续接收(2)-寻呼Paging》里已经说过,在寻呼消息结构体里有个可选字段systemInfoModification,这个字段表示除SIB10/SIB11/SIB12之外的系统信息是否有改变,如下面的图3所示。如果UE解码寻呼信息时发现包含了该字段,则认为网侧会在下一个系统变更周期内修改系统信息,UE需要执行系统信息变更过程,无论当前UE处于RRC-IDLE态还是处于CONNECTED态。寻呼消息中携带的系统信息变更指示只是一个标记位,只能告诉UE“系统信息有修改”这个简单的信息,无法告诉UE具体是哪些系统信息要修改。


(图3 寻呼消息中的系统信息变更指示)

SIB1里包含了一个systemInfoValueTag字段,可以通过这个字段,来判断当前除MIB/SIB1/SIB10/SIB11/SIB12之外的系统信息是否仍然有效,如下面的图4所示。systemInfoValueTag字段的取值范围是0~31,网络每执行1次系统信息变更过程,就将该字段递增1,UE侧通过该值是否发生变化来判断是否需要执行系统信息变更过程。


(图4 SIB1中与消息变更相关的参数)

如果在一个变更周期内UE没有收到寻呼消息,UE可能会认为在接下来的一个变更周期里不会发生系统信息变更。所以,如果网侧要修改系统信息参数(除ETWS和CMAS),应该要发送寻呼消息,且在寻呼消息里增加systemInfoModification字段。

从上面的描述中可以看到,无论是寻呼消息中的systemInfoModification字段还是SIB1中的systemInfoValueTag字段,都不能表示ETWS或CMAS消息是否发生了变化。SIB10/11/12所携带的ETWS和CMAS消息,需要通过寻呼消息是否包含etws-Indication和cmas-Indication字段来决定。

3.系统信息变更方案的演进

如何让UE及时的获知系统信息的变化,最开始是由Motorola在2007年韩国的一次3GPP会议中提出来的。Moto提出:首先可以在MIB中增加一个mib_value_tag字段,用来表示SIB1或其它SIB块是否发生了改变;同时,在SIB1中为每个其它的SIB块绑定一个sib_value_tag字段,这些字段用来表示某个具体的SIB块是否发生了变化。这样设计之后,eNB就可以通过修改MIB中的mib_value_tag字段和SIB1中的sib_value_tag集字段,来控制UE读取系统信息的行为。熟悉GSM-RR/RRC协议的同学会发现,这个原始的方案类似于GSM中SI-type13消息的BCCH_CHANGE_MARK和SI_CHANGE_FIELD字段的设计,感兴趣的同学可以看看44018和44060这两篇协议。

仔细研究一下会发现,仅仅这样实现系统信息的变更过程是不行的,为什么呢?因为UE不会一直去读取系统信息(MIB和SIB),UE无法准确的知道网侧什么时候修改系统信息参数,所以这里就需要给UE再绑定一个定时器(比如GSM中使用30s定时器)。当定时器超时之后,每个UE就主动的重新读取MIB消息,检测其中的mib_value_tag字段,一旦mib_value_tag字段发生了改变就去重新读取SIB1消息,检测其中的sib_value_tag值,从而确定其它的SIB块是否发生了变化。

到了这里是不是就可以了呢?同样的有问题。因为什么时候开启这个定时器是有讲究的。服务小区广播的系统参数一旦改变,那么这个小区内所有的UE都应该同时去获取更新后的系统信息,如果不同UE的定时器开启时间不一致,就会导致有的UE已经收到了新的系统信息参数,而有的UE却还是旧的系统信息参数。所以规定:一旦UE解码到MIB之后就开启该定时器。这样,同一个小区里所有的UE就可以保持系统信息更新过程的同步。

后来英飞凌对此进行了优化:MIB中携带的是最基本的信息,不应该将系统信息的修改字段value_tag放在MIB中,我们可以把value_tag字段转移放在寻呼消息中。因为同一个服务小区里所有的UE都能解码到P-RNTI加扰的寻呼消息,这样可以保证每个UE都能收到同样的value_tag。为方便区别,这里把放在寻呼消息里的value_tag暂记为paging_value_tag。通过paging_value_tag字段来表示MIB/SIB1/SIB2/../SIB9/SIB13是否有修改,而SIB1中的sib1_value_tag字段用来表示SIB2/SIB3/../SIB9/SIB13是否有修改。

《DRX不连续接收(2)-寻呼Paging》里已经分析过,对于同一个服务小区里的不同UE来说,寻呼消息的发送时刻是与IMSI相关的,不同的UE对应的寻呼时刻并不相同。为了保证所有UE能同时读取到更新后的系统信息,所有UE只能从统一的“指定时刻”去读取系统信息。.不同的UE在接收到value_tag之后不要急着去读新的系统信息,而只在到了“指定时刻”才去读系统信息。这个“指定时刻”就是通过前文所述的“系统变更周期”来区分。

经过这样的优化之后,UE就可以通过读取寻呼消息中的paging_value_tag字段和SIB1中的sib_value_tag字段,来判断是否需要重新读取系统信息了。

参考资料:
(1)3GPP TS 36.331 V9.18.0 (2014-06) Radio Resource Control (RRC)

LTE系统信息 --- 系统信息变更相关推荐

  1. LTE系统信息块SIB:LTE system information blocks-MIB,SIB-1,2,3,4,5,6,7,8,9,10,11

    Table of Contents SI静态部分和动态部分有两个部分. 静态部件称为 MIB 动态部件称为 SIB Detail Sample LTE System Information Block ...

  2. LTE系统信息(1)-MIB

    1.什么是MIB 为了能正常接入小区,UE在完成扫频(无论是指定频点扫频还是全频段扫频,目的都是为了找到合适的中心载波频点,参考<LTE物理传输资源(3)-时频资源>)和小区同步之后(参考 ...

  3. RRC协议学习—系统信息(SI)

    SI是什么的信息?有什么作用? SI是小区的系统信息,对接入该小区的所有UE生效 作用是:在小区搜索过程之后,UE获取到小区的系统信息,以便接入该小区并在小区内正确的工作. 1. 系统信息 MIB包含 ...

  4. 如何读取电脑html信息,JavaScript 获取客户端计算机硬件及系统信息

    JavaScript 获取客户端计算机硬件及系统信息 //系统信息获取 function getSysInfo() { var locator =new ActiveXObject ("Wb ...

  5. JavaScript 获取客户端计算机硬件及系统信息

    通过WMI来实现获取客户端计算机硬件及系统信息: //系统信息获取 function getSysInfo(){ var locator = new ActiveXObject ("Wbem ...

  6. LTE网络有关系统消息(MIB/SIB)深度解析

    LTE网络有关系统消息(MIB/SIB)深度解析 参考链接:https://mp.weixin.qq.com/s?__biz=MzU1NjU5ODg3NQ==&mid=2247485713&a ...

  7. LTE系统名词解释及上下行过程

    学习<深入理解LTE-A>笔记 UE:用户 eNodeB(eNB):书中指代与用户链接的基站 基础名词 PLMN:运营商 PSS:Primary Synchronization Signa ...

  8. LTE中常见的专业词汇缩写

    在看有关LTE的书籍和协议时会遇到很多的专业词汇的缩写,下面整理一下遇到的专业词汇缩写: 下行逻辑信道: PCCH:Paging Control Channel,寻呼控制信道 BCCH:Broadca ...

  9. [4G5G专题-68]:物理层 - 4G LTE物理广播信道PBCH与主信息块MIB

    目录 第1章 物理广播信道PBCH概述 1.1 PBCH概述 1.2 PBCH在启动流程中的位置 第2章 4G LTE物理广播信道PBCH的时频资源 第3章 4G LTE主信息块MIB 3.1 MIB ...

最新文章

  1. Android不同分辨率和不同密度适配
  2. 受损骨骼可能在类似地球的重力条件下更快愈合
  3. canvas高度问题_Android的drawText的坐标问题
  4. 简述3032路pcm帧的结构_高级数据链路控制协议-HDLC
  5. 多继承中构造器和析构器的调用顺序
  6. 移动 Web 设计中的一些错误理念
  7. arm linux 存储,linux arm的存储分布那些事
  8. Htmlt_Div+Css简介
  9. 统计图学习-类型介绍
  10. java线上调试小结
  11. C++中acculumate函数使用
  12. ubuntu 安装idea,创建快捷方式
  13. Windows的一些溢出题目
  14. virtualbox虚机无法上网
  15. Elastic App Search:免费的产品,可提供出色的搜索体验
  16. 2023年武汉市中等职业学校技能大赛 “网络搭建与应用”
  17. 电商行业用天翎低代码平台做客服管理系统
  18. 《python数据分析与挖掘实战》笔记第3章
  19. AI综述专栏 | 朱松纯教授浅谈人工智能:现状、任务、构架与统一
  20. PDF编辑之加密的PDF文档如何解除密码和进行编辑

热门文章

  1. Python安利一个会化学方程式的消灭泡泡小游戏~
  2. 不平衡桥法检测新能源电动汽车绝缘以及绝缘电阻推导计算
  3. 妈妈,我再也不要参加美国大学生数学建模大赛了!
  4. 计算机毕业论文选题推荐|软件工程|系列十一
  5. 如何升级iOS17beta?两种iOS17测试版本升级办法分享!
  6. 中国电信服务亚运凸显全业务运营优势
  7. 李京:中国科技大学移动平台——掌上科大
  8. 服务器swap占用过高,主机swap区使用率过高
  9. go进阶(1) -深入浅出goroutine并发运行调度机制
  10. 给定一个二叉树的根节点 root ,返回它的 中序 遍历。【LeetCode Hot 100】