CN109547241B - 一种基于Markov算法的面向NUMA架构的虚拟网络功能部署方法 - Google Patents
一种基于Markov算法的面向NUMA架构的虚拟网络功能部署方法 Download PDFInfo
- Publication number
- CN109547241B CN109547241B CN201811354532.XA CN201811354532A CN109547241B CN 109547241 B CN109547241 B CN 109547241B CN 201811354532 A CN201811354532 A CN 201811354532A CN 109547241 B CN109547241 B CN 109547241B
- Authority
- CN
- China
- Prior art keywords
- virtual network
- deployment
- node
- numa
- reuse
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
- H04L41/083—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability for increasing network speed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于Markov算法的面向NUMA架构的虚拟网络功能部署方法,主要包括以下步骤:(1)根据用户的服务请求,组成服务功能链,服务功能链由多个虚拟网络功能组成,为用户提供所需要的服务;(2)获取NUMA系统的节点部署情况、每个NUMA节点的剩余计算资源和NUMA节点之间的带宽资源,并根据NUMA系统的节点部署情况和重用机制,确定服务功能链中的虚拟网络功能可重用情况;(3)以一条服务功能链的服务延迟取最小值为优化目标建立目标规划问题,并获得该问题的一个可行解;(4)利用Markov算法获得该问题的一个优化的部署方案。实验结果表明,服务功能链通过本发明所提出的算法部署,可以取得比现有算法更优的服务延迟。
Description
技术领域
本发明涉及网络功能虚拟化技术领域,具体涉及一种在线的虚拟网络功能(VNF)在非统一内存架构(NUMA)上的部署方法。
背景技术
随着因特网的不断发展,在网络上出现了很多网络功能,网络功能和硬件相关,为用户提供服务。随着虚拟化技术的发展,网络功能将逐步和硬件解耦,部署将变得更加灵活,功能的扩展性也得到增强。网络功能虚拟化一个重要的问题就是虚拟网络功能的部署问题。
多个虚拟网络功能组成网络功能链(SFC),为用户提供网络服务。现有的研究提出了一些在服务器上部署服务功能链的算法,这些算法只考虑到服务功能链的特性(包括每个VNF的计算资源、链路带宽等性能要求)和服务器的性能(计算资源、存储资源、I/O资源等),主要是面向链路感知的部署策略。当前的服务器的内存大多是非统一性内存访问架构(NUMA),NUMA架构上有一些区别于一致性内存访问(UMA)架构的特性(比如跨域访存、线程切换等)。显而易见,用户对于网络服务的要求包括数据流的响应时延要求,在满足了服务功能链计算资源要求和带宽要求的情况下,应该尽可能的优化其响应时延。此外,NUMA系统内核访存的不对称性(即内核访问内核所在域的内存与内核访问其他域的内存的访问时延不同),会影响到VNF的部署。当前的算法无法解决这种不对称性问题,因而在优化延迟方面有着很大的缺陷。
发明内容
发明目的:针对现有技术的局限性,本发明提出一种NUMA系统上的VNF部署策略,能够得到更优的访存延迟。
技术方案:一种基于Markov算法的面向NUMA架构的虚拟网络功能部署方法,包括以下步骤:
S10、根据用户的服务请求,将多个虚拟网络功能组成服务功能链。
S20、获取NUMA系统的节点部署情况、每个NUMA节点的剩余计算资源和NUMA节点之间的带宽资源,并根据NUMA系统的节点部署情况和虚拟网络功能重用机制,确定服务功能链中的虚拟网络功能可重用情况。
S30、根据服务功能链中的虚拟网络功能的可重用情况,以一条服务功能链的服务延迟取最小值为优化目标建立目标规划问题,并获得该问题满足约束条件的一个可行解。
S40、利用Markov算法获得该问题的一个优化的部署方案。
作为优选,所述步骤S20中虚拟网络重用机制需满足如下条件:1)服务功能链中的虚拟网络功能已经在网络中部署;2)重用NUMA节点的计算资源充足。
作为优选,所述步骤S30中建立的目标规划如下:
优化目标:
约束条件:
其中,所涉及到的参数如下:
yk为重用指示函数,yk=1代表VNF rk重用,yk=0代表VNF rk不重用;
rk代表第k个VNF;
m是服务功能链的长度;
α为参数,α满足0≤α≤D,D代表一次跨域访存延迟;
numk代表rk需要的计算资源节点数;
bandwidthk代表rk需要的带宽资源;
S1,S2,…,Sn代表n个socket域;
pi代表Socket域Si的空节点数目;
bandwidth(Si,Sj)代表Socket Si和Socket Sj之间的可用带宽;
Ck={Si|VNF rkcan be reused in Si}代表VNF rk可被重用的节点位置;
R=(r1,r2,…,rm)代表一条服务功能链;
作为优选,所述步骤S40包括以下步骤:
步骤41:首先随机选择一个可行的部署f0,将f0设为最优部署f*;
步骤42:随机选择服务功能链上的一个可重用虚拟网络功能rk,如果rk在原部署上是不重用,那么新部署置为重用,rk随机部署在一个可重用节点中;如果rk在原部署上是重用,那么新部署以的概率置为不重用,以的概率仍然保持重用并随机选择一个可重用节点;
步骤43:根据步骤42确定的虚拟网络功能重用情况,利用贪心算法确定一个新的部署f′;
步骤45:返回步骤42迭代直到满足设置的收敛条件。
有益效果:本发明提出了一种NUMA架构下虚拟网络功能部署的方案,在重用机制下建立考虑访存延迟的优化目标并进行求解,服务功能链通过本发明所提出的算法部署,可以取得比现有算法更优的服务延迟。
附图说明
图1为本发明所述的NUMA架构的结构示意图;
图2为本发明所述的VNF部署流程图;
图3为本发明所述的服务功能链结构示意图;
图4为本发明所述的NUMA节点拓扑结构示意图;
图5为本发明所述的Markov算法流程图;
图6为有固定端点的VNF链;
图7为有固定端点的VNF子链;
图8为本发明相关的贪心算法流程图;
图9为本发明的算法与现有技术算法的效果对比图。
具体实施方式
下面结合附图对本发明的技术方案作进一步说明。
本发明公开了一种非统一内存访问架构(NUMA)上虚拟网络功能优化部署的方案,所涉及到的NUMA架构是应用在主流多处理器系统的一种具有缓存一致性的共享内存结构,如图1所示,这种架构最主要的特点是:CPU和内存被分为多个域,每个CPU内核可以直接访问自己所处域内的内存,而访问域外内存需要进行端到端通信。这就意味着,在同一个计算机系统内部,内核和内存之间的关系存在着一种对称关系,而不同内核之间由于访问内存的不同产生了一种不对称性。由于端到端通信会产生一定的延迟,因此如果内核访问域外的内存会带来一定的时间开销。虚拟网络功能的部署需要考虑这个特点。参照图2,在一个实施例中,在NUMA架构上的虚拟网络功能部署方法,包括以下步骤:
S10、根据用户的服务请求,组成服务功能链,服务功能链由多个虚拟网络功能组成,为用户提供所需要的服务。
图3示出了一个服务功能链实例,代表网络服务提供商所提供的服务,它实现了防火墙、入侵检测、负载均衡等功能。左边节点是数据提供商服务器,右边节点是用户端服务器,中间三个节点是虚拟网络功能实例。
S20、获取NUMA系统的节点部署情况、每个NUMA节点的剩余计算资源和NUMA节点之间的带宽资源,并根据NUMA系统的节点部署情况和虚拟网络功能重用机制,确定服务功能链中的虚拟网络功能可重用情况。
NUMA节点上有计算资源和储存资源,不同NUMA节点之间有带宽资源。重用是指多个服务功能链上的相同虚拟网络功能共用同一个NUMA节点的计算资源和存储资源。本发明实施例中,虚拟网络功能重用机制指的是:1)服务功能链中的虚拟网络功能已经在网络中部署;2)重用NUMA节点的计算资源充足。只有当1)和2)同时满足时,即虚拟网络功能已经在网络中部署,且网络中分配给先一个虚拟网络功能的计算资源能够满足两个虚拟网络功能重用时的要求,那么允许该虚拟网络功能重用。
图4是NUMA节点的拓扑结构示意图,图中着色的节点代表已经被使用的内核,已经使用的内核在满足上述的重用条件的情况下可能被重用,未着色的节点代表没有被使用的内核,在其上可以部署新的虚拟网络功能。
S30、根据服务功能链中的虚拟网络功能的可重用情况,以一条服务功能链的服务延迟取最小值为优化目标建立目标规划问题,根据目标规划所确定的约束条件,获得该问题满足约束条件的一个可行解。
根据虚拟网络功能的部署要求,主要考虑访存延迟,在访存延迟一致的情况下,设置一个“修正因子”来判断部署的好坏,“修正因子”的选择应该不影响访存延迟的比较,同时“修正因子”与重用虚拟网络功能的数目有关,重用虚拟网络功能数目越多,“修正因子”越小。
修正因子的形式为:
其中,yk为重用指示函数,yk=1代表VNF rk重用,yk=0代表VNF rk不重用;rk代表第k个VNF;m是服务功能链的长度;α为参数,α满足0≤α≤D,D代表一次跨域访存延迟。
从而建立了如下的线性规划问题:
优化目标:
约束条件:
所涉及到的参数如下:
numk代表rk需要的计算资源节点数;
bandwidthk代表rk需要的带宽资源;
S1,S2,…,Sn代表n个socket域,一个socket域由多个CPU内核和一块共享内存组成,每个CPU内核为一个NUMA节点,节点中存在一定的节点是空节点可以部署VNF;
pi代表Socket域Si的空节点数目;
bandwidth(Si,Sj)代表Socket Si和Socket Sj之间的可用带宽;
Ck={Si|VNF rkcan be reused in Si}代表VNF rk可被重用的节点位置;
R=(r1,r2,…,rm)代表一条服务功能链;
S40、利用Markov算法获得该问题的一个优化的部署方案。参照图5,所述Markov算法具体步骤如下:
步骤41:首先随机选择一个可行的部署f0,将f0设为最优部署f*。满足上述目标规划中约束条件的部署就是可行的部署,在本实施例中,选择了不重用任何VNF的一个部署。
步骤42:随机选择服务功能链上的一个可重用虚拟网络功能rk,如果rk在原部署上是不重用,那么新部署置为重用,rk随机部署在一个可重用节点中;如果rk在原部署上是重用,那么新部署以的概率置为不重用,以的概率仍然保持重用并随机选择一个可重用节点。有重用VNF的服务功能链如图6所示,其中VNF c、VNF e、VNF g可以被重用(当然也可以选择不重用);而其他的VNF不能被重用。
步骤43:根据步骤42确定的虚拟网络功能重用情况,利用贪心算法确定一个新的部署f′。
步骤45:返回步骤42迭代直到满足设置的收敛条件,收敛条件一般根据复杂度需求来设置,例如可以将收敛条件设为满足迭代次数m×n次。
参照图8,所述的确定新部署的贪心算法如下:
步骤432:根据步骤S20确定的虚拟网络功能重用情况,对于任意的k,如果虚拟网络功能rk重用且部署在节点i上,则置y[k]=1,x[i][k]=1;
步骤433:根据重用的虚拟网络功能,将服务功能链划分成多个有端点的服务功能子链;图6所示的有重用虚拟网络功能的服务功能链划分成的多个有端点的服务功能子链如图7所示;
步骤435:对于步骤434的k,找到剩余socket中剩余节点数最多的socket,即遍历数组找到s使得ps最大,置x[s][jk-1]=1,将VNF部署在该socket的节点上,于是新的端点产生,返回步骤433;直到所有的VNF都已经部署,即对于所有的j∈{1,2,…,m},跳转步骤436;
步骤436:返回数组x[n][m],y[m],即得到重新部署后的VNF状况。
最后以对比实验来验证本发明的方法相对现有技术的有益效果。VNF部署的现有算法一般是贪心算法,即最大化重用VNF数目,在满足这个条件下尽可能实现跨域延迟最小。我们把这种部署称为状态1。但是本方案采用的算法是基于一种局部搜索的思想,因此算法可能从状态1跳转到更好的状态,也可能从不好的状态跳转到状态1。
实验中以socket数目、服务功能链长度比为200:40为例,测试了该情况下本发明方案的算法和现有的贪心算法的目标对比情况,实验结果如图9所示,横轴是实验次数,纵轴是目标结果,可以发现,本发明的方案的效果是一致好于现有的贪心算法的。
Claims (3)
1.一种基于Markov算法的面向NUMA架构的虚拟网络功能部署方法,其特征在于,所述方法包括以下步骤:
S10、根据用户的服务请求,将多个虚拟网络功能组成服务功能链;
S20、获取NUMA系统的节点部署情况、每个NUMA节点的剩余计算资源和NUMA节点之间的带宽资源,并根据NUMA系统的节点部署情况和虚拟网络功能重用机制,确定服务功能链中的虚拟网络功能可重用情况;
S30、根据服务功能链中的虚拟网络功能的可重用情况,以一条服务功能链的服务延迟取最小值为优化目标建立目标规划问题,并获得该问题满足约束条件的一个可行解,其中建立的目标规划如下:
优化目标:
约束条件:
其中,所涉及到的参数如下:
yk为重用指示函数,yk=1代表VNF rk重用,yk=0代表VNF rk不重用;
rk代表第k个VNF;
m是服务功能链的长度;
α为参数,α满足0≤α≤D,D代表一次跨域访存延迟;
numk代表rk需要的计算资源节点数;
bandwidthk代表rk需要的带宽资源;
S1,S2,…,Sn代表n个socket域;
pi代表Socket域Si的空节点数目;
bandwidth(Si,Sj)代表Socket Si和Socket Sj之间的可用带宽;
Ck={Si|VNF rkcan be reused in Si}代表VNFrk可被重用的节点位置;
R=(r1,r2,…,rm)代表一条服务功能链;
S40、利用Markov算法获得该目标规划问题的一个优化的部署方案,具体包括:
步骤41:首先随机选择一个可行的部署f0,将f0设为最优部署f*;
步骤42:随机选择服务功能链上的一个可重用虚拟网络功能rk,如果rk在原部署上是不重用,那么新部署置为重用,rk随机部署在一个可重用节点中;如果rk在原部署上是重用,那么新部署以的概率置为不重用,以的概率仍然保持重用并随机选择一个可重用节点;
步骤43:根据步骤42确定的虚拟网络功能重用情况,利用贪心算法确定一个新的部署f′;
步骤45:返回步骤S42迭代直到满足设置的收敛条件。
2.根据权利要求1所述的基于Markov算法的面向NUMA架构的虚拟网络功能部署方法,其特征在于,所述步骤S20中虚拟网络重用机制需满足如下条件:1)服务功能链中的虚拟网络功能已经在网络中部署;2)重用NUMA节点的计算资源充足。
3.根据权利要求1所述的基于Markov算法的面向NUMA架构的虚拟网络功能部署方法,其特征在于,所述步骤43中确定新部署的贪心算法如下:
步骤432:根据步骤S20确定的虚拟网络功能重用情况,对于任意的k,如果虚拟网络功能rk重用且部署在节点i上,则置y[k]=1,x[i][k]=1;
步骤433:根据重用的虚拟网络功能,将服务功能链划分成多个有端点的服务功能子链;
步骤435:对于步骤434的k,找到剩余socket中剩余节点数最多的socket,即遍历数组找到s使得ps最大,置x[s][jk-1]=1,将VNF部署在该socket的节点上,于是新的端点产生,返回步骤433;直到所有的VNF都已经部署,即对于所有的j∈{1,2,…,m},跳转步骤436;
步骤436:返回数组x[n][m],y[m],即得到重新部署后的VNF状况。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811354532.XA CN109547241B (zh) | 2018-11-14 | 2018-11-14 | 一种基于Markov算法的面向NUMA架构的虚拟网络功能部署方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811354532.XA CN109547241B (zh) | 2018-11-14 | 2018-11-14 | 一种基于Markov算法的面向NUMA架构的虚拟网络功能部署方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109547241A CN109547241A (zh) | 2019-03-29 |
CN109547241B true CN109547241B (zh) | 2021-07-30 |
Family
ID=65847520
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811354532.XA Active CN109547241B (zh) | 2018-11-14 | 2018-11-14 | 一种基于Markov算法的面向NUMA架构的虚拟网络功能部署方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109547241B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110535705B (zh) * | 2019-08-30 | 2022-04-26 | 西安邮电大学 | 一种自适应用户时延要求的服务功能链构建方法 |
CN111371616B (zh) * | 2020-03-05 | 2021-05-28 | 南京大学 | 一种面向numa架构服务器的虚拟网络功能链部署方法和系统 |
CN111404747B (zh) * | 2020-03-16 | 2022-09-16 | 广东技术师范大学 | 自适应的服务功能链并行处理的方法、设备及存储介质 |
CN111857972A (zh) * | 2020-07-29 | 2020-10-30 | 山东海量信息技术研究院 | 虚拟化网络功能vnf的部署方法、部署装置、部署设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107332913A (zh) * | 2017-07-04 | 2017-11-07 | 电子科技大学 | 一种5g移动网络中服务功能链的优化部署方法 |
CN107395506A (zh) * | 2017-09-07 | 2017-11-24 | 电子科技大学 | 一种传输时延优化的服务功能链部署方法 |
CN107666448A (zh) * | 2017-09-30 | 2018-02-06 | 重庆邮电大学 | 一种时延感知下的5g虚拟接入网映射方法 |
CN108494596A (zh) * | 2018-03-23 | 2018-09-04 | 西安电子科技大学 | 多个vnf间依赖的协同式构建与映射sfc方法 |
CN108684046A (zh) * | 2018-04-23 | 2018-10-19 | 重庆邮电大学 | 一种基于随机学习的接入网服务功能链部署方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10362122B2 (en) * | 2016-03-21 | 2019-07-23 | International Business Machines Corporation | Replacing a virtual network function in a network service |
-
2018
- 2018-11-14 CN CN201811354532.XA patent/CN109547241B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107332913A (zh) * | 2017-07-04 | 2017-11-07 | 电子科技大学 | 一种5g移动网络中服务功能链的优化部署方法 |
CN107395506A (zh) * | 2017-09-07 | 2017-11-24 | 电子科技大学 | 一种传输时延优化的服务功能链部署方法 |
CN107666448A (zh) * | 2017-09-30 | 2018-02-06 | 重庆邮电大学 | 一种时延感知下的5g虚拟接入网映射方法 |
CN108494596A (zh) * | 2018-03-23 | 2018-09-04 | 西安电子科技大学 | 多个vnf间依赖的协同式构建与映射sfc方法 |
CN108684046A (zh) * | 2018-04-23 | 2018-10-19 | 重庆邮电大学 | 一种基于随机学习的接入网服务功能链部署方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109547241A (zh) | 2019-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109547241B (zh) | 一种基于Markov算法的面向NUMA架构的虚拟网络功能部署方法 | |
Lera et al. | Availability-aware service placement policy in fog computing based on graph partitions | |
US11018979B2 (en) | System and method for network slicing for service-oriented networks | |
US9740534B2 (en) | System for controlling resources, control pattern generation apparatus, control apparatus, method for controlling resources and program | |
CN109358971B (zh) | 动态网络环境中快速且负载均衡的服务功能链部署方法 | |
CN109886693B (zh) | 区块链系统的共识实现方法、装置、设备和介质 | |
CN113835899B (zh) | 针对分布式图学习的数据融合方法及装置 | |
CN112585585A (zh) | 基于可扩展遗传算法的虚拟化系统的虚拟网络功能的联合放置和链接 | |
CN110673951A (zh) | 通用运行环境的拟态调度方法、系统及介质 | |
CN104917659B (zh) | 一种基于虚拟网络连接特性的虚拟网络映射方法 | |
CN108667657A (zh) | 一种面向sdn的基于局部特征信息的虚拟网络映射方法 | |
CN117041330B (zh) | 一种基于强化学习的边缘微服务细粒度部署方法及系统 | |
CN108616394A (zh) | 一种虚拟网络功能备份和部署方法 | |
CN112543151B (zh) | Sdn控制器部署方法、装置、电子设备和存储介质 | |
CN111371616A (zh) | 一种面向numa架构服务器的虚拟网络功能链部署方法和系统 | |
CN108347377B (zh) | 数据转发方法及装置 | |
CN112073237A (zh) | 一种云边架构中大规模目标网络构建方法 | |
CN115168162A (zh) | 容器环境基于ingress控制器多灰度发布方法、设备及存储介质 | |
Garg et al. | Heuristic and reinforcement learning algorithms for dynamic service placement on mobile edge cloud | |
Lieber et al. | The potential of diffusive load balancing at large scale | |
Huang et al. | RQAP: Resource and QoS Aware Placement of Service Function Chains in NFV-enabled Networks | |
CN115118666B (zh) | 一种负载重新分配方法及装置 | |
CN115550373A (zh) | 基于云平台管控的联合试验任务环境负载均衡建模方法 | |
CN116582407A (zh) | 一种基于深度强化学习的容器化微服务编排系统及方法 | |
CN115733888A (zh) | 一种边缘环境下支持多物联网应用自适应卸载的方法 |
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 |