发明内容
有鉴于此,本发明实施例提供了一种软件定义云边协同网络能耗优化方法和系统,以解决现有技术中云边协同网络存在的灵活度和可扩展性不够高的问题。
本发明实施例提供了一种软件定义云边协同网络能耗优化方法,包括:
获取连接请求集合;
根据连接请求集合确定计算资源;
基于业务发送能耗、节点能耗和计算能耗通过K条最短路径算法获取最优工作路径。
可选地,获取连接请求集合包括:
生成一组连接请求集合CR;其中,每一个连接请求CR(u,f,r)∈CR,u表示用户请求,f表示用户请求所需的频谱间隙数,r表示用户请求所需的计算资源数。
可选地,根据连接请求集合确定计算资源包括:
若本地区域计算资源满足连接请求集合,则由本地区域计算资源处理连接请求集合;
若本地区域计算资源不满足连接请求集合,则由本地区域计算资源和边缘区域计算资源处理连接请求集合;
若本地区域计算资源和边缘区域计算资源不满足连接请求集合,则由本地区域计算资源、边缘区域计算资源和云计算资源处理连接请求集合。
可选地,基于业务发送能耗、节点能耗和计算能耗通过K条最短路径算法获取最优工作路径包括:
计算每一节点的负载任务数、节点负载和节点负载率;
计算K条工作路径的发送能耗和节点能耗;
根据用户请求所在层数获取计算能耗;
按照最低能耗对K条工作路径进行排序,得到多个备选路径;
按照能耗由低到高检测、排除存在阻塞的备选路径,得到最优工作路径,并进行频谱资源分配。
可选地,计算每一节点的负载任务数、节点负载和节点负载率包括:
计算任一节点j的负载任务数Xj(t):
计算任一节点j的负载Xcj(t):
计算任一节点j的负载率yj:
其中,x
l,j(t)表示时隙t由节点l到达节点j的任务数;
表示节点j中第k个任务的大小;TR
j表示节点j的资源总和;B={1,2,…,b,…}表示一组基站;I={1,2,…,i,…}表示一组交换机;S=B+I={1,2,…,s,…}表示一组边缘计算服务器可选取的位置。
可选地,计算K条工作路径的发送能耗和节点能耗包括:
计算发送能耗SEE:
计算节点能耗NOE:
其中,P
u表示用户的发送功率;S
u表示任务的大小;r表示光纤传输速率;J表示路径经过的节点数;
表示第j个节点设备端口空载功耗;
表示第j个节点设备端口满载功耗;y
j表示第j个节点设备端口负载率。
可选地,根据用户请求所在层数获取计算能耗包括:
若用户请求在边缘计算服务层,则计算能耗为:
若用户请求在云计算服务层,则计算能耗为:
其中,δ
f表示边缘计算服务层的实时处理能力;
表示边缘计算服务层处理数据单位时间所产生的能耗;δ
c表示云计算服务层分配给每个任务的处理能力;
表示云计算服务层处理数据单位时间所产生的能耗。
可选地,在得到多个备选路径之后,还包括:
基于频谱一致性和频谱连续性的约束条件,采用首次命中的频谱分配算法,根据备选路径上所有链路的频谱资源状态生成频谱资源表并进行编号;
从标号小的一端开始查找可用的频谱间隙;若当前频谱间隙可用,则进行频谱资源分配,并更新频谱状态;若未找到可用频谱,则频谱资源分配失败,业务存在阻塞。
可选地,在得到最优工作路径,并进行频谱资源分配之后,还包括:
对边缘区域计算资源进行更新,记录成功建立连接请求数。
本发明实施例的有益效果:
1.每一个连接请求成功建立后,根据用户发送功率、任务大小和光纤传输速率计算发射能耗,根据路径所经节点数和节点的负载情况计算路径节点能耗,以及根据计算边缘服务器的计算能力和边缘计算服务器处理数据单位时间所产生的能耗,计算出软件定义云边协同网络的能耗。通过软件定义云边协同网络能耗优化方法和系统,有效平衡网络资源和业务能耗之间的关系,在合理分配资源的情况下最大程度地减少云边协同网络的能耗,提高了云边协同网络的灵活性和可拓展性。
2.对每一个连接请求,根据任务的优先级别,运用OpenFlow扩展协议,由软件定义的中心控制器发出命令集,通过云边协同网络动态变化的拓扑信息,采用K条最短路径算法计算业务到边缘计算服务器之间的工作路径。工作路径成功选择后,根据软件定义的中心控制器所掌握的资源占用状态信息,利用OpenFlow扩展协议,由软件定义的中心控制器下发资源分配命令,采用首次命中的频谱分配算法对路径进行频谱资源分配,需要同时满足频谱一致性和频谱连续性两个约束条件,然后对网络计算资源和频谱资源状态进行实时更新,提高了系统的灵活度。
本发明实施例还提供了一种软件定义云边协同网络能耗优化系统,包括:
集中控制模块,用于实时动态地了解与调整各个节点的资源信息,集中控制模块采用基于OpenFlow扩展协议的集中控管模式管理云边协同网络,建立软件定义云边协同网络;
应用服务需求模块,用于在软件定义云边协同网络中,根据应用服务需求,基于业务服务等级要求,接收由集中控制模块的集中控管模块发出命令集,建立工作路径与分配所需的频谱资源,完成应用服务需求的数据传输,更新计算资源并释放应用需求占用的网络资源。
本发明实施例的有益效果:
每一个连接请求成功建立后,根据用户发送功率、任务大小和光纤传输速率计算发射能耗,根据路径所经节点数和节点的负载情况计算路径节点能耗,以及根据计算边缘服务器的计算能力和边缘计算服务器处理数据单位时间所产生的能耗,计算出软件定义云边协同网络的能耗。通过软件定义云边协同网络能耗优化方法和系统,有效平衡网络资源和业务能耗之间的关系,在合理分配资源的情况下最大程度地减少云边协同网络的能耗,提高了云边协同网络的灵活性和可拓展性。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
如图1所示,本发明实施例提供了一种软件定义云边协同网络能耗优化方法,包括:
步骤S10,获取连接请求集合。
本步骤包括:生成一组连接请求集合CR;其中,每一个连接请求CR(u,f,r)∈CR,u表示用户请求,f表示用户请求所需的频谱间隙数,r表示用户请求所需的计算资源数。
步骤S20,根据连接请求集合确定计算资源。
在本实施例中,对于每一个连接请求CR(u,f,r),由软件定义的中心控制器判定用户请求所在的本地区域是否具有足够的计算资源,当本地区域内边缘计算服务器上的计算资源满足用户请求所需的计算资源时,由软件定义的中心控制器下发命令将用户请求发送到本地计算服务器进行处理,此时用户请求不经过网络中的其他节点,系统能耗只需考虑向本区域内边缘服务器的发送能耗和在本地区域内边缘服务器的计算能耗即可。若本地区域计算资源不足,由软件定义的中心控制器做出决策,将计算迁移至边缘计算服务器或云计算服务器。
步骤S30,基于业务发送能耗、节点能耗和计算能耗通过K条最短路径算法获取最优工作路径。
在本实施例中,采用K条最短路径路算法计算从用户请求到边缘计算服务器之间的工作路径。K条最短路径路算法计算了K条候选路径作为路由选择,并按每条路径所产生的能耗由小到大进行排序,即能耗越小,优先选择权就越高。若排序在前的路径在某一段链路上发生阻塞,就依次选取排序在后的路径进行频谱资源分配,直到分配资源成功,或所有路径全都阻塞。
每一个连接请求成功建立后,根据用户发送功率、任务大小和光纤传输速率计算发射能耗,根据路径所经节点数和节点的负载情况计算路径节点能耗,以及根据计算边缘服务器的计算能力和边缘计算服务器处理数据单位时间所产生的能耗,计算出软件定义云边协同网络的能耗。通过软件定义云边协同网络能耗优化方法和系统,有效平衡网络资源和业务能耗之间的关系,在合理分配资源的情况下最大程度地减少云边协同网络的能耗,提高了云边协同网络的灵活性和可拓展性。
作为可选的实施方式,根据连接请求集合确定计算资源包括:
若本地区域计算资源满足连接请求集合,则由本地区域计算资源处理连接请求集合;
若本地区域计算资源不满足连接请求集合,则由本地区域计算资源和边缘区域计算资源处理连接请求集合;
若本地区域计算资源和边缘区域计算资源不满足连接请求集合,则由本地区域计算资源、边缘区域计算资源和云计算资源处理连接请求集合。
如图2所示,若本地边缘计算区域内的计算资源不足,基于软件定义的中心服务器判定边缘区域内服务器是否具有足够计算资源处理用户请求。若边缘区域服务器计算资源满足用户请求所需计算资源,软件定义的中心控制器下发命令至相邻服务器,需要把用户请求迁移到与本地区域内的同一交换机上的其他区域边缘计算服务器上。此时,系统能耗包括用户请求向相邻服务器的发送能耗,途径交换机时所产生的节点能耗及相邻边缘服务器的计算能耗。
若软件定义的中央控制器检测到本地和相邻边缘计算区域服务器上的计算资源不能满足用户请求所需的计算资源,再判定云端服务器是否具有足够计算资源。若云端服务器具有足够计算资源,则用户请求通过交换机被发送到云端服务器上进行数据处理。此时,系统能耗包括用户向云端服务器发送请求的发送能耗,节点能耗及云端服务器的计算能耗。
作为可选的实施方式,基于业务发送能耗、节点能耗和计算能耗通过K条最短路径算法获取最优工作路径包括:
计算每一节点的负载任务数、节点负载和节点负载率。
在本实施例中,计算任一节点j的负载任务数Xj(t):
计算任一节点j的负载Xcj(t):
计算任一节点j的负载率yj:
其中,x
l,j(t)表示时隙t由节点l到达节点j的任务数;
表示节点j中第k个任务的大小;TR
j表示节点j的资源总和;在云边协同网络G(U,B,I,S)中,B={1,2,…,b,…}表示一组基站;I={1,2,…,i,…}表示一组交换机;S=B+I={1,2,…,s,…}表示一组边缘计算服务器可选取的位置。b、i、s均为大于等于1的自然数。
计算K条工作路径的发送能耗和节点能耗。
在本实施例中,计算发送能耗SEE:
计算节点能耗NOE:
其中,P
u表示用户的发送功率;S
u表示任务的大小;r表示光纤传输速率;J表示路径经过的节点数;
表示第j个节点设备端口空载功耗;
表示第j个节点设备端口满载功耗;y
j表示第j个节点设备端口负载率。
根据用户请求所在层数获取计算能耗。
在本实施例中,若用户请求在边缘计算服务层,则计算能耗为:
若用户请求在云计算服务层,则计算能耗为:
其中,δ
f表示边缘计算服务层的实时处理能力;
表示边缘计算服务层处理数据单位时间所产生的能耗;δ
c表示云计算服务层分配给每个任务的处理能力;
表示云计算服务层处理数据单位时间所产生的能耗。
按照最低能耗对K条工作路径进行排序,得到多个备选路径;
在本实施例中,在得到多个备选路径之后,还包括:
基于频谱一致性和频谱连续性的约束条件,采用首次命中的频谱分配算法,根据备选路径上所有链路的频谱资源状态生成频谱资源表并进行编号;
从标号小的一端开始查找可用的频谱间隙;若当前频谱间隙可用,则进行频谱资源分配,并更新频谱状态;若未找到可用频谱,则频谱资源分配失败,业务存在阻塞。
按照能耗由低到高检测、排除存在阻塞的备选路径,得到最优工作路径,并进行频谱资源分配。
连接请求CR(u,f,r)成功建立工作路径后,告知基于软件定义的中央控制器可以进行用户请求的数据业务传输,根据频谱一致性和频谱连续性的约束条件对工作路径进行频谱资源分配。在具体实施例中,采用首次命中的频谱分配算法,根据路径上所有链路的频谱资源状态生成一张频谱资源表进行编号,从标号小的一端开始查找可用的频谱间隙。如果找到可用的频谱间隙则进行频谱资源分配并进行频谱状态更新;如果没有找到则频谱分配失败,业务阻塞。
在本实施例中,在得到最优工作路径,并进行频谱资源分配之后,还包括:对边缘区域计算资源进行更新,记录成功建立连接请求数。
对每一个连接请求,根据任务的优先级别,运用OpenFlow扩展协议,由软件定义的中心控制器发出命令集,通过云边协同网络动态变化的拓扑信息,采用K条最短路径算法计算业务到边缘计算服务器之间的工作路径。工作路径成功选择后,根据软件定义的中心控制器所掌握的资源占用状态信息,利用OpenFlow扩展协议,由软件定义的中心控制器下发资源分配命令,采用首次命中的频谱分配算法对路径进行频谱资源分配,需要同时满足频谱一致性和频谱连续性两个约束条件,然后对网络计算资源和频谱资源状态进行实时更新,提高了系统的灵活度。
实施例2
本发明实施例提供了一种软件定义云边协同网络能耗优化系统,包括集中控制模块和应用服务需求模块,其中:集中控制模块用于实时动态地了解与调整各个节点的资源信息,集中控制模块采用基于OpenFlow扩展协议的集中控管模式管理云边协同网络,建立软件定义云边协同网络;应用服务需求模块用于在软件定义云边协同网络中,根据应用服务需求,基于业务服务等级要求,接收由集中控制模块的集中控管模块发出命令集,建立工作路径与分配所需的频谱资源,完成应用服务需求的数据传输,更新计算资源并释放应用需求占用的网络资源。
如图3所示,集中控制模块主要包含:
—基于OpenFlow扩展协议的集中管控模块,该模块主要获得全部云边协同网络的资源信息与网络拓扑信息,监控每一个节点的状态,能够根据业务需求计算传输路径,为应用服务需求分配与释放相应的网络资源。
—云边协同网络初始化模块:通过OpenFlow扩展协议对云边协同网络进行初始化,在云边协同网络G(U,B,I,S)中,配置网络的拓扑信息、光网络连接状态、用户请求数、边缘计算服务器的数目、基站和交换机的数目。
—网络可编程硬件模块,该模块主要功能是引入了可编程的硬件模块,应用于云边协同网络控制状态的监控,感知网络资源使用状态。
—嵌入软件开发模块,该模块能够把开发的软件程序进行嵌入操作,并能够根据云边协同网络需要进行动态修改,同时也可以根据业务需求变化状态,修改软件的状态参数等信息。
—网络状态监控模块:主要完成对频谱灵活光网络初始化、连接请求生成、业务优先级选择、边缘计算服务器选择、工作路径建立、频谱资源分配、计算资源更新、资源释放、网络能耗计算的状态监控功能,以实现在计算资源分配时尽可能减少系统能耗的目标。
—判决和预警模块:执行各个模块之间的协调功能,以及每个模块是否建立成功的判决与预警功能,完成移动边缘计算中减少系统能耗的目标。
应用服务需求模块主要包含:
—应用服务需求模块:该模块主要是用户根据需求发出的服务请求,配置连接请求数目、不同连接请求所需的频谱间隙个数和计算资源等信息。
—软件定义的中心控制器的命令集模块:该模块能够根据云边协同网络的资源信息状态,以及执行在集中控制模块中基于OpenFlow扩展协议的集中控管模块的命令集合,完成应用需求的分发机制。首先,判定用户请求的本地服务器是否具有用户请求所需计算资源,若本地服务器计算资源足够则用户请求直接在本地进行处理。若本地服务器计算资源不够,考虑本地区域外的其他区域边缘计算服务器是否具有用户请求所需的计算资源,若其他区域的服务器具有足够的计算资源,则将用户请求通过交换机迁移到其他区域进行处理。若本地和其他区域的计算资源都不满足用户请求的计算资源,则将用户请求通过交换机迁移到云服务器进行处理。
—工作路径建立模块:根据连接请求CR(u,f,r)的用户请求和处理请求的边缘计算服务器,采用K条最短路径算法,计算出从用户请求到服务器的K条候选路径,以便查找出最优的路径作为工作路径。
—业务优先级选择模块:根据K条最短路径算法,计算每条工作路径的用户发送能耗,路径节点能耗延和计算能耗总和,选择能耗低的工作路径进行业务处理传输和处理。
—频谱资源分配模块:根据连接请求CR(u,f,r)所需的频谱间隙数f,在所选择的工作路径中查找满足连接请求所需的带宽资源,若同时满足频谱连续性与频谱一致性双重约束条件,则成功建立连接请求;若不能同时满足频谱连续性与频谱一致性双重约束条件,则连接请求建立失败。
—计算资源更新模块:在频谱资源成功分配后,对处理用户请求的边缘计算服务器进行计算资源的实时更新。
—资源释放模块:在连接请求成功传输后,对工作路径占用的频谱资源进行资源释放。同时,对处理用户请求的边缘计算服务器的计算资源进行释放。最后,将连接请求建立的工作路径进行信息清除。
—能耗计算模块:在每一个连接请求成功建立请求后,记录每一个连接请求传输路径所经过的节点信息,根据实施例1中公式的计算每一个连接请求的用户发送能耗及节点能耗,再记录用户请求确定的边缘计算服务器的位置,计算每个连接请求的计算能耗。
实施例3
如图4所示,层1有三个本地区域,每个区域内都有基站和对应的边缘计算服务器,层2是由交换机和对应的边缘计算服务器组成的云端网络。
首先,建立软件定义云边协同网络。具体描述如下:
(1)根据云边协同网络的可编程特点,基于软件嵌入网络节点模式,融合OpenFlow代理商的编程网络节点,例如图中的可编程节点1、2、3、4、5、6、7、8、9;
(2)根据节点间相互连接的特点,通过采用OpenFlow扩展协议的传输平面与控制平面相分离原则,由软件定义的中心控制器控管每个节点,建立软件定义云边协同网络。
其次,建立业务服务需求。具体描述如下:
(1)通过OpenFlow扩展协议对云边协同网络进行初始化,获取网络的资源信息和网络拓扑信息;
(2)通过基站发出用户请求,如图3①表示;
(3)通过中心控制器,可以感知用户请求,判断对应用户请求的处理位置,通过OpenFlow扩展协议的发出命令集,如图3②表示,假设需要在节点1到3之间建立传输路径;
(4)通过OpenFlow扩展协议的中心控制器来计算满足用户请求的K条路径,根据实施例1中的公式分别计算K条路径的发送能耗、节点能耗和计算能耗总和,并将K条路径的能耗和路径负载信息反馈到中央控制器中,最终先择负载和能耗相对最优的路径作为用户请求的工作路径1-3,如图3③表示;
(5)由可编程节点A和C发现响应命令,告知中心控制器,如图3④表示,用户请求的路径建立成功,可以进行服务需求的数据业务传输,完成数据传输后,释放资源并将连接请求建立的路径进行信息清除;
(6)通过OpenFlow扩展协议对云边协同网络的网络资源信息和网络拓扑信息进行更新。
为了建立软件定义云边协同网络,承载用户请求的数据传输,保证用户请求在软件定义云边协同网络中安全高效运行,其核心在于网络节点引入可编程功能,通过基于OpenFlow扩展协议的集中控制器,可以对整个软件定义云边协同网络进行实时状态监控。根据应用服务的属性需求,建立云边协同网络的传输路径,完成业务需求的端到端传输。
为了快速完成云边协同网络与统一云边协同网络资源调度功能,增加云边协同网络节点的可编程性,通过软件接入的方式进行动态管理,保证云边协同网络功能与资源能够通过OpenFlow扩展协议进行集中控制与管理,简化云边协同网络的资源调度与优化问题,实现软件定义云边协同网络能耗优化方法。
本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(Random AccessMemory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD)等;所述存储介质还可以包括上述种类的存储器的组合。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下作出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。