4G EPS 中建立 eNB 与 MME 之间的 S1 连接
目录
文章目录
前文列表
《4G EPS 中的小区搜索》
《4G EPS 中的 PLMN 选择》
《4G EPS 中的小区选择》
《4G EPS 中的随机接入》
《4G EPS 中建立 UE 与 eNB 之间的 RRC 连接》
S1 连接
NOTE:这里的 S1 连接我们特指 S1-C 上的连接。
eNB 和 MME 发送 S1AP 消息之前需建立 eNB 和 MME 之间的 S1 连接。S1 连接分为两个层面:
eNB 的 S1 连接(Non-UE-associated S1-connection):是 eNB 和 MME 的 S1AP 实体之间的连接。eNB 入网时会主动和 MME 建立 S1 连接(eNB 会配置并接入指定 MME S1-C 接口的 IP/Port),这个 S1 连接和 UE 无关,即使 eNB 空载也依然存在。
UE 的 S1 连接(UE-associated logical S1-connection):是和 UE 关联的逻辑连接。由于 eNB 和 MME 不止为一个 UE 服务,eNB 和 MME 通过为每个 UE 建立不同的 S1 连接(逻辑连接)来进行区分,并发送对应的 S1AP 消息,eNB 的 S1 连接是 UE 的 S1 连接的基础。
eNB 的 S1 连接
eNB 的 S1 连接建立是 eNB 入网的一部分。eNB 通过静态配置或查询 Local DNS 方式获得 MME 的 SCTP Endpoint 的 IP/Port,主动向 MME 请求建立 SCTP 偶联(SCTP Association):eNB 向 MME 发送 S1 SETUP REQUEST,MME 向 eNB 发送 S1 SETUP RESPONSE,双方交换配置(比如 eNB 的 eNB ID 和 TAI、MME 的 GUMMEI 和 RMC),eNB 的 S1 连接建立完成。
在 MME POOL 组网场景中,eNB 会与 POOL 中的各个 MME 分别建立 S1 连接。过程中,MME 会下发各自的 GUMMEI(MME 全局标识)和 RMC(Relative MME Capacity)到 eNB 保存,以确定后续如何选择 MME,继而路由 NAS 消息(NNSF,NAS Node Select Function)。

NOTE:eNB 的 S1 连接仅在 eNB 入网时涉及,所以后文中如无特殊说明,S1 连接均为 UE 的 S1 连接。
UE 的 S1 连接
当 UE 和 MME 之间有 NAS 消息交互时,eNB 和 MME 之间必须首先建立 UE 的 S1 连接。UE 的 S1 连接总是由 eNB 发起创建的:
- 当某个 UE 入网,eNB 从 RRC 消息的 NAS PDU 中接收到第一条上行 NAS 消息后(e.g. UE ATTACH REQUEST),立即为 UE 分配 eNB UE S1AP ID,并包含在 eNB 发送到 MME 的 S1AP 消息 INITIAL UE MESSAGE 中。
- 随后 MME 应为 UE 分配 MME UE S1AP ID,并包含在 MME 发送到 eNB 的 S1AP 消息 DOWNLINK NAS TRANSPORT(携带 ESM INFORMATION REQUEST 或 AUTHENTICATE REQUEST 等 NAS 消息)中。
eNB UE S1AP ID 和 MME UE S1AP ID 组成了一对 UE S1AP ID Pair,这些信息会包含在 UE Context 内并保存在 eNB 和 MME 中,用于识别 S1AP 消息关联的 UE。如果 eNB 或 MME 发现 S1AP 消息包含的 UE S1AP ID Pair 和 UE Context 中保存的不同,就会发送 ERROR INDICATION,原因可能为 “ID 无法识别”、“ID 已分配过” 或 “ID 对前后不一致”。
注:以下结果在 UE 入网过程中抓 s1ap 协议可得。

示图中 INITIAL UE MESSAGE 包含 eNB UE S1AP ID: 1546538,随后 DOWNLINK NAS TRANSPORT 包含 MME UE S1AP ID: 160563068,同时还包含之前的 eNB UE S1AP ID: 1546538,这样 eNB 就知道下行 S1AP 消息(携带 NAS 消息)对应的 UE 了;最后 UPLINK NAS TRANSPORT 同时了包含 eNB UE S1AP ID 和 MME UE S1AP ID,这样 MME 就知道上行 S1AP 消息(携带 NAS 消息)对应的 UE 了。
4G EPS 中建立 eNB 与 MME 之间的 S1 连接的更多相关文章
- 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 ...
- SQL Server中建立外键的方法
在SQL中建立外键约束,可以级联查询表中的数据,在C#代码生成器中,也能根据外键关系生成相应的外键表数据模型.外键也可防止删除有外键关系的记录,一定程度上保护了数据的安全性. 步骤: 1.要建立外键关 ...
随机推荐
- winrt新dx截图最小实现
转自:https://stackoverflow.co/questions/11283015 效果还是很不错的 #include <iostream> #include <Windo ...
- Sqlite数据库联合查询及表复制等详述
外键:一般在两个表之间要建立关联时候,创建一个列创建 为外键(UserInfos-DeptId),它在另一个表必须是主键(DeptInfos-DeptId) 元素约束:主键约束:主要区别内容相同的行, ...
- TensorFlow2数据类型
1.1 数值类型 数值类型的张量是 TensorFlow 的主要数据载体,分为: 1.标量(Scalar) 单个的实数,如 1.2, 3.4 等,维度数(Dimension,也叫秩)为 0, shap ...
- mysql 必知必会整理—数据库的维护[十八]
前言 简单介绍一下数据库的维护. 正文 像所有数据一样,MySQL的数据也必须经常备份. 由于MySQL数据库是基于磁盘的文件,普通的备份系统和例程就能备份MySQL的数据. 但是,由于这些文件总是处 ...
- python 虚拟环境篇
前言 这个倒是非常之重要. 首先我们知道python通过pip安装,那么我们安装的所有东西都会在我们pip下的配置目录下,这会显得非常臃肿,同样也让我们部署艰难. python虚拟环境,他是这样做的, ...
- 密码学系列——数字签名(c# 代码实操)
前言 结合消息摘要.非对称加密.数字签名三篇,进行代码实操. 代码完整,可复制运行. 正文 代码如下: public class SignatureHelper { /// <summary&g ...
- Consul的服务注册与发现(简单介绍)
Consul的注册中心的安装及配置 1.consul下载 2.开发模式启动consul consul agent -dev 3.验证测试 通过以下地址可以访问Consul的首页: http://loc ...
- 力扣385(java)-迷你语法分析器(中等)
题目: 给定一个字符串 s 表示一个整数嵌套列表,实现一个解析它的语法分析器并返回解析的结果 NestedInteger . 列表中的每个元素只可能是整数或整数嵌套列表 示例 1: 输入:s = &q ...
- E百科 | 第2期 扒一扒能加速互联网的QUIC协议
简介: 众所周知,QUIC(Quick UDP Internet Connection)是谷歌制定的一种互联网传输层协议,它基于UDP传输层协议,同时兼具TCP.TLS.HTTP/2等协议的可靠性与安 ...
- 龙蜥利器:系统运维工具 SysAK的云上应用性能诊断 | 龙蜥技术
简介:本文从大量的性能诊断实践出发,来介绍 SysAK 在性能诊断上的方法论及相关工具. 文/张毅:系统运维SIG核心成员.SysAK 项目负责人:毛文安:系统运维 SIG 负责人. 系统运维既 ...