边缘计算那些事儿--网络切片技术(1)

news/2024/5/3 12:30:55/文章来源:https://blog.csdn.net/linus_ben/article/details/128045271

0 背景

        边缘计算可以支持就近的计算卸载,让数据在靠近数据源的设备上处理。对于边缘计算低时延的应用场景来说,网络性能的好坏,直接影响着卸载算法的整体耗时,决定着整个算法模型的可行性。因此如果想实现低时延卸载算法,除了获得合适的计算资源以外,还需要更加精细的网络资源的管理。对于需要进行低时延处理的数据,在网络上提供单独的通道和资源,报文在调度和转发时具备更高的优先级,保证报文可以第一时间被响应。要实现上述功能传统的做法是提供专网,5G中提出了网络切片技术,即在物理网络上切出一系列面向定制化服务的逻辑网络,使具体业务独占某个网络通道。本文将以5G的端到端网络切片为例,详细介绍切片编排器,5G RAN切片和5G核心网切片的实现。

1 什么是网络切片

        当前用户的不同个性化需求,触发了对于不同网络资源的需求。为了在5G物理网络资源的基础上,搭建支持不同服务的网络资源平台,网络切片应运而生。网络切片是在物理网络的基础上切分出不同定制化服务的逻辑网络,如下图所示。从定义中可以看出,该技术依托现有的物理网络,需要物理网络支持虚拟化技术,支持软件定义网络技术。面对不同的应用场景,原本一体的网络资源,如带宽等,被切分成不同的网片,网片之间相互隔离,互不影响,就像独占网络资源一样。这其实类似于网络中常见的管道概念,每一个管道都会有自己独立的标识,带有该标识的报文才可以在该管道中转发。同样的,网络切片也有自己的实例ID,只有带有该实例ID的报文才可以在该切片中转发。那切片是如何划分的,如何建立的,报文又是在哪里如何被打上这个实例ID的,下面的我们将进行详述。

2 网络切片实现

        来到网络切片的实现,让我们依然参照业务管道的实现方式,首先搭建一条业务通路,然后对报文打上管道头,最后报文就可以在对应的管道中被转发。映射到网络切片上,业务通路就是网络资源切片,给报文打头的服务就是切片编排器。以5G通信网络为例,在物理网络上可以被划分为核心网和接入网,每一类网络所具有的核心网络资源和协议栈也是不一样的,比如核心网主要是处理报文在路由设备中的转发,而接入网主要是帮助UE接入到网络中,核心的资源包括空口资源和其对应的协议栈,因此在进行网络切片时需要切分对应的RAN资源和核心网资源。如下图所示,图中这两类切片还依赖于SDN和NFV技术。

        上图中的RAN资源切片和核心网资源切片因其具有的资源不同,被分开来单独分析。但是要想达到理想的切片性能,需要这两部分综合考虑才可以,这一点是需要开发人员特别注意的。另外网络切片跟之前管道一个最大的不同是有了全局视角,切片的组成中还可以包含网元这样粒度的元素。而这个全局视角就是切片编排器实现的,后面三节将详述这三个模块。

