CN115913952B - 基于cpu+dpu平台的多目标服务功能链的高效并行化和部署方法 - Google Patents

基于cpu+dpu平台的多目标服务功能链的高效并行化和部署方法 Download PDF

Info

Publication number
CN115913952B
CN115913952B CN202211352904.1A CN202211352904A CN115913952B CN 115913952 B CN115913952 B CN 115913952B CN 202211352904 A CN202211352904 A CN 202211352904A CN 115913952 B CN115913952 B CN 115913952B
Authority
CN
China
Prior art keywords
sfc
deployment
dpu
vnf
cpu
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
Application number
CN202211352904.1A
Other languages
English (en)
Other versions
CN115913952A (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 of Aeronautics and Astronautics
Original Assignee
Nanjing University of Aeronautics and Astronautics
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 of Aeronautics and Astronautics filed Critical Nanjing University of Aeronautics and Astronautics
Priority to CN202211352904.1A priority Critical patent/CN115913952B/zh
Publication of CN115913952A publication Critical patent/CN115913952A/zh
Application granted granted Critical
Publication of CN115913952B publication Critical patent/CN115913952B/zh
Priority to US18/485,205 priority patent/US11936758B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5066Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
    • 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/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • H04L41/0897Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities by horizontal or vertical scaling of resources, or by migrating entities, e.g. virtual resources or entities
    • 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/12Discovery or management of network topologies
    • H04L41/122Discovery or management of network topologies of virtualised topologies, e.g. software-defined networks [SDN] or network function virtualisation [NFV]
    • 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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/16Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
    • 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/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • H04L41/5054Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于CPU+DPU平台的多目标服务功能链的高效并行化和部署方法,主要用于解决当前传统计算架构和传统SFC部署系统面临的转发性能下降、场景和需求多样化等问题。所述方法主要通过构建一个异构计算架构来解决多目标部署问题,该架构由编排器和基于CPU+DPU结构的服务器组成,编排器负责接收来自网络运营商的SFC请求,运行基于深度强化学习的SFC部署算法包括并行策略、VNF拓扑顺序策略和DPU处理策略以获得每个请求的最佳部署方案,然后调用资源管理模块来管理资源,最后调用驱动模块将部署方案传递给放置的服务器,由服务器根据部署方案分别使用CPU或DPU完成对SFC的部署。

Description

基于CPU+DPU平台的多目标服务功能链的高效并行化和部署 方法
技术领域
本发明属于服务功能链编排技术,具体涉及一种基于CPU+DPU平台的多目标服务功能链的高效并行化和部署方法。
背景技术
传统基于中央处理单元(CPU)完成数据转发的模式出现瓶颈,仅由CPU组成的计算架构已无法满足多样化的场景和业务需求。一方面,由于摩尔定律放缓,网络带宽和连接数的剧增比数据的通路更宽、更密,直接将处于端、边、云各处的计算节点暴露在了剧增的数据量下,CPU的算力增长速度与网络带宽的增长速度呈现“剪刀差”;另一方面,在高并发转发工作中,CPU的串行计算模式难以发挥最大计算能力。
网络功能虚拟化(NFV)的出现,为设计、协调、部署和规范各种移动服务以支持日益复杂和多变的服务请求提供了一种新颖的方式,使SFC的部署更加灵活和敏捷。目前的服务功能链(SFC)部署系统专注于优化网络资源利用率,没有考虑到服务需求的多样性,以及服务转发性能的下降。
基于数据处理单元(DPU)的云架构按需卸载和加速网络和存储系统,与图形处理单元(GPU)、现场可编程门阵列(FPGA)和特定应用集成电路(ASIC)相比,解放了更高成本的主机CPU算力,可以更经济有效地获得极致性能。DPU引发的架构变革一定程度上提升了整个数据中心资源池的能效成本比和公有云厂商的收益成本比,未来DPU可以覆盖越来越多的需求和场景,对此,基于DPU解决当前传统计算架构和传统SFC部署系统面临的一些问题是本发明研究内容。
发明内容
发明目的:为了解决当前传统计算架构和传统SFC部署系统面临的转发性能下降、场景和需求多样化等问题,本发明提供一种基于CPU+DPU平台的多目标服务功能链的高效并行化和部署方法。
技术方案:一种基于CPU+DPU平台的多目标服务功能链的高效并行化和部署方法,包括如下步骤:
(1)构建一个异构计算架构用于解决多目标部署问题,所述的异构计算架包括一个负责管理和协调的编排器和基于CPU+DPU结构的服务器;
(2)依据虚拟网络功能(VNF)间的独立性,通过SFC并行策略将串行SFC转化为并行SFC,据此解决SFC并行问题;
所述的SFC并行问题的目标函数是最小化由数据包复制和合并引起的额外的资源消耗和时延:
min(αC+βΔd)
其中α和β分别表示额外的资源消耗和时延的权重系数,表示数据包复制和合并引起的额外资源消耗,/>表示数据包复制和合并引起的额外时延;
所述的SFC并行策略目的是根据VNF之间的依赖关系识别链中的VNF以找到所有可以并行执行的链;
(3)针对某一时刻多条SFC同时到达的情况,采用VNF拓扑顺序算法,按照该算法得到的拓扑顺序部署VNF,并结合VNF的共享和缩放特性降低时延;
所述的VNF拓扑顺序算法用于构建一个关于若干条SFC的VNF拓扑顺序,按照该顺序部署VNF实现降低时延;
(4)针对实时性要求高的服务请求采用DPU处理策略,所述DPU处理策略用于处理包括网络协议处理、数据加解密、数据压缩在内的计算任务,以节省CPU计算资源并减少时延;
如果某一时刻到达的请求集中有高优先级请求,判断该请求中是否有负责该数据处理任务的VNF,若有则使用DPU进行快速处理,若没有,则使用CPU进行处理;
(5)提出基于深度强化学习的SFC异构部署算法,该异构算法能够针对不同时刻到达请求的数量和情况分别完成对SFC的部署;
所述的基于深度强化学习的SFC异构部署算法针对不同时刻到达请求的数量和情况分别采用不同的策略进行处理,即并行策略、VNF拓扑顺序策略和DPU处理策略,以此实现对SFC的部署。
进一步的,步骤(1)所述的异构计算架构具体描述如下:
该架构由编排器和服务器组成,其中编排器包括SFC部署算法模块,资源管理模块以及驱动模块;服务器包括CPU、DPU以及连接CPU和DPU的总线。编排器负责管理和部署到达的SFC,而由异构计算结构组成的服务器则负责根据编排器传达的部署策略依次处理不同SFC中的VNF。其中编排器的具体任务包括接收来自网络运营商的SFC请求,运行SFC部署算法以确定哪些SFC被接受以及这些被接受的SFC如何被放置。为了考虑不同请求的不同情况,该算法将分别调用并行策略、VNF拓扑顺序策略和DPU处理策略,以获得每个请求的最佳部署方案,然后调用资源管理模块来管理资源,最后调用驱动模块将部署方案传递给放置的服务器,由服务器根据部署方案分别使用CPU或DPU完成对SFC的部署。
进一步的,步骤(1)所述的多目标SFC部署问题具体描述如下:
SFC部署问题的目标函数如下:
min(f1+f2+f3)
s.t.C1,C2,C3
对于f1,Dμ为总体响应时延,即
其中为通信时延,/>为处理时延,/>为传输时延,/>为平均排队时延。
对于f2为总吞吐量,其中二进制变量/>表示rμ是否被接受,Bμ为SFC的最小带宽,τr=l*Δ表示SFC的生存时间。
对于f3,C(τ)表示总的部署成本,即
C(τ)=SC(τ)+Cscale(τ)+CDPU(τ)
SC(τ)表示总运营成本,即为服务器打开成本和成功放置VNF的成本之和:
表示请求rμ∈R中,VNF/>是否部署在服务器节点ni∈N上,/>表示请求rμ∈R中,虚拟链路/>是否映射到物理链路ej∈E上,ζc和ζB分别表示资源和带宽的单位成本,/>表示VNF/>的资源需求,ζO表示服务器打开成本。
表示总缩放成本,其中Ch表示水平缩放的成本,表示VNF/>是否进行水平缩放。
CDPU(τ)表示DPU的总使用成本,定义如下:
其中,和/>使用DPU时资源和带宽的单位成本,/>表示VNF/>是否使用DPU进行处理。
资源约束如下:
其中,表示部署在节点ni∈N上的VNF/>的服务实例的数量,/>表示节点ni∈N的资源(CPU和memory)大小。
带宽约束如下:
其中,ar,τ表示请求rμ∈R是否仍在服务当中,表示节点ni∈N的带宽大小。
延迟约束如下:
其中,表示最大最大端到端延迟大小。
进一步的,步骤(2)所述的SFC并行问题的具体描述如下:
在SFC中,某些VNF可以独立工作而不影响其他VNF,所以可以将串行SFC转换为并行SFC。然而,并不是SFC中的所有VNF都可以并行工作,如果当两个VNF都修改流的内容或违反依赖性约束时,两个VNF的操作是冲突的。只有当VNF在SFC中相互独立时,才能在VNF之间并行处理;否则,网络和服务策略的正确性可能会被破坏。
本发明所述方法将VNF分成两种类型:monitors和shapers,其中monitors负责监测流量而不作任何修改,而shapers用来处理和修改流量。由于SFC中的VNF必须按照特定的顺序应用于每个数据包流,因此它们形成了一种依赖关系。本发明中规定,如果一个VNF在另一个VNF/>之前,称/>依赖于/>记为/>
为了并行地处理数据包,需要两个功能,即复制功能和合并功能。
当一个数据包进来时,复制功能会复制该数据包并将其发送给可以并行处理的VNF。在数据包被处理后,复制的数据包被合并功能合并。数据包复制和合并会引起额外的资源消耗和时延,因此在SFC并行问题中,目标函数是最小化由数据包复制和合并引起的额外的资源消耗和时延:
min(αC+βΔd)
其中α和β分别表示额外的资源消耗和时延的权重系数。
C表示数据包复制和合并引起的额外资源消耗,公式如下:
其中B是一组并行分支,ΦB表示B的并行度,U表示数据包的大小。
数据包复制和合并引起的额外延迟Δd可表示为:
其中Vμ是请求R中第μ个SFC的数据量。
对于SFC并行问题,引入流量约束。用Oc表示rμ中复制节点的集合,Om表示rμ中合并节点的集合。Oc(ni)和Om(ni)分别表示rμ中复制节点和合并节点的数量。对于SFC rμ,除了复制节点、合并节点、源节点和目的节点不满足流量守恒外,所有中间节点都满足流量守恒,即:
如果源节点是一个复制节点,则需要满足该约束条件:
如果目的节点是一个合并节点,则需要满足如下约束条件:
对于其他节点是复制节点的情况,应该满足以下公式:
对于其他节点是合并节点的情况,需要满足以下公式:
进一步的,步骤(2)所述的SFC并行策略目的是根据VNF之间的依赖关系识别链中的VNF以找到所有可以并行执行的链。所述SFC并行策略具体算法流程如下:
21)初始化分支链集合B、主链S,monitor集合M;
22)遍历rμ,如果为monitor,首先初始化一个分支链b∈B,然后将/>加入b以及M中;如果/>为shaper,则将其加入主链S中,此时在M中搜索/>所依赖的monitor,对于每一个这样的monitor,比如k∈M,有一个目前以k为终点的分支链,然后将k指向/>从而将分支链扩展到以/>为终点,并从M中移除k;
23)调用路径搜索算法找到所有可以并行执行的路径集合PATH;
24)返回分支链集合B、主链S以及路径集合PATH。
进一步的,步骤(3)所述的VNF拓扑顺序算法的目的是找到一个关于多条SFC的VNF拓扑顺序,按照该顺序部署VNF能够降低时延,具体算法流程如下:
31)初始化f为源节点;
32)遍历同一时刻到达的请求集合R,调用算法1得到分支链集合B和主链S以及路径集合PATH,并根据路径集合PATH求得所有路径中时延最大的路径,将其加入到集合C中;
33)遍历C,创建有向加权图graph=(F,ω),F为VNFs的集合;
34)调用最小反馈弧集算法求graph的最小反馈弧集,并验证所求拓扑顺序是否满足不同链间VNF的依赖关系,如果满足则返回拓扑顺序,否则返回False(即违反了依赖条件,不能使用该算法)。
进一步的,步骤(4)所述的DPU处理策略具体描述如下:
所述的DPU处理策略目的是接手CPU不擅长的网络协议处理、数据加解密、数据压缩等数据处理任务,以节省CPU计算资源并减少时延。
如果某一时刻到达的请求集中有高优先级请求,判断该请求中是否有负责网络协议处理、数据加解密、数据压缩等数据处理任务的VNF,若有则使用DPU进行快速处理,若没有,则使用CPU进行处理。
进一步的,步骤(5)所述的基于深度强化学习的SFC异构部署算法的目的是针对不同时刻到达请求的数量和情况分别采用不同的策略进行处理,即并行策略、VNF拓扑顺序策略和DPU处理策略,以便更好地完成对SFC的部署。具体算法流程如下:
51)系统先删除超时请求,经过优先级判断器将到达的请求R按照实时性进行划分,实时性高的划分为高优先级R_high,实时性低的划分为低优先级R_low;
52)初始化时隙τ;
53)根据R_high和R_low的数量决定采用何种策略对SFC进行处理;
54)构建神经网络模型并训练,将当前物理网络的状态和正在处理的请求的特征以及上述信息作为输入,通过神经网络的计算,输出每个VNF的部署策略;
55)更新网络状态。
有益效果:与现有技术相比,本发明所述方法用DPU解决当前传统计算架构和传统SFC部署系统,通过CPU和DPU结合的方式解放了CPU不擅长的网络协议处理、数据加解密、数据压缩等数据处理任务,节约了计算资源,优化了处理效率。本发明基于该方法的实施包括提供一种VNF拓扑顺序算法、一种DPU处理策略和一种SFC并行策略,为设计、协调、部署和规范各种移动服务以支持日益复杂和多变的服务请求提供了一种新颖的方式,使SFC的部署更加灵活和敏捷,并且考虑到服务需求的多样性,提高服务转发性能。
附图说明
图1为本发明所述方法的流程示意图;
图2为本发明所述方法的系统架构图;
图3为本发明所述VNF的依赖关系图;
图4为本发明所述复制和合并功能图;
图5为本发明所述SFC部署算法的流程图;
图6为不同请求下的每个batch的平均时延对比图;
图7为不同到达率下的每个batch的平均时延对比图;
图8为不同请求下的请求接受率对比图;
图9为不同到达率下的请求接受率对比图;
图10为不同请求下的每条SFC的平均成本对比图;
图11为不同到达率下的每条SFC的平均成本对比图;
图12为不同请求下的每条SFC的平均reward对比图;
图13为不同到达率下的每条SFC的平均reward对比图;
图14为不同请求下的DPU使用率图;
图15为不同到达率下的DPU使用率图。
具体实施方式
为了详细的说明本发明所公开的技术方案,下面结合附图和实施例对本发明做更进一步的说明。
本发明所提供的是一种基于CPU+DPU架构的多目标SFC并行化和部署方法,主要用于解决当前传统计算架构和传统SFC部署系统面临的转发性能下降、场景和需求多样化等问题。
云计算、数据中心、智算中心等基础设施快速扩容,网络带宽从主流的10G朝着25G、40G、100G、200G甚至400G发展,传统基于CPU完成数据转发的模式出现瓶颈。为了提升CPU数据转发性能,Intel推出了数据平面开发工具包(DPDK)加速方案,通过绕过内核协议栈,以用户态绑核轮询的模式提升了I/O数据处理性能,极大提升了包转发速率,然而在大带宽趋势下,这种方案的CPU开销难以忽视,在25G带宽速率下,大部分数据中心仅为满足业务的数据I/O需求所需CPU开销就达到了25%甚至更多。此外,随着人工智能场景的普及,越来越多的云上AI计算任务对网络和存储I/O的时延性能提出了更极致的需求,全称远程直接数据存取(RDMA)和非易失性内存主机控制器接口规范(NVMe)等高性能网络和存储协议在传统网卡架构下难以满足云计算多租户的需求场景。这种背景下,为解决后摩尔时代I/O性能瓶颈和虚拟化技术发展限制等诸多问题,DPU应运而生。
DPU是5G时代集网络加速为一体的新型数据处理单元。DPU本质上是分类计算,是将数据处理/预处理从CPU卸载,同时将算力分布在更靠近数据发生的地方,从而降低通信量,其内部融合了RDMA、网络功能、存储功能、安全功能、虚拟化功能。它可以用来接手CPU不擅长的网络协议处理、数据加解密、数据压缩等数据处理任务,同时兼顾传输和计算的需求。此外,DPU还起到连接枢纽的作用,一端连接CPU、GPU、固态硬盘(SSD)、FPGA加速卡等本地资源,一端连接交换机/路由器等网络资源。总体而言,DPU不仅提高了网络传输效率,而且释放了CPU算力资源,从而带动整体数据中心的降本增效。相比于传统网卡,DPU在单部件成本上有所增加,但是DPU的引入解放了更高成本的主机CPU算力,释放了更多可售卖资源,因此DPU引发的架构变革一定程度上提升了整个数据中心资源池的能效成本比和公有云厂商的收益成本比。未来DPU可以覆盖越来越多的需求和场景。同时由于NFV的引入使得SFC的部署面临着转发效率低、服务需求多样化等问题。在这一机遇背景下,本发明研究由CPU和DPU组成的异构计算架构,并将该架构应用在解决SFC部署问题中。
下面具体说明本发明所提供的技术方案实施过程。
本发明所述方法是以CPU+DPU为计算架构实现对SFC的部署。主要包括编排器和服务器。编排器负责接收来自网络运营商的SFC请求,运行SFC部署算法以确定哪些SFC被接受以及这些被接受的SFC如何被放置。由异构计算结构组成的服务器负责根据编排器传达的部署策略分别使用CPU或DPU完成对SFC的部署。
本发明所述方法主要实施流程如附图1所示,基于上述的技术方案,在实施例中做进一步的详细说明,具体包括如下步骤:
(1)构建一个异构计算架构来解决多目标部署问题,该架构包括一个负责管理和协调的编排器和基于CPU+DPU结构的服务器;
(2)依据VNF间的独立性,提出SFC并行问题,并提出一种SFC并行策略将串行SFC转化为并行SFC;
(3)针对某一时刻多条SFC同时到达的情况,提出一种VNF拓扑顺序算法,按照该算法得到的拓扑顺序部署VNF,并结合VNF的共享和缩放特性能够显著降低时延;
(4)针对实时性要求高的服务请求,提出一种DPU处理策略,即根据请求到达的情况和数量使用DPU对其进行快速处理;
(5)提出基于深度强化学习的SFC异构部署算法,该异构算法能够针对不同时刻到达请求的数量和情况分别完成对SFC的部署。
下面具体阐述其实施过程。
1、构建异构计算架构
如附图2所示,异构计算架构由编排器和服务器组成,其中编排器包括SFC部署算法模块,资源管理模块以及驱动模块;服务器包括CPU、DPU以及连接CPU和DPU的总线。编排器负责管理和部署到达的SFC,而由异构计算结构组成的服务器则负责根据编排器传达的部署策略依次处理不同SFC中的VNF。其中编排器的具体任务包括接收来自网络运营商的SFC请求,运行SFC部署算法以确定哪些SFC被接受以及这些被接受的SFC如何被放置。为了考虑不同请求的不同情况,该算法将分别调用并行策略、VNF拓扑顺序策略和DPU处理策略,以获得每个请求的最佳部署方案,然后调用资源管理模块来管理资源,最后调用驱动模块将部署方案传递给放置的服务器,由服务器根据部署方案分别使用CPU或DPU完成对SFC的部署。
2、结合实际以及所提出的计算架构提出多目标SFC部署问题
SFC部署问题的目标函数如下:
min(f1+f2+f3)
s.t.C1,C2,C3
对于f1,Dμ为总体响应时延,即
其中为通信时延,/>为处理时延,/>为传输时延,/>为平均排队时延。
对于f2为总吞吐量,其中二进制变量/>表示rμ是否被接受,Bμ为SFC的最小带宽,τr=l*Δ表示SFC的生存时间。
对于f3,C(τ)表示总的部署成本,即
C(τ)=SC(τ)+Cscale(τ)+CDPU(τ)
SC(τ)表示总运营成本,即为服务器打开成本和成功放置VNF的成本之和:
表示请求rμ∈R中,VNF/>是否部署在服务器节点ni∈N上,/>表示请求rμ∈R中,虚拟链路/>是否映射到物理链路ej∈E上,ζc和ζB分别表示资源和带宽的单位成本,/>表示VNF/>的资源需求,ζO表示服务器打开成本。
表示总缩放成本,其中Ch表示水平缩放的成本,表示VNF/>是否进行水平缩放。
CDPU(τ)表示DPU的总使用成本,定义如下:
其中,和/>使用DPU时资源和带宽的单位成本,/>表示VNF/>是否使用DPU进行处理。
资源约束如下:
其中,表示部署在节点ni∈N上的VNF/>的服务实例的数量,/>表示节点ni∈N的资源(cpu和memory)大小。
带宽约束如下:
其中,ar,τ表示请求rμ∈R是否仍在服务当中,表示节点ni∈N的带宽大小。
延迟约束如下:
其中,表示最大最大端到端延迟大小。
3、结合实际提出SFC并行问题
在SFC中,某些VNF可以独立工作而不影响其他VNF,所以可以将串行SFC转换为并行SFC。然而,并不是SFC中的所有VNF都可以并行工作,如果当两个VNF都修改流的内容或违反依赖性约束时,两个VNF的操作是冲突的。只有当VNF在SFC中相互独立时,才能在VNF之间并行处理;否则,网络和服务策略的正确性可能会被破坏。
本发明将VNF分成两种类型:monitors和shapers,其中monitors负责监测流量而不作任何修改,而shapers用来处理和修改流量。由于SFC中的VNF必须按照特定的顺序应用于每个数据包流,因此它们形成了一种依赖关系。本发明中规定,如果一个VNF在另一个VNF/>之前,称/>依赖于/>记为/> 不同VNF之间的依赖关系见附图3。
为了并行地处理数据包,需要两个功能。1)复制功能和2)合并功能。如附图4所示,当一个数据包进来时,复制功能会复制该数据包并将其发送给可以并行处理的VNF。在数据包被处理后,复制的数据包被合并功能合并。数据包复制和合并会引起额外的资源消耗和时延,因此在SFC并行问题中,目标函数是最小化由数据包复制和合并引起的额外的资源消耗和时延:
min(αC+βΔd)
其中α和β分别表示额外的资源消耗和时延的权重系数。
C表示数据包复制和合并引起的额外资源消耗,公式如下:
其中B是一组并行分支,ΦB表示B的并行度,U表示数据包的大小。
数据包复制和合并引起的额外延迟Δd可表示为:
其中Vμ是请求R中第μ个SFC的数据量。
对于SFC并行问题,引入流量约束。用Oc表示rμ中复制节点的集合,Om表示rμ中合并节点的集合。Oc(ni)和Om(ni)分别表示rμ中复制节点和合并节点的数量。对于SFC rμ,除了复制节点、合并节点、源节点和目的节点不满足流量守恒外,所有中间节点都满足流量守恒,即:
如果源节点是一个复制节点,则需要满足该约束条件:
如果目的节点是一个合并节点,则需要满足如下约束条件:
对于其他节点是复制节点的情况,应该满足以下公式:
对于其他节点是合并节点的情况,需要满足以下公式:
/>
4、设计SFC并行策略
所述SFC并行策略目的是根据VNF之间的依赖关系识别链中的VNF以找到所有可以并行执行的链。所述SFC并行策略具体算法流程如下:
1)初始化分支链集合B、主链S,monitor集合M;
2)遍历rμ,如果为monitor,首先初始化一个分支链b∈B,然后将/>加入b以及M中;如果/>为shaper,则将其加入主链S中,此时在M中搜索/>所依赖的monitor,对于每一个这样的monitor,比如k∈M,有一个目前以k为终点的分支链,然后将k指向/>从而将分支链扩展到以/>为终点,并从M中移除k;
3)调用路径搜索算法找到所有可以并行执行的路径集合PATH;
4)返回分支链集合B、主链S以及路径集合PATH。
5、设计VNF拓扑顺序策略
所述VNF拓扑顺序策略的目的是找到一个关于多条SFC的VNF拓扑顺序,按照该顺序部署VNF能够降低时延,具体算法流程如下:
1)初始化f为源节点;
2)遍历同一时刻到达的请求集合R,调用算法1得到分支链集合B和主链S以及路径集合PATH,并根据路径集合PATH求得所有路径中时延最大的路径,将其加入到集合C中;
3)遍历C,创建有向加权图graph=(F,ω),F为VNFs的集合;
4)调用最小反馈弧集算法求graph的最小反馈弧集,并验证所求拓扑顺序是否满足不同链间VNF的依赖关系,如果满足则返回拓扑顺序,否则返回False(即违反了依赖条件,不能使用该算法)。
6、设计DPU处理策略
所述的DPU处理策略目的是接手CPU不擅长的网络协议处理、数据加解密、数据压缩等数据处理任务,以节省CPU计算资源并减少时延。
如果某一时刻到达的请求集中有高优先级请求,判断该请求中是否有负责网络协议处理、数据加解密、数据压缩等数据处理任务的VNF,若有则使用DPU进行快速处理,若没有,则使用CPU进行处理。
7、基于上述提出的策略和架构设计基于深度强化学习的SFC异构部署算法
所述基于深度强化学习的SFC异构部署算法的目的是针对不同时刻到达请求的数量和情况分别采用不同的策略进行处理,即并行策略、VNF拓扑顺序策略和DPU处理策略,以便更好地完成对SFC的部署。具体算法流程如下:
1)系统先删除超时请求,经过优先级判断器将到达的请求R按照实时性进行划分,实时性高的划分为高优先级R_high,实时性低的划分为低优先级R_low;
2)初始化时隙τ;
3)根据R_high和R_low的数量决定采用何种策略对SFC进行处理,详见附图5;
4)构建神经网络模型并训练,将当前物理网络的状态和正在处理的请求的特征以及上述信息作为输入,通过神经网络的计算,输出每个VNF的部署策略;
5)更新网络状态。
8、根据部署策略完成对SFC的部署
异构计算架构中的编排器调用驱动模块将部署方案传递给放置的服务器,由服务器根据部署方案分别使用CPU或DPU完成对SFC的最佳部署,以到达降低时延和成本的效果。
本实施例中为了验证本发明(PSHD)的实际效果,在以请求数量为控制变量的情况下和其他两个算法(BASE和FCPM)进行了模拟对比实验。由于BASE和PSHD的目标是相同的,因此本实施例中还进行了一组以请求到达率为控制变量的实验,以证明本发明的有效性。
图6比较了服务节点数量为12,请求数量从50-300变化时,三个算法每个batch的平均时延。由图可知,本发明所述方法的时延总是最小的,随着请求数量的增加,本发明所述方法和其他算法时延的差距呈增大趋势,这说明请求数量越多,本发明所述方法降低时延的性能越好,分别比BASE、FCPM的时延低37.73%和34.26%。图7也说明在请求数量为100,请求的到达率从0.5-3变化时,本发明所述方法的时延总是最低的。随着请求到达率的增大,可以看到本发明所述方法和BASE时延的差距越来越大,这说明同一时刻到达的请求数量越多,本发明所述方法降低时延的性能越好,比BASE时延低47.04%。此外,图6和图7中PD为不采用VNF Topological Order策略时的时延走向,由图可知PD和本发明所述方法时延差距逐渐增大,这证明VNF Topological Order策略降低时延的有效性。
本实施例中探讨了与最先进的方法相比,本发明所述方法的请求接受率。图8描述了服务节点数量为12,请求数量从50-300变化时的结果。图9描绘了请求数量为100,请求的到达率从0.5-3变化时的结果。由图8所示,本发明所述方法的请求接受率是最高的,平均为0.728,其次是BASE算法,平均为0.668,FCPM的接受率最低,为0.517。图9同样证明本发明所述方法的请求接受率总是最高的,平均为0.719。由图可知,随着到达率的增大,BASE的请求接受率下降的趋势明显大于本发明所述方法,证明某一时刻到达的请求越多,BASE的部署能力越差,本发明所述方法的部署能力越强。
本实施例中比较了服务节点数为12,请求数从50-300变化时,三个算法每条SFC的平均成本。如图10所示,本发明所述方法的成本最高,并且随着请求数量的增加而增多,这是因为本发明所述方法引入了CPU+DPU的异构架构,即会根据情况使用DPU进行快速处理,而DPU的使用成本较高一些。图11也说明在请求数量为100,请求的到达率从0.5-3变化时,本发明所述方法的成本总是最高的,平均为8.61,而BASE的成本平均为4.55。本发明所述方法成本的增加带来的是请求接受率的提高以及时延的降低,如图6-图9所示,并且由图12-13所示,本发明所述方法的reward总是最高的。以上证明,牺牲部分成本能够带来更好的收益。
最后,本实施例中比较了本发明所述方法在服务节点数量为12,请求数量从50-300变化以及请求数量为100,请求的到达率从0.5-3变化时的DPU使用率。如图14和图15所示,DPU的使用率随请求数量/请求到达率的增加而增大,DPU使用率的增加带来的是成本的增加,如图10-11,相较于其他算法而言较高的请求接受率,如图8-9,以及较低的时延,如图6-7,结合图12三个算法的reward比较可知,本发明所述方法的性能远高于其他算法。

Claims (5)

1.一种基于CPU+DPU平台的多目标服务功能链的高效并行化和部署方法,其特征在于:包括如下步骤:
(1)构建一个异构计算架构用于解决多目标部署问题,所述的异构计算架包括一个负责管理和协调的编排器和基于CPU+DPU结构的服务器;
(2)依据VNF间的独立性,通过SFC并行策略将串行SFC转化为并行SFC,据此解决SFC并行问题;
所述的SFC并行问题的目标函数是最小化由数据包复制和合并引起的额外的资源消耗和时延:
min(αC+βΔd)
其中α和β分别表示额外的资源消耗和时延的权重系数,表示数据包复制和合并引起的额外资源消耗,/>表示数据包复制和合并引起的额外时延;R表示网络中的一组SFC请求,rμ表示第μ个SFC请求,B是一组并行分支,ΦB表示B的并行度,U表示数据包的大小,Vμ是请求R中第μ个SFC的数据量;
所述的SFC并行策略目的是根据VNF之间的依赖关系识别链中的VNF以找到所有可以并行执行的链;
其中SFC并行策略包括将VNF分成monitors和shapers两种类型,其中monitors负责监测流量而不作任何修改,而shapers用来处理和修改流量,具体算法流程如下:
21)初始化分支链集合B、主链S,monitor集合M;
22)遍历rμ,如果为monitor,首先初始化一个分支链b∈B,然后将/>加入b以及M中;如果/>为shaper,则将其加入主链S中,此时在M中搜索/>所依赖的monitor,对于每一个这样的monitor,比如k∈M,有一个目前以k为终点的分支链,然后将k指向/>从而将分支链扩展到以/>为终点,并从M中移除k;
23)调用路径搜索算法找到所有可以并行执行的路径集合PATH;
24)返回分支链集合B、主链S以及路径集合PATH;
(3)针对某一时刻多条SFC同时到达的情况,采用VNF拓扑顺序算法,按照该算法得到的拓扑顺序部署VNF,并结合VNF的共享和缩放特性降低时延;
所述的VNF拓扑顺序算法用于构建一个关于若干条SFC的VNF拓扑顺序,按照该顺序部署VNF实现降低时延;
所述VNF拓扑顺序算法的具体流程如下:
31)初始化f为源节点;
32)遍历同一时刻到达的请求集合R,调用SFC并行策略得到分支链集合B和主链S以及路径集合PATH,并根据路径集合PATH求得所有路径中时延最大的路径,将其加入到集合C中;
33)遍历C,创建有向加权图graph=(F,ω),F为VNFs的集合,ω为边与边之间的权重;
34)调用最小反馈弧集算法求graph的最小反馈弧集,并验证所求拓扑顺序是否满足不同链间VNF的依赖关系,如果满足则返回拓扑顺序,否则返回False;
(4)针对实时性要求高的服务请求采用DPU处理策略,所述DPU处理策略用于处理包括网络协议处理、数据加解密、数据压缩在内的计算任务,以节省CPU计算资源并减少时延;
如果某一时刻到达的请求集中有高优先级请求,判断该请求中是否有负责该数据处理任务的VNF,若有则使用DPU进行快速处理,若没有,则使用CPU进行处理;
(5)提出基于深度强化学习的SFC异构部署算法,该异构部署算法能够针对不同时刻到达请求的数量和情况分别完成对SFC的部署;
所述的基于深度强化学习的SFC异构部署算法针对不同时刻到达请求的数量和情况分别采用不同的策略进行处理,包括执行并行策略、VNF拓扑顺序策略和DPU处理策略,以此实现对SFC的部署;
步骤(5)中SFC的部署的具体操作如下:
51)系统先删除超时请求,经过优先级判断器将到达的请求R按照实时性进行划分,实时性高的划分为高优先级R_high,实时性低的划分为低优先级R_low;
52)初始化时隙τ;
53)根据R_high和R_low的数量决定采用何种策略对SFC进行处理;
54)构建神经网络模型并训练,将当前物理网络的状态和正在处理的请求的特征作为输入,通过神经网络的计算,输出每个VNF的部署策略;
55)更新网络状态。
2.根据权利要求1所述的基于CPU+DPU平台的多目标服务功能链的高效并行化和部署方法,其特征在于:步骤(1)所述的异构计算架构由编排器和服务器组成,其中编排器包括SFC部署算法模块,资源管理模块以及驱动模块;
所述服务器包括CPU、DPU以及连接CPU和DPU的总线;
所述编排器负责管理和部署到达的SFC,由异构计算结构组成的服务器则负责根据编排器传达的部署策略依次处理不同SFC中的VNF;其中编排器的具体任务包括接收来自网络运营商的SFC请求,运行SFC部署算法以确定哪些SFC被接受以及这些被接受的SFC如何被放置;
针对不同请求的不同情况,所述方法将分别调用并行策略、VNF拓扑顺序策略和DPU处理策略,以获得每个请求的最佳部署方案,然后调用资源管理模块来管理资源,最后调用驱动模块将部署方案传递给放置的服务器,由服务器根据部署方案分别使用CPU或DPU完成对SFC的部署。
3.根据权利要求1或2所述的基于CPU+DPU平台的多目标服务功能链的高效并行化和部署方法,其特征在于:步骤(1)所述的多目标部署问题具体描述如下:
SFC部署问题的目标函数如下:
min(f1+f2+f3)
s.t.C1,C2,C3
对于f1,Dμ为总体响应时延,即存在:
其中,Lμ为通信时延,Pμ为处理时延,Tμ为传输时延,为平均排队时延;
对于f2为总吞吐量,其中二进制变量/>表示rμ是否被接受,Bμ为SFC的最小带宽,τr=l*Δ表示SFC的生存时间;
对于f3,Cτ)表示总的部署成本,存在如下表达式:
Cτ)=SC(τ)+Cscale(τ)+CDPU(τ)
SC(τ)表示总运营成本,即为服务器打开成本和成功放置VNF的成本之和:
表示请求rμ∈R中,VNF/>是否部署在服务器节点ni∈N上,/>表示请求rμ∈R中,虚拟链路/>是否映射到物理链路ej∈E上,ζc和ζB分别表示资源和带宽的单位成本,/>表示VNF/>的资源需求,ζO表示服务器打开成本;
表示总缩放成本,其中Ch表示水平缩放的成本,/>表示VNF/>是否进行水平缩放;
CDPU(τ)表示DPU的总使用成本,定义如下:
其中,和/>使用DPU时资源和带宽的单位成本,/>表示VNF/>是否使用DPU进行处理;
C1表示资源约束,C2表示带宽约束,C3表示延时约束。
4.根据权利要求1所述的基于CPU+DPU平台的多目标服务功能链的高效并行化和部署方法,其特征在于:步骤(2)所述的SFC并行问题的具体描述如下:
针对部分独立工作而不影响其他VNF的串行SFC转换为并行SFC;由于SFC中的VNF必须按照特定的顺序应用于每个数据包流,因此它们形成了一种依赖关系;所述方法中规定,如果一个VNF在另一个VNF/>之前,称/>依赖于/>记为/>
为了并行地处理数据包,需要复制和合并两个功能,当一个数据包进来时,复制功能会复制该数据包并将其发送给可以并行处理的VNF,在数据包被处理后,复制的数据包被合并功能合并,数据包复制和合并会引起额外的资源消耗和时延。
5.根据权利要求1所述的基于CPU+DPU平台的多目标服务功能链的高效并行化和部署方法,其特征在于:对于SFC并行问题,引入流量约束,用Oc表示rμ中复制节点的集合,Om表示rμ中合并节点的集合,Ocni和Omni分别表示rμ中复制节点和合并节点的数量;对于SFCrμ,除了复制节点、合并节点、源节点和目的节点不满足流量守恒外,所有中间节点都满足流量守恒。
CN202211352904.1A 2022-11-01 2022-11-01 基于cpu+dpu平台的多目标服务功能链的高效并行化和部署方法 Active CN115913952B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202211352904.1A CN115913952B (zh) 2022-11-01 2022-11-01 基于cpu+dpu平台的多目标服务功能链的高效并行化和部署方法
US18/485,205 US11936758B1 (en) 2022-11-01 2023-10-11 Efficient parallelization and deployment method of multi-objective service function chain based on CPU + DPU platform

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211352904.1A CN115913952B (zh) 2022-11-01 2022-11-01 基于cpu+dpu平台的多目标服务功能链的高效并行化和部署方法

