目前的市面上的书籍往往以5G指标、标准化进展、LTE整体介绍等模块作为开端。这些内容大同小异,随便翻阅一本书籍都能得到较为完整的认知。而本系列文章重点在于查缺补漏,为NR的学习者和从业者提供快速的参考,故跳过这一部分,直接进入正题。
作者长期从事物理层相关工作,在涉及到高层内容时,哪怕只是一个小小的控制信令也往往会需要一番信息查阅。归其本质,是对NR整体架构缺少一个完整的认知,对于网络有哪些部分,各部分有哪些功能不够熟悉。
故根据自己的经验,选取NR网络架构作为开篇,对网络形成整体认知,有利于形成较为完整的5G知识网络。
由于本系列主要面向接入网,故对于5G核心网部分,本篇只介绍其与接入网相关联的部分.NR网络的整体架构示意图如下图所示。
与LTE相比,5G核心网的特点主要有三个:基于服务的架构(service-based architecture),支持网络切片(Network slicing), 控制面用户面分离(control-plane/user-plane split)
NR的核心网络架构特点与“面向对象的编程”十分类似,在逻辑或物理层面将有相同功能的单元归为同一“类”,方便后续的管理和功能的扩充。
核心网的诸多功能单元有:
这些功能模块的名字即体现了核心网的整体功能,也充分展现了核心网以服务为基础的网络架构。其中AMF与UPF分别作为接入网的信令与数据信息接口,与接入网有直接的联系。AMF本来就是控制信令的管理,可直接与核心网中其他模块相连接;而UPF作为数据的接口,还需要对各种数据进行进程的分配和管理,故还需要通过SMF接入核心网其他模块。
接入网的网络架构是本专利的重点,将在下文单独介绍。
由于LTE和NR长期共存的特点,为了实现LTE向NR的低成本平滑过度,NR的接入网与核心网连接同时保留了gNB/ng-eNB两类;类似地,核心网也有NGC/EPC两类节点。核心网与接入网的连接架构有多种,具体如下图所示,其中option 4还可以分为option 4和option 4a,Option 7还可分为Option 7,7a,7x。也因此产生了常说的SA(Standalone)和NSA(non-standalone)两种网络架构。
- option2和5为SA架构,其余均为NSA架构,具体判断依据为:核心网必须为NGC,同时c&u plane不能分流向不同的接入网结点。
- 为便于实现LTE向NR的过度,5G初期选择option3作为网络架构,这样既保证了5G最常见的eMBB应用场景对于数据流量的要求,又因只需要新的gNB设备连入原有网络有较低的成本。
- 设备与核心网的相连不一定经过gNB,也有被称为NAS的终端可与核心网直接相连。
p.s. 本文的文字即使出现在引用框里,也指出与美观目的,均为原创。图片若出现在引用框里,则多为直接引用内容,下同
NR的接入网络被称作NG-RAN,由gNB和ng-eNB所构成。
双连接技术通过载波的聚合有效地提高了系统的容量。类似的技术还有载波聚合(Carrier Aggregation)CA和补充上行(Supplement Uplink)SUL,三者的主要区别如下:
- DC:每个载波分别属于一个gNB,即用户和两个gNB相连,分别独立调度
- CA:不同的载波属于不同的cell,但是共同属于同一个gNB
- SUL:不同的载波属于同一cell
更加高效的QoS管理是实现网络切片的重要基础,这一过程在核心网的UPF中完成。
对于UE来说,每个UE有多个PDU进程,每一个PDU对应着多个QoS流和无线承载(data bearers)。核心网侧对业务需求是已知的,UPF实现QoS流和IP 包的映射关系,同时每个包会被一个QoS Flow Identifier(QFI)标记;RAN侧只需要知道无线承载和QoS流的映射关系,上行网络中具体的映射方式有两种:
PDU和SDU
- PDU(Protocol data unit):协议数据单元,是计算机网络各层对等实体间交换的单位信息
- SDU(Service data unit):服务数据单元,指定层的用户服务的数据集。
上述的描述看起来十分晦涩,但实际理解非常简单,二者的本质都是数据信息,但是SDU是指当前协议层纯粹的数据,将其封装后就成为PDU,同时也是下层的SDU
QoS管理较为复杂,为此NR还专门引入了SDAP层,本小节只对其流程做出粗略的介绍,在后面介绍SDAP时还会再次提及。
tensorflow2的一般训练方法(MNIST为例)简介我的程序官网例子简介在tensorflow中,有一类高度定式化的方法,就是使用Keras进行相关训练,我不否认Keras的便利性,但是,如果需要定义一些更为复杂的训练过程,Keras的一些功能个人感觉多多少少有点不适合。Keras一般的过程就是,定义模型,模型配置(model.compile),训练模型(model.fit),参数提取(model.summary)。其中模型配置,训练模型,参数提取就是相当定式化的过程,如果是进行类别的分类任务还
/** *获取网页来源的地址 */ function getReferrer() { var referrer = ""; try { referrer = window.top.document.referrer } catch(e) { if (window.parent) {
ValueError: urls must start with a leading slash出现这个错误是因为在Flask注册蓝图时设置路由前缀时没有加斜杠所以它提示:值错误:URL必须以斜杠开头我们只要加在URL前上斜杠就可以解决错误代码:app.register_blueprint(user_bp, url_prefix='user')修改为:app.register_bl...
<br />Graphics2D渲染<br />Rendering with Graphics2D<br /><br />Graphics2D从java.awt.Graphics中继承而来,对提供的图形、文本和图像提供更高级的处理控制。Java 2D的渲染过程就是通过Graphics2D对象以其状态属性来控制的。<br /><br />当图形对象渲染时,像线条样式和坐标状态等Grahics2D状态属性就被应用到这些图形对象上。这些和Graphics2D相联系的状态属性的集合构成了Graphics2D上下文(
1.补充<script type="text/javascript"> //在document中有一个属性body,它保存的是body的引用 var body = document.body; //document.documentElement保存的是html根标签 var html = document.documentElement; //页面里的所有元素 var all = document.all; console.log(all[0]);
《Python编程从入门到实践》日记Day_6第七章 函数①input()和int()
文章目录第四章 递归4.1 递归应用场景4.2 递归的概念4.3 递归调用机制4.4 递归能解决什么样的问题4.5 递归需要遵守的重要规则第四章 递归4.1 递归应用场景看个实际应用场景,迷宫问题(回溯), 递归(Recursion)4.2 递归的概念简单的说: 递归就是方法自己调用自己,每次调用时传入不同的变量.递归有助于编程者解决复杂的问题,同时可以让代码变得简洁。4.3 递归调用机制列举两个小案例,来帮助大家理解递归,部分学员已经学习过递归了,这里在给大家回顾一下递归调用机制
在前面我们已经会注入基本类型对象和其他bean,现在我们就来学习如何注入各种集合类型。Spring如何装配各种集合类型的属性首先新建一个普通的Java Project,名称为spring_collection,并迅速搭建好Spring的开发环境。 接着在src目录下新建一个cn.itcast.service包,并在该包下创建PersonService接口,其代码为:public ...
Sentine时光小说 https://wap.youxs.org/1.背景Sentinel 是阿里中间件团队开源的,面向分布式服务架构的轻量级高可用流量控制组件,主要以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度来帮助用户保护服务的稳定性。这里大家可能会问:Sentinel 和之前常用的熔断降级库 Netflix Hystrix 有什么异同呢?Sentinel官网有一...
MySQL的系统变量或会话变量auto_increment_increment(自增步长)和auto_increment_offset(自增偏移量)控制着数据表的自增列ID。 mysql&gt; show tables; Empty set (0.00 sec) mysql&gt; CREATE TABLE `test_tb1` ( `id` int(4) NOT NULL ...
如果不想看具体参数的可以拉到最后看通常使用方式用train_test_split可以自动帮你把数据集划分为测试集和验证集from sklearn.model_selection import train_test_splitoutput= sklearn.model_selection.train_test_split(*arrays, test_size=None, train_size=None, random_state=None, shuffle=True, stratify=None)
一、关于WiFi模块的概述: 1.在Android developer的文档中WiFi模块的信息: 首先,登记广播的监听;其次,请求扫描wifi信号;最后获取扫描到的wifi信息。 2.在广播监听到结果后,创建出WifiManager的对象之后通过getScanResults()方法获取到扫描wifi的对象信息。 二、指定SSID和密码进行wifi的自动连接:...