3 切片编排器

        切片编排器,是网络切片系统中负责管理和控制切片资源的模块,可以部署在网络中的任意节点处,管理和控制的切片对象也跟其部署位置有关,除此以外切片编排器还具备一定的边缘计算能力,能够多维度感知用户数据、资源数据和环境数据,做出切片决策。如下图所示是切片编排器的整体架构和在物理网络中的部署位置。

        从切片编排器的定义中能够看出,其本身需要具备资源管理能力,报文的转发策略控制能力和边缘智能。在一张网络要想达到良好的切片资源管理控制,最低要求需要在网关(图中位置3)和核心网(图中位置2)中进行部署。在网关处主要管理设备的空口和协议栈二层以下的切片资源,同时在北向上申请需要的切片资源,将北向报文打上切片信息。在核心网处主要管理南向的切片资源,其中包含了RAN切片和核心网切片两大部分,对于流向终端的业务报文,负责打上对应的切片ID,控制报文的转发策略。除了上面两个位置以外,还可以将切片编排器部署在图中位置1。位置1切片编排器是对RAN切片资源的宏观管理,其中包含了基站和基站中的网元设备以及空口协议栈共同构成的切片管理。

        切片编排模块是整个切片资源的调配和管理中心。包含了8个核心模块,每个模块实现的功能如下:

  • 切片动态感知:负责获取来自多维度感知和资源感知模块的数据,根据不同的应用场景和环境资源,做出切片决策。
  • 切片实例分配:该模块负责收集和管理切片实例资源,根据切片动态感知模块给出的切片决策策略,分配不同的切片实例。
  • 资源再分配:负责综合资源感知模块提供的资源信息,对资源进行回收、合并和再分配,特别是闲置的资源,会参与到其他站点的资源共享。
  • 组网动态调整:该模块负责监控网络中的拥塞,过载等问题,实时调整切片资源,保证网络的整体性能。
  • 切片动态调整:该模块负责对场景中已经分配的切片进行监控,如果切片不能满足场景需求,会对场景进行重新的资源评估,分配新的切片实例。
  • 切片生命周期:该模块负责管理场景中的切片实例全生命周期,包括建立,删除,回收,再分配等。
  • 切片扩容缩容:当应用场景需要的切片资源不能满足需求时,该模块会通过内部扩容切片资源或者外部申请切片资源的方式解决。同样的当应用场景在一段时期内不需要过多的切片资源时,可以将其回收。
  • 切片隔离策略:该模块负责管理切片的隔离策略,理论上我们要保证切片资源是相互隔离的,但是在空口上的无线资源是很难保证相互隔离的,特别是当在一个空口资源上包含不用应用场景的切片时,需要针对当时的场景选择合适的隔离策略。

        切片编排器在边缘智能方面主要包含两个模块,一个是多维度感知,一个是资源感知,这两个模块与切片编排器通过切片动态感知模块关联,为其提供基于应用场景的切片需求数据,帮助切片决策。多维信息感知模块包含四个功能,分别是识别用户需求,用户位置,用户关系和用户行为。用户需求即用户本身提出的切片资源需求,或者由该模块根据用户的报文特点识别出的切片需求。用户位置感知则是用户在不同基站间移动时,需要的切片资源也随之发生移动,需要在相邻的基站上分配切片资源。用户关系,则是基于用户的亲密关系,决定是否将闲置的网络资源利用起来,让用户数据可以亲密的用户间卸载。用户行为的感知,则是根据用户的喜好,为其提供个性化的切片服务。

        资源感知模块则是对整个网络切片资源的实时监控和调整。其中包含网元资源,无线资源,网络特征等。当用户的需求发生变化,位置发生移动,或者当前的切片资源无法满足应用场景时,能够从全网获取可用的切片资源,感知临近站点的资源情况,分析网络性能,提供最佳的网络切片决策。

        综上,这两个感知模块为切片决策和管理提供了依据,能够动态识别用户需要什么样的切片,当前我们的网络资源是否充足。当能够满足要求时,才会进入到下一层的切片编排。当然具体的切片实现跟网络设备紧密相关,这个我们在后续章节讨论。

未完待续...

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_37050.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

国外顶尖程序员手写,402页汉译版微服务与事件驱动架构开发手册

为什么用事件驱动型微服务? Marshall McLuhan认为,影响人类并给社会带来根本性变革的不是媒介的内容,而是与媒介的互动过程。在我们的集体参与下,报纸、广播、电视、互联网、即时通信和社交媒体改变了人类的互动方式以及社会结构…

python数据分析绘图

ROC-AUC曲线(分类模型) 混淆矩阵 混淆矩阵中所包含的信息 True negative(TN),称为真阴率,表明实际是负样本预测成负样本的样本数(预测是负样本,预测对了)False positive(FP),称为假…

activiti-bpmn-converter

activiti-bpmn-converter目录概述需求:设计思路实现思路分析1.BpmnXMLConstants2.BpmnXMLConverter3.StartEventXMLConverter4.EndEventXMLConverter参考资料和推荐阅读Survive by day and develop by night. talk for import biz , show your perfect code,full bu…

伸展树原理介绍

一 点睛 伸展树,也叫作分裂树,是一种二叉搜索树,可以在 O (logn ) 内完成插入、查找和删除操作。在任意数据结构的生命周期内执行不同操作的概率往往极不均衡,而且各操作之间有极强的相关性,在整体上多呈现极强的规律…

zabbix集群搭建分布式监控的操作步骤

作用: 分担server的集中式压力解决多机房之间的网络延迟问题环境准备: 服务器1:zabbix-server 服务器2:zabbix-proxy 服务器3:zabbix-agent 关系:zabbix-agent发送数据到代理,代理汇总数据发送…

学习Python要学习哪些课程?

通过学习 Python数据分析与应用课程,可以掌握Python进行科学计算、可视化绘图、数据处理,分析与建模、构建聚类、回归、分类模型的主要方法和技能,并为后续相关课程学习及将来从事数据分析挖掘研究、数据分析工作奠定基础。 Python数据分析与…

XSStrike工具使用说明

