文献标识码:A
DOI:10.16157/j.issn.0258-7998.190922
中文引用格式:王海宁,贾鹏,曹宇诗,等. 基于IBN的5G网络管理系统的调度算法研究[J].电子技术应用,2019,45(10):5-10.
英文引用格式:Wang Haining,Jia Peng,Cao Yushi,et al. Research on scheduling algorithm of 5G network management system based on IBN[J]. Application of Electronic Technique,2019,45(10):5-10.
0 引言
随着5G移动通信技术的快速发展,移动通信用户数量增加,业务需求逐渐呈现多样化的趋势。为满足未来用户和业务的差异化需求,运营商需要合理设计网络管理系统,根据不同业务的需求可以实现灵活快速部署,以提高网络管理效率。网络管理[1]是向用户提供一定标准质量的业务而对网络进行初始化、监视、分析和控制等行为的总称[2]。网络管理系统通过收集网络状态反馈信息,根据网络中所发生的情况,映射为对于网络物理链路的设计并结合调度算法实现网络链路自动化调整,生成合理的网络改善建议。网络管理系统广泛应用于交通、金融、应急、警力一线、云GIS[3]、视频音频等各行业。建立可靠的网络管理系统能够有效利用网络资源,降低运营成本,提供高质量的服务。
基于意图的网络(Intent-based Network,IBN)由美国LENROW D在2015年提出,是一种目前在世界范围内引起热议的新型网络架构。2017年Gartner提出的关于IBN的定义[4]并概括为4个关键部分:翻译和验证、自动实施、对网络状态的了解和保证以及动态优化/补救。IBN实现了从意图到特定基础设施的自动转化,不需要人工干预就能够监控网络的整体性能、识别问题并自动解决问题。思科的意图网络[5-6]主要包括五个部分:意图的表达和收集、转译和验证、自动化实施、网络状态感知、自动调优。
本文基于IBN的网络管理系统架构,提出一种快速调度算法,并在MATLAB仿真平台中实现和验证。快速调度算法的实现,将网络智能化技术和管理调度系统相结合,实现对网络资源的自动化管理和任务的快速调度,改变了传统网络资源的调度以及业务的部署需要大量人工手动实施的情况,面对5G时代数量和种类庞大的网络业务,运营商可以实现高效的网络管理和快速业务部署。
1 基于IBN的网络管理架构
1.1 网络管理调度系统架构
基于意图的网络是基于用户意图去构建和操作网络的闭环系统,提供网络基础设施全生命周期的管理,包括网络设计、实施、配置和运维,可提升网络可用性和敏捷性[5]。IBN网络以用户意图为导向进行统一管控,在大规模的网络管理与运营中实现将用户的业务策略(用户意图)转换为网络配置,并在网络模型上验证配置是否能满足业务策略,验证完成后通过自动化配置或网络智能编排完成基础设施上的配置[6]。IBN自动化配置不关注底层网络差异,由API向底层设备下发验证的意图配置。IBN网络架构如图1所示。
在IBN网络架构的基础上,设计了基于意图网络的网络管理调度系统架构,如图2所示。网络管理调度系统主要由应用层、IBN网络层、编排管控层和基础设施层构成。其中,应用层主要拟定下发业务;IBN网络层结合大数据库将收集的用户意愿转译成可调整的网络参数和相关的基础设施调整策略,并对意图命令进行分析验证;编排管控层实现编排管理的自动化实施和快速调度;基础设施层则是由一些可以调整的网元设备和管理模块构成,主要负责数据转发。
1.2 IBN网络层设计
IBN网络层实现将用户业务部署意图转化成标准网络配置信息并对其进行网络参数验证。IBN网络层主要由意图收集组件、意图转译组件和意图验证组件3个模块构成,其结构如图3所示。
意图收集组件主要收集用户网络业务部署意图,根据常见的网络标准问题,将用户意图转换为标准的网络数据信息。意图收集组件的功能:(1)接收网络应用层的用户反馈信息,即用户意图;(2)根据历史处理数据形成用户意图和网络标准术语映射关系网;(3)结合映射关系网将用户意图转化为常见网络问题,并进行分类汇总。
转译组件将总结的网络意图转译为可实现的网络任务,生成任务处理数据块,进行任务传递和下发。任务数据块应包含:网络任务类型、网络任务所属层级、网络处理优先级、预估网络处理时间等。这里的预处理时间包括响应时间和要求服务时间,关系到网络处理的优先权的计算。转译组件功能有:(1)网络任务类型,如网络监控、网络故障、业务配置、工程变更等;(2)任务所属网络层级,包括物理层问题、数据链路层问题、网络层问题、运输层问题、应用层问题;(3)网络紧急程度,包括一般、紧急、立刻处理等;(4)网络预处理时间,根据经验模型获取。
验证组件将实现对于网络处理的验证和经验模型的修正过程,针对不同的网络任务,抽样实现并计算任务分析准确性,任务实现过程中,不算调整经验模型参数,当准确性低于某个阈值时,重新进行分析。验证组件功能有:(1)对同等级网络任务抽样实现,在数据库进行存储;(2)计算任务分析;(3)修改经验模型和数据库。
2 调度算法分析
图4所示为基于IBN网络管理架构下的调度模型,分为三个部分:用户意图层、IBN转化层和任务调度层,本文的调度算法是基于任务调度层实现的。
2.1 IBN资源分配层
由于网络任务由一个一个的任务单元组成,每一个任务根据其对网络的影响程度的不同,其处理的优先级就会有所不同。因此当面对一个庞大的任务处理问题时,把任务作为一个可离散化处理的变量,离散化为多个小任务,与此同时任务处理机的处理资源也离散化处理,要把主要资源用于处理关键重要的紧急任务。
其中任务优先级依据任务等级分配,rs为资源剩余率,因此为了保证网络始终平稳运行且保证网络资源最大化调度,需要满足式(1)~式(3)[7]:
其中,S是整个处理单元的集合,Rs为所有处理单元s的处理效率;U是任务处理单元的集合,ru为单个任务单元u实际获得的处理资源,R为处理机所能提供的总的处理资源。
任务处理机资源也要离散化处理,这样高效的调度算法才能准确高效实施。
2.2 任务调度层
对于不同的任务单元,假定任务处理速度相同且始终保持最大为vmax。定义qu为每个任务单元的体验质量,ρu为每个任务单元的实际优先级,如式(4)~式(9)[7]所示。
其中,n为任务单元的序号,Tn为任务所需处理时间,Tu为任务实际处理时间,ru为任务单元实际获得的处理资源,rn为任务理论上应该得到的满足最佳服务所需的处理资源,R为系统所能提供的总的处理资源。所有任务单元的服务质量之和为Q,所有任务的处理时间之和为T,E(Q)定义为平均服务质量,如式(10)、式(11)[7]所示:
2.3 多级任务调度算法分析
网络任务由一个一个的小任务组成,每一个任务根据其对网络的影响程度的不同,其处理的优先级就会有所不同。离散化处理要把主要资源用于处理关键重要的紧急任务,而不是先来先处理,这样高效的调度算法才能准确高效实施。
根据不同队列的优先级赋予各个队列中进程执行时间片的大小也各不相同,图5所示为多级任务处理算法示意图,在优先级越高的队列中,每个进程的运行时间片就越小。例如,第2级队列的时间片要比第1级队列的时间片长一倍。当一个长进程从第1级队列依次降到第n级队列后,在第n级队列中采用时间片轮转的方式运行。仅当第1级队列为空时,调度程序才调度第2级队列中的进程运行;如果处理机正在执行第i级队列中的某进程时,又有新进程进入优先级较高的队列(第1~(i-1)中的任何一个队列),则此时新进程将抢占正在运行进程的处理机,即由调度程序把正在运行的进程放回到第i级队列的末尾,把处理机分配给新到的更高优先级的进程。
这里还结合现存的两种调度算法——FCFS算法和短作业优先算法进行比较。调度算法实施过程如下:
(1)按网络任务类型将网络任务分类,分配不同的默认初始值,初始值越大,表示任务重要性越大,越易优先处理。
(2)结合任务对于网络的影响程度,分配初始影响因子,影响因子越大,对优先级的影响越大。
(3)针对不同的任务信令,按初始值乘以影响因子,计算网络优先级,设置多个排队队列。
(4)处理优先级高的队列按任务量优先分配处理资源,低优先级获取固定少量处理资源和剩余处理资源,当高优先级任务量较小时,低优先级才可占用高优先级处理资源。
(5)各个任务信令按照两种算法分配任务处理概率,分配的概率越大,越易优先处理。
(6)队列不断更新,当任务信令距离死亡时间(也就是任务截止时间)越近,任务分配影响因子越大。
(7)当任务执行失败,调整任务默认初始值。
2.4 同级任务调度算法分析
多级调度算法实现了高优先级的快速处理,对于同一优先级的任务的处理方法主要有:
(1)先来先服务算法(First Come First Service,FCFS):如图6所示,按照先进队列先处理,直到发生阻塞后才放弃,当采用该算法时,每次调度从后备多个任务作业队列中各选择一个或多个最先进入该队列的任务,将他们调入内存,后为其分配资源,创建进程,然后放入就绪队列。
(2)短任务优先:指对短作业或短进程优先调度的算法,其实现机制与FCFS相似,只是任务处理时长越短,处理顺序越靠前。对于同优先级的各个任务,按照短任务优先进入就绪队列的方法,设置就绪队列,如图7所示。
本文采用无序最大化的算法,如图8所示。该算法的核心思想是有位置即坐,有空闲处理能力即利用,保证处理机时刻最大负载运行,实现处理资源利用率的最大化。假设处理机一次可以处理的资源有限且当某个任务单元超出剩余处理资源时,即为超出处理能力,处理机拒绝提供服务。
3 算法仿真与分析
将不同用户意图按任务等级生成任务信令,并结合多级概率调度算法,实现了基于意图网络的快速调度系统,除此之外将多级概率调度算法和短任务算法相结合,使得任务处理效率大大提高,处理时间大大缩短。
假设处理机一次可以处理任务量为150,按任务等级分配处理资源,一级分配50,二级40,三级30,四级20,五级10。任务数为500,总任务量为2 659,按照多级任务处理方法处理。
图9所示的仿真结果表明,高优先级的任务实现了优先处理,当高优先级任务处理完成后,多余的处理能力用来处理低优先级的任务。在多级调度时,高优先级的处理速度较快,相同的任务数高优先级被优先处理完。随着高优先级的处理完成,处理资源被用于低优先级,低优先级的任务处理速度变快。
多级调度算法实现了高优先级的快速处理,但是对于同优先级的任务,如何处理才能实现高效是要考虑的另一个问题。下面对此进行了详细的探究。
假设总任务量为573,图10所示为同级任务处理算法运行对比情况,可以看出无序最大化的任务处理方法可以实现任务的快速处理。同等级任务处理有优化的空间,对于同等级任务,无需最大化处理实现的效率的提升,近15 s左右。
图11反映了同等级任务处理的任务剩余量与处理时间的关系。由图可以看出,短任务优先在一定时间内实现了任务数的快速下降,但是当短任务处理完成时,处理速度发生大幅下降,无序最大化的处理方法整体上实现了最优。
图12所示为多级调度和同级调度算法的比较,通过分析发现,将资源多级调度多级处理在实现任务处理上表现出优越性,在快速处理资源调度上具有明显的优势。
4 结论
本文基于IBN的网络架构提出了网络管理系统,面对5G网络下数量庞大和种类繁多的用户及网络业务需求,基于该系统对多级调度和同级调度算法作深度研究,通过MATLAB平台仿真将算法进行实现和对比分析。通过将不同用户意图按任务等级生成任务信令,结合多级调度算法,实现基于意图网络的快速调度系统,将多级调度算法和同级调度算法相结合,任务处理效率大大提高,处理时间大大缩短。当优先级高的任务较多时,可能会导致低优先级的任务无法快速处理,从而导致低优先级任务堆积或者失败,故算法有待改进。
参考文献
[1] 孟洛明,亓峰.现代网络管理技术(修订版)[M].北京:北京邮电大学出版社,2001.
[2] 王冬.基于任务调度的高适应性适配器的研究与应用[D].北京:北京邮电大学,2006.
[3] 杨柳.基于云计算的GIS应用模式研究[D].开封:河南大学,2011.
[4] Gartner.Intent-based networking[EB/OL].(2017-02-07)[2019-08-18].https://blogs.gartner.com/andrew-lerner/2017/02/07/intent-based-networking/.
[5] Veriflow.Intent-based networking:top 10 questions and answers[EB/OL].[2019-08-18].https://www.veriflow.net/_downloads/Intent-based%20Top%20questions.pdf.
[6] Veriflow.Verification and intent-based networking:closing the control looph[EB/OL].(2017-07-11)[2019-08-18].https://www.veriflow.net/verification-intent-based-networking-closing-control-loop/.
[7] 陈强,刘彩霞,李凌书.基于改进式贪婪算法的5G网络切片动态资源调度策略[J].网络与信息安全学报,2018,4(7):60-68.
作者信息:
王海宁,贾 鹏,曹宇诗,杨馥聪,裴天天,曾 宇
(中国电信股份有限公司战略与创新研究院新兴信息技术研究所 网络AI研究中心,北京102209)