5GC学习报告3

Author Avatar
Euan 4月 27, 2022
  • 在其它设备中阅读本文章

报告3

5G核心网主要功能概述(补充)

  • SBA的架构,4G以网元为中心->5G以功能、服务为中心
  • CUPS(控制与用户面的分离)
  • 网络切片(怎么切?怎么选?)
  • 移动性管理和会话管理的分离
  • 统一的认证框架(3GPP和非3GPP)
  • 边缘计算
  • 能力开放
  • 计算与存储的解耦
  • 新的Qos框架
  • 网元平台向NFV/SDN的演进
  • 语音业务继续沿用IMS

5G核心网相关的主要规范

LqhZSH.png

5GC网络架构(参考点 vs SBA架构)

LqhEfe.png

4G的HSS的功能被抽象为UDM的多钟服务,且UDM服务可以被任意客户端以API形式调用

相关定义

NF:就是网元。例如AMF、SMF、UDM等。
NF Service:就是网元对外提供的服务。如上页UDM对外提供的UECM、SDM等。
SBI:就是网元暴露给外部,用来访问本网元所提供的服务的接口。

SBI相关的FAQ

LqhkFO.png
Lqhm6A.png

移动性管理AMF

主要了解5GC中移动性管理功能的实现

  • 注册管理状态模型
  • 连接管理状态模型
  • UE Context的构成
  • 用户标识符(SUPI、SUCI、PEI等)
  • 移动性管理限制及术语(注册区、禁止区域、服务受限区域)

5G核心网注册管理模型

5G核心网定义了两种注册管理状态,用于反映UE与网络侧的注册状态:

LqhPw6.png

  1. 去注册态:此状态下,UE没有注册到核心网,AMF不知道UE在哪,没有UE的上下文,即UE对AMF来说是不可达的。
  2. 注册态:此状态下,UE注册到核心网,可访问5GC提供的业务。AMF知道用户具体位置,并建立UE context。

两种状态的

5G核心网注册管理状态的切换:

  1. UE初始状态为去注册态,发起注册请求并完成注册流程则切换到注册态。
  2. 当网络侧拒绝UE的注册(发送注册拒绝)或网络侧发起去注册流程,则UE停留在去注册态。

5G核心网连接管理模型

5G核心网定义了两种连接管理状态,用于反映UE与网络侧的连接状态:

LqhnOI.png

singaling信令

  1. 空闲态:此状态下,UE的空口、N2和N3连接都被释放。UE可执行小区选择/重选、PLMN选择等流程,或发起Service Request流程切换到连接态。
  2. 连接态:此状态下,AMF知道UE的具体位置。UE可访问5GC业务(上网)。同时,AMF建立UE的N2连接。网络侧可发起N2连接释放流程,将CM状态从连接态切换到空闲态。

形象理解注册管理和连接管理

以入住酒店为例,形象理解注册管理和连接管理。

  • 酒店办入住是注册、退房是去注册。入住登记住客信息(类似创建UE Context),住客缴纳房费,酒店分配房间。
  • 值得一提的是,住客只需要缴纳一次性的房费,而无需再缴纳额外的任何房内资源使用费用(如水电、走廊的灯、电梯等。明确说明需付费的除外)。这些都是包在房费里了。因此,酒店需要想尽办法节省水电的使用来降低成本。比较好的做法就是有人用的时候才开,没人用的时候就关闭或低功耗模式。例如酒店的插卡取电、问客人是否需要每天换床单、或夜里无人时调暗走廊灯光等。
  • 用户发起关灯是主动释放连接,节省资源。酒店也可以发起关空调等操作来释放连接,节省资源。连接释放,客人还是注册态。

RM-REGISTERED状态下建立的UE Context

  • 前面提到,当AMF侧的RM状态切换到RM-REGISTERED时,AMF将为该UE创建UE Context。那UE Context里具有哪些东西呢?
  • 根据23502和29518中的定义,AMF侧创建的UE Context有以下主要参数:

LqhQTf.png

用户标示符(UE ID)

SUPI:Subscription Permanent Identifier。两种格式。最常见的格式是IMSI。还有一种NAI的格式,用于非3GPP接入。

PEI:Permanent Equipment Identifier。用户的IMEI活IMEISV。

GPSI:Generic Public Subscription Identifier。两种格式。最常见的格式是MSISDN即手机号码。还有一种External Identifier格式@username@realm。

5G-GUTI:5G Globally Unique Temporary Identity。AMF分配给UE的临时标识,由AMF标识(GUAMI)和UE标识(5G-TMSI)两部分组成。

5G-S-TMSI:5G-GUTI的一部分。用于寻呼UE。

SUCI:Subscription Concealed Identifier。对SUPI加密后得到的UE ID,用于保护SUPI。

LqhM0P.png

