戳蓝字“CSDN云计算”关注我们哦!
作者 | 小枣君
来源 | 鲜枣课堂
之前小枣君给大家介绍了5G承载网的基本知识(链接:5G承载网到底有什么不同?)。今天,我们再来看看5G承载网中的常见关键技术。
首先,我们要先看一下5G承载网的整体分层结构。
以前小枣君说过,任何通信系统,都是先看分层。就像OSI七层模型一样,不同的层级对应不同的功能,每个层级都有自己的作用。
传送网的分层,从电到光,从SDH到OTN,也在发生变化。以OTN为例,引入光之后,主要分层变成了这样:
简单来说,最下面是物理层,然后就是光层。光层分为传输、复用、通道,简单理解,就像公路运输,需要发动车辆,需要划分车道,还要编排车队。最终,面向顶层提供服务支撑。
从整体上来看,5G承载网的分层可以大致看成如下几层:
5G承载网分层结构
5G承载网的所有关键技术,都在这个层级中有自己的位置。如果要搞懂这项技术,首先要知道它所处的层级。
上一篇文章里,小枣君提到,中国移动、中国电信、中国联通分别有自己5G承载网主推方向,即SPN、M-OTN、增强IPRAN。这三个方案,对应各个层级的具体技术如下:
三家方案的各层级技术对比
我们从下往上,一个一个来看。
首先是物理层,光层。对于5G来说,这一层的主要作用就是提供单通路高速光接口,还有多波长的光层传输、组网和调度能力。
因为光纤在数据传输方面的巨大优势,所以现在不管是哪家运营商,都会采用光纤光接口作为自己的物理传输媒介。
灰光彩光上一篇我们介绍过,而且它们也不算新型关键技术,我们略过不表。
在底层里面,有一个PAM4技术需要特别提一下。
PAM4
PAM4(4 Pulse Amplitude Modulation)是一个“翻倍”技术。
对于光模块来说,如果想要实现速率提升,要么增加通道数量,要么提高单通道的速率。
传统的数字信号最多采用的是NRZ(Non-Return-to-Zero)信号,即采用高、低两种信号电平来表示要传输的数字逻辑信号的1、0信息,每个信号符号周期可以传输1bit的逻辑信息。而PAM信号则可以采用更多的信号电平,从而每个信号符号周期可以传输更多bit的逻辑信息。
PAM4信号就是采用4个不同的信号电平来进行信号传输,每个符号周期可以表示2个bit的逻辑信息(0、1、2、3)。可以在相同通道物理带宽情况下,PAM4传输相当于NRZ信号两倍的信息量,从而实现速率的倍增。
例如,光层从单波10G到25G,从25G到50G。大大降低了成本,具有很强的实用性。
然后是L1数据链路层。它的作用,是提供L1通道到光层的适配。
这里就出现了FlexE,大家肯定经常看到。
FlexE
FlexE就是Flex Ethernet,灵活以太网。简单来说,它就是把多个物理端口进行“捆绑合并”,形成一个虚拟的逻辑通道,以支持更高的业务速率。
FlexE技术在以太网技术的基础上实现了业务速率和物理通道速率的解耦,物理接口速率不必再等于客户业务速率,可以是灵活的其它速率。
例如,客户业务速率是400GE,但设备物理通道端口的速率是25GE、100GE或其它速率。那么,通过端口捆绑和时隙交叉技术,就能轻松实现业务带宽25G->50G->100G->200G->400G->xT的逐步演进。
采用FlexE,可以有助于解决高速物理通道性价比不高的问题。(高速率物理接口,目前成本还是比较高。)
除了FlexE,还有一个FlexO,灵活光传送网(Flex OTN)。看到O就应该想到OTN,中国电信。这个在电信的方案里有。
FlexO的逻辑其实和FlexE很像,就是拆分、映射、绑定、解绑定、解映射、复用,以此规避光模块物理限制以及成本过高的问题。
简而言之,FlexE是用在PTN网络的,处理以太网信号,FlexO是用在OTN网络的,处理OTUCn信号。两者共同点:都是通过多端口绑定实现大颗粒度信号的传输。
再上一层是TDM通道层。5G承载网这个通道层的任务,就是服务于网络切片所需的硬管道隔离,提供低时延保证。
SPN在这层是SCL切片通道层。
SPN的整体架构大家可以看这里:
SCL为网络业务和切片业务提供端到端硬隔离通道,可显著降低时延,支持网络拓扑重构和切片,满足5G业务超低时延、硬隔离切片的需求。
OTN的话,是ODUk/ODUflex。根据前面的架构图,ODU是光信道数据单元,属于光通道层网络的一部分。它提供和信号无关的连通性、连接保护和监控等功能。
ODUflex,又是flex,也就是灵活带宽调整技术。传统的ODUk是按照一定标准进行封装,容易造成资源浪费。ODUFlex可以灵活调整通道带宽,调整范围是1.25G~100G,从而实现高效承载,以及更好的兼容性。
再往上,是分组转发层,涉及到的,是路由转发相关的能力。对5G来说,这一层的主要作用是提供灵活连接调度和统计复用功能。SR技术是这一层的主角。
SR
SR是Segment Routing,分段路由。它也是目前承载网中非常受关注的一项技术,由CISCO提出,是一种源路由机制。
它是一种新型的MPLS(多协议标签转换)技术,源自MPLS,又有了更多的创新和升级。
传统IP网络中,路由技术是不可管理、不可控制的。IP逐级转发,每经过一个路由器都要进行路由查询(可能多次查找),速度缓慢,这种转发机制不适合大型网络。
而MPLS是通过事先分配好的标签,为报文建立一条标签转发通道(LSP),在通道经过的每一台设备处,只需要进行快速的标签交换即可(一次查找),从而节约了处理时间。
MPLS隧道(Tunnel)
MPLS处理速度更快,效率更高,更适合大容量网络。
既然SR技术源自MPLS,那么简单来说,它也是一种“不管中间节点”的路由技术,灵活性更高,开支更少,效率更高。
分段路由(SR)技术通过内部网关协议(IGP)扩展收集路径信息,头结点根据收集的信息组成一个显式/非显式的路径,路径的建立不依赖中间节点,从而使得路径在头节点即创建即生效,避免了网络中间节点路径计算。
再说说SR-TP、SR-BE、SRv6。
SR-TP和SR-BE是隧道扩展技术。SR-TP隧道用于面向连接的、点到点业务承载,提供基于连接的端到端监控运维能力;SR-BE隧道用于面向无连接的、Mesh业务承载,提供任意拓扑业务连接并简化隧道规划和部署。
SRv6的话,很好理解。传统的SR是基于IPv4的,也是基于MPLS的。而SRv6是基于IPv6的。
继续往上,是业务适配层,目的是提供多业务映射和适配支持。这一层的CBR、L2VPN、L3VPN都不是新概念,以后我们再专门介绍。
接下来,我们说一说SDN和高精度时间同步。
SDN
前面小枣君说过,5G承载网必须支持切片。想要支持切片,就必须上SDN。5G承载网庞大而复杂,想要对它进行更好的管理和调度,也必须上SDN。
SDN之前小枣君已经介绍过很多次,Software Defined Network,软件定义网络。就是把网络的控制和流量转发进行拆分,由SDN控制器专门进行控制,底下的节点只需要进行转发,是一种加强型的集权管理模式。
前面我们介绍的SR,就是主要为SDN和切片服务的。SDN与SR完美结合,才使5G承载网足够灵活,可以更好地实现切片。
超高精度时间同步
承载网之所以需要超高精度时间同步,原因是多方面的:
5G的载波聚合、多点协同和超短帧要求空口之间的时间同步精度偏差小于260ns。5G的基本业务采用时分双工(TDD)制式,要求任意两个空口之间的相对精度偏差小于1.5μs。5G的室内定位增值服务对时间同步的精度要求更高,要求一定区域内基站空口时间同步的相对精度小于10ns。
5G同步网采用的关键技术包括:高精度同步源头技术、高精度同步传输技术、高精度同步局内分配技术、高精度同步检测技术。限于篇幅,暂时不一一介绍了。
以上,就是5G承载网关键技术的初步介绍。
福利
扫描添加小编微信,备注“姓名+公司职位”,加入【云计算学习交流群】,和志同道合的朋友们共同打卡学习!
推荐阅读:
在我们学习Java的过程中,掌握其中的基本概念对我们的学习无论是J2SE,J2EE,J2ME都是很重要的,J2SE是Java的基础,所以有必要对其中的基本概念做以归纳,以便大家在以后的学习过程中更好的理解java的精髓,在此我总结了30条基本的概念. z Z,)-X`v Java概述: k@Oc:A/l @JWLZ#FL 目前Java主要应用于中间件的开发(middleware)
转载请注明文章来源 – http://blog.csdn.net/v_hyx ,请勿用于任何商业用途 对于滤波器设计,以前虽然学过相关的理论(现代数字信号处理和DSP设计),但一直不求甚解,也没用过。趁着最近使用了一下,就来重学一回,温故而知新。 先来说说IIR滤波器设计,理论与原理参考如下博客,写得简明易懂,不错。http://blog.csdn.net/
转载:https://www.cnblogs.com/anningwang/p/7581545.html参考:https://wrf.ecse.rpi.edu//Research/Short_Notes/pnpoly.html在GIS(地理信息管理系统)中,判断一个坐标是否在多边形内部是个经常要遇到的问题。乍听起来还挺复杂。根据W. Randolph Franklin 提出的PNPoly算...
第一部分(let、const与作用域):概述:在ES5及以前版本的JavaScript采用var声明变量,且不支持块级作用域。JavaScript中,变量实际创建的位置取决于与如何声明该变量。ES6新增了两个关键字let和const用于控制作用域。Let的用法类似于var,但所声明的变量只在let命令所在的代码块有效。演示:{ let a=10; var b=1;}报错为a未定义,是因为Let声明的变量仅在其代码块内有效。此外,let非常适合用于 for循环内部的块级作用域。JS
//1.进程信息:这部分是闪退进程的相关信息 //崩溃报告的唯一标识符,用以标识不同的崩溃信息 Incident Identifier: C8F7C4F0-2F16-47AC-BD37-43A877537623 //与设备标识相对应的唯一键值。不是真正的设备标识符(UUID 苹果为了保护用户隐私iOS6以后已经无法获取了),但也是有用的情报;如果崩溃日志有100个的CrashReporter
这样的错误是由于, 有的时候可能git add . (空格+ 点) 表示当前目录所有文件,不小心就会提交其他文件git add 如果添加了错误的文件的话撤销操作:git status 先看一下add 中的文件git reset HEAD 如果后面什么都不跟的话 就是上一次add 里面的全部撤销了git reset HEAD XXX/XXX/XXX.python 就是对某个文...
问题1:在这里看到了许多导入函数以及cmd,可能恶意程序运行后会对cmd有所操作。问题2 :使用Process Explorer监控,运行程序后并没有发现什么。问题3:把Lab09-02.exe载入到ida和OD。在ida中发现main的地址是00401128,让后让OD跳转到此地址:首先看到了一大串的mov指令这是将字节移动到栈中的操作,出现了两个0,...
系列文章目录文章目录系列文章目录前言一、Love2d是什么二、Love2d的安装.Love2d安装教程.Love2d环境变量的配置三、Love2d编辑器安装四、验证Visual Studio Code配置总结前言一、Love2d是什么love是一个很棒的框架,你可以用它在Lua中制作2D游戏。它是免费的、开源的,可以在Windows、Mac OS X、Linux、Android和iOS上运行。二、Love2d的安装.Love2d安装教程①首先我们先进入Lo.
github地址: https://github.com/edenhill/librdkafka使用librdkafka开发一个producer的步骤:librdkafka:1. conf 设置kafka conf: rd_kafka_conf_new(): rd_kafka_conf_set()topic conf: rd_kafka_topic_
由于在实际使用的时候由于默认的一些程序都是使用的python如果直接调用启动的是Linux自带的2.7的环境就会出现很多问题, 所以这里记录下环境更改为3.6的做法mv /usr/bin/python /usr/bin/python.bak #删除原来指向python2的软链接ln -s /usr/local/python3.6/bin/python3.6 /usr/bin/pytho...
opengl开发前置必须:C++基础,VS开发环境。在C++中使用OpenGL需要配置多个库。为了让安装变得更简单,这里使用最新的C++的包管理器。~~C++终于有包管理器了,结束了手动编译时代~~ ,当然如果你不用那就只能下载源码,然后手动编译。而且还要自己在项目中引入包。●C++开发环境;●OpenGL / GLSL;●窗口管理;●扩展库;●数学库;●纹理管理。