CN111371616A - 一种面向numa架构服务器的虚拟网络功能链部署方法和系统 - Google Patents

一种面向numa架构服务器的虚拟网络功能链部署方法和系统 Download PDF

Info

Publication number
CN111371616A
CN111371616A CN202010148070.7A CN202010148070A CN111371616A CN 111371616 A CN111371616 A CN 111371616A CN 202010148070 A CN202010148070 A CN 202010148070A CN 111371616 A CN111371616 A CN 111371616A
Authority
CN
China
Prior art keywords
node
server
vnf
chain
numa
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
Application number
CN202010148070.7A
Other languages
English (en)
Other versions
CN111371616B (zh
Inventor
钱柱中
陈元
陆桑璐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University
Original Assignee
Nanjing University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing University filed Critical Nanjing University
Priority to CN202010148070.7A priority Critical patent/CN111371616B/zh
Publication of CN111371616A publication Critical patent/CN111371616A/zh
Application granted granted Critical
Publication of CN111371616B publication Critical patent/CN111371616B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45583Memory management, e.g. access or allocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45591Monitoring or debugging support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Abstract

本发明公开了一种面向NUMA架构服务器的虚拟网络功能链部署方法和系统。所述方法包括:根据服务器集群中每台服务器的容量信息,包括CPU数量、内存大小,以及待部署的网络功能服务链及其所需资源信息,建立符合真实情况的需求模型;利用基于蒙特卡洛树搜索的算法对建立的需求模型进行求解,得到最适合的部署方案。本发明解决了NUMA架构服务器中的VNF服务链的高效部署问题,可以将VNF服务链快速地部署到NUMA架构的服务器集群中,而且可以尽可能地减小由于NUMA服务器内存分布特性造成的性能损失,最大化地发挥NUMA服务器的处理性能。

Description

一种面向NUMA架构服务器的虚拟网络功能链部署方法和系统
技术领域
本发明涉及虚拟化技术,具体涉及一种虚拟网络功能链的部署方法和系统。
背景技术
网络功能虚拟化近些年来引起电信运营商、服务提供商和设备厂商等各方面的广泛关注,其中心思想就是把电信级设备从目前的专用平台迁移到通用的x86或x64服务器上,在通用的服务器上实现所需要的网络功能,实现了底层硬件和软件功能的解耦,颠覆了特定硬件设备对网络的限制。网络运营商可以实现更高的灵活性,并加速新服务的部署,便于后期维护、管理、整合和升级改造。同时随着计算的可扩展性需求和规模效应的提高,推动了云计算技术的发展。虚拟化是云计算的一个非常重要的特点,通过对资源的虚拟化,云计算平台可以灵活地按需提供服务。现阶段往往将网络功能虚拟化与云计算技术结合起来,通过将网络功能部署在云计算数据中心中的虚拟机上,即虚拟网络功能(VirtualNetwork Feature,VNF),可以让网络功能得到很强的灵活性和很好的可扩展性。网络功能服务链部署问题是网络功能虚拟化技术研究中的核心问题之一,虚拟网络功能部署的好坏会对整条服务链的性能产生巨大的影响。同时随着多处理器和大内存服务器的发展,服务器已全部采用非一致性内存访问(Non Uniform Memory Access Architecture,NUMA)架构,需要更加细粒度的部署策略,如果在NUMA服务器上忽略NUMA架构进行部署,由于NUMA架构的服务器上的内存分布特性,会造成严重的性能损失。所以在进行VNF服务链部署时,考虑NUMA架构对服务链造成的影响是一个非常重要的问题。
发明内容
发明目的:为了解决在NUMA架构的服务器上进行VNF服务链部署时由于NUMA内存分布特性问题产生的性能损失现象,本发明提供了一种面向NUMA架构服务器的高效VNF服务链部署方法和系统,能够减小这种性能损失。
技术方案:为了实现上述目的,本发明采用如下的技术方案:
第一方面,一种面向NMUA架构服务器的虚拟网络功能链部署方法,包括以下步骤:
根据服务器集群中每台服务器的容量信息,包括CPU数量、内存大小,以及待部署的网络功能服务链及其所需资源信息,建立符合真实情况的需求模型;其中,一台NUMA架构的服务器中,CPU分为多个Socket,每个Socket中都各自有一些核。
利用基于蒙特卡洛树搜索的算法对建立的需求模型进行求解,得到最适合的部署方案。
其中,所述需求模型以最大化VNF链的吞吐量之和为目标,同时满足内存、CPU、链路带宽资源的约束,将VNF链中的每个VNF部署在服务器的Socket上。具体描述如下:
问题的输入为服务器的集合V,第i台服务器的上、下行链路带宽Wu i与Wd i,第i台服务器Socket的集合Ni,第i台服务器第j个Socket所对应的NUMA节点的内存带宽上限Dij,第k台服务器的Socket i、j之间的QPI带宽
Figure BDA0002401464220000021
第k台服务器上第i个Socket的资源
Figure BDA0002401464220000022
VNF链的集合U,第k条链的VNF集合Sk,第k条链上第i个VNF需要的资源
Figure BDA0002401464220000023
第k条链上第i个VNF进出流量的比例
Figure BDA0002401464220000024
Fki表示第k条链上第i与第i+1个VNF之间流的大小,即流出第i个VNF的网络流量,定义Fk0代表进入链上首个VNF的流量,也就是进入该服务链的流量;
问题的输出为决策变量
Figure BDA0002401464220000025
当决策变量为1时表示第k条链的第l个VNF在第i台服务器的第j个Socket上,否则为0;
问题的优化目标为最大化VNF链的吞吐量之和,即Maximize:
Figure BDA0002401464220000026
约束条件为:
对于
Figure BDA0002401464220000027
Figure BDA0002401464220000028
对于
Figure BDA0002401464220000029
Figure BDA00024014642200000210
对于
Figure BDA00024014642200000211
Figure BDA00024014642200000212
对于
Figure BDA00024014642200000213
Figure BDA00024014642200000214
对于
Figure BDA00024014642200000215
Figure BDA0002401464220000031
对于
Figure BDA0002401464220000032
Figure BDA0002401464220000033
对于
Figure BDA0002401464220000034
Figure BDA0002401464220000035
公式(1)约束了每条VNF服务链上的每个VNF都被部署,且只能被部署一次。
公式(2)约束了每台服务器上的每个Socket上所部署的VNF所需资源总和不超过该Socket的资源总量,包括CPU核心数和内存容量。
公式(3)约束了每台服务器上的每个Socket上的VNF对内存带宽的使用不超过当前Socket所对应的NUMA节点的内存带宽上限。
公式(4)约束了每条链上的VNF之间流的比例与流量之间的关系。
公式(5)约束了每台服务器上不同Socket之间的VNF互相进行的数据传输不超过Socket之间的QPI带宽的上限。
公式(6)(7)约束了每台服务器上的VNF所需的带宽不超过该服务器的上下行带宽。
进一步地,所述蒙特卡洛树按下述方式构建:首先建立根节点,每个节点的所有子节点代表着下一个VNF的所有可能的放置情况,然后循环执行节点选择、节点扩展、模拟、反向传播的过程直到运行一定的时间或次数为止。
进一步地,所述循环过程包括:
1)节点选择:从根节点开始并选择连续的子节点,直到到达叶子节点,叶子节点是尚未进行模拟的任何节点;
2)节点扩展:如果该节点没有子节点,并且该节点不是终止节点,则创建一个或多个子节点并从其中选择一个子节点,子节点数量取决于可行解;其中,到达某个节点后,即放置了一个VNF后,下一个VNF无法被放置到任何服务器上或完成了所有的VNF放置,则该节点称为终止节点;
3)模拟:从该节点开始完成一个随机模拟,随机选择子节点,即随机放置一个VNF(需满足约束条件),若未到达终止节点,则再随机选择子节点,直到到达终止节点;
4)反向传播:使用上一步模拟的结果从当前节点往前遍历,更新路径上节点中的信息。包括2个信息,首先将每个节点的访问次数加1,其次将每个节点的权值加上对应VNF放置的优化目标,即所有VNF服务链的吞吐量之和。
进一步地,节点选择时,优先选择尚未访问过的节点,若都访问过,则根据以下公式进行降序选择:
Figure BDA0002401464220000041
其中,Wi代表第i次迭代后节点的权值,ni代表第i次迭代后节点的访问次数,Ni代表第i次迭代后该节点的父节点的访问次数,c是勘探参数。
第二方面,一种面向NUMA架构服务器的虚拟网络功能链部署系统,包括控制模块、监控模块、虚拟机管理模块和虚拟网络功能管理模块,所述控制模块根据需要被部署的虚拟网络功能链,自动地根据NUMA服务器的当前状态,与虚拟机管理模块和虚拟网络功能管理模块交互,将虚拟网络功能部署到某个服务器上,更具体地,部署到服务器的某个Socket节点上,其中部署方案根据本发明第一方面所述的方法计算得到;所述监控模块时刻监控服务器以及该服务器上的Socket状态信息;所述虚拟机管理模块根据控制模块的指令请求在指定的服务器中创建虚拟机,并将虚拟机所使用的CPU与内存绑定到指定的Socket节点中;所述虚拟网络功能管理模块根据控制模块的指令请求将虚拟网络功能部署到服务器中的虚拟机中。
有益效果:本发明的方法解决了NUMA架构服务器中的VNF服务链的高效部署问题,可以将VNF服务链快速地部署到NUMA架构的服务器集群中,并使用一个基于蒙特卡洛树搜索的算法来得到最适合的部署方案。利用本发明可以在NUMA架构服务器集群中,高效地完成VNF服务链的部署工作,不仅可以使每台NUMA服务器可以充分容纳其部署的VNF实例,而且可以尽可能地减小由于NUMA服务器内存分布特性造成的性能损失,最大化地发挥NUMA服务器的处理性能。
附图说明
图1是本发明的虚拟网络功能链部署系统架构图;
图2是本发明的虚拟网络功能链部署方法流程图;
图3是示意性的NUMA服务器内部Socket的结构图;
图4是本发明的蒙特卡洛树搜索算法流程图。
具体实施方式
下面结合附图对本发明的技术方案作进一步说明。
本发明提出一种面向NUMA架构服务器的虚拟网络功能链部署方法和系统,在一个实施方式中,将方法与一个VNF服务链部署系统相结合,在该系统中实现本发明所提的方法。该系统包括控制模块、监控模块、虚拟机(VM)管理模块和VNF管理模块。控制模块根据需要被部署的VNF服务链,自动地根据NUMA服务器的当前状态,与虚拟机(VM)管理模块和VNF管理模块交互,将VNF部署到某个服务器上,更具体地,部署到服务器的某个Socket节点上,其中部署方案根据本发明所提的部署方法计算得到。监控模块时刻监控服务器以及该服务器上的Socket状态信息。VM管理模块根据控制模块的指令请求在指定的服务器中创建虚拟机,并将虚拟机所使用的CPU与内存绑定到指定的Socket节点中。VNF管理模块根据控制模块的指令请求将VNF部署到服务器中的虚拟机中。
本实施以NUMA架构服务器集群为基础,在集群中的机器中运行各模块,其中一台作为控制中心运行控制模块程序,其他服务器运行监控模块、VM管理模块和VNF管理模块,具体的系统架构图如图1所示。
参照图2,本发明的部署方法包括以下步骤:
S10,根据服务器集群中每台服务器的容量信息,包括CPU数量、内存大小,以及待部署的网络功能服务链及其所需资源信息,建立符合真实情况的需求模型。其中,一台NUMA架构的服务器中,CPU分为多个Socket,每个Socket中都各自有一些核。
图3所示为NUMA架构服务器内部Socket的结构图示意,考虑内存分布特性,所述问题的模型为:
问题的输入为服务器的集合V,第i台服务器的上、下行链路带宽Wu i与Wd i,第i台服务器Socket的集合Ni,第i台服务器第j个Socket所对应的NUMA节点的内存带宽上限Dij,第k台服务器的Socket i、j之间的QPI带宽
Figure BDA0002401464220000051
第k台服务器上第i个Socket的资源
Figure BDA0002401464220000052
VNF链的集合U,第k条链的VNF集合Sk,第k条链上第i个VNF需要的资源
Figure BDA0002401464220000053
第k条链上第i个VNF进出流量的比例
Figure BDA0002401464220000054
Fki表示第k条链上第i与第i+1个VNF之间流的大小,即流出第i个VNF的网络流量,定义Fk0代表进入链上首个VNF的流量,也就是进入该服务链的流量;
问题的输出为决策变量
Figure BDA0002401464220000055
当决策变量为1时表示第k条链的第l个VNF在第i台服务器的第j个Socket上,否则为0。
问题模型中定义的符号如表1所示。
表1模型中定义的符号
Figure BDA0002401464220000061
所述优化问题包括,问题的优化目标为:最大化VNF链的吞吐量之和,即Maximize:
Figure BDA0002401464220000062
约束条件为:
对于
Figure BDA0002401464220000063
Figure BDA0002401464220000064
对于
Figure BDA0002401464220000065
Figure BDA0002401464220000066
对于
Figure BDA0002401464220000067
Figure BDA0002401464220000068
对于
Figure BDA0002401464220000069
Figure BDA0002401464220000071
对于
Figure BDA0002401464220000072
Figure BDA0002401464220000073
对于
Figure BDA0002401464220000074
Figure BDA0002401464220000075
对于
Figure BDA0002401464220000076
Figure BDA0002401464220000077
S20,利用基于蒙特卡洛树搜索的算法对建立的需求模型进行求解,得到最适合的部署方案。
所述算法为一个基于蒙特卡洛树搜索(Monte Carlo Tree Search,MCTS)的VNF服务链部署算法,该算法需要一个蒙特卡洛树,在该树中进行搜索,特别需要注意的是该蒙特卡洛树的规模是随着问题规模成指数级别增长的,该树搜索算法其实并不需要先完全构建出树,而是在搜索的过程中逐步的构建,并且该算法并不需要将树完整地构建出来。
算法首先初始化树,即建立根节点,每个节点的所有子节点代表着下一个VNF的所有可能的放置情况,然后循环以下过程直到运行一定的时间或次数为止,该时间或次数根据经验来决定。如图4所示,循环主要分为4个步骤:
1)节点选择(Tree traversal),从根节点开始并选择连续的子节点,直到到达叶子节点。叶子节点是尚未进行模拟(Simulation,也叫Rollout)的任何节点。
2)节点扩展(Node expansion),如果该节点没有子节点,并且该节点不是终止节点,则创建一个(或多个)子节点并从其中选择一个子节点,子节点数量取决于可行解。其中,到达某个节点后,即代表放置了一个VNF后,下一个VNF无法被放置到任何服务器上或完成了所有的VNF放置,则该节点称为终止节点。
3)模拟(Simulation),从该节点开始完成一个随机模拟,随机选择子节点,即随机放置一个VNF(需满足约束条件),若未到达终止节点,则再随机选择子节点,直到到达终止节点。
4)反向传播(Backpropagation),使用上一步模拟的结果从当前节点往前遍历,更新路径上节点中的信息。包括2个信息,首先将每个节点的访问次数加1,其次将每个节点的权值加上对应VNF放置的优化目标,即所有VNF服务链的吞吐量之和。
节点选择时,优先选择尚未访问过的节点,若都访问过,则根据以下公式进行降序选择,
Figure BDA0002401464220000081
其中,Wi代表第i次迭代后节点的权值,ni代表第i次迭代后节点的访问次数,Ni代表第i次迭代后该节点的父节点的访问次数,c是勘探参数,取√2多数情况下表现比较好,在实践中通常根据经验选择。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。