SUCI(Subscription Concealed Identifier)

  • 定义:是一次性的ID。也就是说UE每次发上来的SUCI可能不一样。SUCI根据UE的USIM中预置的公钥,结合IMSI加密得到。
  • 主要作用:是对IMSI(5G里叫SUPI)的保护,防止IMSI被非法窃取,以增强5G安全性。(4G中,UE发起的附着请求、核心网通过NAS流程Identity request/response都可以获取明文的UE的IMSI。这意味着空口有可能会抓到用户的IMSI,带来额外的风险。而引入SUCI之后,IMSI将禁止在5G空口中传递,空口只能抓到临时标识5G-GUTI或者加密的SUCI。)
  • 使用场景:根据23502和33501里明确给出了SUCI的使用场景。如下:5G注册流程中,UE必须在注册请求中用5G-GUTI作为UE ID,如果没有5G-GUTI,用SUCI。【反正就是不能用IMSI来注册】。SUCI不用来做寻呼标识,寻呼标识用5G-S-TMSI。
  • 谁来负责计算SUCI?USIM或者ME(即手机)。33501提到,如无特别声明,应由手机来计算。
  • SUCI加密和解密的过程(了解即可):SUCI采用非对称加密。即加密和解密是两把不同的钥匙。UE用预置的公钥对SUPI进行加密得到SUCI,SUCI通过gNB->AMF->AUSF最后传递给UDM,UDM用私钥进行解密,得到SUPI。如下图所示:

Lqh3tS.png

  • 如何给UE推送公钥?(了解即可)33501说out of my scope。但建议可采用OTA(over the air)技术解决。
  • SUCI构成:参考23003

Lqh1k8.png

其中:
SUPI Type为0代表IMSI,Home Network ID是移动设备网络代码(MNC)和移动设备国家代码(MCC),即PLMN ID。

Routing Indicator是用来做路由的,通过这个RI,核心网可以将信令消息从AMF路由到归属地的AUSF和UDM。

Home Network Public Key Id是公钥ID,如果是Null-scheme则取值为0.

最后是加密的部分。

5G-GUTI到EPS-GUTI的映射规则(了解即可)

5G-GUTI到EPS-GUTI的映射规则在23501的附录B中定义如下:

1
2
3
4
5
5G <MCC> maps to EPS <MCC>
5G <MNC> maps to EPS <MNC>
5G <AMF Region ID> and 5G <AMF Set ID> maps to EPS <MMEGI> and part of EPS <MMEC>
5G <AMF Pointer> map to part of EPS <MMEC>
5G <5G-TMSI> maps to EPS <M-TMSI>

5G NAS移动性管理主要信令流程(参考24501)

LqhJpQ.png

用户一开机叫做初始注册,网络上下发一个周期性更新计数器去给UE,然后要求UE做周期性注册。防止比如在地铁上网络不好时,说明还活着。
CM:连接管理
业务请求流程:空闲态怎么切换到连接态,连接态怎么切换到空闲态。空闲切换到连接
寻呼:用户收到寻呼就会触发一个业务请求流程,空闲就切换成连接
Notification流程(可能未来需要了解一些公共信令流程)
5GMM公共流程不会独立出现,一般包含在一个大的流程里面,比如说包含在注册流程或者是业务请求流程里等等

移动性限制相关概念

注册区域、受限区域、禁止区域、RAT限制,参考23501的5.3。5.4.1 Mobility Retrictions

为更好的对不同场景UE的移动性进行管控,规范定义了移动性限制功能,对不同场景下的UE进行移动性限制。

  • Registration Area(注册区域):一组TA的集合。该区域业务不受限制。类似于TA列表,由AMF下发给UE
  • RAT restriction(RAT限制):UDM中的签约数据。不允许UE访问某个(无线接入技术)RAT(如5G)
  • Forbidden Area(禁止区域):一组区域的集合。该区域下禁止访问5G业务。UDM的签约数据
  • Service Area Restriction(服务区域限制):一组区域的集合,包括受限和非受限区域。受限区域可以访问5G业务。非受限区域不可以。UDM的签约数据。包括:ALLOWED_AREAS(举例:TA1~TA3);NOT_ALLOWED_AREAS(举例:TA4~TA6)

Area(区域)=一组TA的集合;TA(跟踪区):和4G的TA概念相同,由多个小区构成

Free5GC开源简介

项目需要掌握的技能:

  1. Go语言基本语法和使用
  2. Linux熟悉,包括环境变量、ping不通如何去排查、nets网络命名空间、能根据log中的报错去找到对应的错误文件并解决问题等等
  3. UDR使用了mongodb(之前实验室用过)

安装部署遇到的问题

要求:gcc、go、ubuntu、kernel version、QEMU emulator

问题:go mod依赖安装问题

安装过程记录

  • ubuntu+vnware
  • Go语言基本语法和使用
  • mongodb、git
  • libmnl-dev等依赖包

目录结构

  • src:用来存放所有网元的实现代码,包括10个网元
  • config:配置文件,用户可更改,如各个网元接口的IP地址等参数等
  • lib:(不需操作)公共字典库。存放了NAS、NGAP、SBI接口所有消息的参数等说明

下次报告内容计划

ULI参数(用户位置信息)、RPC Inactive,会话管理、Qos、网络切片、计算与存储资源的解耦、Free5GC补充

本文使用 CC BY-NC-SA 3.0 中国大陆 协议许可
具体请参见 知识共享协议

本文链接:https://zyhang8.github.io/2022/04/27/report3/