今天继续给大家介绍渗透测试相关知识,本文主要内容是XSStrike工具使用说明。 免责声明: 本文所介绍的内容仅做学习交流使用,严禁利用文中技术进行非法行为,否则造成一切严重后果自负! 再次强调:严禁对未授权…

记录:微星 GE63 屏轴断裂 之后。。。

2022/11/25 记录 微星 GE63 1070 笔记本,使用的第三年,已过保了一年,上周使用时,准备合上笔记本盖。啪一下,左侧屏轴断裂,B面翘起,A面左下角轴盖断了一截。 网上好多人都有类似的情况&#xff…

Linux多核运行机制(SMP)

一、Linux内核兼容多处理器要求 有多个 CPU 处理器 的 系统中 , Linux 内核需要处理的问题 : 1、公平共享 : CPU 的负载 , 需要公平地共享 , 不能出现某个CPU空闲 , 造成资源浪费。 2、可设置进程 与 CPU 亲和性 : 可以为 某些类型的 进程 与 指定的 处理器设置亲和性 , 可以针…

数据结构与算法之让我们种下一棵字典树(Java/C++双语言实现)

⭐️前面的话⭐️ 本篇文章将介绍一种经常使用的数据结构——字典树,它又称Tire树,前缀树,字典树,顾名思义,是关于“字典”的一棵树。这个词典中的每个“单词”就是从根节点出发一直到某一个目标节点的路径&#xff0…

CSRF漏洞简介

今天继续给大家介绍渗透测试相关知识,本文主要内容是CSRF漏洞原理、产生与危害。 免责声明: 本文所介绍的内容仅做学习交流使用,严禁利用文中技术进行非法行为,否则造成一切严重后果自负! 再次强调:严禁对未…

C语言 * 数组的解析 *

目录 一:一维数组的创建和初始化 1.1 数组的创建 1.2 数组的初始化 1.3 一维数组的使用 1.4 一维数组在内存中的存储 二:二维数组的创建和初始化 2.1 数组的创建 2.2 数组的初始化 2.3 一维数组的使用 2.4 一维数组在内存中的存储 2.5 数组越…

【蓝桥杯选拔赛真题30】python计算倒数和 青少年组蓝桥杯python 选拔赛STEMA比赛真题解析

目录 python计算倒数和 一、题目要求 1、编程实现 2、输入输出 3、评分标准

从01背包说起(上)

目录 引入 1.什么是动态规划? 2.什么是背包问题? 3.什么是01背包? 模板题 1.题面 2.思路 Ⅰ为何不可用贪心 Ⅱ状态转移方程 3.代码 下期预告 引入 1.什么是动态规划? 动态规划(英语:Dynamic programming&#xff0…

收到多个20k+的offer!选哪一个呢?

“收到offer了!”最近,黑马老师收到最多的消息就属这句了。随着黑马各个学科迎来毕业,班主任收到的喜讯越来越多。班主任说,没有比在接近年底时收到学生就业喜讯更让人开心的事了。今天,播妞给大家带来的是黑马HTML&am…

就两秒?这说出去谁信啊!

文 | xiaoyi(转载请后台联系)关注公众号:小一的学习笔记截止发文,北上广深一共有6510条公交线路为了获取上面的这些线路信息,我写了一个爬虫,大概用了2秒左右就搞定,真爽!说出来你们…

【项目实战:核酸检测平台】第三章 利其器

第三章 利其器 摘要:俗话说的好工欲善其事,必先利其器,框架搭的好,开发起来很舒服,搭的不好,开发起来就很痛苦。 一个程序员只会写业务代码,最多算是个码农,搭框架的本事、遇到难题的解决能力…

第八章 兼容多种模块标准的软件包封装

第八章 如何封装兼容多种JS模块标准的软件包? 为了方便用户使用,一款成熟的类库都会提供多种模块封装形式,比如大家最常用到的 Vue,就提供了cjs、esm、umd 等多种封装模式,并且还会提供对应的压缩版本,方便…

微服务之间,最佳的调用方式是什么?

在微服务架构中,需要调用很多服务才能完成一项功能。服务之间如何互相调用就变成微服务架构中的一个关键问题。服务调用有两种方式,一种是RPC方式,另一种是事件驱动(Event-driven)方式,也就是发消息方式。消…

MySQL海量数据优化(理论+实战) 吊打面试官

一、准备表数据 咱们建一张用户表,表中的字段有用户ID、用户名、地址、记录创建时间,如图所示 ​OK,接下来准备写一个存储过程插入一百万条数据 CREATE TABLE t_user (id int NOT NULL,user_name varchar(32) CHARACTER SET utf8 COLLATE ut…