Claims (7)

1.一种面向NUMA架构服务器的虚拟功能链部署方法,其特征在于,包括以下步骤:
根据服务器集群中每台服务器的容量信息,包括CPU数量、内存大小,以及待部署的网络功能服务链及其所需资源信息,建立需求模型;其中,一台NUMA架构的服务器中,CPU分为多个Socket,每个Socket中都各自有一些核;
利用基于蒙特卡洛树搜索的算法对所建立的需求模型的进行求解,得到部署方案。
2.根据权利要求1所述的面向NUMA架构服务器的虚拟功能链部署方法,其特征在于,所述需求模型以最大化VNF链的吞吐量之和为目标,同时满足内存、CPU、链路带宽资源的约束,将VNF链中的每个VNF部署在服务器的Socket上。
3.根据权利要求2所述的面向NUMA架构服务器的虚拟功能链部署方法,其特征在于,所述需求模型的描述如下:
问题的输入为服务器的集合V,第i台服务器的上、下行链路带宽Wu i与Wd i,第i台服务器Socket的集合Ni,第i台服务器第j个Socket所对应的NUMA节点的内存带宽上限Dij,第k台服务器的Socket i、j之间的QPI带宽
Figure FDA0002401464210000011
第k台服务器上第i个Socket的资源
Figure FDA0002401464210000012
VNF链的集合U,第k条链的VNF集合Sk,第k条链上第i个VNF需要的资源
Figure FDA0002401464210000013
第k条链上第i个VNF进出流量的比例
Figure FDA0002401464210000014
以Fki表示第k条链上第i与第i+1个VNF之间流的大小,定义Fk0代表进入链上首个VNF的流量;
问题的输出为决策变量
Figure FDA0002401464210000015
当决策变量为1时表示第k条链的第l个VNF在第i台服务器的第j个Socket上,否则为0;
问题的优化目标为最大化VNF链的吞吐量之和,如下:
Figure FDA0002401464210000016
约束条件为:
对于
Figure FDA0002401464210000017
Figure FDA0002401464210000018
对于
Figure FDA0002401464210000019
Figure FDA00024014642100000110
对于
Figure FDA0002401464210000021
Figure FDA0002401464210000022
对于
Figure FDA0002401464210000023
Figure FDA0002401464210000024
对于
Figure FDA0002401464210000025
Figure FDA0002401464210000026
对于
Figure FDA0002401464210000027
Figure FDA0002401464210000028
对于
Figure FDA0002401464210000029
Figure FDA00024014642100000210
4.根据权利要求1所述的面向NUMA架构服务器的虚拟功能链部署方法,其特征在于,所述蒙特卡洛树按下述方式构建:首先建立根节点,每个节点的所有子节点代表着下一个VNF的所有可能的放置情况,然后循环执行节点选择、节点扩展、模拟、反向传播的过程直到运行一定的时间或次数为止。
5.根据权利要求4所述的面向NUMA架构服务器的虚拟功能链部署方法,其特征在于,所述循环过程包括:
1)节点选择:从根节点开始并选择连续的子节点,直到到达叶子节点,叶子节点是尚未进行模拟的任何节点;
2)节点扩展:如果该节点没有子节点,并且该节点不是终止节点,则创建一个或多个子节点并从其中选择一个子节点,子节点数量取决于可行解;其中,到达某个节点后,下一个VNF无法被放置到任何服务器上或完成了所有的VNF放置,则该节点称为终止节点;
3)模拟:从该节点开始完成一个随机模拟,满足约束条件下随机放置一个VNF,若未到达终止节点,则再随机选择子节点,直到到达终止节点;
4)反向传播:使用上一步模拟的结果从当前节点往前遍历,更新路径上节点中的信息,包括2个信息,首先将每个节点的访问次数加1,其次将每个节点的权值加上对应VNF放置的优化目标。
6.根据权利要求5所述的面向NUMA架构服务器的虚拟功能链部署方法,其特征在于,节点选择时,优先选择尚未访问过的节点,若都访问过,则根据以下公式进行降序选择:
Figure FDA0002401464210000031
其中,Wi代表第i次迭代后节点的权值,ni代表第i次迭代后节点的访问次数,Ni代表第i次迭代后该节点的父节点的访问次数,c是勘探参数。
7.一种面向NUMA架构服务器的虚拟网络功能链部署系统,其特征在于,包括控制模块、监控模块、虚拟机管理模块和虚拟网络功能管理模块,所述控制模块根据需要被部署的虚拟网络功能链,自动地根据NUMA服务器的当前状态,与虚拟机管理模块和虚拟网络功能管理模块交互,将虚拟网络功能部署到某个服务器上,其中部署方案根据权利要求1-6中任一项所述的方法计算得到;所述监控模块时刻监控服务器以及该服务器上的Socket状态信息;所述虚拟机管理模块根据控制模块的指令请求在指定的服务器中创建虚拟机,并将虚拟机所使用的CPU与内存绑定到指定的Socket节点中;所述虚拟网络功能管理模块根据控制模块的指令请求将虚拟网络功能部署到服务器中的虚拟机中。
CN202010148070.7A 2020-03-05 2020-03-05 一种面向numa架构服务器的虚拟网络功能链部署方法和系统 Active CN111371616B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010148070.7A CN111371616B (zh) 2020-03-05 2020-03-05 一种面向numa架构服务器的虚拟网络功能链部署方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010148070.7A CN111371616B (zh) 2020-03-05 2020-03-05 一种面向numa架构服务器的虚拟网络功能链部署方法和系统

