本发明涉及一种云计算系统的任务调度,更特别地说,是指一种面向光矩阵网络的资源任务调度方法。
背景技术:
云计算(Clond Computing)是网格计算(Grid Computing)、分布式计算(Distributed Computing)、并行计算(Parallel Computing)、效用计算(Utility Computing)网络存储(Network Storage Technologies)、虚拟化(Virtualization)、负载均衡(Load Balance)等传统计算机技术和网络技术发展融合的产物。它旨在通过网络把多个成本相对较低的计算实体整合成一个具有强大计算能力的完美系统,并借助SaaS、PaaS、IaaS、MSP等先进的商业模式把这强大的计算能力分布到终端用户手中。Clond Computing的一个核心理念就是通过不断提高“云”的处理能力,进而减少用户终端的处理负担,最终使用户终端简化成一个单纯的输入输出设备,并能按需享受“云”的强大计算处理能力。
云计算(Clond Computing)的体系结构中,云计算分为四层:物理资源、资源池、管理中间件、SOA层。参考《云计算应用技术》,万川梅,第10页,2013年8月第1版。云计算体系结构图下文为图1所示,中间件管理层主要负责资源的管理、任务的调度、用户管理和安全管理等。其中,资源的调度问题是资源管理中的核心问题。
当前,随着云计算的应用和发展,作为云的支撑基础的数据中心的规模也在逐渐增大。为了实现网络的灵活组网,提高资源的利用率,数据中心往往采用光交换矩阵来连接设备,以实现设备之间的连通。而光矩阵的加入,使得物理网络具有不确定性,不同设备的同种类型端口之间均可认为能实现连通。当设备的数量成千上万时,如何调度物理资源以快速准确地实现用户需求,是最基础也是最核心的问题之一。现有的方法主要为两种:
1)通过算法实现找到可满足条件的设备及端口(一般为多个),人工对当前物理网络的状态进行判断,以选择合适的设备,再按照这种模式继续匹配其他的设备,以满足节点和边的限制约束及网络拓扑属性。这个过程需要人脑通过对物理网络的判断加以选择,这个选择费时费力,且不能保证正确性。
2)基于子图同构的思想,按照广度优先的方式来搜索物理网络中可满足条件的物理子网,会不断地回溯以找到合适的节点及链路。同时,在搜索满足条件的物理子网时,需要对不确定的物理网络的拓扑的多样性进行分析,这个过程使得问题变得更加复杂。在这种情况下,需要研究人员来寻找改进的突破点,以提高正确率和效率。
上述两种方法均存在时间复杂度过高,不适合现有云计算中对资源的调度。
光传输交换平台(又称为光矩阵)是视频监控系统的新型产品。光传输交换平台不是模拟矩阵,而是包括了传统(视频、数据)光端机+模拟矩阵+视频编解码器+视频综合管理软件+光端机网管软件等众多功能的设备,其交换不是通过模拟电开关实现,而是采用全数字光纤传输与交换的方式来实现。光传输交换平台与普通的一体化矩阵、模块化矩阵在系统组网、设备配套,系统可扩性、系统可靠性等方面均有不同。作为多输入输出端口的光矩阵设备,如何快捷地实现云计算系统中资源的自动化调度,是亟待解决灵活组网的问题。
技术实现要素:
本发明提出了一种可应用于通过光矩阵设备实现灵活组网的云数据中心的资源任务调度的方法,该方法基于虚拟网络映射技术,运用贪婪策略优先映射非占用端口多的虚拟设备,以完成设备映射;然后再依赖于光矩阵设备的属性优势,快速完成虚拟设备之间的链路映射,从而找到满足用户需求的物理子网络。在云计算中,由于存在光矩阵设备,导致了云计算中共享的物理网络具有多样性,本发明方法能够更快捷地实现资源的自动化调度,且保证了正确率,使得云数据中心的工作人员的工作量得以降低。
本发明是一种面向光矩阵网络的资源任务调度方法,所述资源任务调度方法包括有下列四个步骤:
步骤一:将云计算体系中的网络设备与光矩阵设备进行组网;
所述云计算体系中的网络设备是光矩阵设备、路由器、服务器和/或交换机;
步骤二:依据用户需求生成虚拟请求网络;
步骤三:生成与虚拟请求网络逻辑同构的物理子网;
步骤四:将步骤三获得的物理子网反馈给用户;
所述生成的虚拟请求网络包括有NR、LR和采用集合形式记为GR表示虚拟请求网络;NR表示属于虚拟请求网络GR中虚拟设备的集合;表示属于NR的虚拟设备属性的集合;LR表示属于虚拟请求网络GR中虚拟链路的集合;表示属于LR的虚拟链路属性的集合;
在步骤三中,是将虚拟请求网络映射到光矩阵网络中,以完成虚拟请求网络所代表的资源任务调度,从而获得与虚拟请求网络逻辑同构的物理子网;
资源任务调度是对由用户需求生成的虚拟请求网络GR通过调用实验平台这个物理网络中的相应的设备及资源,生成同构于反映用户需求的虚拟请求网络的子物理网络以用于开展用户所需的实验;用形式化语言可描述为GR→GS′,其中,有效的调度需满足所选择的子物理网络GS′和虚拟请求网络GR的设备的属性、链路的属性及设备之间的连接关系保持一致性;
所述资源任务调度包括有设备映射步骤和链路映射步骤。
在本发明中的所述资源任务调度的设备映射步骤为;
步骤1-1,对物理网络GS中属于NS的任意一物理设备s表示物理设备的标志,计算所述物理设备的输入端口数量Mk和输出端口数量Wk,以及计算所述设备的非占用端口个数有
步骤1-2,对虚拟请求网络GR中属于NR的任意一虚拟设备r表示虚拟设备的标志,计算所述虚拟设备的输入端口数量Mk′和输出端口数量Wk′,以及计算所述虚拟设备的非占用端口个数有
步骤1-3,按照步骤1-1对物理网络GS中所有物理设备按照非占用端口个数进行降序排序,得到排序后物理设备表示对NS按照非占用端口个数降序排序的物理设备集;
步骤1-4,按照步骤1-2对虚拟请求网络GR中所有虚拟设备按照非占用端口个数进行降序排序,得到排序后虚拟设备表示对NR按照非占用端口个数降序排序的虚拟设备集;
步骤1-5,将经步骤1-4处理后的按序依次映射到经步骤1-3处理后的上,对属于中的任意一个虚拟设备依据设备映射条件进行与属于中的物理设备进行一一映射,获得满足设备映射条件的物理设备集
若属于的有一个虚拟设备不能找到满足设备映射条件的物理设备,则记为空;需等待物理网络GS释放足够的资源,才能进入下一周期的设备映射;若不为空,则表明所有属于NR的虚拟设备均完成映射,记录映射结果,并进入链路映射阶段。
所述设备映射条件为
采用步骤1-5的处理,是为了满足待映射的物理设备与虚拟设备为同种类型的设备,且任意待映射的物理设备的非占用端口个数大于等于虚拟设备的非占用端口个数;且虚拟设备的非占用端口的属性能够被该物理设备满足,即成立。
在本发明中的所述资源任务调度的链路映射步骤为;
步骤2-1,判断和的所连接的光矩阵编号是否相同,若和的所连接的光矩阵编号相同,设为OMEx,则认为虚拟链路为映射成功,链路映射的结果记为若和的所连接的光矩阵编号不同,则进入步骤2-2;
步骤2-2,若所映射的物理设备和的所连接光矩阵编号不同,设为OMEx-1和OMEx+1,设光矩阵OMEx-1和OMEx+1之间所连接的链路个数记为q′;则需要判断光矩阵OMEx-1和OMEx+1之间所连接的链路个数q′是否大于等于虚拟链路的个数q,即q′≥q;若q′≥q,则认为虚拟链路为映射成功,链路映射的结果记为若q′<q,则虚拟链路为映射失败,返回映射失败。
本发明一种面向光矩阵网络的资源任务调度方法的优点在于:
①通过光矩阵网络和其他网络设备组网来构建物理网络,并将光矩阵设备当作一般网络设备处理,从而将物理网络确定化,减少了物理链路预处理的过程,提高了灵活组网的效率。
②利用虚拟网络映射的方法,并结合光矩阵的工作原理,以及运用贪婪策略优先映射非占用端口多的虚拟设备,协调了设备映射和链路映射过程,使得能够迅速在云数据中心中完成设备映射过程和链路映射过程,达到资源的自动化调度。
③在设备映射条件下进行虚拟设备的映射,充分利用了设备的类型及端口属性,在云计算体系下能够快速找到满足虚拟设备属性约束的物理设备。
④在虚拟链路属性约束条件下进行虚拟链路的映射,充分利用了光矩阵和网络设备互连的关系。将设备映射和链路映射有机结合,达到在满足虚拟设备属性约束的物理设备之间的物理链路的快速匹配。
附图说明
图1是传统云计算体系结构图。
图2是本发明物理网络的连接示意图。
图3是本发明虚拟请求网络的连接示意图。
图4是本发明依据物理网络与虚拟请求网络构建物理子网的流程图。
图5是本发明设备映射与链路映射的流程图。
具体实施方式
下面将结合附图和实施例对本发明做进一步的详细说明。
光矩阵网络:
参见图2所示,在本发明中,多个光矩阵设备(Optical Matrix Equipment)构成了光矩阵网络(Optical Matrix Network)。光矩阵网络记为OMN,光矩阵设备记为OME,X个光矩阵设备OME构成一个光矩阵网络OMN。任意一个光矩阵设备记为OMEx,x表示光矩阵设备的标识号,x∈X。采用集合形式表示光矩阵网络,即OMN={OME1,OME2,…,OMEx-1,OMEx,OMEx+1,…,OMEX}。
OME1表示光矩阵网络中的第一个光矩阵设备。
OME2表示光矩阵网络中的第二个光矩阵设备。
OMEx表示光矩阵网络中的任意一个光矩阵设备。
OMEx-1表示光矩阵网络中与OMEx相邻的一个光矩阵设备,简称为前一个光矩阵设备。
OMEx+1表示光矩阵网络中与OMEx相邻的另一个光矩阵设备,简称为后一个光矩阵设备。
OMEX表示光矩阵网络中的最后一个光矩阵设备。
任意一个光矩阵设备OMEx上设有相同个数的输入端口和输出端口,即输入端口的总数记为Y,任意一个输入端口记为y;输出端口的总数记为Z,任意一个输出端口记为z,且Y=Z;
采用集合形式表示任意一个光矩阵设备OMEx上的输入端口记为
表示光矩阵设备OMEx上的第一个输入端口;
表示光矩阵设备OMEx上的第二个输入端口;
表示光矩阵设备OMEx上的任意一个输入端口;
表示光矩阵设备OMEx上与相邻的一个输入端口,简称为前一个输入端口;
表示光矩阵设备OMEx上与相邻的另一个输入端口,简称为后一个输入端口;
表示光矩阵设备OMEx上的最后一个输入端口;
采用集合形式表示任意一个光矩阵设备OMEx上的输出端口记为
表示光矩阵设备OMEx上的第一个输出端口;
表示光矩阵设备OMEx上的第二个输出端口;
表示光矩阵设备OMEx上的任意一个输出端口;
表示光矩阵设备OMEx上与相邻的一个输出端口,简称为前一个输出端口;
表示光矩阵设备OMEx上与相邻的另一个输出端口,简称为后一个输出端口;
表示光矩阵设备OMEx上的最后一个输出端口。
物理网络(substrate network):
在云计算系统中,构建了如图2所示的物理网络,所述物理网络采用有向带权图来表示。所述云计算体系中的网络设备可以是光矩阵设备、路由器、服务器和交换机。物理网络是由光矩阵设备、路由器、服务器和/或交换机组成。
在本发明中,物理网络是由光矩阵网络和其他非光矩阵设备连接所组成的网络,采用集合形式表示物理网络记为S表示物理网络的标志,GS表示物理网络;NS表示属于物理网络GS中物理设备的集合;表示属于NS的物理设备属性的集合;LS表示属于物理网络GS中物理链路的集合;表示属于LS的物理链路属性的集合。下面依次介绍以上四个集合。
NS表示属于物理网络GS中物理设备的集合。假设物理网络GS共有K个设备,k表示任意一物理设备的标识号,k∈K。
表示物理网络中的第一个物理设备。
表示物理网络中的第二个物理设备。
表示物理网络中的任意一个物理设备。
表示物理网络中的与相邻的一个物理设备,简称为前一个物理设备。
表示物理网络中的与相邻的另一个物理设备,简称为后一个物理设备。
表示物理网络中的最后一个物理设备。
由于每个物理设备上的端口数量不一定相同,同一个物理设备的输入端口和输出端口不一定相同。在本发明中,假设属于NS中的所有物理设备的最大输入端口数量记为M,m表示输入端口的标识号,任意一个物理设备的输入端口数量记为Mk,对于k≤K,有Mk≤M恒成立。采用集合形式表示任意一个物理设备上的输入端口,记为
表示物理设备上的第一个输入端口;
表示物理设备上的第二个输入端口;
表示物理设备上的任意一个输入端口;
表示物理设备上与相邻的一个输入端口,记为前一个输入端口;
表示物理设备上与相邻的另一个输入端口,记为后一个输入端口;
表示物理设备上的最后一个输入端口。
假设属于NS中的所有物理设备的最大输出端口数量记为W,w表示输出端口的标识号,任意一个物理设备的输出端口数量记为Wk,对于k≤K,有Wk≤W恒成立。采用集合形式表示任意一个物理设备上的输出端口,记为
表示物理设备上的第一个输出端口;
表示物理设备上的第二个输出端口;
表示物理设备上的任意一个输出端口;
表示物理设备上与相邻的一个输出端口,记为前一个输出端口;
表示物理设备上与相邻的另一个输出端口,记为后一个输出端口;
表示物理设备上的最后一个输入端口。
表示属于NS的物理设备属性的集合。在本发明中,Type表示所述物理网络中的物理设备的类型、Num表示所述物理网络中物理设备非占用端口的个数和Attribute表示所述物理网络中物理设备的非占用端口的属性。对于任意一个物理设备的非占用端口个数Num的最大值记为Mk+Wk。
参见图2所示,举例,Type包括有光矩阵设备、路由器、服务器和交换机,在编程语言中可记为Type∈{0,1,2,3}。将Type=0记为光矩阵设备,将Type=1记为路由器,将Type=2记为服务器,将Type=3记为交换机。举例,端口的类别包括GE(Gigabit Ethernet)接口和GPOS(Gigabit Packet Over SONET/SDH)接口,GE接口传输的是以太网数据包,GPOS接口传输的是SDH数据包。Attribute包括有10GE,10GPOS,100GE,2.5GPOS。可记为Attribute∈{0,1,2,3},Attribute=0记为10GE端口,Attribute=1记为10GPOS端口,Attribute=2记为100GE端口,Attribute=3记为2.5GPOS端口。
Gigabit Ethernet译文为千兆以太网。
Gigabit Packet Over SONET(synchronous optical network)译文为千兆同步光纤网标准数据包。
Gigabit Packet Over SDH(synchronous digital hierarchy)译文为千兆同步数字系列标准数据包。
用表示所述的物理设备类型,用表示所述的物理设备非占用端口的个数,表示所述的任意一个输入端口的属性,表示所述的任意一个输出端口的属性。举例,若则表示第一个物理设备的类型为路由器,表示第一个物理设备的非占用端口的个数为2,表示第一个物理设备的第一个输入端口为10GPOS端口,表示第一个物理设备的第一个输出端口为10GE端口。
LS表示属于物理网络GS中物理链路的集合。在本发明中,采用集合形式来表示链路,假设共有T条链路,t表示物理链路的标识号,则
表示物理网络中的第一条物理链路。举例,是指由物理设备与物理设备构成的物理链路,其中,为输出端,为输入端。
表示物理网络中的第二条物理链路。举例,是指由物理设备与物理设备构成的物理链路,其中,为输出端,为输入端。
表示物理网络中的任意一条物理链路。举例,是指由物理设备与物理设备构成的物理链路,其中,为输出端,为输入端。或者是指由物理设备与物理设备构成的物理链路,其中,为输出端,为输入端。
表示物理网络中与相邻的一条物理链路,简称为前一条物理链路。
表示物理网络中与相邻的另一条物理链路,简称为后一条物理链路。
表示物理网络中的最后一条物理链路。
其中,由于物理网络GS中的链路是有方向的,即:若则表示和所连的两个端点相同,但不为同一条链路,且链路属性之间也无限制关系。
表示属于LS的物理链路属性的集合。在本发明中,包含的元素与所述中的Attribute集的元素相同,若选取有如上述举例中,Attribute包括有10GE,10GPOS,100GE,2.5GPOS,可记为Attribute∈{0,1,2,3},Attribute=0记为10GE端口,Attribute=1记为10GPOS端口,Attribute=2记为100GE端口,Attribute=3记为2.5GPOS端口。此时,若表示物理链路的属性为10GE,组成物理链路的两端和的所用端口的属性也为10GE。
虚拟请求网络:
在本发明中,虚拟请求网络类似于物理网络的描述,采用集合形式来描述虚拟请求网络记为R表示虚拟请求网络的标志,GR表示虚拟请求网络;NR表示属于虚拟请求网络GR中虚拟设备的集合;表示属于NR的虚拟设备属性的集合;LR表示属于虚拟请求网络GR中虚拟链路的集合;表示属于LR的虚拟链路属性的集合。下面依次介绍以上四个集合。
NR表示属于虚拟请求网络GR中虚拟设备的集合。假设虚拟请求网络GR共有K′个设备,k′表示任意一虚拟设备的标识号,k′∈K′。
表示虚拟请求网络中的第一个虚拟设备。
表示虚拟请求网络中的第二个虚拟设备。
表示虚拟请求网络中的任意一个虚拟设备。
表示虚拟请求网络中的与相邻的一个虚拟设备,简称为前一个虚拟设备。
表示虚拟请求网络中的与相邻的另一个虚拟设备,简称为后一个虚拟设备。
表示虚拟请求网络中的最后一个虚拟设备。
由于每个虚拟设备上的端口数量不一定相同,同一个设备的输入端口和输出端口不一定相同。在本发明中,假设属于NR中的所有虚拟设备的最大输入端口数量记为M′,m′表示输入端口的标识号,任意一个虚拟设备的输入端口数量记为Mk′,对于k′≤K′,有Mk′≤M′恒成立。采用集合形式表示任意一个虚拟设备上的输入端口,记为
表示虚拟设备上的第一个输入端口;
表示虚拟设备上的第二个输入端口;
表示虚拟设备上的任意一个输入端口;
表示虚拟设备上与相邻的一个输入端口,记为前一个输入端口;
表示虚拟设备上与相邻的另一个输入端口,记为后一个输入端口;
表示虚拟设备上的最后一个输入端口。
假设属于NR中的所有虚拟设备的最大输出端口数量为W′,任意一个虚拟设备的输出端口数量为Wk′,对于k′≤K′,有Wk′≤W′恒成立。采用集合形式表示任意一个虚拟设备上的输出端口,记为
表示虚拟设备上的第一个输出端口;
表示虚拟设备上的第二个输出端口;
表示虚拟设备上的任意一个输出端口;
表示虚拟设备上与相邻的一个输出端口,记为前一个输出端口;
表示虚拟设备上与相邻的另一个输出端口,记为后一个输出端口;
表示虚拟设备上的最后一个输入端口。
表示属于NR的虚拟设备属性的集合。在本发明中,Type′表示所述虚拟请求网络中的虚拟设备的类型、Num表示所述虚拟请求网络中虚拟设备非占用端口的个数和Attribute所述虚拟请求网络中虚拟设备的非占用端口的属性。对于任意一个虚拟设备NR的非占用端口个数Num的最大值为Mk′+Wk′。
参见图3所示,举例,Type′包括有路由器、服务器和交换机,编程语言可记为Type′∈{1,2,3}。将Type′=1记为路由器,将Type′=2记为服务器,将Type′=3记为交换机。举例,端口的类别包括GE(Gigabit Ethernet)接口和GPOS(Gigabit Packet Over SONET/SDH)接口,GE接口传输的是以太网数据包,GPOS接口传输的是SDH数据包。Attribute包括有10GE,10GPOS,100GE,2.5GPOS,可记为Attribute∈{0,1,2,3},Attribute=0记为10GE端口,Attribute=1记为10GPOS端口,Attribute=2记为100GE端口,Attribute=3记为2.5GPOS端口。
用表示所述的虚拟设备类型,用表示所述虚拟设备的非占用端口的个数,表示所述的任意一个输入端口的属性,表示所述的任意一个输出端口的属性。举例,若则表示第一个虚拟设备的类型为路由器,表示第一个虚拟设备的非占用端口的个数为2,表示第一个虚拟设备的第一个输出端口为10GE端口。
LR表示属于虚拟请求网络GR中虚拟链路的集合。在本发明中,采用集合形式来表示链路,假设共有T′条链路,t′表示虚拟链路的标识号,则
表示虚拟请求网络中的第一条虚拟链路。举例,是指由物理设备与物理设备构成的物理链路,其中,为输出端,为输入端。
表示虚拟请求网络中的第二条虚拟链路。举例,是指由物理设备与物理设备构成的物理链路,其中,为输出端,为输入端。
表示虚拟请求网络中的任意一条虚拟链路。举例,是指由物理设备与物理设备构成的物理链路,其中,为输出端,为输入端。或者是指由物理设备与物理设备构成的物理链路,其中,为输出端,为输入端。
表示虚拟请求网络中与相邻的一条虚拟链路,简称为前一条虚拟链路。
表示虚拟请求网络中与相邻的另一条虚拟链路,简称为后一条虚拟链路。
表示虚拟请求网络中的最好一条虚拟链路。
其中,由于虚拟请求网络GR中的链路是有方向的,即:若则表示和所连的两个端点相同,但不为同一条链路,且链路属性之间也无限制关系。
表示属于LR的虚拟链路属性的集合。在本发明中,包含的元素与所述中的Attribute集的元素相同,若选取有如上述举例中,Attribute包括有10GE,10GPOS,100GE,2.5GPOS,可记为Attribute∈{0,1,2,3},Attribute=0记为10GE端口,Attribute=1记为10GPOS端口,Attribute=2记为100GE端口,Attribute=3记为2.5GPOS端口。此时,若表示虚拟链路的属性为10GE,组成虚拟链路的两端和的所用端口的属性也为10GE。
参见图4所示,本发明提出了一种面向光矩阵网络的资源任务调度方法,其包括有下列步骤:
步骤一:将云计算体系中的网络设备与光矩阵设备进行组网;
所述云计算体系中的网络设备是光矩阵设备、路由器、服务器和/或交换机。
步骤二:依据用户需求生成虚拟请求网络;
虚拟请求网络记为GR表示虚拟请求网络;NR表示属于虚拟请求网络GR中虚拟设备的集合;表示属于NR的虚拟设备属性的集合;LR表示属于虚拟请求网络GR中虚拟链路的集合;表示属于LR的虚拟链路属性的集合。
步骤三:将虚拟请求网络映射到光矩阵网络中,以完成虚拟请求网络所代表的资源任务调度,从而获得与虚拟请求网络逻辑同构的物理子网;
在本发明中,资源任务调度问题是指针对由用户需求生成的虚拟请求网络通过调用实验平台这个物理网络中的相应的设备及资源,生成同构于反映用户需求的虚拟请求网络的物理子网络以用于开展用户所需的实验。用形式化语言可描述为GR→GS′,其中,有效的调度需满足所选择的物理子网络GS′和虚拟请求网络GR的设备的属性、链路的属性及设备之间的连接关系保持一致性。
中,GS′表示物理子网络;NS′表示属于GS′中物理设备的集合;表示属于NS′的物理设备属性的集合;LS′表示属于GS′中物理链路的集合;表示属于LS′的物理链路属性的集合。
所述资源任务调度包括有设备映射步骤和链路映射步骤。
步骤四:将步骤三获得的物理子网反馈给用户。
在本发明的步骤三的处理过程中,将虚拟请求网络映射到光矩阵网络过程中,是对于属于同一个虚拟请求网络GR的设备集NR中的两个不同的虚拟设备,记为和r表示虚拟设备的标志,则和所映射的物理设备应不相同。举例,将映射的物理设备记为s表示物理设备的标志,将所映射的物理设备记为
对于任意一虚拟设备设其所映射的物理设备则的属性约束与的属性约束需满足
对于任意一虚拟链路设设其所映射的物理链路则的虚拟链路属性约束与的物理链路属性约束需满足
该式也可以等价于:
在本发明中,将虚拟网络映射的有关研究和光矩阵的工作原理相结合,提出了一种将设备映射和链路映射分开进行的资源调度方法。参见图5所示,为了最大限度地利用云计算体系的物理资源,提高映射请求网络的接受率,本资源调度方法以节省光矩阵的端口的利用率为出发点,优先选择在同一个光矩阵内部可匹配的物理设备。由于光矩阵的布线是按照端口类别来分类的,则可根据类别来搜索可满足条件的物理设备。
在本发明中,资源任务调度包括有设备映射步骤和链路映射步骤。
所述设备映射步骤为:
步骤1-1,对物理网络GS中属于NS的任意一物理设备计算所述物理设备的输入端口数量Mk和输出端口数量Wk,以及计算所述设备的非占用端口个数有
步骤1-2,对虚拟请求网络GR中属于NR的任意一虚拟设备计算所述虚拟设备的输入端口数量Mk′和输出端口数量Wk′,以及计算所述虚拟设备的非占用端口个数有
步骤1-3,按照步骤1-1对物理网络GS中所有物理设备按照非占用端口个数进行降序排序,得到排序后物理设备表示对NS按照非占用端口个数降序排序的物理设备集;
步骤1-4,按照步骤1-2对虚拟请求网络GR中所有虚拟设备按照非占用端口个数进行降序排序,得到排序后虚拟设备表示对NR按照非占用端口个数降序排序的虚拟设备集;
步骤1-5,将经步骤1-4处理后的按序依次映射到经步骤1-3处理后的上,对属于中的任意一个虚拟设备依据设备映射条件进行与属于中的物理设备进行一一映射,获得满足设备映射条件的物理设备集
表示依据设备映射条件匹配映射的物理设备集;
表示属于的依据设备映射条件匹配映射的物理设备;
表示属于的依据设备映射条件匹配映射的物理设备;
表示属于的依据设备映射条件匹配映射的物理设备;
表示属于的依据设备映射条件匹配映射的物理设备;
表示属于的依据设备映射条件匹配映射的物理设备;
表示属于的依据设备映射条件匹配映射的物理设备;
若属于的有一个虚拟设备不能找到满足设备映射条件的物理设备,则记为空;需等待物理网络GS释放足够的资源,才能进入下一周期的设备映射;若不为空,则表明所有属于NR的虚拟设备均完成映射,记录映射结果,并进入链路映射阶段。
在本发明中,所述设备映射条件为
在本发明中,采用步骤1-5的处理,是为了满足待映射的物理设备与虚拟设备为同种类型的设备,且任意待映射的物理设备的非占用端口个数大于等于虚拟设备的非占用端口个数;且虚拟设备的非占用端口的属性能够被该物理设备满足,即成立。
所述链路映射步骤为:
在本发明中,在链路映射过程是对虚拟设备中每一条虚拟链路进行一一匹配,需判断所述在设备映射中所得的对应的物理链路是否能满足虚拟链路的虚拟链路属性约束条件。
在本发明中,虚拟链路属性约束条件是指任意一条虚拟链路两端的虚拟设备的对应端口、与所述虚拟设备所映射的物理设备的用于构成物理链路的端口属性应保持一致,即
为了方便说明每一条虚拟链路的一一匹配过程,以虚拟请求网络GR中属于LR的任一虚拟链路(按虚拟链路的编号顺序),查找可以满足的虚拟链路属性约束条件的物理链路若设与之间的链路个数为q,根据设备映射处理所返回的结果,假设和
步骤2-1,判断和的所连接的光矩阵编号是否相同,若和的所连接的光矩阵编号相同,设为OMEx,则认为虚拟链路为映射成功,链路映射的结果记为若和的所连接的光矩阵编号不同,则进入步骤2-2;
步骤2-2,若所映射的物理设备和的所连接光矩阵编号不同,设为OMEx-1和OMEx+1,设光矩阵OMEx-1和OMEx+1之间所连接的链路个数记为q′;则需要判断光矩阵OMEx-1和OMEx+1之间所连接的链路个数q′是否大于等于虚拟链路的个数q,即q′≥q;若q′≥q,则认为虚拟链路为映射成功,链路映射的结果记为若q′<q,则虚拟链路为映射失败,返回映射失败。
本发明是一种面向光矩阵网络的资源任务调度方法,所要解决的是如何利用光矩阵网络设备实现云计算体系中灵活组网的技术问题,该方法通过资源任务调度中的设备映射和链路映射来快速匹配满足用户需求的物理子网的技术手段,从而提高映射请求网络的接受率,实现对光矩阵网络的资源自动化调度的技术效果。