Publications (2)

Publication Number Publication Date
CN115913952A CN115913952A (zh) 2023-04-04
CN115913952B true CN115913952B (zh) 2023-08-01

Family

ID=86482668

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211352904.1A Active CN115913952B (zh) 2022-11-01 2022-11-01 基于cpu+dpu平台的多目标服务功能链的高效并行化和部署方法

Country Status (2)

Country Link
US (1) US11936758B1 (zh)
CN (1) CN115913952B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116956756B (zh) * 2023-09-21 2024-02-09 浪潮电子信息产业股份有限公司 模型部署方法、任务处理方法、装置、设备及存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10868764B2 (en) * 2016-05-17 2020-12-15 Nippon Telegraph And Telephone Corporation Route calculation control device and route calculation control method
US11178064B2 (en) * 2016-08-09 2021-11-16 Nippon Telegraph And Telephone Corporation Resource allocation device and resource allocation method
CN110022230B (zh) * 2019-03-14 2021-03-16 北京邮电大学 基于深度强化学习的服务链并行部署方法及装置
US11334382B2 (en) * 2019-04-30 2022-05-17 Intel Corporation Technologies for batching requests in an edge infrastructure
CN113411207B (zh) * 2021-05-28 2022-09-20 中国人民解放军战略支援部队信息工程大学 智慧网络服务功能链的服务功能流转编排基础平台及方法
CN113918277A (zh) * 2021-09-18 2022-01-11 浙江工业大学 一种面向数据中心的服务功能链优化编排方法和系统