Publications (2)

Publication Number Publication Date
CN111371616A true CN111371616A (zh) 2020-07-03
CN111371616B CN111371616B (zh) 2021-05-28

Family

ID=71210335

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010148070.7A Active CN111371616B (zh) 2020-03-05 2020-03-05 一种面向numa架构服务器的虚拟网络功能链部署方法和系统

Country Status (1)

Country Link
CN (1) CN111371616B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112083933A (zh) * 2020-08-27 2020-12-15 重庆大学 一种基于强化学习的服务功能链部署方法
CN113687949A (zh) * 2021-08-31 2021-11-23 中国联合网络通信集团有限公司 服务器部署方法、装置、部署设备及存储介质
CN115001985A (zh) * 2021-02-23 2022-09-02 中国电信股份有限公司 面向多服务的虚拟网络功能高可用部署方法
WO2023179580A1 (zh) * 2022-03-25 2023-09-28 华为技术有限公司 一种部署vnf的方法、装置及设备
CN117527590A (zh) * 2024-01-04 2024-02-06 湖北省楚天云有限公司 基于边缘网络的微服务部署与请求路由方法、系统及介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170288971A1 (en) * 2016-04-04 2017-10-05 Brocade Communications Systems, Inc. Constraint-Based Virtual Network Function Placement
WO2018118318A1 (en) * 2016-12-20 2018-06-28 Intel Corporation Pinning of virtual network function (vnf) deployments using hardware metrics
CN109547241A (zh) * 2018-11-14 2019-03-29 南京大学 一种基于Markov算法的面向NUMA架构的虚拟网络功能部署方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170288971A1 (en) * 2016-04-04 2017-10-05 Brocade Communications Systems, Inc. Constraint-Based Virtual Network Function Placement
WO2018118318A1 (en) * 2016-12-20 2018-06-28 Intel Corporation Pinning of virtual network function (vnf) deployments using hardware metrics
CN109547241A (zh) * 2018-11-14 2019-03-29 南京大学 一种基于Markov算法的面向NUMA架构的虚拟网络功能部署方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
许道强等: "面向NUMA架构的虚拟网络功能部署技术研究", 《计算机工程与应用》 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112083933A (zh) * 2020-08-27 2020-12-15 重庆大学 一种基于强化学习的服务功能链部署方法
CN112083933B (zh) * 2020-08-27 2023-07-04 重庆大学 一种基于强化学习的服务功能链部署方法
CN115001985A (zh) * 2021-02-23 2022-09-02 中国电信股份有限公司 面向多服务的虚拟网络功能高可用部署方法
CN115001985B (zh) * 2021-02-23 2024-04-09 中国电信股份有限公司 面向多服务的虚拟网络功能高可用部署方法
CN113687949A (zh) * 2021-08-31 2021-11-23 中国联合网络通信集团有限公司 服务器部署方法、装置、部署设备及存储介质
CN113687949B (zh) * 2021-08-31 2023-01-31 中国联合网络通信集团有限公司 服务器部署方法、装置、部署设备及存储介质
WO2023179580A1 (zh) * 2022-03-25 2023-09-28 华为技术有限公司 一种部署vnf的方法、装置及设备
CN117527590A (zh) * 2024-01-04 2024-02-06 湖北省楚天云有限公司 基于边缘网络的微服务部署与请求路由方法、系统及介质

