CN113032096A - 一种基于节点重要性与用户需求双感知的sfc映射方法 - Google Patents
一种基于节点重要性与用户需求双感知的sfc映射方法 Download PDFInfo
- Publication number
- CN113032096A CN113032096A CN202110287756.9A CN202110287756A CN113032096A CN 113032096 A CN113032096 A CN 113032096A CN 202110287756 A CN202110287756 A CN 202110287756A CN 113032096 A CN113032096 A CN 113032096A
- Authority
- CN
- China
- Prior art keywords
- virtual network
- network function
- node
- vnf
- service
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
Abstract
本发明公开一种基于节点重要性与用户需求双感知的SFC映射方法,包括:获取物理网络信息与用户业务请求信息;预处理物理网络信息与用户业务请求信息;选取待处理业务的业务部署路径;根据待处理业务的业务部署路径映射用户业务请求信息中的依赖性虚拟网络功能VNF对;根据待处理业务的业务部署路径映射用户业务请求信息中的无依赖性虚拟网络功能VNF;根据业务请求虚拟网络功能VNF集合的映射情况映射用户业务请求信息中的每条虚拟链路。本发明在映射业务请求虚拟网络功能VNF时,分配网络资源方法可感知用户需求和网络节点重要性,从而提高用户请求的接受率,并尽可能多地重用物理网络中已有虚拟网络功能VNF,减少部署业务请求的虚拟网络功能VNF实例数。
Description
技术领域
本发明属于通信技术领域,具体涉及一种基于节点重要性与用户需求双感知的SFC映射方法。
背景技术
虚拟化技术近年来迅猛发展,网络功能虚拟化(Network FunctionVirtualization,简称NFV)技术已得到学术界和IT业界的广泛关注。网络功能虚拟化技术将处理数据包的网络功能从硬件中间盒子middle box映射到运行在x86架构服务器中的软件中间盒子middle box上,运行在软件中间盒子middle box上的网络功能称为虚拟网络功能(Virtual Network Function,简称VNF),这使得每个中间盒子middle box都可以分别灵活部署,完成软件与硬件的解耦,使得应用部署更加灵活,具有弹性的特点。随着诸如云计算与虚拟现实等新服务模式的不断出现以及对网络服务(例如高分辨率视频)的苛刻的服务质量(Quality of Service,简称QoS)要求,网络流量呈指数增长,这些巨大的流量要求网络运营商提高业务的适配性与服务效率,因此针对用户的需求来提供服务是当前的研究热点。
Ma Wenrui等研究者在其发表的论文“Traffic aware placement ofinterdependent NFV middleboxes,IEEE Conference on Computer Communications(IEEE INFOCOM).2017.pp.1-9”中公开了一种服务功能链SFC构建方法,该方法考虑到了业务请求中的虚拟网络功能VNF的带宽改变因子与虚拟网络功能VNF之间的依赖关系来映射服务功能链(Service Function Chain,简称SFC),网络功能可能会对业务流的带宽占用产生影响,例如,防火墙会丢弃特定的数据包从而导致流出防火墙的带宽占用小于流入的带宽占用;网络功能的带宽改变因子表示流出网络功能带宽与流入网络功能带宽之比。虚拟网络功能VNF之间的依赖关系表示有些虚拟网络功能VNF之间需要按照特定的顺序执行,例如数据流会先流经防火墙再进入数据包检测环节;文章根据所提的最小优先最大最后(Least-First-Greatest-Last,简称LFGL)方法在候选路径上部署已经构建的服务功能链SFC;Moens H和Turck F D在其发表的论文“VNF-P:A model for efficient placement ofvirtualized network functions,10th International Conference on Network andService Management(CNSM)and Workshop.2014.pp.418-423”中对网络功能虚拟化NFV中的业务请求不均匀场景中的服务功能链SFC映射问题进行求解,文中提出一种精确算法,利用CPLEX软件在5节点拓扑中根据需求部署服务功能链SFC。
但是,第一种方法存在的不足是在网络中平均部署服务器资源,没有考虑客户请求资源的差异性,导致资源利用率较低,且需要额外的成本;第二种方法存在的不足是服务功能链SFC部署问题已被证明是一个NP难问题,因此精确算法无法应用于大中型网络中,不具有普适性。
发明内容
为了解决现有技术中存在的上述问题,本发明提供了一种基于节点重要性与用户需求双感知的SFC映射方法。
本发明的一个实施例提供了一种基于节点重要性与用户需求双感知的SFC映射方法,包括以下步骤:
S1、获取物理网络信息、用户业务请求信息,其中,所述物理网络信息包括已有虚拟网络功能VNF集合,所述用户业务请求信息包括业务请求虚拟网络功能VNF集合,所述业务请求虚拟网络功能VNF集合包括依赖性虚拟网络功能VNF对、无依赖性虚拟网络功能VNF;
S2、对所述物理网络信息进行预处理;
S3、对所述用户业务请求信息进行预处理;
S4、选取待处理业务的业务部署路径;
S5、根据所述待处理业务的业务部署路径映射所述业务请求虚拟网络功能VNF集合中的依赖性虚拟网络功能VNF对;
S6、根据所述待处理业务的业务部署路径映射所述业务请求虚拟网络功能VNF集合中的无依赖性虚拟网络功能VNF;
S7、根据所述业务请求虚拟网络功能VNF集合的映射情况映射得到所述用户业务请求信息对应的每条虚拟链路,以实现SFC映射。
在本发明的一个实施例中,S2对所述物理网络信息进行预处理包括:
S2.1、从物理网络的节点中筛选出连接有x86架构服务器的所有节点,将所有节点作为所述物理网络信息中的已有虚拟网络功能VNF集合;
S2.2、采用前K条最短路径算法,计算物理网络中每两节点间的前k条最短路径,0<k≤K,K为大于0的整数;
S2.3、遍历计算得到的所有最短路,根据节点拓扑权重计算方程计算各节点的拓扑权重,并将所述各节点的拓扑权重记录下来。
在本发明的一个实施例中,S2.3中节点拓扑权重计算方程表示为:
其中,m表示当前第m个节点,wtopo,m表示计算得到的第m个节点的拓扑权重,w0,m表示计算时设置的第m个节点的初始权重,ks,d表示从源节点s到目的节点d的跳数相同的最短路数目k,pm s,d表示布尔变量,vm∈V表示从源节点s到目的节点d的路径上的任意一节点,V表示从源节点s到目的节点d的路径所有节点集合,则pm s,d为1,否则pm s,d为0。
在本发明的一个实施例中,S3对所述用户业务请求信息进行预处理包括:
S3.1、遍历所有业务请求信息,并记录各业务请求信息中的源节点与目的节点信息,根据节点业务权重计算方程计算各节点的占比得出各节点的业务权重;
S3.2、所述各节点的业务权重与所述各节点的拓扑权重进行加权计算,得出各节点在物理网络中的权重;
S3.3、根据所述各节点在物理网络中的权重对所有业务进行排序,将含有依赖性虚拟网络功能VNF的业务请求信息放在前面优先部署在物理网络中。
在本发明的一个实施例中,S3.1中节点业务权重计算方程表示为:
在本发明的一个实施例中,S4选取待处理业务的业务部署路径包括:
S4.1、从物理网络中每两个节点间的前K条最短路径中选取业务源、宿节点间前k条最短路径作为候选路径;
S4.2、分别计算每条候选路径上已有虚拟网络功能VNF集合与业务请求虚拟网络功能VNF集合的交集;
S4.3、选取最大交集对应的候选路径作为业务部署路径。
在本发明的一个实施例中,S5根据所述待处理业务的业务部署路径映射所述用户业务请求信息中的每个依赖性虚拟网络功能VNF对包括:
S5.1、从所述业务请求虚拟网络功能VNF集合中任意选取一个依赖性虚拟网络功能VNF对,将选取的依赖性虚拟网络功能VNF对从所述业务请求虚拟网络功能VNF集合中删除;
S5.2、判断所述业务部署路径上是否已存在依赖性虚拟网络功能VNF对中的两个已知虚拟网络功能VNF,若是,则执行S5.3,否则,执行S5.4;
S5.3、使用最多重用两个的依赖性虚拟网络功能VNF对的映射方法,在所述业务部署路径上映射选取的依赖性虚拟网络功能VNF对,并执行S5.7;
S5.4、判断所述业务部署路径上是否仅存在依赖性虚拟网络功能VNF对中的一个虚拟网络功能VNF,若是,则执行S5.5,否则,执行S5.6;
S5.5、使用最多重用一个的依赖性虚拟网络功能VNF对的映射方法,在所述业务部署路径上映射选取的依赖性虚拟网络功能VNF对,并执行S5.7;
S5.6、使用无法重用的依赖性虚拟网络功能VNF对的映射方法,在所述业务部署路径上映射选取的依赖性虚拟网络功能VNF对;
S5.7、判断所述业务请求虚拟网络功能VNF集合中是否仍存在至少一个依赖性虚拟网络功能VNF对,若是,则执行S5.1,否则,完成业务请求虚拟网络功能VNF集合中所有依赖性虚拟网络功能VNF对的映射,并执行S6。
在本发明的一个实施例中,S6根据所述待处理业务的业务部署路径映射所述业务请求虚拟网络功能VNF集合中的无依赖性虚拟网络功能VNF包括:
S6.1、从所述业务请求虚拟网络功能VNF集合中任意选取一个无依赖性虚拟网络功能VNF,判断所述业务部署路径上是否存在选取的无依赖性虚拟网络功能VNF,若是,执行S6.2,否则执行S6.3;
S6.2、将选取的无依赖性虚拟网络功能VNF映射到所述业务部署路径上存在选取的无依赖性虚拟网络功能VNF的服务器节点上,重用选取的无依赖性虚拟网络功能VNF,并执行S6.4;
S6.3、若选取的无依赖性虚拟网络功能VNF的带宽改变因子小于或等于1,则将选取的无依赖性虚拟网络功能VNF映射到最靠近路径前端的服务器节点上,否则,将选取的无依赖性虚拟网络功能VNF映射到最靠近路径末端的服务器节点上;
S6.4、判断所述业务请求虚拟网络功能VNF集合中是否为空,若是,则所有的无依赖性虚拟网络功能VNF映射完成,执行S7,否则,执行S6.1。
在本发明的一个实施例中,S7根据所述业务请求虚拟网络功能VNF集合的映射情况映射得到用户业务请求信息对应的每条虚拟链路,以实现SFC映射包括:
S7.1、从待映射虚拟链路集合中任意选取一条虚拟链路,判断当前选取的虚拟链路两端的业务请求虚拟网络功能VNF是否映射到同一个节点上,若是,执行S7.2,否则,执行S7.3;
S7.2、无需映射当前选取的虚拟链路,执行S7.5;
S7.3、判断当前选取的虚拟链路是否为第一条虚拟链路,若是,则当前选取的虚拟链路上的频隙数由业务请求信息给出,否则,当前选取的虚拟链路上的频隙数为前一条选取的虚拟链路上的频隙数乘上当前选取的虚拟链路起始端业务请求信息中的虚拟网络功能VNF的带宽改变因子;
S7.4、当前选取的虚拟链路两端的业务请求虚拟网络功能VNF映射在的两节点间的前k条最短路径作为候选路径集合,分别在每条候选路径上使用首次命中算法为当前选取的虚拟链路分配频隙,得到k个路由和频谱分配方案,选取使最大频隙号增加最小的一个路由和频谱分配方案,并映射当前选取的虚拟链路;
S7.5、判断所述虚拟链路集合中所有的虚拟链路是否全部映射完成,若是,则执行S7.6,否则,执行S7.1;
S7.6、当前业务请求消息对应的所有虚拟链路的映射完成,以实现SFC映射:
与现有技术相比,本发明的有益效果:
本发明提供的基于节点重要性与用户需求双感知的SFC映射方法,分别采用了选取业务部署路径方法、映射依赖性虚拟网络功能VNF对方法、映射剩余的虚拟网络功能VNF方法,用来在映射虚拟网络功能VNF时,尽可能多地重用网络中已存在的虚拟网络功能VNF,克服了现有技术中由于仅仅考虑了链路带宽资源的成本,而忽略了虚拟网络功能VNF的成本,导致不能减少部署的虚拟网络功能VNF数量,部署业务时需要过多的虚拟网络功能VNF的问题,使得本发明能够减少部署的虚拟网络功能VNF实例数,减少业务部署成本。
以下将结合附图及实施例对本发明做进一步详细说明。
附图说明
图1是本发明实施例提供的一种基于节点重要性与用户需求双感知的SFC映射方法的流程示意图;
图2是本发明实施例提供的一种虚拟网络功能VNF映射前的网络状态示意图;
图3是本发明实施例提供的一种虚拟网络功能VNF映射后的网络状态示意图;
图4是本发明实施例提供的一种虚拟链路映射示意图;
图5是本发明实施例提供的一种仿真采用的NSFNET网络的拓扑结构示意图;
图6是本发明实施例提供的仿真中两种部署方法得到的网络部署中虚拟网络功能VNF数随业务请求数变化的对比示意图;
图7是本发明实施例提供的仿真中两种部署方法得到的最大频隙号随业务请求数变化的对比示意图;
图8是本发明实施例提供的仿真中五种不同比例的节点权重得到的网络中部署的虚拟网络功能VNF数随业务请求数变化的对比示意图;
图9是本发明实施例提供的仿真中五种不同比例的节点权重得到的最大频隙号随业务请求数变化的对比示意图;
图10是本发明实施例提供的仿真中两种资源分配方法得到的业务请求通过率随网络中计算资源总量变化的对比示意图;
图11是本发明实施例提供的仿真中两种算法得到的网络中部署的虚拟网络功能VNF数随业务请求数变化的对比示意图;
图12是本发明实施例提供的仿真中两种算法得到的最大频隙号随业务请求数变化的对比示意图;
图13是本发明实施例提供的仿真中两种算法得到的最大频隙号之差随业务请求数变化的对比示意图。
具体实施方式
下面结合具体实施例对本发明做进一步详细的描述,但本发明的实施方式不限于此。
实施例一
请参见图1,图1是本发明实施例提供的一种基于节点重要性与用户需求双感知的SFC映射方法的流程示意图。本实施例提出了一种基于节点重要性与用户需求双感知的SFC映射方法,该基于节点重要性与用户需求双感知的SFC映射方法包括以下步骤:
S1、获取物理网络信息与用户业务请求信息。
具体而言,本实施例中的虚拟网络功能VNF和服务功能链SFC是指:网络功能虚拟化技术将处理数据包的网络功能从硬件中间盒子middle box映射到运行在x86架构服务器中的软件中间盒子middle box上,运行在软件中间盒子middle box上的网络功能称为虚拟网络功能VNF,多个虚拟网络功能VNF通常按照一个特定的顺序连接构成服务功能链SFC来提供网络业务。本实施例物理网络信息包括已有虚拟网络功能VNF集合,用户业务请求信息包括业务请求虚拟网络功能VNF集合,业务请求虚拟网络功能VNF集合包括依赖性虚拟网络功能VNF对、无依赖性虚拟网络功能VNF。其中,用户业务请求信息除了包括业务请求虚拟网络功能VNF集合,还包括业务请求的源节点与目的节点,以及各虚拟网络功能VNF的带宽改变因子。
S2、对物理网络信息进行预处理。
具体而言,本实施例S2对物理网络信息进行预处理包括:
S2.1、从物理网络的节点中筛选出连接有x86架构服务器的所有节点,将所有节点作为物理网络信息中的已有虚拟网络功能VNF集合。
S2.2、采用前K条最短路径算法,计算物理网络中每两节点间的前k条最短路径,0<k≤K,K为大于0的整数,比如本实施例k取值为3。其中,采用前K条最短路径算法计算物理网络中每两节点间的前k条最短路径的具体S如下:
S2.2.1、在物理网络中任意选取源、宿(源节点、目的节点)两个节点。
S2.2.2、利用迪杰斯特拉Dijkstra算法,计算所选取的源、宿节点间跳数最少的路径作为基准路径。
S2.2.3、将基准路径上除最后一个节点之外的每个节点作为偏离节点,利用迪杰斯特拉Dijkstra算法,计算每个偏离节点到终止节点之间,满足路径无环条件和路径非重复条件的跳数最少路径,将每条跳数最少路径分别与对应的基准路径子路径拼接在一起,构成候选路径集合;其中,基准路径子路径是指,基准路径的源、宿节点间,从源节点依次经过其中间节点到偏离节点的路径;路径无环条件是指,跳数最少路径不能通过基准路径上从源节点到偏离节点之间的任何一个节点;路径非重复条件是指,从跳数最少路径上偏离节点出发的边不能与已找到的任何一条最短路径上从此偏离节点出发的边相同。
S2.2.4、从候选路径集合中选取跳数最少的一条作为两节点间下一条最短路径,将其作为基准路径。
S2.2.5、判断是否已获得两节点间前k条最短路径,若是,则执行S2.2.6,否则,执行S2.2.3。
S2.2.6、判断是否已获得物理网络中每组源、宿两节点间的前k条最短路径,若是,执行S2.2.8,否则,执行S2.2.7。
S2.2.7、在物理网络中任意选取未选取过的源、宿两个节点后执行S2.2.2。
S2.2.8、得到物理网络中每组源、宿两节点间的前k条最短路径。
S2.3、遍历计算得到的所有最短路,根据节点拓扑权重计算方程计算各节点的拓扑权重,并将各节点的拓扑权重记录下来。具体本实施例S2.3中节点拓扑权重计算方程是基于介数中心性提出,节点拓扑权重计算方程表示为:
其中,m表示当前第m个节点,wtopo,m表示计算得到的第m个节点的拓扑权重,w0,m表示计算时设置的第m个节点的初始权重,ks,d表示从用户业务请求信息中的源节点s到目的节点d的跳数相同的最短路数目k,pm s,d表示布尔变量,节点vm∈V在从源节点s到目的节点d的路径上,V表示从源节点s到目的节点d的路径所有节点集合,则pm s,d为1,否则pm s,d为0。
S3、对用户业务请求信息进行预处理。
具体而言,本实施例S3对用户业务请求信息进行预处理包括:
S3.1、遍历所有的业务请求信息,并记录各业务请求信息中的源节点与目的节点(宿节点)信息,根据节点业务权重计算方程计算各节点的占比得出各节点的业务权重。具体本实施例中各节点的业务权重计算方程表示为:
S3.2、各节点的业务权重与各节点的拓扑权重进行加权计算,得出各节点在物理网络中的权重,即节点重要性,具体加权计算得到各节点在物理网络中的权重表示为:
其中,wm表示计算得到的第m个节点在物理网络中的权重,α1和α2均为权重因子,α1+α2=1,α1≥且α2≥。
S3.3、根据各节点在物理网络中的权重对所有业务进行排序,将含有依赖性虚拟网络功能VNF的业务请求信息放在前面优先部署在物理网络中。
S4、选取待处理业务的业务部署路径。
具体而言,本实施例首先从业务请求信息中获取一待处理业务,则S4选取待处理业务的业务部署路径包括:
S4.1、从物理网络中每两个节点间的前K条最短路径中选取业务源、宿节点间前k条最短路径作为候选路径。
S4.2、分别计算每条候选路径上已有虚拟网络功能VNF集合与业务请求虚拟网络功能VNF集合的交集。
S4.3、选取最大交集对应的候选路径作为业务部署路径。
需要说明的是,本实施例如果候选路径上的节点集中的某一节点的服务器中资源不足以部署业务请求虚拟网络功能VNF,则更换业务部署路径,使其能够成功部署。
S5、根据待处理业务的业务部署路径映射业务请求虚拟网络功能VNF集合中的依赖性虚拟网络功能VNF对。
具体而言,当业务请求虚拟网络功能VNF集合中存在至少一个依赖性虚拟网络功能VNF对时,本实施例S5根据待处理业务的业务部署路径映射业务请求虚拟网络功能VNF集合中的每个依赖性虚拟网络功能VNF对,包括:
S5.1、从业务请求虚拟网络功能VNF集合中任意选取一个依赖性虚拟网络功能VNF对,将选取的依赖性虚拟网络功能VNF对从业务请求虚拟网络功能VNF集合中删除。
S5.2、判断业务部署路径上是否已存在依赖性虚拟网络功能VNF对中的两个已知虚拟网络功能VNF,若是,则执行S5.3,否则,执行S5.4。
S5.3、使用最多重用两个的依赖性虚拟网络功能VNF对的映射方法,在业务部署路径上映射选取的依赖性虚拟网络功能VNF对,并执行S5.7。其中,使用的最多重用两个的依赖性虚拟网络功能VNF对映射方法的具体S如下:
S5.3.1、判断依赖性虚拟网络功能VNF对中,依赖虚拟网络功能VNF在业务部署路径上的位置是否在被依赖虚拟网络功能VNF之前,若是,则执行S5.3.2,否则,执行S5.3.11。
S5.3.2、判断是否满足分别映射且重用被依赖虚拟网络功能VNF条件,若是,则执行S5.3.3,否则,执行S5.3.4;其中,分别映射且重用被依赖虚拟网络功能VNF条件是指:被依赖虚拟网络功能VNF的带宽改变因子大于1且依赖虚拟网络功能VNF的带宽改变因子大于1;虚拟网络功能VNF的带宽改变因子是指:流出虚拟网络功能VNF的虚拟链路上的业务带宽占用与流入虚拟网络功能VNF的虚拟链路上的业务带宽占用之比。
S5.3.3、将被依赖虚拟网络功能VNF映射到业务部署路径上存在此被依赖虚拟网络功能VNF的服务器节点上,重用被依赖虚拟网络功能VNF,将依赖虚拟网络功能VNF映射在业务部署路径最末端的服务器节点上后执行S5.3.12。
S5.3.4、判断是否满足分别映射且重用依赖虚拟网络功能VNF条件,若是,则执行S5.3.5,否则,执行S5.3.6;其中,分别映射且重用依赖虚拟网络功能VNF条件是指:被依赖虚拟网络功能VNF的带宽改变因子小于或等于1且依赖虚拟网络功能VNF的带宽改变因子小于或等于1。
S5.3.5、将依赖虚拟网络功能VNF映射到业务部署路径上存在此依赖虚拟网络功能VNF的服务器节点上,重用依赖虚拟网络功能VNF,将被依赖虚拟网络功能VNF映射在业务部署路径最前端的服务器节点上后执行S5.3.12。
S5.3.6、判断是否满足同时映射且重用依赖虚拟网络功能VNF条件,若是,则执行S5.3.7,否则,执行S5.3.8;其中,同时映射且重用依赖虚拟网络功能VNF条件是指:被依赖虚拟网络功能VNF的带宽改变因子大于1且依赖虚拟网络功能VNF的带宽改变因子小于或等于1且被依赖虚拟网络功能VNF的带宽改变因子乘上依赖虚拟网络功能VNF的带宽改变因子小于或等于1。
S5.3.7、将两个虚拟网络功能VNF同时映射到业务部署路径上依赖虚拟网络功能VNF所在服务器节点,重用依赖虚拟网络功能VNF后执行S5.3.12。
S5.3.8、判断是否满足同时映射且重用被依赖虚拟网络功能VNF条件,若是,则执行S5.3.9,否则,执行S5.3.10;其中,同时映射且重用被依赖虚拟网络功能VNF条件是指:被依赖虚拟网络功能VNF的带宽改变因子大于1且依赖虚拟网络功能VNF的带宽改变因子小于或等于1且被依赖虚拟网络功能VNF的带宽改变因子乘上依赖虚拟网络功能VNF的带宽改变因子大于1。
S5.3.9、将两个虚拟网络功能VNF同时映射到业务部署路径上被依赖虚拟网络功能VNF所在服务器节点上,重用被依赖虚拟网络功能VNF后执行S5.3.12。
S5.3.10、将被依赖虚拟网络功能VNF映射到业务部署路径上此被依赖虚拟网络功能VNF所在服务器节点上,重用该被依赖虚拟网络功能VNF,将依赖虚拟网络功能VNF映射到业务部署路径最末端的服务器节点上后执行S5.3.12。
S5.3.11、将被依赖虚拟网络功能VNF映射到业务部署路径上存在此被依赖虚拟网络功能VNF的服务器节点上,将依赖虚拟网络功能VNF映射到业务部署路径上存在此依赖虚拟网络功能VNF的服务器节点上,重用这两个虚拟网络功能VNF。
S5.3.12、完成在业务部署路径上映射此依赖性虚拟网络功能VNF对。
S5.4、判断业务部署路径上是否仅存在依赖性虚拟网络功能VNF对中的一个虚拟网络功能VNF,若是,则执行S5.5,否则,执行S5.6。
S5.5、使用最多重用一个的依赖性虚拟网络功能VNF对的映射方法,在业务部署路径上映射选取的依赖性虚拟网络功能VNF对,并执行S5.7。其中,采用最多重用一个的依赖性虚拟网络功能VNF对的映射方法的具体S如下:
S5.5.1、判断业务部署路径上是否存在虚拟网络功能VNF对中的被依赖虚拟网络功能VNF,若是,则执行S5.5.2,否则,执行S5.5.5。
S5.5.2、判断依赖虚拟网络功能VNF的带宽改变因子是否小于或等于1,若是,则执行S5.5.3,否则,执行S5.5.4。
S5.5.3、将被依赖虚拟网络功能VNF映射到业务部署路径上存在此被依赖虚拟网络功能VNF的服务器节点上,重用该被依赖虚拟网络功能VNF,将依赖虚拟网络功能VNF映射在业务部署路径上被依赖虚拟网络功能VNF所在的服务器节点上后执行S5.5.8。
S5.5.4、将被依赖虚拟网络功能VNF映射到业务部署路径上存在此被依赖虚拟网络功能VNF的服务器节点上,重用该被依赖虚拟网络功能VNF,将依赖虚拟网络功能VNF映射在业务部署路径最末端的服务器节点上后执行S5.5.8。
S5.5.5、判断被依赖虚拟网络功能VNF的带宽改变因子是否小于或等于1,若是,则执行S5.5.6,否则,执行S5.5.7。
S5.5.6、将依赖虚拟网络功能VNF映射到业务部署路径上存在此依赖虚拟网络功能VNF的服务器节点上,重用该依赖虚拟网络功能VNF,将被依赖虚拟网络功能VNF映射在业务部署路径最前端的服务器节点上后执行S5.5.8。
S5.5.7、将依赖虚拟网络功能VNF映射到业务部署路径上存在此依赖虚拟网络功能VNF的服务器节点上,重用该依赖虚拟网络功能VNF,将被依赖虚拟网络功能VNF映射在业务部署路径上依赖虚拟网络功能VNF所在的服务器节点上。
S5.5.8、完成在业务部署路径上映射此依赖性虚拟网络功能VNF对。
S5.6、使用无法重用的依赖性虚拟网络功能VNF对的映射方法,在业务部署路径上映射选取的依赖性虚拟网络功能VNF对。其中,使用的无法重用的依赖性虚拟网络功能VNF对映射方法的具体S如下:
S5.6.1、判断是否满足同时映射到路径前端条件,若是,则执行S5.6.2,否则,执行S5.6.3;其中,同时映射到路径前端条件是指:被依赖虚拟网络功能VNF的带宽改变因子大于1且依赖虚拟网络功能VNF的带宽改变因子小于或等于1且被依赖虚拟网络功能VNF的带宽改变因子乘上依赖虚拟网络功能VNF的带宽改变因子小于或等于1。
S5.6.2、将两个虚拟网络功能VNF同时映射到业务部署路径最前端的服务器节点上后执行S5.6.6。
S5.6.3、判断是否满足同时映射到路径末端条件,若是,则执行S5.6.4,否则,执行S5.6.5;其中,同时映射到路径末端条件是指:被依赖虚拟网络功能VNF的带宽改变因子大于1且依赖虚拟网络功能VNF的带宽改变因子小于或等于1且被依赖虚拟网络功能VNF的带宽改变因子乘上依赖虚拟网络功能VNF的带宽改变因子大于1。
S5.6.4、将两个虚拟网络功能VNF同时映射到业务部署路径最末端的服务器节点上后执行S5.6.6。
S5.6.5、将被依赖虚拟网络功能VNF映射在业务部署路径最前端的服务器节点上,将依赖虚拟网络功能VNF映射在业务部署路径最末端的服务器节点上。
S5.6.6、完成在业务部署路径上映射此虚拟网络功能VNF对。
S5.7、判断业务请求虚拟网络功能VNF集合中是否仍存在至少一个依赖性虚拟网络功能VNF对,若是,则执行S5.1,否则,完成业务请求虚拟网络功能VNF集合中所有依赖性虚拟网络功能VNF对的映射,并执行S6。
S6、根据待处理业务的业务部署路径映射业务请求虚拟网络功能VNF集合中的无依赖性虚拟网络功能VNF。
具体而言,当业务请求虚拟网络功能VNF集合中还存在无依赖性虚拟网络功能VNF,本实施例S6根据待处理业务的业务部署路径映射业务请求虚拟网络功能VNF集合中的无依赖性虚拟网络功能VNF包括:
S6.1、从业务请求虚拟网络功能VNF集合中任意选取一个无依赖性虚拟网络功能VNF,判断业务部署路径上是否存在选取的无依赖性虚拟网络功能VNF,若是,执行S6.2,否则执行S6.3。
S6.2、将选取的无依赖性虚拟网络功能VNF映射到业务部署路径上存在选取的无依赖性虚拟网络功能VNF的服务器节点上,重用选取的无依赖性虚拟网络功能VNF,并执行S6.4。
S6.3、若选取的无依赖性虚拟网络功能VNF的带宽改变因子小于或等于1,则将选取的无依赖性虚拟网络功能VNF映射到最靠近路径前端的服务器节点上,否则,将选取的无依赖性虚拟网络功能VNF映射到最靠近路径末端的服务器节点上。其中,虚拟网络功能VNF的带宽改变因子是指:流出虚拟网络功能VNF的虚拟链路上的业务带宽占用与流入虚拟网络功能VNF的虚拟链路上的业务带宽占用之比。
S6.4、判断业务请求虚拟网络功能VNF集合中是否为空,若是,则所有的无依赖性虚拟网络功能VNF映射完成,执行S7,否则,执行S6.1。
S7、根据业务请求虚拟网络功能VNF集合的映射情况映射用户业务请求信息中每条虚拟链路,以实现SFC映射。
具体而言,本实施例S7根据业务请求虚拟网络功能VNF集合的映射情况映射得到用户业务请求信息对应的每条虚拟链路,以实现SFC映射包括:
S7.1、从待映射虚拟链路集合中任意选取一条虚拟链路,判断当前选取的虚拟链路两端的业务请求虚拟网络功能VNF是否映射到同一个节点上,若是,执行S7.2,否则,执行S7.3,其中,业务请求虚拟网络功能VNF从业务请求虚拟网络功能VNF集合中选取。
S7.2、无需映射当前选取的虚拟链路,执行S7.5。
S7.3、判断当前选取的虚拟链路是否为第一条虚拟链路,若是,则当前选取的虚拟链路上的频隙数由业务请求信息给出,否则,当前选取的虚拟链路上的频隙数为前一条选取的虚拟链路上的频隙数乘上当前选取的虚拟链路起始端业务请求虚拟网络功能VNF的带宽改变因子。
S7.4、当前选取的虚拟链路两端的业务请求虚拟网络功能VNF映射在的两节点间的前k条最短路径作为候选路径集合,分别在每条候选路径上使用首次命中算法为当前选取的虚拟链路分配频隙,得到k个路由和频谱分配方案,选取使最大频隙号增加最小的一个路由和频谱分配方案,并映射当前选取的虚拟链路。其中,首次命中First Fit算法是指:在候选路径上,查找等于虚拟链路上频隙数的第一组连续空余频隙,将候选路径上的这些空余频隙分配给虚拟链路。
S7.5、判断虚拟链路集合中所有的虚拟链路是否全部映射完成,若是,则执行S7.6,否则,执行S7.1。
S7.6、当前业务请求消息中所有虚拟链路的映射完成。
本实施例若业务请求集合中还存在未处理的业务请求,重复执行上述S,直至业务请求集合中所有业务请求部署完成,以实现SFC映射。
本实施例采用了基于前K条最短路径算法和最大交集算法的选取业务部署路径方法,以及基于虚拟网络功能VNF间依赖性关系、虚拟网络功能VNF带宽改变因子、网络中节点的重要性和用户业务请求的虚拟网络功能VNF映射方法,并且结合了基于前K条最短路径算法和首次命中First Fit算法的路由和频谱分配方法。在业务源节点与目的节点间的前K条最短路径中选取虚拟网络功能可重用数最多的路径作为业务部署路径,接着在所选路径上映射服务功能链SFC,并使用路由和频谱分配方法优化虚拟链路的映射,完成业务请求的部署。由于在对网络中的服务器分配资源时考虑到了网络中节点的重要性与用户的业务请求,使得网络拓扑中的服务器资源是有针对性地分配而不是平均分配的,能够最大化地为用户请求较密集的区域提供数目更多而且质量更佳的服务,同时能够避免在用户请求较少的区域使用过多的资源,有效提高资源的利用率。由于构建和映射服务功能链SFC时,在满足虚拟网络功能VNF间的依赖性关系的前提下,根据虚拟网络功能VNF的带宽改变因子,根据最小最先最大最后LFGL的原则,将减小带宽占用的虚拟网络功能VNF尽可能映射到所选路径前端,将增大带宽占用的虚拟网络功能VNF尽可能映射到所选路径末端。故本实施例方法能够在满足虚拟网络功能VNF间依赖性关系的同时,尽可能减少业务请求虚拟网络功能VNF的部署数目和底层弹性光网络中所有光纤链路的最大频隙号,从而减少业务部署成本,可以解决在网络功能虚拟化场景下部署存在依赖性的虚拟网络功能VNF对业务请求的问题。
下面结合实施例对本发明的服务功能链SFC构建和映射过程进行详细说明。
请参见图2,图2是本发明实施例提供的一种虚拟网络功能VNF映射前的网络状态示意图,由图2可以看出,物理网络中有8个节点,其中节点1、节点3、节点4和节点6分别连接有一个服务器。当前物理网络中已存在的虚拟网络功能VNF由矩形框表示,它们是节点1上的VNF1、节点3上的VNF2、节点4上的VNF4和VNF5、节点6上的VNF8。以初始频隙数需求为1,需求的虚拟网络功能VNF集合为{VNF2,VNF4,VNF8},源节点与目的节点分别为节点3和节点6的业务请求为例,来说明本发明方法部署存在依赖性虚拟网络功能VNF对的业务请求的过程。其中VNF4和VNF8是一个依赖性虚拟网络功能VNF对,VNF8必须在VNF4之前执行。此外,VNF2,VNF4,VNF8的带宽改变因子分别为r2=1.3,r4=0.6,r8=1.4。具体上述S涉及的处理包括:
针对S2预处理物理网络信息包括:
筛选出连接有x86架构服务器的所有节点:节点1、节点3、节点4和节点6,作为部署虚拟网络功能VNF的物理节点集合。计算物理网络中任意两节点间的前3(k=3)条最短路径,其中业务请求源、宿节点间的前3条最短路径由图2中的虚线箭头表示,它们分别为:节点3->节点1->节点2->节点6、节点3->节点4->节点2->节点6、节点3->节点5->节点7->节点6。
针对S4选取待处理业务的业务部署路径包括:
第1条路径(节点3->节点1->节点2->节点6)上已有虚拟网络功能VNF集合为{VNF1,VNF2,VNF8},与服务需求的虚拟网络功能VNF集合的交集为{VNF2};第2条路径(节点3->节点4->节点2->节点6)上已有的虚拟网络功能VNF集合为{VNF2,VNF4,VNF5,VNF8},与服务需求的虚拟网络功能VNF集合的交集为{VNF2,VNF4,VNF8};第3条路径(节点3->节点5->节点7->节点6)上已有的虚拟网络功能VNF集合为{VNF2,VNF8},与服务需求的虚拟网络功能VNF集合的交集为{VNF2}。第2条路径(节点3->节点4->节点2->节点6)所得交集最大,在此路径上能够尽可能多地重用虚拟网络功能VNF,所以选择第2条路径(节点3->节点4->节点2->节点6)作为业务部署路径,请参见图3,图3是本发明实施例提供的一种虚拟网络功能VNF映射后的网络状态示意图,由图3中的实线箭头表示虚拟网络功能VNF映射后的业务部署路径。
针对S5映射依赖性虚拟网络功能VNF对包括:
映射中依赖性虚拟网络功能VNF对:VNF4和VNF8。在所选业务部署路径上,已有的VNF8在节点6上,已有的VNF4在节点4上。由于VNF8在业务部署路径上的位置处于VNF4之后,如果为了重用VNF4和VNF8,将业务请求的VNF4映射在节点6上,将VNF8映射在节点4上,则会导致VNF8在VNF4之后执行,无法满足虚拟网络功能VNF间的依赖性关系。因为r8=1.4>1,r4=0.6≤1,所以应将减小带宽占用的VNF4尽可能映射到路径的末端,将增大带宽占用的VNF8尽可能映射到路径的前端,以减少虚拟链路消耗的带宽频谱资源,又由于VNF8必须在VNF4之前执行,所以应将VNF8和VNF4映射到业务部署路径上同一个服务器节点中。为了重用业务部署路径上已存在的虚拟网络功能VNF,应将VNF4和VNF8同时映射到节点4或节点6上,又由于r4*r8=0.84≤1,所以选取靠近路径前端的节点4作为映射节点。最终将VNF4和VNF8同时映射到节点4上,此时能够重用VNF4。
针对S6映射无依赖性虚拟网络功能VNF包括:
映射剩余的无依赖性虚拟网络功能VNF:VNF2。由于业务部署路径上服务器节点3中已存在VNF2,故直接将业务请求的VNF2映射到节点3上,以重用已存在的VNF2。
此时,业务请求的虚拟网络功能VNF全部映射完成,同时构建完成的服务功能链SFC为:VNF2->VNF8->VNF4。请再参见图3,本实施例虚拟网络功能VNF映射结果用图3中椭圆框表示,带阴影的椭圆框表示可以重用这个虚拟网络功能VNF。
针对S7映射虚拟链路包括:
为了减小弹性光网络中的最大频隙号,在虚拟链路两端虚拟网络功能VNF所在的物理节点间的前3条最短路径上,分别使用首次命中First Fit算法尝试为虚拟链路分配频隙,并选取使最大频隙号增加最少的一条作为虚拟链路映射的路径,而不是简单地把虚拟链路映射到业务部署路径上。
请参见图4,图4是本发明实施例提供的一种虚拟链路映射示意图,图4以服务功能链SFC(VNF2->VNF8->VNF4)中VNF2到VNF8间虚拟链路为例说明虚拟链路的映射过程。当前虚拟链路需求的频隙数可以由业务请求的初始频隙数1乘上VNF1的带宽改变因子r1=1.3得出,为1*1.3=1.3个频隙,所以应为此条虚拟链路分配2个频隙。VNF2和VNF8所在物理节点分别为节点3和节点4,如附图4所示,两节点间的前3条最短路径分别为:节点3->节点4、节点3->节点5->节点4、节点3->节点1->节点2->节点4。其中每条物理链路上的频隙数占用情况由矩形框表示,其中灰色矩形框表示已占用的频隙,白色矩形框表示空闲频隙。根据首次命中First Fit算法得到每条路径上为虚拟链路分配的频隙用黑色圆点标出,其中在路径节点3->节点4上为虚拟链路分配第8个和第9个频隙,分配结束后最大频隙号是9;在路径节点3->节点5->节点4上为虚拟链路分配第4个和第5个频隙,分配结束后最大频隙号是7;在路径节点3->节点1->节点2->节点4上为虚拟链路分配第8个和第9个频隙,分配结束后最大频隙号是9。故选取使网络中最大频隙号增加最少的方案:将VNF1到VNF6间的虚拟链路映射到路径节点3->节点5->节点4上,并为其分配第4个和第5个频隙。
虚拟链路全部映射完成后,业务部署完成。
为了验证本实施例提出的基于节点重要性与用户需求双感知的SFC映射方法的有效性,通过以下仿真验证本发明方法的优化效果。仿真具体包括:
1.仿真条件
请参见图5,图5是本发明实施例提供的一种仿真采用的NSFNET网络的拓扑结构示意图,使用图5所示的14个节点的NSFNET拓扑(National Science Foundation Network,简称NSFNET)进行仿真。仿真参数设置如下:共有8种类型的虚拟网络功能VNF,类型1-4的虚拟网络功能VNF的带宽改变因子在区间[0.5,1]随机选取,其余类型虚拟网络功能VNF的带宽改变因子在区间[1,1.5]中随机选取。业务初始频隙数请求在区间[4,8]中随机选取。每条光纤链路容纳358个频隙。另外,选取2对依赖性虚拟网络功能VNF对,分别为VNF7和VNF3、VNF4和VNF8,其中VNF7必须在VNF3之前执行,VNF4必须在VNF8之前执行。在每次实验中,业务请求的数量从100变化到600,每个业务请求最多需要3种类型的虚拟网络功能VNF。
本实施例共有4组仿真实验:第1组实验目标为验证节点拓扑权重的有效性,因此分别选取了权重最大的7个节点与随机选取7个节点作为服务器节点进行对比;第2组实验选取了权重最大的7个节点为服务器节点;第3组实验选取了权重最大的7个节点为服务器节点,但是每个服务器分配到的计算资源不同,分别为平均分配与加权分配,并进行了两者间的对比;第4组实验选取了权重最大的7个节点为服务器节点,服务器节点分配计算资源的方式为加权分配。
2.仿真内容:
第1组实验目标为验证节点拓扑权重的有效性,分别选取了权重最大的7个节点与随机选取7个节点作为服务器节点进行对比,对比的优化目标分别为部署的虚拟网络功能VNF数与最大频隙号。
第2组实验目标为验证节点拓扑权重与节点业务权重分别对于节点综合权重的影响,对比的优化目标分别为部署的虚拟网络功能VNF数与最大频隙号。
第3组实验目标为验证针对用户需求提供服务的有效性,对比的优化目标为在不同的网络资源下用户请求的通过率,即在网络资源有限的情况下,用户的业务请求能够被服务的概率。
第4组实验目标为对比两种算法的性能,仿真采用了两种算法包括节点资源与用户需求双感知的SFC映射算法(Node-resource and User-demand-Aware MappingAlgorithm,简称NUAM)、协同式SFC构建和映射算法(Coordinated Chaining and MappingAlgorithm,简称CCMA),对比在添加了服务器资源量的约束条件下两种算法的性能,对比的优化目标分别为部署的虚拟网络功能VNF数与最大频隙号。此外,在观察多次仿真结果后,对不符合预想情况的仿真结果进行了猜想,为了验证猜想增加了各链路最大频隙号之差的对比项。
3.仿真结果分析:
由于在业务请求数量较少时出现了大量的重复数据,因此仿真结果图的横坐标业务请求数的范围是300个到600个之间。
请参见图6、图7,图6是本发明实施例提供的仿真中两种部署方法得到的网络部署中虚拟网络功能VNF数随业务请求数变化的对比示意图,图7是本发明实施例提供的仿真中两种部署方法得到的最大频隙号随业务请求数变化的对比示意图,第1组实验的结果可由图6与图7得到。由图6可知,随着业务请求数的增长,权重最大的7个节点(加权组)所部署的实例数相较于随机选取7个节点(随机组)是较少的,这说明加权组能够重用更多的VNF实例,消耗了更少的计算资源。由图7可知,随着业务请求数的增长,加权组的最大频隙号小于随机组的最大频隙号,说明加权组使用更少的带宽资源。因此,加权组在两个优化目标上的表现要全面优于随机组,证明所提出的节点拓扑权重对于实验结果是有影响的。
请参见图8、图9,图8是本发明实施例提供的仿真中五种不同比例的节点权重得到的网络中部署的虚拟网络功能VNF数随业务请求数变化的对比示意图,图9是本发明实施例提供的仿真中五种不同比例的节点权重得到的最大频隙号随业务请求数变化的对比示意图,第2组实验的结果可由图8与图9得到。由图8可知,随着业务请求数的增长,α1越大,部署的虚拟网络功能VNF实例就越多,这说明α1较小时能够重用更多的VNF实例。而由图9可知,随着业务请求数的增长,α1越大,最大频隙号就越小,这说明α1较大时使用了更少的链路带宽资源。由节点权重的归一化公式可知,节点拓扑权重与节点业务请求权重分别对节点资源与带宽资源的使用产生了不同的影响,针对不同的资源限制可以按照不同的策略来调节两种节点权重的归一化比例。
请参见图10,图10是本发明实施例提供的仿真中两种资源分配方法得到的业务请求通过率随网络中计算资源总量变化的对比示意图,第3组实验的结果可由图10得到。由图10可知,在选取节点后对服务器分配网络资源时,加权分配在网络计算资源总量有16000单位时就可以完成对所有请求的服务,此时平均分配的实验组的通过率只有89%。资源平均分配的实验组在网络计算资源总量有18500单位时才能够使业务请求通过率达到100%,相比于加权分配的情况要额外使用15.6%的资源量。由此可见,按照节点权重加权分配网络资源能够明显提高接受率,并降低网络成本。
请参见图11、图12、图13,图11是本发明实施例提供的仿真中两种算法得到的网络中部署的虚拟网络功能VNF数随业务请求数变化的对比示意图,图12是本发明实施例提供的仿真中两种算法得到的最大频隙号随业务请求数变化的对比示意图,图13是本发明实施例提供的仿真中两种算法得到的最大频隙号之差随业务请求数变化的对比示意图,第4组实验的结果可由图11、12和13得到。由图11可知,随着业务请求数的增长,NUAM所部署的实例数相较于CCMA是较多的,说明在节点计算资源的消耗上性能较差。由图12可知,随着业务请求数的增长,NUAM实验组的最大频隙号相较于CCMA是较小,使用了更少的链路带宽资源。由于NUAM在CCMA的基础上添加了额外的约束条件,在本发明的预测中NUAM可能会在两方面都取得较差的结果,针对NUAM这一不符合预期的结果,提出了一个猜想进行解释。本发明认为最大频隙号减小的原因可能是由于网络中服务器计算资源容量的限制,导致了大量的虚拟网络功能VNF实例不能够复用于固定的几个服务器上,由此避免了服务功能链SFC的过度集中,将网络流量更加平均地分布于整个网络中,因此避免了某几条链路所使用的带宽资源过多。由图13可知,NUAM实验组的最大频隙号之差小于CCMA实验组,证明了本发明猜想的正确性。因此,NUAM在相较于CCMA更加符合实际的情况下,只是在节点计算资源的使用上有一些劣势,而对带宽资源的消耗有明显的减少,证明了本发明的有效性。
综上所述,本实施例提出的基于节点重要性与用户需求双感知的SFC映射方法,分别采用了选取业务部署路径方法、映射依赖性虚拟网络功能VNF对方法、映射剩余的虚拟网络功能VNF方法,具体地:根据物理网络拓扑中节点的分布以及用户需求加权计算得出各物理网络节点的重要性权,在业务源节点与目的节点间的前k条跳数最少的路径中选择能够重用最多虚拟网络功能VNF的一条,作为业务部署路径;在满足虚拟网络功能VNF间的依赖性关系的前提下,根据虚拟网络功能VNF的带宽改变因子,将减小带宽使用的虚拟网络功能VNF尽可能映射到所选路径前端,将增大带宽使用的虚拟网络功能VNF尽可能映射到所选路径末端;在虚拟链路两端虚拟网络功能VNF所在节点间的前k条跳数最少路径上分别为虚拟链路分配频隙,选取使网络中最大频隙号增加最少的一条作为虚拟链路映射路径,可见,本实施例在映射虚拟网络功能VNF时,尽可能多地重用网络中已存在的虚拟网络功能VNF,克服了现有技术中由于仅仅考虑了链路带宽资源的成本,而忽略了虚拟网络功能VNF的成本,导致不能减少部署的虚拟网络功能VNF数量,部署业务时需要过多的虚拟网络功能VNF的问题,使得本发明能够减少部署的业务请求虚拟网络功能VNF实例数,减少业务部署成本;本实施例分别采用了基于节点的介数中心性设计的节点拓扑权重方法与基于用户需求计算得到的节点业务权重加权计算得出的节点重要性,克服了现有技术中在网络功能虚拟化场景下完成用户的业务请求时所产生的业务适用率低、成本高与服务效率低等问题,使得本实施例方法在网络功能虚拟化场景下,具有服务效率高与成本低的优点;本实施例提出的方法可以在弹性光网络中有效地部署的面向用户需求的服务功能链SFC,更高效地为用户提供服务。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (9)
1.一种基于节点重要性与用户需求双感知的SFC映射方法,其特征在于,包括以下步骤:
S1、获取物理网络信息与用户业务请求信息,其中,所述物理网络信息包括已有虚拟网络功能VNF集合,所述用户业务请求信息包括业务请求虚拟网络功能VNF集合,所述业务请求虚拟网络功能VNF集合包括所述包括依赖性虚拟网络功能VNF对、无依赖性虚拟网络功能VNF;
S2、对所述物理网络信息进行预处理;
S3、对所述用户业务请求信息进行预处理;
S4、选取待处理业务的业务部署路径;
S5、根据所述待处理业务的业务部署路径映射所述业务请求虚拟网络功能VNF集合中的依赖性虚拟网络功能VNF对;
S6、根据所述待处理业务的业务部署路径映射所述业务请求虚拟网络功能VNF集合中的无依赖性虚拟网络功能VNF;
S7、根据所述业务请求虚拟网络功能VNF集合的映射情况映射得到用户业务请求信息对应的每条虚拟链路,以实现SFC映射。
2.根据权利要求1所述的基于节点重要性与用户需求双感知的SFC映射方法,其特征在于,S2对所述物理网络信息进行的预处理包括:
S2.1、从物理网络的节点中筛选出连接有x86架构服务器的所有节点,将所有节点作为所述物理网络信息中的已有虚拟网络功能VNF集合;
S2.2、采用前K条最短路径算法,计算物理网络中每两节点间的前k条最短路径,0<k≤K,K为大于0的整数;
S2.3、遍历计算得到的所有最短路,根据节点拓扑权重计算方程计算各节点的拓扑权重,并将所述各节点的拓扑权重记录下来。
4.根据权利要求3所述的基于节点重要性与用户需求双感知的SFC映射方法,其特征在于,S3对所述用户业务请求信息进行的预处理包括:
S3.1、遍历所有业务请求信息,并记录各业务请求信息中的源节点与目的节点信息,根据节点业务权重计算方程计算各节点的占比并得出各节点的业务权重;
S3.2、将所述各节点的业务权重与所述各节点的拓扑权重进行加权计算,得出各节点在物理网络中的权重;
S3.3、根据所述各节点在物理网络中的权重对所有业务进行排序,将含有依赖性虚拟网络功能VNF的业务请求信息放在前面优先部署在物理网络中。
6.根据权利要求2所述的基于节点重要性与用户需求双感知的SFC映射方法,其特征在于,S4选取待处理业务的业务部署路径包括:
S4.1、从物理网络中每两个节点间的前K条最短路径中选取业务源、宿节点间前k条最短路径作为候选路径;
S4.2、分别计算每条候选路径上已有虚拟网络功能VNF集合与业务请求虚拟网络功能VNF集合的交集;
S4.3、选取最大交集对应的候选路径作为业务部署路径。
7.根据权利要求1所述的基于节点重要性与用户需求双感知的SFC映射方法,其特征在于,S5根据所述待处理业务的业务部署路径映射所述业务请求虚拟网络功能VNF集合中的依赖性虚拟网络功能VNF对包括:
S5.1、从所述业务请求虚拟网络功能VNF集合中任意选取一个依赖性虚拟网络功能VNF对,将选取的依赖性虚拟网络功能VNF对从所述业务请求虚拟网络功能VNF集合中删除;
S5.2、判断所述业务部署路径上是否已存在依赖性虚拟网络功能VNF对中的两个已知虚拟网络功能VNF,若是,则执行S5.3,否则,执行S5.4;
S5.3、使用最多重用两个的依赖性虚拟网络功能VNF对的映射方法,在所述业务部署路径上映射选取的依赖性虚拟网络功能VNF对,并执行S5.7;
S5.4、判断所述业务部署路径上是否仅存在依赖性虚拟网络功能VNF对中的一个虚拟网络功能VNF,若是,则执行S5.5,否则,执行S5.6;
S5.5、使用最多重用一个的依赖性虚拟网络功能VNF对的映射方法,在所述业务部署路径上映射选取的依赖性虚拟网络功能VNF对,并执行S5.7;
S5.6、使用无法重用的依赖性虚拟网络功能VNF对的映射方法,在所述业务部署路径上映射选取的依赖性虚拟网络功能VNF对;
S5.7、判断所述业务请求虚拟网络功能VNF集合中是否仍存在至少一个依赖性虚拟网络功能VNF对,若是,则执行S5.1,否则,完成业务请求虚拟网络功能VNF集合中所有依赖性虚拟网络功能VNF对的映射,并执行S6。
8.根据权利要求1所述的基于节点重要性与用户需求双感知的SFC映射方法,其特征在于,S6根据所述待处理业务的业务部署路径映射所述业务请求虚拟网络功能VNF集合中的无依赖性虚拟网络功能VNF包括:
S6.1、从所述业务请求虚拟网络功能VNF集合中任意选取一个无依赖性虚拟网络功能VNF,判断所述业务部署路径上是否存在选取的无依赖性虚拟网络功能VNF,若是,执行S6.2,否则执行S6.3;
S6.2、将选取的无依赖性虚拟网络功能VNF映射到所述业务部署路径上存在选取的无依赖性虚拟网络功能VNF的服务器节点上,重用选取的无依赖性虚拟网络功能VNF,并执行S6.4;
S6.3、若选取的无依赖性虚拟网络功能VNF的带宽改变因子小于或等于1,则将选取的无依赖性虚拟网络功能VNF映射到最靠近路径前端的服务器节点上,否则,将选取的无依赖性虚拟网络功能VNF映射到最靠近路径末端的服务器节点上;
S6.4、判断所述业务请求虚拟网络功能VNF集合中是否为空,若是,则所有无依赖性虚拟网络功能VNF映射完成,执行S7,否则,执行S6.1。
9.根据权利要求2所述的基于节点重要性与用户需求双感知的SFC映射的方法,其特征在于,S7根据所述业务请求虚拟网络功能VNF集合的映射情况映射得到用户业务请求信息对应的每条虚拟链路,以实现SFC映射包括:
S7.1、从待映射虚拟链路集合中任意选取一条虚拟链路,判断当前选取的虚拟链路两端的业务请求虚拟网络功能VNF是否映射到同一个节点上,若是,执行S7.2,否则,执行S7.3;
S7.2、无需映射当前选取的虚拟链路,执行S7.5;
S7.3、判断当前选取的虚拟链路是否为第一条虚拟链路,若是,则当前选取的虚拟链路上的频隙数由业务请求信息给出,否则,当前选取的虚拟链路上的频隙数为前一条选取的虚拟链路上的频隙数乘上当前选取的虚拟链路起始端业务请求信息中的虚拟网络功能VNF的带宽改变因子;
S7.4、当前选取的虚拟链路两端的业务请求虚拟网络功能VNF映射在的两节点间的前k条最短路径作为候选路径集合,分别在每条候选路径上使用首次命中算法为当前选取的虚拟链路分配频隙,得到k个路由和频谱分配方案,选取使最大频隙号增加最小的一个路由和频谱分配方案,并映射当前选取的虚拟链路;
S7.5、判断所述待映射虚拟链路集合中所有的虚拟链路是否全部映射完成,若是,则执行S7.6,否则,执行S7.1;
S7.6、当前业务请求消息对应的所有虚拟链路的映射完成,以实现SFC映射。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110287756.9A CN113032096B (zh) | 2021-03-17 | 2021-03-17 | 一种基于节点重要性与用户需求双感知的sfc映射方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110287756.9A CN113032096B (zh) | 2021-03-17 | 2021-03-17 | 一种基于节点重要性与用户需求双感知的sfc映射方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113032096A true CN113032096A (zh) | 2021-06-25 |
CN113032096B CN113032096B (zh) | 2023-03-31 |
Family
ID=76471764
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110287756.9A Active CN113032096B (zh) | 2021-03-17 | 2021-03-17 | 一种基于节点重要性与用户需求双感知的sfc映射方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113032096B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113965616A (zh) * | 2021-09-16 | 2022-01-21 | 西安电子科技大学 | 一种基于vnf资源改变矩阵的sfc映射方法 |
CN114205317A (zh) * | 2021-10-21 | 2022-03-18 | 北京邮电大学 | 基于sdn与nfv的服务功能链sfc资源分配方法及电子设备 |
CN114650225A (zh) * | 2022-03-14 | 2022-06-21 | 西安电子科技大学 | 基于粒子群优化算法的服务功能链sfc映射方法 |
WO2023273940A1 (zh) * | 2021-06-28 | 2023-01-05 | 中兴通讯股份有限公司 | 虚拟网络的优化方法、装置及计算机存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015118875A1 (ja) * | 2014-02-06 | 2015-08-13 | 日本電気株式会社 | 仮想ネットワーク機能の最適配置方法、ネットワーク制御装置、ネットワーク管理装置およびネットワークシステム |
US20170078153A1 (en) * | 2015-09-15 | 2017-03-16 | Huawei Technologies Co., Ltd. | Software defined topology (sdt) for user plane |
US20170288971A1 (en) * | 2016-04-04 | 2017-10-05 | Brocade Communications Systems, Inc. | Constraint-Based Virtual Network Function Placement |
CN107332913A (zh) * | 2017-07-04 | 2017-11-07 | 电子科技大学 | 一种5g移动网络中服务功能链的优化部署方法 |
CN108243066A (zh) * | 2018-01-23 | 2018-07-03 | 电子科技大学 | 低延迟的网络服务请求部署方法 |
CN108494596A (zh) * | 2018-03-23 | 2018-09-04 | 西安电子科技大学 | 多个vnf间依赖的协同式构建与映射sfc方法 |
CN108600019A (zh) * | 2018-04-28 | 2018-09-28 | 电子科技大学 | 一种网络服务功能链映射方法 |
CN110134493A (zh) * | 2019-05-05 | 2019-08-16 | 西安邮电大学 | 一种基于资源碎片避免的服务功能链部署算法 |
US20190280935A1 (en) * | 2018-03-06 | 2019-09-12 | At&T Intellectual Property I, L.P. | Mini-cloud deployment system |
CN110446121A (zh) * | 2019-04-07 | 2019-11-12 | 西安电子科技大学 | 基于介数中心度的虚拟网络功能服务链映射方法 |
CN111327708A (zh) * | 2020-03-10 | 2020-06-23 | 公安部第三研究所 | 一种基于拓扑感知的光网络虚拟映射方法 |
-
2021
- 2021-03-17 CN CN202110287756.9A patent/CN113032096B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015118875A1 (ja) * | 2014-02-06 | 2015-08-13 | 日本電気株式会社 | 仮想ネットワーク機能の最適配置方法、ネットワーク制御装置、ネットワーク管理装置およびネットワークシステム |
US20170078153A1 (en) * | 2015-09-15 | 2017-03-16 | Huawei Technologies Co., Ltd. | Software defined topology (sdt) for user plane |
US20170288971A1 (en) * | 2016-04-04 | 2017-10-05 | Brocade Communications Systems, Inc. | Constraint-Based Virtual Network Function Placement |
CN107332913A (zh) * | 2017-07-04 | 2017-11-07 | 电子科技大学 | 一种5g移动网络中服务功能链的优化部署方法 |
CN108243066A (zh) * | 2018-01-23 | 2018-07-03 | 电子科技大学 | 低延迟的网络服务请求部署方法 |
US20190280935A1 (en) * | 2018-03-06 | 2019-09-12 | At&T Intellectual Property I, L.P. | Mini-cloud deployment system |
CN108494596A (zh) * | 2018-03-23 | 2018-09-04 | 西安电子科技大学 | 多个vnf间依赖的协同式构建与映射sfc方法 |
CN108600019A (zh) * | 2018-04-28 | 2018-09-28 | 电子科技大学 | 一种网络服务功能链映射方法 |
CN110446121A (zh) * | 2019-04-07 | 2019-11-12 | 西安电子科技大学 | 基于介数中心度的虚拟网络功能服务链映射方法 |
CN110134493A (zh) * | 2019-05-05 | 2019-08-16 | 西安邮电大学 | 一种基于资源碎片避免的服务功能链部署算法 |
CN111327708A (zh) * | 2020-03-10 | 2020-06-23 | 公安部第三研究所 | 一种基于拓扑感知的光网络虚拟映射方法 |
Non-Patent Citations (4)
Title |
---|
HENDRIK MOENS ET AL: "VNF-P: A model for efficient placement of virtualized network functions", 《10TH INTERNATIONAL CONFERENCE ON NETWORK AND SERVICE MANAGEMENT (CNSM) AND WORKSHOP》 * |
WENRUI MA ET AL: "Traffic aware placement of interdependent NFV middleboxes", 《 IEEE INFOCOM 2017 - IEEE CONFERENCE ON COMPUTER COMMUNICATIONS》 * |
XIAOLIANG CHEN ET AL: "Leveraging mixed-strategy gaming to realize incentive-driven VNF service chain provisioning in broker-based elastic optical inter-datacenter networks", 《JOURNAL OF OPTICAL COMMUNICATIONS AND NETWORKING 》 * |
徐展琦等: "一种负载均衡的虚拟光网络映射算法", 《西安电子科技大学学报》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023273940A1 (zh) * | 2021-06-28 | 2023-01-05 | 中兴通讯股份有限公司 | 虚拟网络的优化方法、装置及计算机存储介质 |
CN113965616A (zh) * | 2021-09-16 | 2022-01-21 | 西安电子科技大学 | 一种基于vnf资源改变矩阵的sfc映射方法 |
CN114205317A (zh) * | 2021-10-21 | 2022-03-18 | 北京邮电大学 | 基于sdn与nfv的服务功能链sfc资源分配方法及电子设备 |
CN114650225A (zh) * | 2022-03-14 | 2022-06-21 | 西安电子科技大学 | 基于粒子群优化算法的服务功能链sfc映射方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113032096B (zh) | 2023-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113032096B (zh) | 一种基于节点重要性与用户需求双感知的sfc映射方法 | |
Woldeyohannes et al. | ClusPR: Balancing multiple objectives at scale for NFV resource allocation | |
CN108494596B (zh) | 多个vnf间依赖的协同式构建与映射sfc方法 | |
US9317336B2 (en) | Method and apparatus for assignment of virtual resources within a cloud environment | |
CN112738820B (zh) | 一种服务功能链的动态部署方法、装置及计算机设备 | |
Yu et al. | Rethinking virtual network embedding: Substrate support for path splitting and migration | |
Fischer et al. | ALEVIN-a framework to develop, compare, and analyze virtual network embedding algorithms | |
CN113315700A (zh) | 算力资源调度方法、装置和存储介质 | |
CN113810205B (zh) | 服务算力信息的上报、接收方法、服务器及数据中心网关 | |
JP2013168934A (ja) | 負荷均衡装置及び負荷均衡方法 | |
Botero et al. | A novel paths algebra-based strategy to flexibly solve the link mapping stage of VNE problems | |
EP2137888A1 (en) | Available bandwidth estimation | |
Riggio et al. | Progressive virtual topology embedding in openflow networks | |
CN111162865A (zh) | 空分复用弹性光网络中碎片感知的虚拟光网络映射方法 | |
CN108347380B (zh) | 一种基于频谱离散度感知的虚拟光网络协同映射方法 | |
Hsu et al. | Virtual network mapping algorithm in the cloud infrastructure | |
Cheng et al. | NAMP: Network-aware multipathing in software-defined data center networks | |
Hsu et al. | Virtual network mapping through path splitting and migration | |
Bianchi et al. | A markov reward based resource-latency aware heuristic for the virtual network embedding problem | |
CN107113323B (zh) | 一种数据存储方法、装置和*** | |
CN117119043A (zh) | 一种边缘网络拓扑感知的微服务部署方法 | |
Prajapati et al. | OptiGSM: Greedy-Based Load Balancing with Minimum Switch Migrations in Software-Defined Networks | |
CN113965616B (zh) | 一种基于vnf资源改变矩阵的sfc映射方法 | |
Nguyen et al. | RT-VNE: A real-time strategy for Virtual Network Embedding towards resource efficiency | |
Huang et al. | An efficient joint node and link mapping approach based on genetic algorithm for network virtualization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |