CN110545228B - 服务功能链请求处理方法及系统 - Google Patents

服务功能链请求处理方法及系统 Download PDF

Info

Publication number
CN110545228B
CN110545228B CN201910684427.0A CN201910684427A CN110545228B CN 110545228 B CN110545228 B CN 110545228B CN 201910684427 A CN201910684427 A CN 201910684427A CN 110545228 B CN110545228 B CN 110545228B
Authority
CN
China
Prior art keywords
vnf
server
service function
function chain
request
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
CN201910684427.0A
Other languages
English (en)
Other versions
CN110545228A (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.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
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 Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN201910684427.0A priority Critical patent/CN110545228B/zh
Priority to US16/672,050 priority patent/US11064045B2/en
Publication of CN110545228A publication Critical patent/CN110545228A/zh
Application granted granted Critical
Publication of CN110545228B publication Critical patent/CN110545228B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J14/00Optical multiplex systems
    • H04J14/02Wavelength-division multiplex systems
    • H04J14/0227Operation, administration, maintenance or provisioning [OAMP] of WDM networks, e.g. media access, routing or wavelength allocation
    • H04J14/0254Optical medium access
    • H04J14/0267Optical signaling or routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J14/00Optical multiplex systems
    • H04J14/02Wavelength-division multiplex systems
    • H04J14/0201Add-and-drop multiplexing
    • H04J14/0202Arrangements therefor
    • H04J14/021Reconfigurable arrangements, e.g. reconfigurable optical add/drop multiplexers [ROADM] or tunable optical add/drop multiplexers [TOADM]
    • H04J14/0212Reconfigurable arrangements, e.g. reconfigurable optical add/drop multiplexers [ROADM] or tunable optical add/drop multiplexers [TOADM] using optical switches or wavelength selective switches [WSS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • 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/5003Managing SLA; Interaction between SLA and QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • 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
    • 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

Abstract

本发明公开了服务功能链请求处理方法,包括:对接收的服务功能链请求进行分类,确定上述服务功能链请求是在光域处理还是在电域处理;其中,服务功能链请求所请求的服务功能链包括至少一个虚拟网络功能(VNF);对已分配至电域或光域处理的服务功能链请求进行服务器映射,确定实现上述至少一个VNF的至少一个服务器;以及对上述至少一个服务器进行时域规划,确定上述至少一个服务器处理上述至少一个VNF的时刻。本发明还公开了服务功能链请求处理系统。

Description

服务功能链请求处理方法及系统
技术领域
本发明涉及通信技术领域,特别是指一种服务功能链请求处理方法及系统。
背景技术
随着互联网的飞速发展和上层应用类型的爆炸式增长,用户对数据传输容量和时延的要求越来越高,使承载网的数据传输速率及数据中心的处理能力受到了严峻的考验。用户请求往往以服务功能链(Service Function Chain,SFC)的形式存在。一条服务功能链可以包含多个网络功能(Network Function,NF),例如,某个用户请求需要先经过防火墙(Firewall,FW)再经过入侵检测系统(Intrusion Detection Systems,IDS),然后再经过网络地址转换器(Network Address Translator,NAT),则这个服务功能链就包括FW、IDS以及NAT三个网络功能。
在传统网络中,网络功能通常部署在特定的物理设备中,不仅采购、维护、升级成本较高,而且由于物理设备通常采用特有的编程语言编写,需要专门的维护人员进行操作,人力成本开支较大。此外,随着网络规模的不断扩大,现有网络中的设备数量和性能越来越无法满足应用的实际需求。物理设备通常部署在网络中的特定节点,需要使用该功能的业务流在进行路径计算时,必须考虑该约束条件,从而造成不必要的资源浪费和时延增加。
而随着中央处理器(Central Processing Unit,CPU)、图形处理器(GraphicsProcessing Unit,GPU)等计算器件数据处理速率的不断提升和存储资源成本的不断降低,通过结合资源虚拟化技术,可以将传统以硬件形式实现的网络功能以虚拟网络功能(Virtual Network Function,VNF)的方式实现,该技术称之为网络功能虚拟化(NetworkFunction Virtualization,NFV)。NFV技术可以极大地降低服务提供商的网络建设和运维成本,同时,由于VNF可以根据业务需求进行灵活部署和动态调整,极大地提升了网络中带宽资源和计算资源的使用效率,成为下一代网络发展的重要方向之一。
在数据中心中,传统基于包交换的架构和模式已无法适应日益增长的数据流量。随着10Gbps、40Gbps等大带宽业务的不断涌现,包交换的处理方式因其频繁的光电转换造成了巨大的处理时延,同时也增加了数据中心的能源消耗。基于波分复用(WavelengthDivision Multiplexing,WDM)等技术的光互连具有高容量、大带宽、低时延的优势,越来越多地成为数据中心网络或数据中心内部机架间连接的首选。但是,目前光层的连接配置相对于电交换的包处理方式具有更高的时延和更低的灵活性,不适合频繁拆建,如低速率、高突发的业务,在光域处理,其效率相对较低,且会造成不必要的带宽浪费。同时VNF本身的数据处理速度不同,对于数据量较小的业务,使用高速的VNF会占用较多的计算资源和存储资源,与具有高数据吞吐量要求的业务形成竞争,导致网络性能下降。
发明内容
有鉴于此,本发明的目的在于提出一种服务功能链请求处理方法及系统。
本发明实施例所述的服务功能链请求处理方法包括:对接收的服务功能链请求进行分类,确定所述服务功能链请求是在光域处理还是在电域处理;其中,所述服务功能链请求所请求的服务功能链包括至少一个VNF;对已分配至电域或光域处理的服务功能链请求进行服务器映射,确定实现所述至少一个VNF的至少一个服务器;以及对所述至少一个服务器进行时域规划,确定所述至少一个服务器处理所述至少一个VNF的时刻。
其中,上述服务器映射包括:获取系统中各个服务器上处于空闲状态的VNF实例,得到所述服务功能链请求对应的空闲备选实例集合;根据所述空闲备选实例集合构造计算矩阵,其中,所述计算矩阵的各行分别对应各个可用服务器,各列分别对应所述服务功能链所请求的各个VNF,且每个元素表示其对应服务器是否含有对应的VNF实例;以及根据所述计算矩阵,从所述可用服务器选择至少一个服务器实现所述服务功能链所包括的全部VNF,得到实现所述服务功能链的服务器序列,使得所述服务器序列中包含的服务器数量最少。
其中,上述从可用服务器选择至少一个服务器实现所述服务功能链所包括的全部VNF包括:
A,设定数据传输次数控制变量t=0;
B,确定数据传输次数控制变量t是否小于或者等于|Fn|-1,如果是,则继续执行C,否则,执行P;其中,|Fn|为所述服务功能链所包括VNF的数量;
C,设定循环变量i=1;
D,判断i是否小于或者等于t+1,如果是,则继续执行E,否则,执行M;
E,设定位于同一服务器的最多连续VNF的实例的数目j=|Fn|;
F,判断变量j是否大于或者等于1,如果是,则执行G;否则,返回D;
G,对于所述计算矩阵中的每一行元素将其与比较向量进行与操作;
H,判断所述与操作结果是否与所述比较向量相等,若相等,则执行I;否则,执行L;
I,以循环变量i为索引将最长VNF实例序列长度记录为j并记录对应的元素行号;
J,将计算矩阵中的每一行元素进行按位移动操作,其余位补零;其中,移动的位数为j;
K,将循环变量i执行加1操作,并设置j=|Fn|-j,并返回F;
L,将变量j执行减1操作,并返回F;
M,判断是否找到了可用的VNF实例序列组合,如果是,则执行N;否则,执行O;
N,返回包含相应VNF实例序号的服务器,并结束;
O,令t=t+1,并返回B;以及
P,选取具有足够容量的服务器新建所有所需的VNF实例。
其中,上述比较向量的长度为|Fn|,其后j位为1,前|Fn|-j位为0;其中,所述按位移动操作包括按位右移操作,且在高位补j位零;或者上述比较向量的长度为|Fn|,其前j位为1,后|Fn|-j位为0;所述按位移动操作包括按位左移操作,且在低位补j位零。
其中,上述从所述可用服务器选择至少一个服务器实现所述服务功能链所包括的全部VNF进一步包括:将所述计算矩阵的每一行元素转换为十进制数值,得到向量V;其中,所述对于所述计算矩阵中的每一行元素,将其与比较向量进行与操作包括:对于所述向量V的每个元素,将其与2j-1进行与操作;所述判断所述与操作结果是否与所述比较向量相等包括:判断所述与操作结果是否与2j-1相等;以及所述将计算矩阵中的每一行元素进行按位移动操作,其余位补零包括:对向量V中的每个元素进行按位右移j位操作,并在高位补j位零。
其中,上述判断是否找到了可用的VNF实例序列组合包括:对记录的最长VNF实例序列长度进行求和操作,判断所述求和结果是否与|Fn|相等,若相等,则确定找到了可用的VNF实例序列组合。
其中,上述时域规划包括:根据待处理的数据量大小和VNF的数据处理速度分别确定所述至少一个VNF的处理时延;根据预先配置的传输路径的长度、设备的交换速度分别确定任意两个VNF所在服务器之间的数据传输时延;以及根据所述处理时延以及传输时延,确定所述至少一个服务器处理所述至少一个VNF的时刻。
其中,上述方法进一步包括:对一段预定时间内收到的服务功能链请求所请求服务功能链包含的VNF进行统计,分别记录每个VNF被请求的次数;分别检查所述每个VNF被请求的频率是否符合当前系统中所述每个VNF的分布状态;如果某个VNF被请求的频率不符合当前系统中所述VNF的分布状态,则在服务器中部署所述VNF实例。
其中,上述方法进一步包括:为系统中的每个VNF实例预先设置保活时间;在某个VNF实例处理完服务功能链请求后,将所述VNF实例设置为空闲状态;其中,所述空闲状态的维持时间设置为所述VNF实例对应的保活时间;如果某个VNF实例的空闲状态结束而无新的请求到达,则将所述VNF实例从服务器中移除。
其中,上述检查所述每个VNF被请求的频率是否符合当前系统中所述每个VNF的分布状态包括:确定当前系统中每个VNF实际的实例数目在当前系统中所有VNF实例中的占比,作为当前系统中所述每个VNF的分布状态;以及通过判断下式是否成立分别检查每个VNF被请求的频率是否符合当前系统中该VNF的分布状态,若对于某个VNF下式成立,则所述VNF被请求的频率不符合当前系统中所述VNF的分布状态;
Figure BDA0002145753390000041
其中,T表示系统中所有VNF的实例的集合;CFn表示VNF实例Fn被请求的次数;IFn表示当前系统中VNF实例Fn的数目。
本发明实施例所述的服务功能链请求处理系统包括:
请求判别器,用于对从外网接收的服务功能链请求进行分类,确定接收的服务功能链请求是在光域处理还是需要在电域处理;其中,所述服务功能链请求所请求的服务功能链包括至少一个虚拟网络功能VNF;
可重构光分插复用器ROADM,用于根据请求判别器的分类结果,将在光域处理的服务功能链请求分流至光域数据中心,而将在电域处理的服务功能链请求分流至电域数据中心;
软件定义网络控制器,用于对请求判别器进行控制,设置请求判别器的分类规则;以及对ROADM进行配置;
连接至ROADM的光域数据中心,其中,所述光域数据中心包括至少一个VNF;
连接至ROADM的电域数据中心,其中,所述电域数据中心包括至少一个VNF;以及
网络功能虚拟化控制器,用于监测并维护光域数据中心和电域数据中心中所述至少一个VNF的运行状态,以及对所述至少一个VNF的部署进行调整。
其中,上述光域数据中心包括:相互连接的至少一个波长选择开关(WavelengthSelective Switch,WSS)以及至少一个光域服务器;其中,所述至少一个光域服务器包括至少一个VNF;所述至少一个WSS用于在所述至少一个光域服务器和ROADM之间进行波长交换;以及
所述电域数据中心包括:至少一个电域服务器以及用于连接上述至少一个电域服务器和ROADM的交换机;其中,上述至少一个电域服务器包括至少一个VNF。
本发明实施例提出的服务功能链请求处理方法和系统,通过对服务功能链请求进行分类处理,可以将高速率服务功能链请求分流到光域交由吞吐量较高的VNF进行处理,而对于突发性较高、低速率业务则分流到电域进行处理。同时,通过NFV控制器,可以对网络状态进行实时监测和记录,对于VNF的部署进行相应的调整,以灵活适应业务的实际需求,减少业务变化发生时造成的带宽或存储资源的浪费。由此可以看出,本发明实施例给出的服务功能链请求处理系统一方面通过业务判别对不同服务功能链请求进行差异化处理,提高了数据中心光网络中的计算资源和网络带宽资源的使用效率,降低了网络拥塞率,提升了网络性能;另一方面,通过对业务类型和网络状态进行实时监测,及时调整VNF在数据中心中的部署情况,以适应不断变化的应用请求,包括请求类型、请求分布等,从而具有良好的网络自适应性和自调整能力。
附图说明
图1为本发明实施例提供的服务功能链请求处理系统内部结构示意图;
图2显示了本发明一个实施例所述光域数据中心内部结构的示例;
图3为本发明实施例提供的服务功能链请求处理方法流程示意图;
图4显示了一个服务功能链请求的示例;
图5为本发明一个实施例所述的服务器映射方法流程示意图;
图6为本发明一个实施例所述的根据计算矩阵从可用服务器中选择至少一个服务器实现服务功能链中所有VNF的方法流程示意图;
图7为本发明另一个实施例所述的根据计算矩阵从可用服务器中选择至少一个服务器实现服务功能链中所有VNF的方法流程示意图;
图8为本发明一个实施例所述的对数据中心中VNF的部署进行调整的方法流程示意图;
图9为本发明另一个实施例所述的对数据中心中VNF的部署进行调整的方法流程示意图;
图10显示了本发明实施例中处理服务功能链请求的VNF实例的时间规划过程的一个示例;以及
图11示出了SDN控制器103和NFV控制器106用以检测用户状态和动态调整VNF部署的模块。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
如前所述,鉴于NFV技术的特点,目前迫切需要一种能够对不同服务功能链请求进行差异化处理的数据中心光网络架构,该数据中心光网络架构能够针对不同请求特性进行灵活处理,同时可以针对网络状况动态调整虚拟网络功能的部署。
为了解决上述问题,本发明的实施例提供了一种服务功能链请求处理系统,其内部结构可如图1所示,主要包括:
请求判别器101,用于对从外网接收的服务功能链请求进行分类,确定接收的服务功能链请求是需要在光域处理还是需要在电域处理。
在本发明的实施例中,上述请求判别器101可以设置在整个数据中心的网络入口处。
可重构光分插复用器(Reconfigurable Optical Add-Drop Multiplexer,ROADM)102,用于根据请求判别器101的分类结果,将需要在光域处理的服务功能链请求分流至光域数据中心,而将需要在电域处理的服务功能链请求分流至电域数据中心。
软件定义网络(Software Defined Networking,SDN)控制器103,用于对请求判别器101进行控制,并设置请求判别器101的分类规则;以及对ROADM102进行配置,从而实现对服务功能链请求在光域和电域的分流。
在本发明的实施例中,上述SDN控制器103可以根据请求判别器101的分类结果重新配置ROADM 102。例如,对于小粒度业务,ROADM 102可以直接将该业务下路到电域数据中心进行处理。而对于需要在光域处理的业务,ROADM 102将该业务下路到光域数据中心进行处理。
在本发明的实施例中,请求判别器101可以根据服务功能链请求的速率或者服务等级协议(Service Level Agreement,SLA)的至少一个参数,例如时延参数,来确定当前的服务功能链请求是需要在光域处理还是在电域处理。例如,对于高速率的服务功能链请求可以确定在光域交由吞吐量较高的VNF进行处理,而对于低速率但高突发的服务功能链请求则可以确定在电域的VNF进行处理。上述分类规则可以由SDN控制器103进行配置。
连接至ROADM的光域数据中心104,其中,包括至少一个VNF;上述至少一个VNF用于在光域实现虚拟网络功能。
连接至ROADM的电域数据中心105,其中,包括至少一个VNF;上述至少一个VNF用于在电域实现虚拟网络功能。
NFV控制器106,用于监测并维护光域数据中心104和电域数据中心105的VNF的运行状态,并对VNF的部署进行调整,以灵活适应业务的实际需求,减少业务变化发生时造成的带宽或存储资源的浪费。
在本发明的实施例中,上述SDN控制器103还可以进一步监测和记录服务功能链请求的状态和网络状态,并和NFV控制器106进行消息通讯交换必要的信息,从而辅助NFV控制器106对VNF的部署进行调整。
此外,NFV控制器106与SDN控制器103都可以通过上层接口(亦可称为北向接口)与协调控制器107通信。协调控制器107可以通过开放应用程序接口(ApplicationProgramming Interface,API)对运营支撑系统/业务支撑系统(Operation SupportSystem,OSS/Business Support System,BSS)108进行支持。具体地,OSS/BSS 108可以通过API和协调控制器107进行分类规则等策略分发以及进行参数设定等操作。
上述图1示出的服务功能链请求处理系统实际上是一种基于网络功能虚拟化的具有高效服务功能链请求处理能力的数据中心光网络架构。在图1所示的系统中,数据中心分为电域数据中心和光域数据中心两部分,分别负责处理粒度较小和粒度较大的业务。上述电域数据中心和光域数据中心由SDN控制器103和NFV控制器106协同管理。具体地,与VNF创建、删除、维护等相关的操作由NFV控制器106进行;而与业务监测、网络元件配置等相关的操作由SDN控制器103进行。SDN控制器103与NFV控制器106可以进行消息通讯交换必要的信息,例如,由SDN控制器103监测的用户请求和网络状态,以及由NFV控制器106维护的VNF的运行状态等等。
在图1中,进入数据中心的服务功能链请求首先通过请求判别器101进行分类处理,用以决定该服务功能链请求由电域数据中心处理还是由光域数据中心处理。请求判别器101可以由SDN控制器103进行配置管理,例如,SDN控制器103向请求判别器101分发不同的分类规则等。此外,SDN控制器103可以根据判决结果配置ROADM 102,例如,对于小粒度业务,ROADM 102可以直接将该业务下路到电域数据中心。这是因为电域的VNF通常体量较小、处理速度有限,但对于小数据流业务,处理灵活性较高,配置时间较短。而对于需要由光域处理的业务,ROADM 102通过直接将业务的波长信息下路到光域数据中心进行下一步处理。电域的VNF部署、光域的VNF部署、状态监测和动态调整等都由NFV控制器106完成,同时NFV控制器106可以对电域数据中心和光域数据中心内的VNF进行策略分发。
在本发明的实施例中,上述光域数据中心104可以包括:相互连接的至少一个WSS和至少一个光域服务器;其中,上述至少一个光域服务器上包括至少一个VNF;上述至少一个WSS用于在上述至少一个光域服务器和ROADM102之间进行波长交换。
在本发明的实施例中,上述电域数据中心105可以包括:至少一个电域服务器以及用于连接上述至少一个电域服务器和ROADM 102的交换机。其中,上述至少一个电域服务器包括至少一个VNF。
在本发明的实施例中,上述电域服务器之间也可以通过交换机相互连接。
图2显示了本发明一个实施例所述的光域数据中心内部结构的示例。如图2所示,在该示例中,光域数据中心包括3个WSS:WSS_1、WSS_2、WSS_3和3个机架(即光域服务器)。其中,每个机架上包含两个VNF。如图2所示,3个WSS与3个机架相连接。通过SDN控制器103对WSS的配置,可以实现与任意机架的波长交换。例如,如图2所示,上述WSS可以是1*N结构,通过配置,可以实现任一波长从某一端口输出。又例如,WSS_3端口N用以将数据发送回ROADM。且如图2所示,经过WSS分路的,各个光链路可以通过光耦合器相互连接在一起,例如图2中的每一个空心圆代表一个光耦合器。通过该连接方式,可以实现业务的透明传输。并且,每个服务器机架有一个发射机TX,可以将经由VNF处理后的数据调制到某一个波长上发送出去。以服务功能链请求为VNF 3->VNF 5,入口波长为w1的业务为例,假定系统中可用波长为w3,通过配置WSS_1的端口3为波长w1和WSS_3的端口3为波长w3,可以实现w1->VNF 3->w3->VNF 5->w1的透明传输。
本发明实施例提出的服务功能链请求处理系统,通过对服务功能链请求进行分类处理,可以将高速率服务功能链请求分流到光域交由吞吐量较高的VNF进行处理,而对于突发性较高、低速率业务则分流到电域进行处理。此外,对于在光域处理的业务,通过WSS将不同波长承载的业务传输到其所需的VNF所在服务器进行高速处理。同时,通过NFV控制器,可以对网络状态进行实时监测和记录,对于VNF的部署进行相应的调整,以灵活适应业务的实际需求,减少业务变化发生时造成的带宽或存储资源的浪费。由此可以看出,本发明实施例给出的服务功能链请求处理系统一方面通过业务判别对不同服务功能链请求进行差异化处理,提高了数据中心光网络中的计算资源和网络带宽资源的使用效率,降低了网络拥塞率,提升了网络性能;另一方面,通过对业务类型和网络状态进行实时监测,及时调整VNF在数据中心中的部署情况,以适应不断变化的应用请求,包括请求类型、请求分布等,从而具有良好的网络自适应性和自调整能力。
对应上述服务功能链请求处理系统,本发明的实施例给出了一种服务功能链请求处理方法。该服务功能链请求处理方法的流程如图3所示,主要包括如下步骤:
步骤301,对接收的服务功能链请求进行分类,确定该服务功能链请求是在光域处理还是在电域处理。其中,该服务功能链请求所请求的服务功能链包括至少一个VNF。
在本发明的实施例中,上述步骤可以由上述请求判别器101在SDN控制器103的控制下完成。
在本发明的实施例中,上述对接收的服务功能链请求进行分类可以是根据服务功能链请求的速率大小进行分类。具体地,可以预先设置速率判别阈值T Gbps,这样,当服务功能链请求的速率要求大于T Gbps时,则将其判为需在光域处理;否则,将该服务功能链请求判为在电域处理。需要说明的是,上述速率判别阈值T Gbps可根据实际需求灵活调整。此外,除速率参数,时延等涉及SLA的参数可以作为上述判别基准的变形,且可根据不同策略灵活调整和组合。例如,如果待处理的数据量很大,时延要求比较高(小于一定阈值),则可以判为在光域处理;而如果是小数据包,时延要求比较高,则判为在电域处理反而比较快。此外,SLA包含的参数很多,时延是其某一项参数,因此,也可以根据SLA中的一个或者多个参数设置分类规则,从而保证分类更为精确。
步骤302,对已分配至电域或光域处理的服务功能链请求进行服务器映射,确定实现上述服务功能链所包括至少一个VNF的至少一个服务器。
需要说明的是,在本步骤中,被分配至电域的服务功能链业务在进行服务器映射之后,确定的实现该服务功能链所请求网络功能的各个服务器都将是电域的服务器;而被分配至光域的服务功能链业务在进行服务器映射之后,确定的实现该服务功能链所请求网络功能的各个服务器都将是光域的服务器。
在本发明的实施例中,服务功能链请求可以表示为r,其数据传输速率参数为brGbps,所请求的服务功能链为Sr,其中Sr=<F1,F2,…,Fn>,Fn为服务功能链中包含的VNF。这里,服务功能链Sr是一组按照特定顺序排列的网络功能。也就是说,一个服务功能链请求需要依次按序经过链中的各个网络功能进行处理。图4显示了一个服务功能链请求的示例。如图4所示,该服务功能链请求的数据传输速率参数为br Gbps,所请求的服务功能链包括FW、IDS、以及NAT三个网络功能。也就是说,该服务功能链请求需要依次按序经过上述FW、IDS、以及NAT三个网络功能进行处理。
假设每个VNF处理用户请求有一定的处理时延LF,请求的数据在各个VNF之间传递也会有传输时延LT,则在本步骤中进行服务器映射的目标就是,对于某个服务功能链请求,确定实现该服务功能链所请求网络功能的各个服务器,使得处理该服务功能链请求的总时延尽可能的小。
本领域的技术人员可以理解,每个VNF处理用户请求的处理时延LF可以看作基本固定,但是,各个VNF之间的传输时延LT却是可能有很大不同的。例如,当临近的两个VNF位于同一个服务器时,则这两个VNF的传输时延基本可以忽略。而当临近的两个VNF位于不同服务器时,则这两个VNF的传输时延则可能比较大。在这种情况下,本步骤进行服务器映射的目标就可以转化为,对于某个服务功能链请求,确定实现该服务功能链所请求网络功能的各个服务器,使得该服务功能链请求的总传输时延尽可能的小,也即尽量保证该服务功能链请求在多个服务器之间传递的次数最少,从而避免由于频繁地在多个服务器之间传递而造成的传输时延过大。
关于确定实现该服务功能链所请求网络功能的各个服务器的具体方法将在后文的示例中详细描述。
在本发明的实施例中,在确定了实现该服务功能链所请求网络功能的各个服务器之后,NFV控制器106可以通过控制光域数据中心各个WSS的波长交换实现光域服务功能链请求的传输路径的配置;或者可以通过控制电域数据中心各个电域服务器实现电域服务功能链请求的传输路径的配置。
步骤303,对上述至少一个服务器进行时域规划,确定上述至少一个服务器处理上述至少一个VNF的时刻。
在本发明的实施例中,上述时域规划具体可以包括:首先,根据待处理的数据量大小和VNF的数据处理速度分别确定上述至少一个VNF的处理时延;然后,根据预先配置的传输路径的长度、设备的交换速度分别确定任意两个VNF所在服务器之间的数据传输时延;最后,再根据上述处理时延以及传输时延,确定上述至少一个服务器处理上述至少一个VNF的时刻。
具体的,对于被分配至光域的服务功能链请求,对于每个用以处理用户数据的VNF实例,NFV控制器可以根据待处理的用户数据量大小和VNF实例的数据处理速度估计各个VNF实例的处理时延。同时,根据配置好的传输路径的长度、设备的交换速度等参数估计相应两个VNF所在光域服务器之间的数据传输时延。在此基础上,预设各个光域服务器上VNF实例开始处理该服务功能链请求的时刻。例如,位于后序的VNF实例应当等待前序VNF实例处理完用户数据,并且数据由前序VNF实例所在服务器传输至后序VNF实例所在服务器后才可以开始进行处理。
在本申请的实施例中,对于被分配至电域的服务功能链请求,则NFV控制器按照上述在光域类似的方法进行VNF时域规划。不同之处在于,电域的数据传输时延的估计应当是基于电域设备的处理速度,例如交换机的交换速度、路由的包转发速率等。
确定上述至少一个服务器处理对应VNF的时刻后,NFV控制器106可以将确定的时刻及与该时刻对应的需要执行的VNF配置给上述至少一个服务器,由各个服务器根据配置的时刻执行相应的VNF,从而实现对服务功能链请求的有效处理。
由此可以看出,本发明实施例给出的服务功能链请求处理方法一方面通过业务判别对不同服务功能链请求进行差异化处理,提高了数据中心光网络中的计算资源和网络带宽资源的使用效率,另一方面,通过VNF的映射和规划,降低了网络拥塞率,提升了网络性能,同时降低了服务功能链请求的处理时延。
为了确定实现服务功能链所请求网络功能的各个服务器,保证该服务功能链请求在多个服务器之间传递的次数最少,本发明的实施例给出了一种服务器映射方法,该方法主要由NFV控制器106执行。图5显示了该服务器映射方法的流程。如图5所示,该方法具体可以包括:
步骤501,获取各个服务器上处于空闲状态的VNF实例,得到服务功能链请求r对应的空闲备选实例集合。
在本发明的实施例中,上述VNF实例是指该VNF安装在服务器中的具体实例,即处理用户数据的程序单元。通常每个VNF在系统中可能存在多个VNF实例,因此,处于空闲状态的VNF实例可能是一个集合。例如,对于服务功能链请求r所请求的服务功能链Sr=<F1,F2,…,Fn>,其空闲备选实例集合可以表示为<QF1,QF2,…,QFn>。
为避免频繁地在多个服务器之间传输服务功能链请求而造成不必要的资源浪费和时延增加,则需要优先选取链中临近的两个或多个VNF实例处于同一个服务器中的情况。
步骤502,根据上述空闲备选实例集合构造计算矩阵M,其中,计算矩阵M的各行分别对应各个可用服务器<E1,E2,…,Em>,计算矩阵M的各列分别对应服务功能链Sr中的各个VNF,且计算矩阵M中的每个元素表示该服务器是否含有某个VNF实例。
例如,在本发明的实施例中,若服务器Em中含有Fn的实例,则计算矩阵元素xm,n值为1,否则为0。这样,上述计算矩阵M的每一行元素,即表示对应的服务器是否有各个可用VNF实例。
例如,如下式(1)所示的计算矩阵M表示服务器E1包含F1、F2、F4和F6的实例;服务器E2包含F1、F2和F3的实例;服务器E3包含F4、F5和F6的实例。
Figure BDA0002145753390000131
步骤503,根据所述计算矩阵M,从可用服务器<E1,E2,…,Em>选择至少一个服务器实现上述服务功能链Sr中的所有VNF,得到实现上述服务功能链Sr的服务器序列,使得服务器序列中所包含的服务器数量最少。
在本发明的实施中,上述步骤503的具体实现方法可以参考图6,具体可以包括如下步骤:
步骤601,将上述计算矩阵M的每一行元素转换为十进制数值,得到向量V。
例如,基于上述式(1)所示的计算矩阵M,可以得到如下式(2)所示的向量V。
Figure BDA0002145753390000132
步骤602,设定数据传输次数控制变量t的取值空间为[0,|Fn|-1],并从t=0开始依次进行以下尝试。
步骤603,判断数据传输次数控制变量t是否小于或者等于|Fn|-1,如果是,则继续执行步骤604,否则,执行步骤617。
步骤604,初始化最长VNF实例序列长度记录数组变量rec_len及其对应的计算矩阵行号记录数组变量rec_index,并设定循环变量i=1。
在本发明的实施例中,上述循环变量i的取值空间为[1,t+1]。
在本发明的实施例中,在该步骤对变量进行初始化时,可以将rec_len及其对应的rec_index均设置为空。
步骤605,判断i是否小于或者等于t+1,如果是,则继续执行步骤606,否则,执行步骤614。
步骤606,设定位于同一服务器的最多连续VNF的实例的数目j=|Fn|。
在本发明的实施例中,上述位于同一服务器的最多连续VNF的实例的数目j的取值范围为从|Fn|减少到0。
步骤607,判断变量j是否大于或者等于1,如果是,则执行步骤608;否则,返回步骤605。
步骤608,对于向量V中的每个元素vm,将其与2j-1进行与操作。
步骤609,判断与操作结果是否与2j-1相等,若相等,则执行步骤610;否则,执行步骤613。
步骤610,以循环变量i为索引将最长VNF实例序列长度记录为j并记录对应的元素行号,即令rec_len[i]=j,并将对应的元素行号记录在rec_index[i]。
步骤611,将向量V中的每个元素进行按位右移操作,高位补零;其中,向右移动的位数为j。
步骤612,将循环变量i执行加1操作,并设置j=|Fn|-j,然后,返回上述步骤607。
步骤613,将变量j执行减1操作,然后,返回上述步骤607。
步骤614,判断是否找到了可用的VNF实例序列组合,如果是,则执行步骤615;否则,执行步骤616。
具体地,在本发明的实施例中,为了判断是否找到了可用的VNF实例序列组合,可以对rec_len[i]进行求和操作,记为sum(rec_len),并判断sum(rec_len)是否与|Fn|相等,若相等,即表明找到可用的VNF实例序列组合。
步骤615,返回包含相应VNF实例序号的服务器,即rec_index[i],然后结束。
上述包含相应VNF实例序号的服务器即可作为实现一个服务功能链的服务器序列。
步骤616,令t=t+1,然后返回步骤603。
步骤617,选取具有足够容量的服务器新建所有所需的VNF实例。
在本发明的实施例中,可以选择具有足够容量且剩余容量最小的服务器新建所有所需的VNF实例。这样选择可以尽量将已经开启的服务器的资源先用完,从而避免开启较多服务器但是每个服务器都只使用了部分资源的情况,可以降低服务器电能的消耗,起到节约资源的作用。
由此可以看出,通过上述步骤601-617可以快速地实现服务器的映射,并且可以保证服务功能链请求在服务器之间传递的次数最少,从而达到最小化时延的目的,也避免了资源的浪费。
需要说明的是,上述步骤601-617所述的方法只是实现服务器映射的一个示例,在本发明中还可以通过其他方法实现服务器映射。例如,在本发明的一个实施例中可以不执行上述步骤601所述的将计算矩阵M的每一行元素转换为十进制数值的操作,而是直接对二进制数值进行操作。在这种情况下,服务器映射过程可以如下图7所示,主要包括:
步骤701,设定数据传输次数控制变量t的取值空间为[0,|Fn|-1],并从t=0开始依次进行以下尝试。
步骤702,判断数据传输次数控制变量t是否小于或者等于|Fn|-1,如果是,则继续执行步骤703,否则,执行步骤716。
步骤703,初始化最长VNF实例序列长度记录数组变量rec_len及其对应的计算矩阵行号记录数组变量rec_index,并设定循环变量i=1。
在本发明的实施例中,上述循环变量i的取值空间为[1,t+1]。
在本发明的实施例中,在该步骤对变量进行初始化时,可以将rec_len及其对应的rec_index均设置为空。
步骤704,判断i是否小于或者等于t+1,如果是,则继续执行步骤705,否则,执行步骤713。
步骤705,设定位于同一服务器的最多连续VNF的实例的数目j=|Fn|。
在本发明的实施例中,上述位于同一服务器的最多连续VNF的实例的数目j的取值空间为[|Fn|,0]。
步骤706,判断变量j是否大于或者等于1,如果是,则执行步骤707;否则,返回步骤704。
步骤707,对于计算矩阵M中的每一行元素,将其与比较向量进行与操作。
在本发明的实施例中,上述比较向量的长度为|Fn|,其后j位为1,其余位(前|Fn|-j位)为0;或者上述比较向量的长度为|Fn|,其前j位为1,其余位(后|Fn|-j位)为0。具体地,可以将2j-1转换成二进制数,并在前面补|Fn|-j个零或者在后面补|Fn|-j个零,得到长度为|Fn|的向量。
步骤708,判断上述与操作结果是否与上述比较向量相等,若相等,则执行步骤709;否则,执行步骤712。
步骤709,以循环变量i为索引将最长VNF实例序列长度记录为j并记录对应的元素行号,即令rec_len[i]=j,并将对应的元素行号记录在rec_index[i]。
步骤710,将计算矩阵M中的每一行元素进行按位移动操作,其余位补零;其中,移动的位数为j。
在本发明的实施例中,若上述比较向量是长度为|Fn|,其后j位为1,其余位(前|Fn|-j位)为0的比较向量,则上述按位移动操作是按位右移操作,且在高位补零。若上述比较向量的长度为|Fn|,其前j位为1,其余位(后|Fn|-j位)为0的比较向量,则上述按位移动操作是按位左移操作,且在低位补零。
步骤711,将循环变量i执行加1操作,并设置j=|Fn|-j,然后,返回上述步骤706。
步骤712,将变量j执行减1操作,然后,返回上述步骤706。
步骤713,判断是否找到了可用的VNF实例序列组合,如果是,则执行步骤714;否则,执行步骤715。
具体地,在本发明的实施例中,为了判断是否找到了可用的VNF实例序列组合,可以对rec_len[i]进行求和操作,记为sum(rec_len),并判断sum(rec_len)是否与|Fn|相等,若相等,即表明找到可用的VNF实例序列组合。
步骤714,返回包含相应VNF实例序号的服务器,即rec_index[i],然后结束。
上述包含相应VNF实例序号的服务器即可作为实现一个服务功能链的服务器序列。
步骤715,令t=t+1,然后返回步骤702。
步骤716,选取具有足够容量的服务器新建所有所需的VNF实例。
在本发明的实施例中,可以选择具有足够容量且剩余容量最小的服务器新建所有所需的VNF实例。这样选择可以尽量将已经开启的服务器的资源先用完,从而避免开启较多服务器但是每个服务器都只使用了部分资源的情况,可以降低服务器电能的消耗,起到节约资源的作用。
由此可以看出,通过上述步骤701-716可以快速地实现服务器的映射,并且可以保证服务功能链请求在服务器之间传递的次数最少,从而达到最小化时延的目的,也避免了资源的浪费。
为了进一步适应不断变化的应用请求,使数据中心具有更好的网络自适应性和自调整能力。本发明的实施例在上述实施例所提供技术方案的基础之上进一步增加了通过对业务类型和网络状态进行实时监测,及时调整VNF在数据中心中的部署情况的方案。本发明实施例所述的对数据中心中VNF的部署进行调整的方法可以参考图8,具体可以包括:
步骤801,对一段预定时间Tdet内收到的服务功能链请求所请求的VNF进行统计,记录各个VNF被请求的次数。
在本发明的实施例中,针对每一个VNF可以设置一个计数器,以记录该VNF被请求的次数。例如,设置计数器CFn表示Fn被请求的次数。
步骤802,分别检查每个VNF被请求的频率是否符合当前系统中该VNF的分布状态。
在本发明的实施例中,上述当前系统中某个VNF的分布状态表示当前系统中该VNF实际的实例数目在当前系统中所有VNF实例中的占比。则上述检查每个VNF被请求的频率是否符合当前系统中该VNF的分布状态可以通过检测下式(3)是否成立来实现。
Figure BDA0002145753390000171
在式(3)中,T表示系统中所有VNF的实例的集合;CFn表示Fn被请求的次数,IFn表示当前系统中Fn的实例数目。
当上述式(3)成立时,说明目前系统中Fn的实例数目不足以服务所有的服务功能链请求,也即实例Fn所对应VNF被请求的频率不符合当前系统中该VNF的分布状态。而当上述式(3)不成立时,说明目前系统中Fn的实例数目可以服务所有的服务功能链请求,也即实例Fn所对应VNF被请求的频率符合当前系统中该VNF的分布状态。
在本发明的实施例中,上述步骤801和802可以由上述SDN控制器103实现。
步骤803,如某个VNF被请求的频率不符合当前系统中该VNF的分布状态,则在服务器中部署该VNF实例。
在本发明的实施例中,可以选取包含该VNF实例最少的服务器来安装该VNF实例。这样做可以尽量避免在一个服务器上重复部署多个相同的VNF实例,而在同一个服务器上尽量部署不同的VNF,从而可以降低服务功能链请求的时延,也避免资源的浪费。
在本发明的实施例中,上述步骤803可以由上述NFV控制器106实现。
在本发明的实施例中,上述步骤801-803可以每隔预定时间Tdet重复执行一次,例如,每隔预定时间TdetSDN控制器可以重置上述针对每一个VNF设置的计数器,以清除较长时间以前的网络状态,提高资源分配的自适应性。需要说明的是,该时间间隔可根据不同调整策略进行设置。
本发明实施例还给出了另一种对数据中心中VNF的部署进行调整的方法。如图9所示,该方法具体可以包括:
步骤901,为每个VNF实例预先设置保活时间。
步骤902,在某个VNF实例处理完服务功能链请求后,会将该VNF实例设置为空闲状态,其中,空闲状态的维持时间设置为该VNF实例对应的保活时间。
步骤903,如果该VNF实例的空闲状态结束而无新的请求到达,则将该VNF实例从服务器中移除,以节省计算资源和存储资源的使用。
具体地,在本发明的实施例中,可以为每个VNF实例Fn设置一个计时器,其计时时长为其对应的保活时间KFn。在某个VNF实例Fn处理完服务功能链请求后,将其对应的计时器清零。而当某个VNF实例Fn的计时器计时到其对应的保活时间KFn时,将该VNF实例从服务器中移除。
在本发明的实施例中,上述步骤901-903可以由上述NFV控制器106实现。此外,可以通过API以及协调控制器在上述NFV控制器106完成对上述保活时间的设置。
由此可以看出,在上述实施例中,通过对业务类型和网络状态进行实时监测,可以及时调整VNF在数据中心中的部署情况,以适应不断变化的应用请求,包括请求类型、请求分布等,从而使得本发明的技术方案具有良好的网络自适应性和自调整能力。
下面将通过一个具体示例详细说明采用本发明实施例所述的服务器映射方法对进行服务器映射的过程。
首先,假设从外网接收到的请求r的服务功能链为Sr=<F1,F2,…,F6>。
且假设通过对光域数据中心中各个光域服务器所包含的可用VNF实例进行统计可以得到上面式(1)所示的计算矩阵M。然后,对计算矩阵M的每一行的零一元素序列进行十进制转化,即可得到如上面式(2)所示的向量V。
接下来,进行下面多个步骤的反复的尝试以完成服务器映射:
①为了对结果进行记录,初始化存储了最长的连续安装了VNF实例的数目的变量rec_len及其所对应的计算矩阵行元素标号rec_index,此两变量应为数组变量,数组长度为t+1。
②首先,从最小的数据传输次数t=0起,依次从计算矩阵M中按从右往左的顺序寻找1的最长连续序列。在本例中,由于t=0时,无法找到保证数据传输次数为0的服务器(即该服务器安装了所有VNF实例),因此,将变量t加1,开始寻找数据传输次数为1的方案(t=1)。
③对于循环变量i从1到t+1,依次查找计算矩阵M中从右边起连续1数目最多的行。具体的,将连续1的数目j设置为从|Fn|到1,然后将向量V的每个元素与2j-1进行相与操作,如果某个元素vm执行该操作后的结果为2j-1,则表明存在长度为j的连续1序列,记录该长度及对应的元素行号,即rec_len[i]=j,rec_index[i]=m,然后,将V中的元素进行按位右移j位,将i进行加1操作然后重复该步骤;如果向量V中无法查找到长度为j的元素,则将j进行减1操作后继续查找。
在本例中,首先将V中的元素与26-1=63相与,则操作后的结果如下式(4)所示:
Figure BDA0002145753390000191
可见,没有预期的结果,从而将j进行减1操作,重复执行,直到j=3,23-1=7,可以得到相与的操作结果如下式(5)所示:
Figure BDA0002145753390000192
可见,v3为预期结果,从而将rec_len[1]=3,rec_index[1]=3。
之后,将V矩阵元素右移3位,得到下式(6):
Figure BDA0002145753390000193
然后,重复执行上述步骤③,可知rec_len[2]=3,rec_index[2]=2。
④将rec_len的元素求和并将结果与|Fn|相比,如果两值相等,则表明找到了最优的服务器序列,并将结果返回并退出流程,否则,将t执行加1操作,然后跳到步骤②继续执行。如果t已经到达上限|Fn|-1还未找到可用结果,则表明网络中无可用的VNF实例,跳到步骤⑤。
在本例中,由于sum(rec_len)=6,与|Fn|相等,故将结果rec_index=[3,2],返回。可见,返回的结果即为服务器序列。
⑤选择剩余容量最小且足够安装所有所需VNF实例的服务器,安装相关实例,将其用以处理用户数据。
由上述流程可知,通过上述流程图返回的服务器序列中包含了最优的实现功能链中VNF实例的方案,可以最大程度避免用户数据在多个机架间的频繁传输。
下面再通过一个具体示例详细说明采用本发明实施例所述的时域规划方法对确定服务功能链请求的传输路径的过程。图10示出了处理服务功能链请求的VNF实例的时间规划过程的一个示例。
如图10所示,由于VNF实例本身有不同的数据处理速度,所以在处理用户请求时会引入不同的处理时延。在完成VNF实例选取和服务器映射过程后,需要对这些实例进行时域上的规划,依次完成服务功能链的数据流处理。如图10所示,该服务功能链请求首先由数据中心入口传输到服务器E1中的F1的实例中进行处理;在该实例处理完毕后,数据传送至位于同一服务器中F2的实例中进行处理,该传输过程时延较小;之后,由于F3的实例位于服务器E2中,用户数据需要在机架间进行波长交换,从而引入了一定的数据传输时延,该时延与数据大小及光路配置时间等因素相关。从图10可以看出,相较于机架内部服务器间的数据交换,机架之间的数据交换时延明显增多。
此外,由于选取了服务器E2中的F3的实例,NFV控制器会暂停其保活计时器,防止该实例经过KF3之后被清除。
图11示出了SDN控制器103和NFV控制器106用以检测用户状态和动态调整VNF的模块。其中,VNF计数器位于SDN控制器103中,SDN控制器103可以不断监测用户数据,记录其所请求的VNF是哪些VNF,并通过VNF计数器进行计数NFn。VNF计数器可以通过计时器设定相应的时间进行重置,以避免时间较久之前的网络状态对现有策略的影响。同时,通过在计时器中进行设置,每隔固定时间,SDN控制器103便依照上面的式(3)进行判断。如果式(3)成立,说明当前网络中的状态发生变化,某些类型的VNF已经不能满足需求,此时SDN控制器103会告知NFV控制器106的VFN实例建删管理模块增加相应的VNF实例数量,以提高网络对请求的处理能力。在NFV控制器106中,VNF保活管理模块负责记录每个VNF实例的生存时间KFn,通过设置KFn值以及相应的计时器,可以使某个VNF在处理完用户数据后生存一段时间后被VFN实例建删管理模块清除,防止其占用过多的计算资源。需要说明的是,KFn值的设定会影响网络中请求处理效率和计算资源占用之间的平衡,可以通过协调控制器植入相关资源分配策略来进行优化。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本发明难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本发明难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本发明的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本发明的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本发明。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本发明的具体实施例对本发明进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本发明的实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本发明的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种服务功能链请求处理方法,其特征在于,所述方法包括:
对接收的服务功能链请求进行分类,确定所述服务功能链请求是在光域处理还是在电域处理;其中,所述服务功能链请求所请求的服务功能链包括至少一个虚拟网络功能VNF;
对已分配至电域或光域处理的服务功能链请求进行服务器映射,确定实现所述至少一个VNF的至少一个服务器;以及
对所述至少一个服务器进行时域规划,确定所述至少一个服务器处理所述至少一个VNF的时刻;其中,
所述服务器映射包括:
获取系统中各个服务器上处于空闲状态的VNF实例,得到所述服务功能链请求对应的空闲备选实例集合;
根据所述空闲备选实例集合构造计算矩阵,其中,所述计算矩阵的各行分别对应各个可用服务器,各列分别对应所述服务功能链所请求的各个VNF,且每个元素表示其对应服务器是否含有对应的VNF实例;以及
根据所述计算矩阵,从所述可用服务器选择至少一个服务器实现所述服务功能链所包括的全部VNF,得到实现所述服务功能链的服务器序列,使得所述服务器序列中包含的服务器数量最少;其中,
所述从所述可用服务器选择至少一个服务器实现所述服务功能链所包括的全部VNF包括:
A,设定数据传输次数控制变量t=0;
B,确定数据传输次数控制变量t是否小于或者等于|Fn|-1,如果是,则继续执行C,否则,执行P;其中,|Fn|为所述服务功能链所包括VNF的数量;
C,设定循环变量i=1;
D,判断i是否小于或者等于t+1,如果是,则继续执行E,否则,执行M;
E,设定位于同一服务器的最多连续VNF的实例的数目j=|Fn|;
F,判断变量j是否大于或者等于1,如果是,则执行G;否则,返回D;
G,对于所述计算矩阵中的每一行元素将其与比较向量进行与操作;
H,判断所述与操作结果是否与所述比较向量相等,若相等,则执行I;否则,执行L;
I,以循环变量i为索引将最长VNF实例序列长度记录为j并记录对应的元素行号;
J,将计算矩阵中的每一行元素进行按位移动操作,其余位补零;其中,移动的位数为j;
K,将循环变量i执行加1操作,并设置j=|Fn|-j,并返回F;
L,将变量j执行减1操作,并返回F;
M,判断是否找到了可用的VNF实例序列组合,如果是,则执行N;否则,执行O;
N,返回包含相应VNF实例序号的服务器,并结束;
O,令t=t+1,并返回B;以及
P,选取具有足够容量的服务器新建所有所需的VNF实例。
2.根据权利要求1所述的方法,其特征在于,所述比较向量的长度为|Fn|,其后j位为1,前|Fn|-j位为0;其中,所述按位移动操作包括按位右移操作,且在高位补j位零;或者
所述比较向量的长度为|Fn|,其前j位为1,后|Fn|-j位为0;所述按位移动操作包括按位左移操作,且在低位补j位零。
3.根据权利要求1所述的方法,其特征在于,所述从所述可用服务器选择至少一个服务器实现所述服务功能链所包括的全部VNF进一步包括:将所述计算矩阵的每一行元素转换为十进制数值,得到向量V;其中,
所述对于所述计算矩阵中的每一行元素,将其与比较向量进行与操作包括:对于所述向量V的每个元素,将其与2j-1进行与操作;
所述判断所述与操作结果是否与所述比较向量相等包括:判断所述与操作结果是否与2j-1相等;以及
所述将计算矩阵中的每一行元素进行按位移动操作,其余位补零包括:对向量V中的每个元素进行按位右移j位操作,并在高位补j位零。
4.根据权利要求1所述的方法,其特征在于,所述判断是否找到了可用的VNF实例序列组合包括:对记录的最长VNF实例序列长度进行求和操作,判断所述求和结果是否与|Fn|相等,若相等,则确定找到了可用的VNF实例序列组合。
5.根据权利要求1所述的方法,其特征在于,所述时域规划包括:
根据待处理的数据量大小和VNF的数据处理速度分别确定所述至少一个VNF的处理时延;
根据预先配置的传输路径的长度、设备的交换速度分别确定任意两个VNF所在服务器之间的数据传输时延;以及
根据所述处理时延以及传输时延,确定所述至少一个服务器处理所述至少一个VNF的时刻。
6.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
对一段预定时间内收到的服务功能链请求所请求服务功能链包含的VNF进行统计,分别记录每个VNF被请求的次数;分别检查所述每个VNF被请求的频率是否符合当前系统中所述每个VNF的分布状态;如果某个VNF被请求的频率不符合当前系统中所述VNF的分布状态,则在服务器中部署所述VNF实例;以及
为系统中的每个VNF实例预先设置保活时间;在某个VNF实例处理完服务功能链请求后,将所述VNF实例设置为空闲状态;其中,所述空闲状态的维持时间设置为所述VNF实例对应的保活时间;如果某个VNF实例的空闲状态结束而无新的请求到达,则将所述VNF实例从服务器中移除;其中,
所述检查所述每个VNF被请求的频率是否符合当前系统中所述每个VNF的分布状态包括:
确定当前系统中每个VNF实际的实例数目在当前系统中所有VNF实例中的占比,作为当前系统中所述每个VNF的分布状态;以及通过判断下式是否成立分别检查每个VNF被请求的频率是否符合当前系统中该VNF的分布状态,若对于某个VNF下式成立,则所述VNF被请求的频率不符合当前系统中所述VNF的分布状态;
Figure FDA0002533320110000031
其中,T表示系统中所有VNF的实例的集合;CFn表示VNF实例Fn被请求的次数;IFn表示当前系统中VNF实例Fn的数目。
7.一种服务功能链请求处理系统,其特征在于,包括:
请求判别器,用于对从外网接收的服务功能链请求进行分类,确定接收的服务功能链请求是在光域处理还是需要在电域处理;其中,所述服务功能链请求所请求的服务功能链包括至少一个虚拟网络功能VNF;
可重构光分插复用器ROADM,用于根据请求判别器的分类结果,将在光域处理的服务功能链请求分流至光域数据中心,而将在电域处理的服务功能链请求分流至电域数据中心;
软件定义网络控制器,用于对请求判别器进行控制,设置请求判别器的分类规则;以及对ROADM进行配置;
连接至ROADM的光域数据中心,其中,所述光域数据中心包括至少一个VNF;
连接至ROADM的电域数据中心,其中,所述电域数据中心包括至少一个VNF;以及
网络功能虚拟化控制器,用于监测并维护光域数据中心和电域数据中心中所述至少一个VNF的运行状态,以及对所述至少一个VNF的部署进行调整;其中,
上述网络功能虚拟化控制器用于获取系统中各个服务器上处于空闲状态的VNF实例,得到所述服务功能链请求对应的空闲备选实例集合;根据所述空闲备选实例集合构造计算矩阵,其中,所述计算矩阵的各行分别对应各个可用服务器,各列分别对应所述服务功能链所请求的各个VNF,且每个元素表示其对应服务器是否含有对应的VNF实例;以及根据所述计算矩阵,从所述可用服务器选择至少一个服务器实现所述服务功能链所包括的全部VNF,得到实现所述服务功能链的服务器序列,使得所述服务器序列中包含的服务器数量最少;其中,
从所述可用服务器选择至少一个服务器实现所述服务功能链所包括的全部VNF包括:
A,设定数据传输次数控制变量t=0;
B,确定数据传输次数控制变量t是否小于或者等于|Fn|-1,如果是,则继续执行C,否则,执行P;其中,|Fn|为所述服务功能链所包括VNF的数量;
C,设定循环变量i=1;
D,判断i是否小于或者等于t+1,如果是,则继续执行E,否则,执行M;
E,设定位于同一服务器的最多连续VNF的实例的数目j=|Fn|;
F,判断变量j是否大于或者等于1,如果是,则执行G;否则,返回D;
G,对于所述计算矩阵中的每一行元素将其与比较向量进行与操作;
H,判断所述与操作结果是否与所述比较向量相等,若相等,则执行I;否则,执行L;
I,以循环变量i为索引将最长VNF实例序列长度记录为j并记录对应的元素行号;
J,将计算矩阵中的每一行元素进行按位移动操作,其余位补零;其中,移动的位数为j;
K,将循环变量i执行加1操作,并设置j=|Fn|-j,并返回F;
L,将变量j执行减1操作,并返回F;
M,判断是否找到了可用的VNF实例序列组合,如果是,则执行N;否则,执行O;
N,返回包含相应VNF实例序号的服务器,并结束;
O,令t=t+1,并返回B;以及
P,选取具有足够容量的服务器新建所有所需的VNF实例。
8.根据权利要求7所述的服务功能链请求处理系统,其特征在于,所述光域数据中心包括:相互连接的至少一个波长选择开关WSS以及至少一个光域服务器;其中,所述至少一个光域服务器包括至少一个VNF;所述述至少一个WSS用于在所述至少一个光域服务器和ROADM之间进行波长交换;
所述电域数据中心包括:至少一个电域服务器以及用于连接上述至少一个电域服务器和ROADM的交换机;其中,上所述至少一个电域服务器包括至少一个VNF。
CN201910684427.0A 2019-07-26 2019-07-26 服务功能链请求处理方法及系统 Active CN110545228B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201910684427.0A CN110545228B (zh) 2019-07-26 2019-07-26 服务功能链请求处理方法及系统
US16/672,050 US11064045B2 (en) 2019-07-26 2019-11-01 Method and system for processing service function chain request

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910684427.0A CN110545228B (zh) 2019-07-26 2019-07-26 服务功能链请求处理方法及系统

Publications (2)

Publication Number Publication Date
CN110545228A CN110545228A (zh) 2019-12-06
CN110545228B true CN110545228B (zh) 2020-11-20

Family

ID=68710441

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910684427.0A Active CN110545228B (zh) 2019-07-26 2019-07-26 服务功能链请求处理方法及系统

Country Status (2)

Country Link
US (1) US11064045B2 (zh)
CN (1) CN110545228B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11146506B2 (en) * 2018-12-14 2021-10-12 At&T Intellectual Property I, L.P. Parallel data processing for service function chains spanning multiple servers
US11611517B2 (en) * 2020-05-29 2023-03-21 Equinix, Inc. Tenant-driven dynamic resource allocation for virtual network functions
CN112134810B (zh) * 2020-09-22 2022-04-15 中国人民解放军国防科技大学 一种基于fpga硬件加速的nfv网络流量分类方法
FR3119067B3 (fr) * 2021-01-20 2022-12-23 Ebos Tech Provisionnement flexible de tranches de réseau dans un réseau mobile par le biais d’une fonction d’exposition de réseau
US11736578B2 (en) * 2021-04-12 2023-08-22 Rakuten Mobile, Inc. Managing a software application
CN113225211B (zh) * 2021-04-27 2022-09-02 中国人民解放军空军工程大学 细粒度的服务功能链扩展方法
CN113395334B (zh) * 2021-05-31 2022-12-13 河南信大网御科技有限公司 服务功能链在线更新方法、系统及设备
CN113708972B (zh) * 2021-08-31 2022-06-28 广东工业大学 一种服务功能链部署方法、装置、电子设备及存储介质
CN115174393B (zh) * 2022-06-27 2023-09-22 福州大学 基于带内网络遥测的服务功能链动态调整方法
CN116545877B (zh) * 2023-06-28 2023-09-05 广东技术师范大学 跨域sfc动态部署方法、装置、计算机设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016126347A1 (en) * 2015-02-04 2016-08-11 Intel Corporation Technologies for scalable security architecture of virtualized networks
CN105900363A (zh) * 2014-01-17 2016-08-24 瑞典爱立信有限公司 光λ流操纵的系统和方法
EP3121997A1 (en) * 2015-07-20 2017-01-25 Koninklijke KPN N.V. Service provisioning in a communication network
CN107070709A (zh) * 2017-03-31 2017-08-18 上海交通大学 一种基于底层numa感知的nfv实现方法
CN107332913A (zh) * 2017-07-04 2017-11-07 电子科技大学 一种5g移动网络中服务功能链的优化部署方法
CN108063830A (zh) * 2018-01-26 2018-05-22 重庆邮电大学 一种基于mdp的网络切片动态资源分配方法

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180088972A1 (en) * 2015-03-31 2018-03-29 Nec Corporation Controller, control method and program
CN106533935B (zh) * 2015-09-14 2019-07-12 华为技术有限公司 一种在云计算系统中获取业务链信息的方法和装置
US10432537B2 (en) * 2015-10-12 2019-10-01 Fujitsu Limited Service function chaining based on resource availability in the time dimension
US11070442B2 (en) * 2015-11-24 2021-07-20 NEC Laboratories Europe GmbH Method and network for managing and orchestrating virtual network functions and network applications
US11838299B2 (en) * 2019-03-25 2023-12-05 Zscaler, Inc. Cloud-based web content processing system providing client threat isolation and data integrity
US10326532B2 (en) * 2016-08-05 2019-06-18 Nxgen Partners Ip, Llc System and method providing network optimization for broadband networks
US10757576B2 (en) * 2016-08-05 2020-08-25 Nxgen Partners Ip, Llc SDR-based massive MIMO with V-RAN cloud architecture and SDN-based network slicing
US10334446B2 (en) * 2016-08-05 2019-06-25 Nxgen Partners Ip, Llc Private multefire network with SDR-based massive MIMO, multefire and network slicing
US9949133B2 (en) * 2016-08-05 2018-04-17 Nxgen Partners Ip, Llc Ultra-broadband virtualized telecom and internet
WO2018023692A1 (en) * 2016-08-05 2018-02-08 Nokia Shanghai Bell Co., Ltd. Security-on-demand architecture
US10405197B2 (en) * 2016-08-30 2019-09-03 Nxgen Partners Ip, Llc System and method for using dedicated PAL band for control pane and GAA band as well as parts of PAL band for data plan on a CBRS network
US10129778B2 (en) * 2016-08-30 2018-11-13 Nxgen Partners Ip, Llc SDN-based channel estimation for multiplexing between LOS mmWaves NLOS sub-6 GHz and FSO
US10411964B2 (en) * 2016-09-09 2019-09-10 Huawei Technologies Co., Ltd. Method and apparatus for network slicing
US11277338B2 (en) * 2016-09-26 2022-03-15 Juniper Networks, Inc. Distributing service function chain data and service function instance data in a network
WO2018079440A1 (ja) * 2016-10-27 2018-05-03 日本電気株式会社 チェイン構築装置、試験装置、試験システム、方法および記録媒体
US10230661B2 (en) * 2017-02-03 2019-03-12 Fujitsu Limited Distributed virtual network embedding
US10673751B2 (en) * 2017-04-27 2020-06-02 At&T Intellectual Property I, L.P. Method and apparatus for enhancing services in a software defined network
US10819606B2 (en) * 2017-04-27 2020-10-27 At&T Intellectual Property I, L.P. Method and apparatus for selecting processing paths in a converged network
US11082305B2 (en) * 2018-06-29 2021-08-03 Assia Spe, Llc Systems and methods for chaining control-plane virtual functions for ensuring end-to-end quality of service (QoS) of internet services
US20200195553A1 (en) * 2018-12-17 2020-06-18 Netsia, Inc. System and method for measuring performance of virtual network functions
US20210021485A1 (en) * 2020-10-06 2021-01-21 Francesc Guim Bernat Jitter-less distributed function-as-a-service using flavor clustering

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105900363A (zh) * 2014-01-17 2016-08-24 瑞典爱立信有限公司 光λ流操纵的系统和方法
WO2016126347A1 (en) * 2015-02-04 2016-08-11 Intel Corporation Technologies for scalable security architecture of virtualized networks
EP3121997A1 (en) * 2015-07-20 2017-01-25 Koninklijke KPN N.V. Service provisioning in a communication network
CN107070709A (zh) * 2017-03-31 2017-08-18 上海交通大学 一种基于底层numa感知的nfv实现方法
CN107332913A (zh) * 2017-07-04 2017-11-07 电子科技大学 一种5g移动网络中服务功能链的优化部署方法
CN108063830A (zh) * 2018-01-26 2018-05-22 重庆邮电大学 一种基于mdp的网络切片动态资源分配方法

Also Published As

Publication number Publication date
US20210029218A1 (en) 2021-01-28
CN110545228A (zh) 2019-12-06
US11064045B2 (en) 2021-07-13

Similar Documents

Publication Publication Date Title
CN110545228B (zh) 服务功能链请求处理方法及系统
JP4796668B2 (ja) バス制御装置
US10182021B2 (en) Crossbar switch and recursive scheduling
Guay et al. vFtree-A fat-tree routing algorithm using virtual lanes to alleviate congestion
Smith et al. Mitigating inter-job interference using adaptive flow-aware routing
EP2670085B1 (en) System for performing Data Cut-Through
Zhang et al. Analysis and experimental demonstration of an optical switching enabled scalable data center network architecture
CN107113323B (zh) 一种数据存储方法、装置和系统
Xue et al. Experimental evaluation of the effect of queue management schemes on the performance of high speed TCPs in 10Gbps network environment
Zhang et al. Optical switching based small-world data center network
Wang et al. URBM: user-rank-based management of flows in data center networks through SDN
Argibay-Losada et al. On whether OCS maximizes application throughput in all-optical datacenter networks
Szymanski Low latency energy efficient communications in global-scale cloud computing systems
Girisankar et al. SDN-based dynamic flow scheduling in optical data centers
JP2013179517A (ja) 光パス網構成装置
Fan et al. Hardware acceleration resource allocation mechanism for vnf
Siniarski et al. DROAD: Demand-aware reconfigurable optically-switched agile data center network
Wang Resource Scheduling in NG-EPON and Optical Datacenter Networks
US9424088B1 (en) Multi-level deficit weighted round robin scheduler acting as a flat single scheduler
Chaubey et al. Performance evaluation of an intelligent routed WDM mesh network: An analytical approach
Maru IMPROVING THE PERFORMANCE AND SCALABILITY OF THREE-TIER DATA CENTER NETWORK ARCHITECTURE
Das et al. Leveraging optics for network function virtualization in hybrid data centers
Kodi et al. A new dynamic bandwidth re-allocation technique in optically interconnected high-performance computing systems
Jiang et al. Network Performance Analysis of Spatial Division Multiplexing enabled Packet Switching Networks
Zhu et al. An Intra-rack OTS/EPS Hybrid Network Based on Flow Identification in Cloud Data Center

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