【3GPP】【核心网】【4G】4G手机接入过程,手机附着过程(超详细)
1. 4G手机接入过程,手机附着过程
附着(Attach):
终端在PLMN中注册,从而建立自己的档案,即终端上下文
进行附着的三种情况:
①终端开机后的附着,初始附着
②终端从覆盖盲区返回到覆盖区
③终端之前没有SIM卡,后来插入SIM卡需要进行附着
附着完成的三个任务:
①终端在PLMN中注册,并驻留到小区
②在MME中建立终端上下文
③为终端建立默认承载
附着的过程:
初始附着流程:
请求附着:
附着请求为Attach Request,是一种NAS信令,由RRC Connection Setup Complete消息来承载(是RRC建立连接的最后一条消息)
获得终端ID:
信令流程:
鉴权:
获得终端相关的鉴权四元组后,MME启动终端鉴权流程;
对于附着过程,鉴权是必须的
NAS:
鉴权成功后,进行NAS加密
接受附着:
MME在确认用户是合法用户后,为用户在eNB中创建相应的终端上下文,并开始建立默认承载
附着消息会在加密完成后,由基站转发给终端
建立默认承载:
Activate Default EPS Bearer Context Request消息,用于建立默认承载
完成附着:
MME收到Attach Complete消息后,表明附着流程结束,默认承载建立完成
1.1 初始附着完整流程
①终端开机接入小区的系统信息,决定开始PLMN注册,进行附着
②、③、④、⑤终端发起竞争性随机接入过程
⑥终端在SRB1上发出初始附着请求
⑦传递到MME
⑧、⑨MME获取终端ID的过程(可选过程)
⑩、⑪终端鉴权过程
⑫、⑬MME启动NAS加密过程
⑭MME接受附着并开始在eNB中建立终端上下文的过程
⑮、⑯eNB启动AS加密过程
⑰、⑱、⑲MME获得终端能力的过程(可选过程)
⑳eNB接受附着,建立SRB2并将默认承载信息发给终端
终端向eNB反馈SRB2和RB已经建立的信息
eNB向MME反馈终端的上下文已经建立的信息
终端向MME反馈附着的已经完成和默认承载已经建立的信息
Step1:处于RRC_IDLE的UE进行Attach过程,首先发起随机接入过程,即Msg1消息;
Step2:eNB检测到Msg1消息后,向UE发送随机接入响应消息,即Msg2消息;
Step3:UE收到随机接入响应后,根据Msg2的TA调整上行发送时机,向eNB发送RRC Connection Request消息;
Step4:eNB向UE发送RRC Connection Setup消息,包含建立SRB1承载信息和无线资源配置信息;
Step5:UE完成SRB1承载和无线资源配置,向eNB发送RRC Connection Setup Complete消息,包含NAS层Attach Request消息;
Step6:eNB选择MME,向MME发送Initial UE Message消息,包含NAS层Attach Request消息;
Step7:MME向eNB发送Initial Context Setup Request消息,请求建立默认承载,包含NAS层Attach Accept、Activate Default EPS Bearer Context Request消息;
Step8:eNB接收到Initial Context Setup Request消息,如果不包含UE能力信息,则eNB向UE发送UE Capability Enquiry消息,查询UE能力;
Step9:UE向eNB发送UE Capability Information,报告UE的能力信息;
Step10:eNB向MME发送UE Capability Information Indication消息,更新MME的UE能力信息;
Step11:eNB根据Initial Context Setup Request消息中UE支持的安全信息,向UE发送Security Mode Command消息,进行安全激活;
Step12:UE向eNB发送Security Mode Complete消息,表示安全激活完成;
Step13:eNB根据Initial Context Setup Request消息中的ERAB建立信息,向UE发送RRC Connection Reconfiguration消息进行UE资源重配,包括重配SRB1和无线资源配置,建立SRB2、DRB(包括默认承载)等;
Step14:UE向eNB发送RRC Connection Reconfiguration Complete消息,表示资源配置完成;
Step15:eNB向MME发送Initial Context Setup Response响应消息,表明UE上下文建立完成;
Step16:UE向eNB发送UL Information Transfer消息,包含NAS层Attach Complete、Activate Default EPS Bearer Context Accept消息;
Step17:eNB向MME发送上行直传UL NAS Transport消息,包含NAS层Attach Complete、Activate Default EPS Bearer Context Accept消息;
如果 RAN Paging Priority IE 包含在 DOWNLINK NAS TRANSPORT 中,则 NG-RAN node 可以使用它来确定对处于 RRC_INACTIVE 状态的 UE 进行寻呼的优先级。
NAS-PDU IE 中包含一个 AMF – UE 消息,该消息在 NG-RAN node 中直接传输,无需解析。
1.2 进一步理解Attach过程
Step1:在已经建立NAS信令连接基础上,UE通过向MME发送 ATTACH REQUEST 消息来发起attach规程;该消息中包含:IMSI或GUTI、last visited TAI、UE network capbility、PDN IP option、connect type等
Step2:如果UE最新连接的(新)MME与最后一次离开网络时连接的(旧)MME相比已经发生改变,新MME就会向旧MME发送一个ID请求来申请当前UE的IMSI,用于为当前UE重新分配GUTI。
Step3:如果新MME和旧MME都不能识别当前的UE,那么新MME会给UE发送一个ID请求,随后,UE应告诉新MME自己的IMSI。
Step4:如果当前网络中没有UE的安全上下文,那么MME会发起一个鉴权规程,UE和MME相互鉴权之后会在两侧产生相关的安全上下文。(漫游情况下,MME应从HSS获取UE的签约信息等内容)
Step5:鉴权结束后,MME可能发送移动设备标识检查请求到EIR(Equipment Identity Register)(MME的经营可能会检查EIR中的移动设备标识,至少在漫游时,MME应将移动设备标识传给HSS)。
Step6:如果MME中有激活的承载上下文(比如之前连接尝试失败时已经创建了承载),那么MME会发送消息到各个P-GW来删除这些无效的承载上下文。
Step7:由于位置已经变化(MME变化),新MME就发送一个位置更新请求到HSS(指明MME标识、IMSI和ME标识等)。
Step8:新MME向HSS发送位置更新请求后,旧的MME就可以删除其中保存的UE的位置信息以及相应的承载上下文。
Step9:HSS向新MME回送一个位置更新响应,来指明位置更新的状态。若HSS拒绝位置更新,那么MME就拒绝UE的attach请求。
Step10:位置更新完毕后,新MME就可以与PDN-GW之间建立默认承载,建立默认承载后P-GW就为UE创建了PDN地址、EPS承载标识、协议配置选项等,并将相关消息返回给MME,S-GW可以缓存一些来自P-GW的下行数据包。
Step11:MME接受attach及附着完成:MME通过eNB将APN、GUTI、PDN地址、TAI列表等信息反馈给UE,并请求UE建立无线承载;UE完成无线承载建立后向MME返回一个完成消息指明attach完成。
相关文章:

【3GPP】【核心网】【4G】4G手机接入过程,手机附着过程(超详细)
1. 4G手机接入过程,手机附着过程 附着(Attach): 终端在PLMN中注册,从而建立自己的档案,即终端上下文 进行附着的三种情况: ①终端开机后的附着,初始附着 ②终端从覆盖盲区返回到…...
【LeetCode-46.全排列】
题目详情: 给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。 示例 1: 输入:nums [1,2,3] 输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]示例 2: …...

【Web】浅聊Jackson序列化getter的利用——POJONode
目录 核心速览 原理分析 EXP TemplatesImpl利用 SignedObject利用 核心速览 writeValueAsString是jackson序列化自带的入口,在调用该方法的过程中将会通过遍历的方法将bean对象中的所有的属性的getter方法进行调用 下面介绍如下利用链: BadAttrib…...

osgEarth学习笔记2-第一个Osg QT程序
原文链接 上个帖子介绍了osgEarth开发环境的安装。本帖介绍我的第一个Osg QT程序。 下载 https://github.com/openscenegraph/osgQt 解压,建立build目录。 使用Cmake-GUI Configure 根据需要选择win32或者x64,这里我使用win32. 可以看到include和lib路…...

2024年发布jar到国外maven中央仓库最新教程
2024年发布jar到国外maven中央仓库最新教程 文章目录 1.国外sonatype仓库的版本1.1老OSSHR账号注册说明1.2新账号注册说明 2.新账号注册(必选)3.新账号登录创建Namespace3.1创建Namespace的名字的格式要求(必选)3.2发布一个静态网站(可选&…...
在ubuntu22.04.4安装freeswitch1.10.10
一、环境 No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 22.04.4 LTS Release: 22.04.4 Codename: jammy 二、依赖 1、 工具包 apt install -y openssh-server …...

qt 置顶窗口崩溃无法退出解决,停止运行快捷键设置
有时置顶窗口调试崩溃需要快捷键进行关闭,如下设置即可 这样就可以通过全局快捷键退出了,避免置顶崩溃无法关闭程序的问题。...

HBCalculator 程序:通过 VMD 可计算分子动力学模拟中氢键密度和强度的一维和二维分布
分享一个通过 VMD 可计算分子动力学模拟中氢键密度和强度的一维和二维分布程序 HBCalculator。 感谢论文的原作者! 主要内容 “氢键是分子系统中关键的非共价相互作用,对生物、化学和能量相关过程产生重大影响;因此,描述氢键信息…...

鸿蒙-项目创建及了解
目录 项目创建 1.App普通项目创建 2.元服务创建 项目结构 .hvigor .idea AppScope entry EntryAbility.ts pages resources module.json5 ohosTest hvigorfile.ts build-profile.json5 oh_modules build-profile.json5 hvigorfile.ts 项目运行 项目创建 F…...

SQLiteC/C++接口详细介绍sqlite3_stmt类(九)
返回:SQLite—系列文章目录 上一篇:SQLiteC/C接口详细介绍sqlite3_stmt类(六) 下一篇: 无 33、sqlite3_column_table_name 函数 sqlite3_column_table_name 用于返回结果集中指定列所属的表的名称。如果查询中列使…...

idea2023 运行多 springboot 实例
概要 1、修改idea运行多实例(本地测试负载) 你可能用到其他 1、改造项目缓存token 至redis 支持负载均衡部署 SpringSecurity6.0RedisJWTMP基于token认证功能开发(源码级剖析可用于实际生产项目)_springsecurity redis管理token…...
HarmonyOS系统开发ArkTS常用组件编程技巧
目录 样式复用 Styles方法 Extend方法 组件编程在使用过程中有很多技巧,在这里分享样式复用技巧和UI结构复用技巧。 样式复用 我们观察下面的代码,在代码中很多重复行的代码,如: Image 的 .width(30).height(30) 是重复的But…...
大数据开发(Hive面试真题-卷三)
大数据开发(Hive面试真题) 1、Hive的文件存储格式都有哪些?2、Hive的count的用法?3、Hive得union和unionall的区别?4、Hive的join操作原理,left join、right join、inner join、outer join的异同࿱…...
Oracle数据库SQL开发规范
Oracle数据库SQL开发规范是为了保证SQL代码的质量、可读性和性能而遵循的一系列准则和最佳实践。以下是一些常见的Oracle SQL开发规范要点: 1. 命名规范 使用有意义且一致的命名约定,例如表名采用TBL_MODULE_NAME,视图采用VW_MODULE_VIEW等…...

FreeRTOS 消息队列
1. 队列简介 1.1 队列的概念 队列是任务到任务、任务到中断、中断到任务数据交流的一种机制(消息传递) 类似全局变量?假设有一个全局变量a 0,现有两个任务都在写这个变量 a: 大家想象一下如果任务 1 运行一次&#…...
如何在Python中实现列表推导式?并给出一个例子
如何在Python中实现列表推导式?并给出一个例子 Python的列表推导式(List Comprehension)是一种强大且简洁的创建列表的方法。它允许我们在一行代码中完成循环和条件判断,从而生成所需的列表。列表推导式不仅提高了代码的可读性&a…...

Flask中的Blueprints:模块化和组织大型Web应用【第142篇—Web应用】
👽发现宝藏 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 Flask中的Blueprints:模块化和组织大型Web应用 在构建大型Web应用时࿰…...

如何通过idea搭建一个SpringBoot的Web项目(最基础版)
通过idea搭建一个SpringBoot的Web项目 文章目录 通过idea搭建一个SpringBoot的Web项目一、打开idea,找到 create new project二、创建方式三、配置项目依赖四、新建项目模块五、总结 一、打开idea,找到 create new project 方式1 方式2 二、创建方式 新…...
Python和FastAPI语义分析和文本图像
要点 使用FastAPI开发RESTful API,创建端点,自定义响应,结构化多路由。Pydantic数据验证库数据建模,创建依赖项注入。开发数据库和对象关系映射,SQLAlchemy,Tortoise ORM,MongoDB。建立权限和安…...
centos系统ssh7.4升级9.6
编译安装 OpenSSL 下载 OpenSSL 源代码: wget https://www.openssl.org/source/openssl-1.1.1w.tar.gz这个命令从 OpenSSL 的官方网站下载指定版本(1.1.1w)的源代码压缩包。 解压源代码: tar zxvf openssl-1.1.1w.tar.gz使用 tar…...

多云管理“拦路虎”:深入解析网络互联、身份同步与成本可视化的技术复杂度
一、引言:多云环境的技术复杂性本质 企业采用多云策略已从技术选型升维至生存刚需。当业务系统分散部署在多个云平台时,基础设施的技术债呈现指数级积累。网络连接、身份认证、成本管理这三大核心挑战相互嵌套:跨云网络构建数据…...
CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型
CVPR 2025 | MIMO:支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题:MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者:Yanyuan Chen, Dexuan Xu, Yu Hu…...
DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径
目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...

Unity3D中Gfx.WaitForPresent优化方案
前言 在Unity中,Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染(即CPU被阻塞),这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案: 对惹,这里有一个游戏开发交流小组&…...
可靠性+灵活性:电力载波技术在楼宇自控中的核心价值
可靠性灵活性:电力载波技术在楼宇自控中的核心价值 在智能楼宇的自动化控制中,电力载波技术(PLC)凭借其独特的优势,正成为构建高效、稳定、灵活系统的核心解决方案。它利用现有电力线路传输数据,无需额外布…...
Qt Http Server模块功能及架构
Qt Http Server 是 Qt 6.0 中引入的一个新模块,它提供了一个轻量级的 HTTP 服务器实现,主要用于构建基于 HTTP 的应用程序和服务。 功能介绍: 主要功能 HTTP服务器功能: 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...

CocosCreator 之 JavaScript/TypeScript和Java的相互交互
引擎版本: 3.8.1 语言: JavaScript/TypeScript、C、Java 环境:Window 参考:Java原生反射机制 您好,我是鹤九日! 回顾 在上篇文章中:CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...

令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍
文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结: 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析: 实际业务去理解体会统一注…...
Spring AI 入门:Java 开发者的生成式 AI 实践之路
一、Spring AI 简介 在人工智能技术快速迭代的今天,Spring AI 作为 Spring 生态系统的新生力量,正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务(如 OpenAI、Anthropic)的无缝对接&…...

Java面试专项一-准备篇
一、企业简历筛选规则 一般企业的简历筛选流程:首先由HR先筛选一部分简历后,在将简历给到对应的项目负责人后再进行下一步的操作。 HR如何筛选简历 例如:Boss直聘(招聘方平台) 直接按照条件进行筛选 例如:…...