Also Published As

Publication number Publication date
CN111371616B (zh) 2021-05-28

Similar Documents

Publication Publication Date Title
CN111371616B (zh) 一种面向numa架构服务器的虚拟网络功能链部署方法和系统
CN108540406B (zh) 一种基于混合云计算的网络卸载方法
CN110297670B (zh) 一种提高容器云上分布式任务训练效率的方法及系统
CN113708972A (zh) 一种服务功能链部署方法、装置、电子设备及存储介质
CN113220457A (zh) 模型部署方法、模型部署装置、终端设备及可读存储介质
CN108810115B (zh) 一种适用于分布式数据库的负载均衡方法、装置及服务器
CN110233802B (zh) 一种构建一主链多侧链的区块链架构的方法
CN108965014A (zh) QoS感知的服务链备份方法及系统
US11055139B2 (en) Smart accelerator allocation and reclamation for deep learning jobs in a computing cluster
CN110798517A (zh) 去中心化集群负载均衡方法、系统、移动终端及存储介质
CN110308987B (zh) 一种更新容器云上分布式训练任务连接参数的方法
CN111324630B (zh) 基于mpi的神经网络架构搜索并行化方法和设备
CN112073237B (zh) 一种云边架构中大规模目标网络构建方法
Song et al. Gaia scheduler: A kubernetes-based scheduler framework
Kaya et al. Iterative-improvement-based heuristics for adaptive scheduling of tasks sharing files on heterogeneous master-slave environments
CN108984483B (zh) 基于dag及矩阵重排的电力系统稀疏矩阵求解方法和系统
CN109740725A (zh) 神经网络模型运行方法及装置、以及存储介质
CN109150574B (zh) 一种规模网络复现方法
Yuan et al. Topology-oriented virtual network embedding approach for data centers
CN107332814A (zh) 一种请求消息传输方法及装置
CN115866059B (zh) 一种区块链节点调度方法和装置
Márquez et al. A load balancing schema for agent-based spmd applications
CN116204321A (zh) 模型获取、模型部署方法、装置、设备和介质
CN112446484A (zh) 一种多任务训练集群智能网络系统及集群网络优化方法
CN113641448A (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