Also Published As

Publication number Publication date
CN115913952A (zh) 2023-04-04
US11936758B1 (en) 2024-03-19

Similar Documents

Publication Publication Date Title
CN108260169B (zh) 一种基于QoS保障的服务功能链动态部署方法
CN117348976A (zh) 用于流处理的数据处理单元
CN110460465B (zh) 面向移动边缘计算的服务功能链部署方法
CN103294548B (zh) 一种基于分布式文件系统的io请求调度方法和系统
CN108897606B (zh) 多租户容器云平台虚拟网络资源自适应调度方法及系统
CN107977271B (zh) 一种数据中心综合管理系统负载均衡方法
Zhao et al. A unified modeling framework for distributed resource allocation of general fork and join processing networks
US11936758B1 (en) Efficient parallelization and deployment method of multi-objective service function chain based on CPU + DPU platform
CN109379303A (zh) 基于提升万兆以太网性能的并行化处理框架系统和方法
CN108111335A (zh) 一种调度和链接虚拟网络功能的方法及系统
CN113904923A (zh) 一种基于软件定义网络的服务功能链联合优化方法
Bhowmik et al. Distributed control plane for software-defined networks: A case study using event-based middleware
CN114514536A (zh) 分布式系统中的神经网络训练
CN117579701A (zh) 一种移动边缘网络计算卸载方法及系统
Aziz et al. A near optimal scheduler for switch-memory-switch routers
CN113821317A (zh) 一种边云协同的微服务调度方法、装置及设备
CN113395183B (zh) 网络仿真平台vlan互联的虚拟节点调度方法与系统
Zhang et al. A locally distributed mobile computing framework for DNN based android applications
CN112114951A (zh) 一种自下而上的分布式调度系统及方法
CN109308210B (zh) 一种在多核服务器上优化nfv转发服务链性能的方法
CN111459871A (zh) 一种基于fpga异构计算的区块链加速系统及方法
He et al. QoS-Aware and Resource-Efficient Dynamic Slicing Mechanism for Internet of Things.
Laredo et al. Designing a self-organized approach for scheduling bag-of-tasks
US20060253861A1 (en) API interface to make dispatch tables to match API routines
Wang et al. Efficient Deployment of Partial Parallelized Service Function Chains in CPU+ DPU-Based Heterogeneous NFV Platforms

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