4G EPS 中建立 UE 与 eNB 之间的 RRC 连接
目录
前文列表
《4G EPS 中的小区搜索》
《4G EPS 中的 PLMN 选择》
《4G EPS 中的小区选择》
《4G EPS 中的随机接入》
RRC 连接
RRC(Radio Resource Control,无线资源控制层)主要处理 UE 通过无线信号接入蜂窝网络的事务,是无线网络接入层的顶层,上层 NAS 即为非接入层,处理的是移动网络业务逻辑的事务。RRC 具有以下功能:
- 为 NAS 层提供连接管理,消息传递等服务;
- 对无线接入网络的底层协议实体提供参数配置等功能;
- 负责 UE 移动性管理相关的测量、控制等功能。
Radio Bearer
在 UE 完成随机接入后,说明 UE 获得了 eNB 的上行资源可以开始传输上行数据,即建立 RB(Radio Bearer,无线承载)。RB 是 UE 是 eNB 传输之间传输信令和业务数据的前提,也是 UE 与 MME 传输 CP 信令的底层支撑,即建立 RRC 连接的支撑。

RB 是 eNB 为 UE 分配的一系列协议实体及配置的总称,包括 PDCP 协议实体、RLC 协议实体,以及 MAC 层和 PHY 层分配的一系列资源等。RB 在 UE 到 eNB 之间的 Uu 接口上传输数据,任何在 Uu 接口上传输的数据都要经过 RB。实际上,RB 在协议层面的实体主要只会看 PDCP(Packet Data Convergence Protocol,分组数据汇聚协议)。上层(e.g. UE APP)将业务数据交给 PDCP 实体,经过逐层封装(以及分段、映射、复用)后经 PHY 层发送,接收方(一般是 eNB)再逐层解封,最后由对端 PDCP 实体将业务数据交给上层。从上层的角度看,提供传送数据服务的 PDCP 实体,就是 RB,而并不了解 PDCP 的细节。
SRB

从上图可见,RB 可以通过 DRB 传送业务数据,也可以通过 SRB 传送信令数据,这里我们主要关注后者。SRB(Signaling Radio Bearers,信令无线承载)作为上层 RRC 连接的 CP 信令承载类型用于 RRC 的消息传输。根据承载信令的不同分为以下三类:
- SRB0:承载 RRC 连接建立之前的 RRC 信令, 使用 CCCH(公共控制信道)逻辑信道,msg3、4 均使用 SRB0,在 RLC(无线链路控制)层采用 TM 模式;
- SRB1:承载 RRC 信令和 SRB2 建立之前的 NAS 信令,SRB1 先于 SRB2 建立,所以使用 DCCH(专用控制信道)逻辑信道,msg5 使用 SRB1,在 RLC(无线链路控制)层采用 AM 模式;
- SRB2:承载 NAS 信令,使用 DCCH(专用控制信道)逻辑信道,在 RLC(无线链路控制)层采用 AM(确认模式)模式。SRB2 总是在 E-UTRAN 安全模式完成后才能建立;

UE 与 eNB 建立 RRC 连接的流程
UE 向 eNB 发送 RRC CONNECTION REQUEST,在 SRB0 上传输,而且 SRB0 在 MAC(媒体接入控制)层映射的是 CCCH(公共控制信道),所以不属于某个 UE 的资源,也就不需要预先创建。;
eNB 分配 C-RNTI(小区 RNTI,由主控 eNB 分配,供 UE 接入新的小区)来区分不同的 UE(因为 eNB 不只为一个 UE 服务,eNB 会同时向多个 UE 发送信号,UE 也会收到 eNB 发送给其他 UE 的信号,所以 eNB 和 UE 之间还需要对其他的 UE ID 进行区分,这个 UE ID 是临时的,称之为 RNTI),并向 UE 发送 RRC CONNECTION SETUP REQUEST,同样在 SRB0 上传输;
UE 在收到 RRC CONNECTION SETUP REQUEST 后按照 eNB 指示在 PDCP(分组数据汇聚协议)层建立 SRB1,随后在 SRB1 上发送 RRC CONNECTION SETUP COMPLETE 到 eNB,完成 RRC 连接的建立,并发送第一条上行的 NAS 消息。而 SRB1 在 MAC 层映射的是 DCCH(专用控制信道),是属于某个 UE 的资源,需要预先创建。

RRC 连接的状态:
- RRC_IDLE:空闲状态。此时的 UE 接收到的系统信息包括小区选择或重选的配置参数以及邻小区信息。
- RRC_CONNECTION:连续状态。此时 UE 接收到的是公共信道的配置信息。
4G EPS 中建立 UE 与 eNB 之间的 RRC 连接的更多相关文章
- 3G 4G 5G中的网络安全问题——文献汇总
Modeling and Analysis of RRC-Based Signalling Storms in 3G Networks 还是使用状态机模型来做恶意UE识别 https://san.ee ...
- MYSQL 中 MyISAM与InnoDB两者之间区别与选择,详细总结,性能对比
1.MyISAM:默认表类型,它是基于传统的ISAM类型,ISAM是Indexed Sequential Access Method (有索引的顺序访问方法) 的缩写,它是存储记录和文件的标准方法.不 ...
- Keil环境中建立带FreeRTOS的STM32L项目
本文是网上转载,版权所有. Keil环境中建立带FreeRTOS的STM32L项目 1.先把source文件夹复制至project目录,然后在keil中添加RTOS文件,如图: 其中heap_2.c按 ...
- Servlet中的GET和POST之间的区别
自己的感悟: get和post这是http协议的两种方法,另外还有head, delete等 这两种方法有本质的区别,get只有一个流,参数附加在url后,大小个数有严格限制且只能是字符串.post的 ...
- 1.2 如何在visual studio 中建立C#程序
这一节简单介绍一下怎么在visual studio 2015中建立第一个C#程序,我使用的是2015版的visual studio,不同版本可能有一些差异,不过大体上是相同的,这些信息仅供新手参考,大 ...
- <Java中的继承和组合之间的联系和区别>
//Java中的继承和组合之间的联系和区别 //本例是继承 class Animal { private void beat() { System.out.println("心胀跳动...& ...
- jQuery中的bind() live() delegate()之间区别分析
jQuery中的bind() live() delegate()之间区别分析 首先,你得要了解我们的事件冒泡(事件传播)的概念,我先看一张图 1.bind方式 $('a').bind('click', ...
- Android 中建立一个OpenGL ES的开发环境
转自: http://wiki.eoe.cn/page/Building_an_OpenGL_ES_Environment.html 负责人:zhangql原文链接:http://docs.eoean ...
- Android中Bitmap, Drawable, Byte,ID之间的转化
Android中Bitmap, Drawable, Byte,ID之间的转化 1. Bitmap 转化为 byte ByteArrayOutputStream out = new ByteArray ...
- Oracle中建立物化视图报错
Oracle中建立物化视图报错 今天在建立视图的时候,报了一个错:ORA-01723: zero-length columns are not allowed. 建视图的语句: create mate ...
随机推荐
- OpenHarmony Meetup 2023北京站圆满举办
"OpenHarmony正当时"OpenHarmony Meetup 2023城市巡回活动,旨在通过meetup线下交流形式,解读OpenHarmony作为下一代智能终端操作系 ...
- OpenHarmony开发之MQTT讲解
相信MQTT这个名称大家都不陌生,物联网的开发必然会遇到MQTT相关知识的应用.那么什么是MQTT?它有什么特点?它能解决什么问题?它是如何工作的?OpenAtom OpenHarmony(以下简 ...
- HMS Core Discovery第15期回顾长文|构筑立体世界,共造沉浸式营销
本期直播,我们邀请到厦门大学信息学院副教授.B站会员购AR专家.蚂蚁特工创始人和HMS Core AR Engine技术专家一起探讨AR技术如何帮助企业打造沉浸式市场营销,引领商业化变革,同时为大家展 ...
- 【译】新的 MSBuild 编辑体验
MSBuild 是 .NET 开发体验的基本组成部分,但它对新手和有经验的开发人员都具有挑战性.为了帮助开发人员更好地理解他们的项目文件,并访问需要直接编辑项目文件的高级功能,我们发布了一个实验性的 ...
- Stage模型深入解读
原文链接:https://mp.weixin.qq.com/s/4Mb5BMw1IgKvqE0Ff9Ts-w,点击链接查看更多技术内容: HarmonyOS 3.1版本(API 9)推出了全新应 ...
- ArkUI开发趣味体验,快来抽取限量HarmonyOS专属头像!
本次ArkUI开发趣味体验活动,将手把手教大家如何在IDE里实操一个ArkUI程序,通过补充缺失代码,成功运行程序开启抽奖功能,抽取个人专属头像,做HarmonyOS第一批数字藏品家! 同时本期提供的 ...
- 解密prompt系列27. LLM对齐经验之如何降低通用能力损失
前面我们已经聊过众多指令微调的方案,这一章我们重点讨论下如何注入某一类任务或能力的同时,尽可能不损失模型原有的通用指令理解能力.因为在下游或垂直领域应用中,我们设计的推理任务风格或形式,往往很难通过p ...
- boltdb 介绍
介绍 BoltDB 是一个用 Go 语言编写的嵌入式键/值数据库.以下是关于 BoltDB 的一些基本介绍: 键/值存储: BoltDB 为应用程序提供了简单的键/值存储接口. 事务: BoltDB ...
- ORA-01555:snapshot too old: rollback segment number X with name "XXXX" too small
ORA-01555:snapshot too old: rollback segment number X with name "XXXX" too small 在查询快照的时候 ...
- ARMS实践|日志在可观测场景下的应用
简介: 在实际生产中,通过灵活组合文内几种使用方式,运维团队可以很好地排除日常观测.故障定位过程中的干扰因素,更快的定界甚至定位问题根因. 作者:陈陈 日志在可观测场景下的应用 随着 IT 架 ...