CN105553882A - 用于sdn数据平面资源调度的方法 - Google Patents

用于sdn数据平面资源调度的方法 Download PDF

Info

Publication number
CN105553882A
CN105553882A CN201510977024.7A CN201510977024A CN105553882A CN 105553882 A CN105553882 A CN 105553882A CN 201510977024 A CN201510977024 A CN 201510977024A CN 105553882 A CN105553882 A CN 105553882A
Authority
CN
China
Prior art keywords
business
demand
hardware
chain
new
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
CN201510977024.7A
Other languages
English (en)
Other versions
CN105553882B (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.)
Tsinghua University
Original Assignee
Tsinghua 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 Tsinghua University filed Critical Tsinghua University
Priority to CN201510977024.7A priority Critical patent/CN105553882B/zh
Publication of CN105553882A publication Critical patent/CN105553882A/zh
Application granted granted Critical
Publication of CN105553882B publication Critical patent/CN105553882B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/83Admission control; Resource allocation based on usage prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/80Actions related to the user profile or the type of traffic
    • H04L47/805QOS or priority aware
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/121Shortest path evaluation by minimising delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/125Shortest path evaluation based on throughput or bandwidth

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种用于SDN数据平面资源调度的方法,包括:S110,针对新业务需求,SDN控制平面为每个已部署的硬件业务链建立业务链支持表;S120,根据业务链支持表,SDN控制平面判断已部署的硬件业务链是否支持新业务需求,如支持则进入S140,否则,进入S130;S130,SDN控制平面定制新业务链,以创建新业务需求中不能满足的业务,直至能满足所有业务功能需求后,进入S140;S140,SDN控制平面判断支持新业务需求的业务链是否满足新业务需求的服务质量需求,如不满足,则返回S130。本发明可以满足多业务功能和性能需求,综合优化业务整体性能和硬件资源利用率。

Description

用于SDN数据平面资源调度的方法
技术领域
本发明涉及通信技术领域,具体地说,涉及一种用于SDN数据平面资源调度的方法。
背景技术
软件定义网络(SoftwareDefinedNetworking,SDN)是2010年由美国斯坦福大学NickMcKeown教授和加州大学伯克利分校ScottShenker教授等共同提出,其出发点是通过对网络控制的抽象重新构建一个转发平面和控制平面分离的网络体系,支持网络功能的不断演进。
中间件(Middlebox)是一种独立的***软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作***之上,管理计算资源和网络通信。
现实网络环境中,Middlebox存在设备封闭、可编程性低、开发成本高周期长、管理难度大等问题。现有的技术方案中提出利用SDN思想,应对上述Middlebox问题。但没有考虑到现实网络中对多业务的需求,以及在多业务的情况下,如何通过合理调度数据平面资源,实现对新业务功能及性能需求支持的综合优化,以及数据平面资源利用的最大化的问题。
发明内容
为解决以上问题,本发明提供了一种用于SDN数据平面资源调度的方法,用于满足多业务功能和性能需求,综合优化业务整体性能和硬件资源利用率。
根据本发明的一个实施例,提供了一种用于SDN数据平面资源调度的方法,包括:
S110,针对新业务需求,SDN控制平面为每个已部署的硬件业务链建立业务链支持表;
S120,根据所述业务链支持表,SDN控制平面判断已部署的硬件业务链是否支持所述新业务需求,如支持则进入S140,否则,进入S130;
S130,SDN控制平面定制新业务链,以创建新业务需求中不能满足的业务,直至能满足所有业务功能需求后,进入S140;
S140,SDN控制平面判断支持所述新业务需求的业务链是否满足所述新业务需求的服务质量需求,如不满足,返回S130。
根据本发明的一个实施例,建立业务链支持表进一步包括:
统计所述新业务需求需要的业务数量;
根据所述业务数量为每个已部署的硬件业务链建立大小为L*L的表,其中,L为所述新业务需求需要的业务数量;
按照预定顺序,计算与L*L的表中各表格对应的业务支持参数。
根据本发明的一个实施例,计算与L*L的表中各表格对应的业务支持参数进一步包括:
采用动态规划算法,从L*L的表对角线至右上角逐步运算出业务支持参数,所述业务支持参数的计算逻辑式为:
Ti(p,q)=Ti(p,q-1)&Ti(q,q)
其中,业务支持参数Ti(p,q)表示新业务需求的R(p)至R(q)部分是否能够在已部署的硬件业务链i中完全支持,Ti(p,q-1)表示新业务需求的R(p)至R(q-1)部分是否能够在已部署的硬件业务链i中完全支持,Ti(q,q)表示新业务需求的R(q)部分是否能够在已部署的硬件业务链i中完全支持,p和q为整数,p≤q。。
根据本发明的一个实施例,SDN控制平面判断已部署的硬件业务链是否支持所述新业务需求进一步包括:
在所有已部署的硬件业务链对应的业务链支持表中寻找业务子序列,以使得寻找到的业务子序列能实现R(1)至R(L)之间连续子串的业务需求,其中,新业务需求R(L)表示需求R中包含的L个业务需求的最后第L个。
根据本发明的一个实施例,在所有已部署的硬件业务链对应的业务链支持表中寻找业务子序列,以使得寻找到的业务子序列能实现R(1)至R(L)之间连续子串的业务需求进一步包括:
在所有已部署的硬件业务链对应的业务链支持表中寻找以R(1)开始的连续最长子序列;
如寻找到以R(1)开始的连续最长子序列包括新业务需求R(L),则已部署的硬件业务链支持新业务需求R;
如寻找到以R(1)开始的连续最长子序列不包括新业务需求R(L),则在剩余的已部署的硬件业务链对应的业务链支持表中寻找业务子序列,以使得所有已部署的硬件业务链对应的业务链支持表能拼接从R(1)开始、包括新业务需求R(L)的连续子串以支持新业务需求R(1)至R(L)。
根据本发明的一个实施例,如寻找到以R(1)开始的连续最长子序列不包括新业务需求R(L),则在剩余的已部署的硬件业务链对应的业务链支持表中寻找业务子序列的步骤进一步包括:
在所有已部署的硬件业务链对应的业务链支持表中,寻找以R(1)开始的连续最长子序列,设所述连续最长子序列为R(1)R(2)…R(e1),e1<L;
在剩余的已部署的硬件业务链对应的业务链支持表中寻找以R(e1+1)起始的最长子序列,直到能拼接成从R(1)开始、包括新业务需求R(L)的连续子串R(1)R(2)…R(L)。
根据本发明的一个实施例,SDN控制平面判断支持所述新业务需求的业务链是否满足所述新业务需求的服务质量需求进一步包括:
根据SDN数据平面硬件设备资源,SDN控制平面计算当前支持所述新业务需求的业务链是否满足网络带宽、延时和吞吐率要求;
如不能满足网络带宽、延时和吞吐率要求,则返回S130。
根据本发明的一个实施例,SDN控制平面定制新业务链,以创建新业务需求中不能满足的业务进一步包括:
如当前支持所述新业务需求的业务链不能满足延时需求,SDN控制平面建立延时需求业务;
基于所述延时需求业务,SDN控制平面计算比当前业务链更短的转发路径,并将原本不在更短路径上的业务部署至此路径中,降低转发延时。
根据本发明的一个实施例,SDN控制平面定制新业务链,以创建新业务需求中不能满足的业务进一步包括:
如当前支持所述新业务需求的业务链不能满足网络带宽和吞吐率需求,SDN控制平面建立带宽和吞吐率需求业务;
基于所述带宽和吞吐率需求业务,SDN控制平面寻找硬件设备剩余资源充足的网络设备并将新业务部署于其中。
根据本发明的一个实施例,支持所述新业务需求的业务链满足所述新业务需求对服务质量的要求时,进一步包括对业务整体性能和硬件资源利用率进行综合优化的步骤:
SDN控制平面统计所有硬件业务链中资源的使用情况以及实际负荷,制定优化业务性能与节省硬件资源之间的权重,并根据所述权重综合优化全局业务性能和全局硬件资源利用率。
本发明的有益效果:
本发明提供了一种支持多业务编排的SDN数据平面资源调度的方法,可以满足多业务功能和性能需求,综合优化业务整体性能和硬件资源利用率。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要的附图做简单的介绍:
图1是根据本发明的一个实施例的方法流程图;
图2是根据本发明的一个实施例的业务链支持表建立方法流程图;以及
图3是根据本发明的一个实施例的业务链支持表中支持参数的计算顺序示意图。
具体实施方式
以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。需要说明的是,只要不构成冲突,本发明中的各个实施例以及各实施例中的各个特征可以相互结合,所形成的技术方案均在本发明的保护范围之内。
软件定义网络(SoftwareDefinedNetworking,SDN)是2010年由美国斯坦福大学NickMcKeown教授和加州大学伯克利分校ScottShenker教授等共同提出,其出发点是通过对网络控制的抽象重新构建一个转发平面和控制平面分离的网络体系,支持网络功能的不断演进。软件定义网络将计算机体系结构思想引入网络研究领域。软件定义网络的本质特性是开放性,通过网络设备的开放、控制平面的开放和协议实现的开放,使得网络不再是一个封闭的***,从而实现网络体系结构的持续演进。
SDN的基本思想是:不应无限制地纵容网络复杂度的增加。网络复杂度已经越来越难以掌控,需要对网络进行抽象,以屏蔽底层复杂度,为上层提供简单的、高效的配置与管理。SDN的基本特征有:1)控制与转发分离,转发平面由受控转发的设备组成,转发方式以及业务逻辑由运行在分离出去的控制面上的控制应用所控制;2)控制平面与转发平面之间的开放接口,SDN为控制平面提供开放的网络操作接口(也称为可编程接口),通过这种方式,控制应用只需要关注自身逻辑,而不需要关注底层更多的实现细节;3)逻辑上的集中控制,逻辑上集中的控制平面可以控制多个转发面设备,也就是控制整个物理网络,因而可以获得全局的网络状态视图,并根据该全局网络状态视图实现对网络的优化控制。
软件定义网络的核心内容包括对网络进行3个层次的抽象,以实现网络简单、高效、灵活的控制和管理。3个层次的抽象包括转发抽象、状态分布式抽象和特定视图抽象。其中,转发抽象(ForwardingAbstraction)是指把数据层面和控制层面解耦,达到数控分离的目的,同时通过标准化的接口使得数据转发与具体硬件实现无关,即可以任意采用不同厂商的数据转发硬件设备。状态分布式抽象(StateDistributionAbstraction)是指控制程序不应该直接操作各种各样的分布式状态,而是应该在一个全局网络视图上运行,需要一个把分布式状态抽象出来成为全局网络视图的工具,在SDN中此工具被定义为网络操作***NOS(NetworkOperatingSystem)。特定视图抽象(SpecificationAbstraction)是将某种特定的网络视图抽象出来,如所有的边缘接入网,因此,软件定义的网络又提出了第三层抽象,特定抽象或定制抽象。
现有网络中,Middlebox(中间件)只能支持一种特定功能。通过启用新的Middlebox来支持新的网络业务有很多困难和挑战。首先是成本问题,专用的Middlebox通常成本较高,而且随着网络业务逻辑的升级和复杂化,开发成本还会进一步提高。其次是开发周期问题,由于Middlebox的专有性、封闭性和低可编程性,每个新的网络业务对应的Middlebox的开发都面临着较长的开发周期和较高的开发难度。最后是管理的问题,这些沉重的硬件盒子需要占据较多空间,耗能较高,而且由于Middlebox由不同的厂家生产,操作特定的Middlebox需要特定的知识,人力成本较高。
近年来,有一些技术将SDN引入Middlebox的管理中,实现中央控制,解决管理上的问题;使用开放通用的设备,提高可编程性。实际上,随着SDN网络业务的日趋丰富,用户的业务需求也呈现越来越高的动态性和多样性,例如不同的业务对带宽、时延等有不同的服务质量要求。另一方面数据平面可编程资源是有限的,如何基于有限的SDN硬件资源和相对充裕的虚拟机资源对业务链进行灵活编排是一个重要的问题。因此,需要监控和统计数据平面可编程资源,结合业务的具体需求,对各业务进行资源分派和资源调度,将业务进行合理的编排,最大化地满足业务需求。
因此,本发明提供了一种用于支持多业务编排的SDN数据平面资源调度的方法,该方法基于各业务的延时、带宽等性能需求和优先级权重,对数据平面软硬件可编程资源进行全局优化。此外,在本发明中将SDN数据平面上硬件设备和虚拟机的可编程资源形成软硬件资源池,本发明还综合考虑软硬件资源池的利用率。
如图1所示为根据本发明的一个实施例的方法流程图,以下参考图1来对本发明进行详细说明。
首先,在步骤S110中,针对新业务需求,SDN控制平面为每个已部署的硬件业务链建立业务链支持表。
具体的,设定已经部署了N个硬件业务链,新业务需求R由L个业务组成。硬件业务链i对应的业务链支持表为Ti,0<i≤N,则N个硬件业务链对应有N个业务链支持表。每个业务链支持表中各表格的数值Ti(p,q),作为业务支持参数,表示新业务需求的R(p)至R(q)部分是否能够在这个硬件业务链中完全支持,其中,p和q为整数,p≤q。
该步骤具体包括如图2所示的几个步骤。首先,在步骤S210中,统计新业务需求R需要的业务数量L。接着,在步骤S220中,根据业务数量L为每个已部署的硬件业务链均建立L*L的表。也就是说,对每个已部署的硬件业务链i建立一个L*L的表。最后,在步骤S230中,按照预定顺序,计算与L*L的表中的各表格对应的业务支持参数。
其中,业务链支持表的业务支持参数可通过动态规划算法计算得到,计算顺序如图3所示,从对角线至右上角逐步运算出各支持参数,可以计算出业务链对需求各部分支持的情况,其中Turnj表示在第j轮进行计算。第一轮计算各表格对角线数值Ti(q,q)。简单地说,如果业务链i中包含业务L(q),则对应的支持参数Ti(q,q)设置为1,否则设置为0。接下来,根据下面的逻辑式计算Ti(p,q):
Ti(p,q)=Ti(p,q-1)&Ti(q,q)(1)
业务支持参数Ti(p,q)表示新业务需求的R(p)至R(q)部分是否能够在已部署的硬件业务链i中完全支持,Ti(p,q-1)表示新业务需求的R(p)至R(q-1)部分是否能够在已部署的硬件业务链i中完全支持,Ti(q,q)表示新业务需求的R(q)部分是否能够在已部署的硬件业务链i中完全支持。
式(1)表示的意思如下:如果要求新业务需求的R(p)至R(q)部分被一个硬件业务链中完全支持,则可以拆分为其R(p)至R(q-1)部分被支持,以及R(q)这个业务本身被硬件业务链支持。通过式(1)计算的业务链支持表中的支持参数为该表的右上部分,由于该表的左下部分与右上部分对称重复,所以只需计算右上部分即可。
因为实际上一个新业务需求可能由多条硬件业务链拼接而成,因此本发明不只计算从新业务需求的第一项,即R(1)开始的业务链,而是对业务需求的所有连续子串的支持情况。
接下来,在步骤S120中,根据业务链支持表,SDN控制平面判断已部署的硬件业务链是否支持新业务需求,如支持则进入S140,否则,进入S130。
具体的,SDN控制平面在所有已部署的硬件业务链对应的业务链支持表中寻找业务子序列,以使得寻找到的业务子序列能实现R(1)至R(L)(即R(1)、R(2)、…R(L))之间连续子串的业务需求。其中,新业务需求R(L)表示需求R中包含的L个业务需求,即最后一个。具体实现时,在所有已部署的硬件业务链对应的业务链支持表中寻找以R(1)开始的连续最长子序列;如寻找到以R(1)开始的连续最长子序列包括新业务需求R(L),则已部署的硬件业务链支持新业务需求R;如寻找到以R(1)开始的连续最长子序列不包括新业务需求R(L),则在剩余的已部署的硬件业务链对应的业务链支持表中寻找业务子序列,以使得所有已部署的硬件业务链对应的业务链支持表能拼接从R(1)开始、直至新业务需求R(L)的连续子串以支持完整的用户需求R。
拼接从R(1)开始、包括新业务需求R(L)的连续子串以支持完整的新业务需求R可以通过贪心算法实现。具体的,首先,在所有已部署的硬件业务链对应的N张表中,寻找以R(1)开始的最长子序列,假设最长能包含的序列为R(1)R(2)…R(e1),e1<L。接下来,在剩余的已部署的硬件业务链对应的N-1张表格中寻找以R(e1+1)起始的最长子序列;如果到第m次查找找到R(L),即说明业务需求R可以由m条硬件业务链拼接支持。
如果当前部署的硬件业务链不能完整满足用户需求R,接下来,在步骤S130中,SDN控制平面定制新业务链,以创建新业务需求中不能满足的业务,之后进入步骤S140。在该步骤中,需要对SDN数据平面资源进行综合考量和调度以达到如下目标:选定部署新业务的硬件设备中,需要有足够的资源来支持新的应用;选定部署新业务的硬件设备的剩余资源尽量刚好满足新的业务需求,以免出现资源的碎片化情况,导致后续对资源需求较大的业务无法找到剩余资源足够的硬件设备进行部署。
具体实现时,一方面需要SDN控制平面对数据平面资源进行统计和调度功能。SDN控制平面需要定期统计数据平面各硬件设备剩余资源,维护并定期更新数据平面设备资源表格。对于硬件设备,主要需要统计的资源内容为TCAM表项、转发延时、各端口吞吐率。对于软件设备,主要需要统计的资源内容为CPU利用率、内存占用率、转发延时、各端口吞吐率。
另一方面,需要SDN控制平面对新业务的资源消耗情况进行合理评估,此功能通过对该业务类似业务建立流量模型,推测出新业务对资源的需求。具体来说,SDN控制平面将统计运行中所有业务的资源占用情况。若业务部署在硬件上,则统计对TCAM资源的占用情况、对带宽占用情况;若业务部署在软件上,则统计对CPU占用情况、内存占用情况和带宽占用情况。一般来说,提供的业务类型数量有限,且已经有一些实例部署,需要增量部署的,是其中一个或几个业务的新的实例。因此,新实例资源占用情况可以参考当前网络中已部署的实例的流量模型和资源占用统计情况,来进行近似估计。这种估计免除了对复杂业务内部逻辑的总结判断,及对用户的估计而进行资源使用情况估计的复杂性,提高了部署的灵活性和资源分配的准确性。
在步骤S140中,SDN控制平面判断支持新业务需求的业务链是否满足新业务需求的服务质量需求,如不满足,则返回S130。
新业务需求对服务质量的要求包括功能需求和性能需求。功能需求指通过组装现有的服务链形成新的服务链,支持新业务包含的所有功能。性能需求指在上述功能需求的基础上,满足新业务对于网络带宽、延时、吞吐率等方面的需求。根据步骤S130中对SDN数据平面设备资源的统计,SDN控制平面可以计算出当前的新业务链是否满足网络带宽、延时和吞吐率要求。
如果上述性能需求不能得到满足,SDN控制平面需要考虑部署寻找合适的设备部署对应的新网络业务,返回步骤S130。如果延时需求不能得到满足,SDN控制平面则建立延时需求业务,将计算更短的转发路径,将需要“绕远”的业务部署到沿路的网络设备中。如果带宽、吞吐率不能满足需求,SDN控制平面建立带宽和吞吐率需求业务,将寻找剩余资源更充足的网络设备,将新业务部署于其中。SDN控制平面对SDN数据平面资源进行调度后,需要重新计算形成的新业务链是否满足用户的功能和性能需求。如不能,则继续返回步骤S130,直至找到一条合适的路径。
本发明可以在满足用户具体业务需求的情况下,基于各业务的延时、带宽等性能需求和优先级权重对数据平面资源进行全局优化。该算法在能满足新业务需求的情况下,优化服务链编排,提高软硬件资源池的利用率。
在步骤S150中,SDN控制平面统计所有硬件业务链中资源的使用情况以及实际负荷,制定优化业务性能与节省硬件资源之间的权重,并根据该权重综合优化全局业务性能和全局硬件资源利用率。
具体的,考虑到业务实例部署和删除的动态性,SDN数据平面资源可能出现碎片化状态,即出现占用设备多,设备资源占用率低的情况。另外,资源碎片化可能导致服务性能降低。原因是业务零散分布在多台设备中,导致报文在不同设备中多次转发,增加了处理延时和对带宽资源的占用。SDN控制平面通过对数据平面资源使用情况的统计,判断出可以合并入一个数据平面设备实现的业务,并进行业务迁移。迁移完成后,通过控制平面下发流表的方式,将数据报文重定向到合并后的数据平面设备中。
如果出现剩余硬件可编程资源不能满足高优先级业务需求的情况,该算法无法给出满足用户需求的具体业务链组合情况,且没有足够的资源能增量部署业务满足需求,则需要考虑将已经部署到硬件资源中的低优先级业务移至虚拟机的软件资源中,优先满足高优先级业务的资源分配。业务迁移包括硬件向硬件、软件向软件、软件向硬件、硬件向软件四种方式。通过在硬件设备之上编写软件驱动层,可以支持对硬件设备资源和状态的读取和写入,并通过软件驱动层与软件设备通信。因此,硬件设备对外呈现的接口是软件驱动层,掩盖了底层实现的差异。软件间迁移目前已有较多技术支持,如虚拟机迁移技术等。通过上述方法,实现了四种方式的业务迁移。
本算法从面向业务的角度出发,满足业务功能和性能的需求,并对业务整体性能和硬件资源利用率进行了综合优化。
以下通过一个具体的例子来验证本发明的实用性。为现有的K条已部署的硬件业务链计算对应的业务支持表,每张表大小为L*L。考虑到仅需要计算对角线及右上角的单元格参数,复杂度为O(K*[(L2+1)/2])。通过贪心算法计算已部署业务链对需求R的支持情况,复杂度至多为O(L*K)。计算新业务需求中不能满足的业务,复杂度至多为O(L)。因此总复杂度为O(K*[(L2+1)/2]*L*K*L=O(K2L4),为多项式复杂度。
具体的,在网络中开发并部署了带状态防火墙、DNS反射攻击防御、快速重路由、NAT、IPsecVPN共计5个业务,并提供10台硬件设备进行支持。通过随机算法,生成了长度在5以下,顺序任意的业务需求。此处长度在5以下是因为用户不会要求同一个业务对其报文处理两次。将算法部署在Dell720服务器中,服务器CPU为XeonE5-2609(2.4GHz),网卡为10G网卡,操作***为Ubuntu12.04。通过生成10,000条随机用户需求作为输入对算法进行性能测试。测试结果为:平均每条用户需求需要28μs即可计算出对其支持的情况。此数值在线网中完全可以接受,从而证明算法性能较优。
虽然本发明所公开的实施方式如上,但所述的内容只是为了便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属技术领域内的技术人员,在不脱离本发明所公开的精神和范围的前提下,可以在实施的形式上及细节上作任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

Claims (10)

1.一种用于SDN数据平面资源调度的方法,包括:
S110,针对新业务需求,SDN控制平面为每个已部署的硬件业务链建立业务链支持表;
S120,根据所述业务链支持表,SDN控制平面判断已部署的硬件业务链是否支持所述新业务需求,如支持则进入S140,否则,进入S130;
S130,SDN控制平面定制新业务链,以创建新业务需求中不能满足的业务,直至能满足所有业务功能需求后,进入S140;
S140,SDN控制平面判断支持所述新业务需求的业务链是否满足所述新业务需求的服务质量需求,如不满足,返回S130。
2.根据权利要求1所述的方法,其特征在于,建立业务链支持表进一步包括:
统计所述新业务需求需要的业务数量;
根据所述业务数量为每个已部署的硬件业务链建立大小为L*L的表,其中,L为所述新业务需求需要的业务数量;
按照预定顺序,计算与L*L的表中各表格对应的业务支持参数。
3.根据权利要求2所述的方法,其特征在于,计算与L*L的表中各表格对应的业务支持参数进一步包括:
采用动态规划算法,从L*L的表对角线至右上角逐步运算出业务支持参数,所述业务支持参数的计算逻辑式为:
Ti(p,q)=Ti(p,q-1)&Ti(q,q)
其中,业务支持参数Ti(p,q)表示新业务需求的R(p)至R(q)部分是否能够在已部署的硬件业务链i中完全支持,Ti(p,q-1)表示新业务需求的R(p)至R(q-1)部分是否能够在已部署的硬件业务链i中完全支持,Ti(q,q)表示新业务需求的R(q)部分是否能够在已部署的硬件业务链i中完全支持,p和q为整数,p≤q。
4.根据权利要求1-3中任一项所述的方法,其特征在于,SDN控制平面判断已部署的硬件业务链是否支持所述新业务需求进一步包括:
在所有已部署的硬件业务链对应的业务链支持表中寻找业务子序列,以使得寻找到的业务子序列能实现R(1)至R(L)之间连续子串的业务需求,其中,新业务需求R(L)表示需求R中包含的L个业务需求的最后第L个。
5.根据权利要求4所述的方法,其特征在于,在所有已部署的硬件业务链对应的业务链支持表中寻找业务子序列,以使得寻找到的业务子序列能实现R(1)至R(L)之间连续子串的业务需求进一步包括:
在所有已部署的硬件业务链对应的业务链支持表中寻找以R(1)开始的连续最长子序列;
如寻找到以R(1)开始的连续最长子序列包括新业务需求R(L),则已部署的硬件业务链支持新业务需求R;
如寻找到以R(1)开始的连续最长子序列不包括新业务需求R(L),则在剩余的已部署的硬件业务链对应的业务链支持表中寻找业务子序列,以使得所有已部署的硬件业务链对应的业务链支持表能拼接从R(1)开始、包括新业务需求R(L)的连续子串以支持新业务需求R(1)至R(L)。
6.根据权利要求5所述的方法,其特征在于,如寻找到以R(1)开始的连续最长子序列不包括新业务需求R(L),则在剩余的已部署的硬件业务链对应的业务链支持表中寻找业务子序列的步骤进一步包括:
在所有已部署的硬件业务链对应的业务链支持表中,寻找以R(1)开始的连续最长子序列,设所述连续最长子序列为R(1)R(2)…R(e1),e1<L;
在剩余的已部署的硬件业务链对应的业务链支持表中寻找以R(e1+1)起始的最长子序列,直到能拼接成从R(1)开始、包括新业务需求R(L)的连续子串R(1)R(2)…R(L)。
7.根据权利要求1所述的方法,其特征在于,SDN控制平面判断支持所述新业务需求的业务链是否满足所述新业务需求的服务质量需求进一步包括:
根据SDN数据平面硬件设备资源,SDN控制平面计算当前支持所述新业务需求的业务链是否满足网络带宽、延时和吞吐率要求;
如不能满足网络带宽、延时和吞吐率要求,则返回S130。
8.根据权利要求7所述的方法,其特征在于,SDN控制平面定制新业务链,以创建新业务需求中不能满足的业务进一步包括:
如当前支持所述新业务需求的业务链不能满足延时需求,SDN控制平面建立延时需求业务;
基于所述延时需求业务,SDN控制平面计算比当前业务链更短的转发路径,并将原本不在更短路径上的业务部署至此路径中,降低转发延时。
9.根据权利要求7所述的方法,其特征在于,SDN控制平面定制新业务链,以创建新业务需求中不能满足的业务进一步包括:
如当前支持所述新业务需求的业务链不能满足网络带宽和吞吐率需求,SDN控制平面建立带宽和吞吐率需求业务;
基于所述带宽和吞吐率需求业务,SDN控制平面寻找硬件设备剩余资源充足的网络设备并将新业务部署于其中。
10.根据权利要求1所述的方法,其特征在于,支持所述新业务需求的业务链满足所述新业务需求对服务质量的要求时,进一步包括对业务整体性能和硬件资源利用率进行综合优化的步骤:
SDN控制平面统计所有硬件业务链中资源的使用情况以及实际负荷,制定优化业务性能与节省硬件资源之间的权重,并根据所述权重综合优化全局业务性能和全局硬件资源利用率。
CN201510977024.7A 2015-12-23 2015-12-23 用于sdn数据平面资源调度的方法 Active CN105553882B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510977024.7A CN105553882B (zh) 2015-12-23 2015-12-23 用于sdn数据平面资源调度的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510977024.7A CN105553882B (zh) 2015-12-23 2015-12-23 用于sdn数据平面资源调度的方法

Publications (2)

Publication Number Publication Date
CN105553882A true CN105553882A (zh) 2016-05-04
CN105553882B CN105553882B (zh) 2018-08-28

Family

ID=55832819

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510977024.7A Active CN105553882B (zh) 2015-12-23 2015-12-23 用于sdn数据平面资源调度的方法

Country Status (1)

Country Link
CN (1) CN105553882B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106713173A (zh) * 2016-11-17 2017-05-24 大连理工大学 一种基于新贪心策略的按需服务数据包调度贪心算法
CN107196807A (zh) * 2017-06-20 2017-09-22 清华大学深圳研究生院 网络中间设备及其部署方法
CN107357649A (zh) * 2017-05-27 2017-11-17 北京奇艺世纪科技有限公司 ***资源部署策略的确定方法、装置及电子设备
CN109428817A (zh) * 2017-08-31 2019-03-05 华为技术有限公司 业务链处理方法、相关网元和***
CN111666325A (zh) * 2020-05-18 2020-09-15 国网浙江省电力有限公司信息通信分公司 一种跨链接口调用的有效性验证方法
CN113361913A (zh) * 2021-06-04 2021-09-07 广东电网有限责任公司 一种通信业务编排方法、装置、计算机设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030012780A1 (en) * 1998-10-07 2003-01-16 Karolinska Innovation Ab Anti-inflammatory medicaments
CN103338163A (zh) * 2013-07-16 2013-10-02 清华大学 支持动态弹性资源调度的软件定义网络控制器
CN104009871A (zh) * 2014-06-06 2014-08-27 中国科学院声学研究所 Sdn控制器实现方法及sdn控制器
CN104363159A (zh) * 2014-07-02 2015-02-18 北京邮电大学 一种基于软件定义网络的开放虚拟网络构建***和方法
CN105024853A (zh) * 2015-07-01 2015-11-04 中国科学院信息工程研究所 基于谣言传播机制的sdn资源匹配和服务路径发现方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030012780A1 (en) * 1998-10-07 2003-01-16 Karolinska Innovation Ab Anti-inflammatory medicaments
CN103338163A (zh) * 2013-07-16 2013-10-02 清华大学 支持动态弹性资源调度的软件定义网络控制器
CN104009871A (zh) * 2014-06-06 2014-08-27 中国科学院声学研究所 Sdn控制器实现方法及sdn控制器
CN104363159A (zh) * 2014-07-02 2015-02-18 北京邮电大学 一种基于软件定义网络的开放虚拟网络构建***和方法
CN105024853A (zh) * 2015-07-01 2015-11-04 中国科学院信息工程研究所 基于谣言传播机制的sdn资源匹配和服务路径发现方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106713173A (zh) * 2016-11-17 2017-05-24 大连理工大学 一种基于新贪心策略的按需服务数据包调度贪心算法
CN107357649A (zh) * 2017-05-27 2017-11-17 北京奇艺世纪科技有限公司 ***资源部署策略的确定方法、装置及电子设备
CN107357649B (zh) * 2017-05-27 2020-07-03 北京奇艺世纪科技有限公司 ***资源部署策略的确定方法、装置及电子设备
CN107196807A (zh) * 2017-06-20 2017-09-22 清华大学深圳研究生院 网络中间设备及其部署方法
CN109428817A (zh) * 2017-08-31 2019-03-05 华为技术有限公司 业务链处理方法、相关网元和***
CN109428817B (zh) * 2017-08-31 2021-06-22 华为技术有限公司 业务链处理方法、相关网元和***
CN111666325A (zh) * 2020-05-18 2020-09-15 国网浙江省电力有限公司信息通信分公司 一种跨链接口调用的有效性验证方法
CN111666325B (zh) * 2020-05-18 2024-04-19 国网浙江省电力有限公司 一种跨链接口调用的有效性验证方法
CN113361913A (zh) * 2021-06-04 2021-09-07 广东电网有限责任公司 一种通信业务编排方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN105553882B (zh) 2018-08-28

Similar Documents

Publication Publication Date Title
CN105553882A (zh) 用于sdn数据平面资源调度的方法
CN111445111B (zh) 一种基于边缘协同的电力物联网任务分配方法
de Souza Carvalho et al. Dynamic task mapping for MPSoCs
CN110493360A (zh) 多服务器下降低***能耗的移动边缘计算卸载方法
Moreira et al. Online resource management in a multiprocessor with a network-on-chip
CN104754008B (zh) 网络存储节点、网络存储***以及用于网络存储节点的装置和方法
CN107769976B (zh) 一种基于传输带宽优化的服务功能链映射方法
CN106648872A (zh) 用于多线程处理的方法及装置、服务器
Tessier et al. Topology-aware data aggregation for intensive I/O on large-scale supercomputers
CN113490279B (zh) 一种网络切片配置方法及装置
CN104391750A (zh) 一种基于软件定义的混合异构主机***
CN108540405B (zh) 网络资源迁移方法及装置
CN111404818A (zh) 一种面向通用多核网络处理器的路由协议优化方法
CN104823418A (zh) 用于防止需求死锁并实现均衡链路利用的流量工程***
Daneshtalab et al. CARS: Congestion-aware request scheduler for network interfaces in NoC-based manycore systems
CN103297542A (zh) 一种支持构件在线伸缩的云操作***总线及均衡方法
CN104219290B (zh) 一种多模块云应用弹性配置方法
CN104683480A (zh) 一种基于应用的分布式计算方法
CN105190599A (zh) 云应用带宽建模
CN115484205B (zh) 确定性网络路由与队列调度方法及装置
Gaffour et al. Dynamic clustering approach for run-time applications mapping on NoC-based multi/many-core systems
Cohen et al. Distributed asynchronous protocol for service provisioning in the edge-cloud continuum
CN105612727B (zh) 一种基于云环境***的部署方法和装置
Wang et al. A dynamic contention-aware application allocation algorithm for many-core processor
CN112231096A (zh) 一种fpga池化资源任务均衡的方法、***、设备及介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant