一种时延指标的确定方法、装置及系统与流程

文档序号:11206089阅读:503来源:国知局
一种时延指标的确定方法、装置及系统与流程

本发明涉及通信技术领域,尤其涉及一种时延指标的确定方法、装置及系统。



背景技术:

软件定义网络(softwaredefinednetwork,sdn)是网络虚拟化的一种实现方式,可以将网络设备控制面与数据面分离开来,从而实现了网络流量的灵活控制,使网络作为管道变得更加智能。

具体的,sdn网络内包括sdn控制器和多个转发设备(例如,路由器或交换机),转发设备只负责数据的转发,控制器负责为每个业务配置路由路径,并更新路由表,将更新的路由表下发给各转发设备,各转发设备在接收到数据时,根据路由表进行转发。其中,一个控制器以及该控制器控制的多个转发设备可以称为一个sdn域,整个sdn网络可以由多个sdn域组成,例如,终端1到终端2之间的业务路径需要分别经过sdn域1中的路径1、sdn域2中的路径2和sdn域3中的路径3,每个sdn域内的路径由本域的控制器进行分配。

而终端1到终端2之间的业务路径通常设置有时延总指标,例如,要求从终端1向终端2发送数据包a,到终端1接收到终端2发送的对于数据包a的确认包的往返时延在200毫秒以内,此时,与各个sdn域的控制器相连的策略服务器会将该时延指标分配到各个sdn域,例如,分配sdn域1的时延指标为80毫秒,sdn域2的时延指标为40毫秒,sdn域3的时延指标为80毫秒,进而,各个sdn域的控制器根据本域的时延指标建立路径。

但是,当sdn域2内最短时延都大于40毫秒时,sdn域2便无法满足上述时延指标,进而造成整个业务路径不满足时延总指标,使整个sdn网络内资源利用率不均衡。



技术实现要素:

本发明的实施例提供一种时延指标的确定方法、装置及系统,可根据不同sdn域的承载能力分配时延指标,从而确定每个sdn域内与本域内时延指标对应的路径,以均衡整个sdn网络内的资源利用率。

为达到上述目的,本发明的实施例采用如下技术方案:

第一方面,本发明的实施例提供一种时延指标的确定方法,该方法应用于n(n为大于1的自然数)个sdn域组成的sdn系统,该n个sdn域分别被n个sdn控制器控制,该方法包括:策略服务器获取需要建立的业务路径的时延总指标,该业务路径由该n个sdn域中每个sdn域内的一条路径依次连接组成;该策略服务器分别向该n个sdn控制器发送第一审计命令,该第一审计命令用于指示:接收到该第一审计命令的sdn控制器上报本域内时延最短的第一路径的第一路径信息,该第一路径信息包括该第一路径的第一时延开销;该策略服务器接收该n个sdn控制器分别发送的第一路径信息,得到n个第一路径信息;若该n个第一路径信息中的n个第一时延开销之和小于该时延总指标,则该策略服务器将冗余时延分配给x个sdn域,以确定该x个sdn域中每个sdn域的时延指标,其中,剩余的n-x个sdn域中每个sdn域的时延指标为本域内的第一时延开销,该冗余时延小于等于该时延总指标与n个第一时延开销之和的差值,x为小于等于n的自然数。

由于收集到的每个snd域内时延最短的第一路径的第一时延开销,可反映该sdn域的承载能力,进而策略服务器根据冗余时延和不同sdn域内第一路径的第一时延开销确定每个sdn域内的时延指标,可保证n个sdn域中每一个sdn域内均能提供满足时延总指标的一段路径,同时,还可以避免一条业务路径内占用的时延最短的第一路径过多,这些第一路径可以留给后续时延总指标较低的业务路径使用,从而避免了现有技术中采用自上而下的确定时延指标时,一条业务路径内占用的时延最短的第一路径过多,或者sdn域内无法提供满足时延指标的路径,从而导致不同snd域之间资源利用率不均衡以及时延指标分配不合理等问题。

在一种可能的设计中,该第一路径信息还包括该第一路径的带宽占用率;此时,在该策略服务器向该n个sdn控制器发送第一审计命令之后, 还包括:该策略服务器接收该n个sdn控制器分别发送的第一路径的带宽占用率。

在一种可能的设计中,该策略服务器将冗余时延分配给x个sdn域,以确定该x个sdn域中每个sdn域的时延指标,包括:该策略服务器根据该n个sdn域中每个sdn域内第一路径的带宽占用率,确定需要分配冗余时延的x个sdn域;该策略服务器将该冗余时延分配为x个第一冗余子时延,该x个第一冗余子时延与该x个sdn域一一对应;该策略服务器将该x个sdn域中每个sdn域内第一时延开销与第一冗余子时延之和作为该sdn域的时延指标。

例如,该策略服务器根据该n个sdn域中每个sdn域内第一路径的带宽占用率,确定需要分配冗余时延的x个sdn域,包括:该策略服务器将该n个sdn域内第一路径的带宽占用率按照由大到小的顺序进行排序;该策略服务器将排序在前的x个带宽占用率所指示的x个sdn域,确定为需要分配该冗余时延的x个sdn域。

这样一来,可以根据不同sdn域内第一路径的带宽占用率,为带宽占用率较高的第一路径所在的sdn域分配冗余时延,以避免带宽占用率较高的第一路径发生堵塞。

在一种可能的设计中,该策略服务器将冗余时延分配给x个sdn域,以确定该x个sdn域中每个sdn域的时延指标,包括:该策略服务器将该冗余时延划分为m级第二冗余子时延,m≥1;该策略服务器分别向x个sdn控制器发送第二审计命令,该第二审计命令用于指示:接收到该第二审计命令的sdn控制器上报在本域内基于第一时延开销分别增加该m级第二冗余子时延后得到的第二路径的第二路径信息,该第二路径信息包括m条第二路径的第二时延开销;该策略服务器接收该x个sdn控制器分别发送的第二路径信息,得到x个第二路径信息;该策略服务器根据该x个sdn域内的x个第一路径信息和该x个第二路径信息,确定该x个sdn域中每一个sdn域的时延指标。

策略服务器向x个sdn控制器发送第二审计命令,目的是分别审计在第一时延开销的基础上增加上述第二冗余子时延后,各个sdn域的承载能力,也就是说,通过第二审计命令可以获取不同sdn域内基于第一 时延开销分别增加m级第二冗余子时延后的第二路径的路径信息,进而策略服务器可以根据该x个sdn域内的x个第一路径信息和该x个第二路径信息,确定该x个sdn域中每一个sdn域的时延指标。

在一种可能的设计中,该策略服务器根据该x个sdn域内的x个第一路径信息和该x个第二路径信息,确定该x个sdn域中每一个sdn域的时延指标,包括:该策略服务器选择该x个sdn域中每一个sdn域内的一个第一时延开销或第二时延开销作为该sdn域的待选时延指标,得到x个待选时延指标;若该x个待选时延指标与该n-x个sdn域的n-x个时延指标的和最近接该时延总指标,且该x个待选时延指标与该n-x个时延指标的和小于该时延总指标,则策略服务器将该x个待选传输时延分别作为对应的sdn域的时延指标。

由于每一个时延指标都与sdn域内的一条第一路径或第二路径对应,因此,可以同时得到每个sdn域内满足各自时延指标的路径,这些路径都是策略服务器根据本域的承载能力确定的,因此,可以保证每个sdn域的负载均衡,提高整个sdn网络的资源利用率。

在一种可能的设计中,该第一路径信息还包括该第一路径的带宽占用率;该第二路径信息还包括该m条第二路径中每一条第二路径的带宽占用率;此时,该待选时延指标所指示的第一路径或第二路径的带宽占用率小于预设的占用阈值。

在一种可能的设计中,在该策略服务器将冗余时延分配给x个sdn域之前,还包括:该策略服务器分别向该n个sdn控制器发送第三审计命令,该第三审计命令用于指示:接收到该第三审计命令的sdn控制器上报本域内时延最长的第三路径的第三路径信息,该第三路径信息包括该第三路径的第三时延开销;该策略服务器接收该n个sdn控制器分别发送的第三路径信息,得到n个第三路径信息。

也就是说,通过第三审计命令可以确定出本域内传输时延最长的第三路径的第三路径信息,从而为后续的分配冗余时延时过滤掉一些不必要的审计过程,能够提高传输时延的分配效率。

此时,该策略服务器将该冗余时延划分为m级第二冗余子时延,包括:该策略服务器计算冗余差值,该冗余差值为该冗余时延与时延开销差值的 差值,该时延开销差值为第一sdn域内第三时延开销与第一时延开销的差值,该第一sdn域为该n个sdn域中的任一个;若该冗余差值小于或等于0,则该策略服务器将该冗余时延划分为m级第二冗余子时延;若该冗余差值大于0,则该策略服务器将该时延开销差值划分为m级第二冗余子时延。

第二方面,本发明的实施例提供一种策略服务器,该策略服务器应用于n个sdn域组成的sdn系统,该n个sdn域分别被n个sdn控制器控制,n为大于1的自然数,该策略服务器包括:获取单元,用于获取需要建立的业务路径的时延总指标,该业务路径由该n个sdn域中每个sdn域内的一条路径依次连接组成;以及,接收该n个sdn控制器分别发送的第一路径信息,得到n个第一路径信息;发送单元,用于分别向该n个sdn控制器发送第一审计命令,该第一审计命令用于指示:接收到该第一审计命令的sdn控制器上报本域内时延最短的第一路径的第一路径信息,该第一路径信息包括该第一路径的第一时延开销;确定单元,用于若该n个第一路径信息中的n个第一时延开销之和小于该时延总指标,则将冗余时延分配给x个sdn域,以确定该x个sdn域中每个sdn域的时延指标,其中,剩余的n-x个sdn域中每个sdn域的时延指标为本域内的第一时延开销,该冗余时延小于等于该时延总指标与n个第一时延开销之和的差值,x为小于等于n的自然数。

第三方面,本发明的实施例提供一种sdn系统,包括上述第二方面中任一项的策略服务器,以及与该策略服务器相连的n个sdn控制器,该n个sdn控制器分别控制n个sdn域。

第四方面,本发明的实施例提供一种策略服务器,包括:处理器、存储器、总线和通信接口;该存储器用于存储计算机执行指令,该处理器与该存储器通过该总线连接,当该策略服务器运行时,该处理器执行该存储器存储的该计算机执行指令,以使该策略服务器执行如第一方面中任意一项所述的时延指标的确定方法。

第五方面,本发明实施例提供一种计算机存储介质,用于储存为上述策略服务器所用的计算机软件指令,其包含用于执行上述方面为策略服务器所设计的程序。

本发明中,策略服务器以及sdn控制器的名字对设备本身不构成限定,在实际实现中,这些设备可以以其他名称出现。只要各个设备的功能和本发明类似,属于本发明权利要求及其等同技术的范围之内。

另外,第二方面至第五方面中任一种设计方式所带来的技术效果可参见第一方面中不同设计方式所带来的技术效果,此处不再赘述。

本发明的这些方面或其他方面在以下实施例的描述中会更加简明易懂。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。

图1为本发明实施例提供的一种sdn系统的示意图一;

图2为本发明实施例中sdn网络的架构示意图;

图3为本发明实施例提供的一种sdn系统的示意图二;

图4为本发明实施例提供的一种计算机设备的结构示意图;

图5为本发明实施例提供的一种时延指标的确定方法的流程示意图一;

图6为本发明实施例提供的一种时延指标的确定方法的流程示意图二;

图7为本发明实施例提供的一种策略服务器的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。

另外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。

本发明的实施例提供的时延指标的确定方法可应用于如图1所示的sdn系统,其中,该sdn系统中包括多个sdn域,每一个sdn域内的sdn控制器01管理该sdn域内的多个转发设备02,而各个sdn控制器01由策略服务器03统一调度。当然,每个sdn域内也可以设置多个sdn控制器01,每个sdn控制器01可以控制一个或多个转发设备02,本发明实施例对此不做限定。

具体的,图2所示为本发明实施例中sdn网络的架构示意图。如图2所示,中间的控制层(controllayer)内设置有一个或多个sdn控制器,主要负责数据平面资源的编排,网络拓扑和状态信息的维护等,物理上,控制层可以放置在一台单独的物理服务器上,也可以分布式放置在多台物理服务器上,以控制层的sdn控制器为核心,控制层之上为应用层(applicationlayer),应用层内可以设置策略服务器,用于承载各种不同的应用、进而网络仿真以及策略规划等;而sdn控制器下面挂接的各个转发设备组成最底层的基础设施层(infrastructurelayer),主要负责基于流表的数据处理、转发和状态收集。

其中,sdn控制器01可以是远程的服务器也可以是安装在远程服务器上的软件,其中包括sdn控制软件(如网络操作系统),用于提供各种网络服务。sdn控制器01集中管理sdn域中的所有设备,虚拟整个网络为资源池,根据用户不同的需求以及全局网络拓扑,灵活动态地分配资源,sdn控制器01具有sdn域中网络的全局视图,负责管理整个sdn域,对下层,可通过标准的协议与基础设施层进行通信;对上层,可通过开放接口向应用层提供对网络资源的控制能力。

需要说明的是,控制层和基础设施层不一定会在物理上分离,也就是说,应用层、控制层可能就设置在基础设施层的某一台甚至几台转发设备02内,而无需专门的sdn硬件控制设备,也可能sdn控制器是独立于基础设施层的服务器,或者,sdn控制器可以是以软件形式安装在服务器上,甚至,sdn控制器是可以以软件形式安装在服务器的虚拟机上。需要理解的是,本发明实施例对控制层的实现方式不作限制,如可以是纯软件(如网络操作系统)实现的,还可以是在独立的网络设备实体硬件实现的(实现于独立于基础设施层网络节点的服务器或者计算机集群上)等。

具体的,假设当前的sdn系统内包括n个sdn域,n>1,在本发明实施例提供的时延指标的确定方法中,策略服务器03可以从应用层获取需要建立的业务路径的时延总指标,该业务路径由n个sdn域中每个sdn域内的一条路径依次连接组成;此时,为了建立满足上述时延总指标的业务路径,策略服务器03可以向每个sdn控制器01发送第一审计命令,该第一审计命令用于指示每个sdn控制器01上报本域内时延最短的第一路径的第一路径信息,其中,该第一路径信息至少包括第一路径的第一时延开销;各个sdn控制器01确定上述第一路径信息后,将该第一路径信息上报给策略服务器03,这样,策略服务器03可以基于每个snd域内时延最短的第一路径的第一时延开销,确定每一个sdn域的时延指标(确定的n个sdn域内的时延指标之和不大于该时延总指标),进一步地,若计算出n个第一路径信息中第一时延开销的总和小于上述时延总指标,即:使用每一个sdn域中时延最短的第一路径进行数据传输时还有一定的冗余时延,那么,策略服务器可03以将该冗余时延分配给x(x为小于或等于n的自然数)个sdn域,以分别确定这x个sdn域的时延指标,而剩余的n-x个sdn域中每个sdn域的时延指标可以为本域内的第一时延开销,其中,上述冗余时延小于等于时延总指标与n个第一时延开销之和的差值,即上述冗余时延=时延总指标-n个第一时延开销之和。

这样,由于收集到的每个snd域内时延最短的第一路径的第一时延开销,可反映该sdn域的承载能力,进而策略服务器03根据冗余时延和不同sdn域内第一路径的第一时延开销确定每个sdn域内的时延指标,可保证n个sdn域中每一个sdn域内均能提供满足时延总指标的一段路径,同时,还可以避免一条业务路径内占用的时延最短的第一路径过多,这些第一路径可以留给后续时延总指标较低的业务路径使用,从而避免了现有技术中采用自上而下的确定时延指标时,一条业务路径内占用的时延最短的第一路径过多,或者sdn域内无法提供满足时延指标的路径,从而导致不同snd域之间资源利用率不均衡以及时延指标分配不合理等问题。

示例性的,如图3所示,假设策略服务器可以从应用层获取需要建立 终端1到终端2之间的业务路径,该业务路径的时延总指标为200ms,该业务路径可以由sdn域a、域b和域c内的一条路径串联组成;此时,为了建立满足上述时延总指标的业务路径,策略服务器可以向这3个sdn域内的sdn控制器分别发送第一审计命令,该第一审计命令用于指示:每个sdn控制器上报本域内时延最短的第一路径的第一路径信息,其中,该第一路径信息包括至少包括第一路径的第一时延开销;例如,域a中时延最短的第一路径的第一时延开销为20ms,域b中时延最短的第一路径的第一时延开销为20ms,域c中时延最短的第一路径的第一时延开销为40ms,那么,这三条第一路径组成的业务路径的时延之和只有80ms。

可以看出,80ms与时延总指标为200ms之间还相差有120ms的冗余时延,那么,为了节省域a、域b和域c内时延最短的第一路径资源,可以将这120ms的冗余时延分配给域a、域b和域c,从而均衡整个sdn网络内资源利用率,例如,分别给域a、域b和域c内的sdn控制器增加40ms的冗余时延,此时,域a的时延指标为:20ms+40ms=60ms,域b的时延指标为:20ms+40ms=60ms,域c的时延指标为:40ms+40ms=80ms,那么,后续sdn控制器便可以根据本域内的时延指标建立小于该时延指标的路径,最终组成满足上述时延总指标的终端1到终端2之间的业务路径。

需要说明的是,上述业务路径,可以由图3所示的每个sdn域内的一条路径串联组成,或者,相邻的sdn域之间还可以设置有时延固定的连接路径,例如,域a和域b之间由连接路径1连接,此时,该业务路径便由依次连接的域a内的路径、连接路径1、域b内的路径和域c内的路径组成。

如图4所示,图1中的sdn控制器01、转发设备02或策略服务器03可以以图4中的计算机设备(或系统)的方式来实现。

图4所示为本发明实施例提供的计算机设备示意图。计算机设备100包括至少一个处理器11,通信总线12,存储器13以及至少一个通信接口14。

处理器11可以是一个通用中央处理器(cpu),微处理器,特定应用集成电路(application-specificintegratedcircuit,asic),或一个或多 个用于控制本发明方案程序执行的集成电路。

通信总线12可包括一通路,在上述组件之间传送信息。所述通信接口14,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网,无线接入网(ran),无线局域网(wirelesslocalareanetworks,wlan)等。

存储器13可以是只读存储器(read-onlymemory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(randomaccessmemory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasableprogrammableread-onlymemory,eeprom)、只读光盘(compactdiscread-onlymemory,cd-rom)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器13可以是独立存在,通过总线与处理器相连接。存储器13也可以和处理器集成在一起。

其中,所述存储器13用于存储执行本发明方案的应用程序代码,并由处理器11来控制执行。所述处理器11用于执行所述存储器13中存储的应用程序代码。

在具体实现中,作为一种实施例,处理器11可以包括一个或多个cpu,例如图4中的cpu0和cpu1。

在具体实现中,作为一种实施例,计算机设备100可以包括多个处理器,例如图4中包括两个处理器11。这些处理器中的每一个可以是一个单核(single-cpu)处理器,也可以是一个多核(multi-cpu)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。

在具体实现中,作为一种实施例,计算机设备100还可以包括输出设备15和输入设备16。输出设备15和处理器11通信,可以以多种方式来显示信息。例如,输出设备15可以是液晶显示器(liquidcrystaldisplay,lcd),发光二级管(lightemittingdiode,led)显示设备,阴极射线管 (cathoderaytube,crt)显示设备,或投影仪(projector)等。输入设备16和处理器11通信,可以以多种方式接受用户的输入。例如,输入设备16可以是鼠标、键盘、触摸屏设备或传感设备等。

上述的计算机设备100可以是一个通用计算机设备或者是一个专用计算机设备。在具体实现中,计算机设备100可以是台式机、便携式电脑、网络服务器、掌上电脑(personaldigitalassistant,pda)、移动手机、平板电脑、无线终端设备、通信设备、嵌入式设备或有图4中类似结构的设备。本发明实施例不限定计算机设备100的类型。

需要说明的是,在本发明实例中,上述sdn系统中的任意一种功能节点,例如,sdn控制器01、转发设备02或策略服务器03,可能由一个实体设备实现,也可能由多个实体设备共同实现,分布式存储系统中的多个功能节点可能分别由不同的实体设备实现,也可能都由同一个实体设备实现。可以理解的是,分布式存储系统中的任意一种功能节点都可能是实体设备内的一个逻辑功能模块,也可能是由多个实体设备组成的一个逻辑功能模块。

因此,在下述的方法实施例中,可以由一个实体设备执行本发明实施例提供的时延指标的确定方法中的各个步骤,可以由多个实体设备协作执行本发明实施例提供的时延指标的确定方法中的各个步骤,对此本发明不作限定。下面以由策略服务器和sdn控制器执行本发明实施例提供的时延指标的确定方法为例,对本发明实施例进行详细地描述。

具体的,本发明的实施例提供一种时延指标的确定方法,如图5所示,包括:

101、策略服务器获取需要建立的业务路径的时延总指标,该业务路径由n个sdn域中每个sdn域内的一条路径依次连接组成,n>1。

102、策略服务器分别向n个sdn控制器发送第一审计命令,该第一审计命令用于指示:接收到第一审计命令的sdn控制器上报本域内时延最短的第一路径的第一路径信息,第一路径信息包括第一路径的第一时延开销。

103、sdn控制器接收到该第一审计命令后,确定本域内时延最短的第一路径的第一路径信息,并将该第一路径信息发送至策略服务器。

104、策略服务器接收n个sdn控制器分别发送的第一路径信息,得到n个第一路径信息。

105、若n个第一路径信息中的n个第一时延开销之和小于时延总指标,则策略服务器将冗余时延分配给x(x≤n)个sdn域,以确定x个sdn域中每个sdn域的时延指标,其中,剩余的n-x个sdn域中每个sdn域的时延指标为本域内的第一时延开销,该冗余时延小于等于时延总指标与n个第一时延开销之和的差值。

在步骤101中,当需要建立一条新的业务路径时,策略服务器可以从应用层获取需要建立的业务路径的时延总指标,即数据包在该业务路径上进行传输所允许的最大时延,这里的时延指标可以指单向时延指标,也可以指rtt(round-triptime,往返时延)指标,其中,该业务路径由n个sdn域中每个sdn域内的一条路径依次连接组成,n>1。

当然,在建立一条新的业务路径时,除了需要知道业务路径的时延总指标外,策略服务器还可以从应用层获取该业务路径的其他指标,例如,带宽要求、或丢包率要求等,本发明实施例对此不做限定。

示例性的,仍以图3所示的sdn网络为例,若需要建立终端1到终端2之间的业务路径,该业务路径可以由sdn域a、域b和域c内的一条路径串联而成,其中,该业务路径的时延总指标为200ms,该业务路径的带宽要求为100m(兆),由于该业务路径分别由域a、域b和域c内的一条路径组成,因此,为了使建立的业务路径满足该时延总指标,需要确定各个sdn域内的时延指标,并将确定好的各个时延指标分别分配到各个sdn域的sdn控制器,这样,每一个sdn域内的sdn控制器可根据本域内分配的时延指标选择相应的路径,以便在每个sdn域内建立与本域内时延指标对应的路径,最终组成端1到终端2之间满足该时延总指标的业务路径。

在步骤102中,为了将时延总指标合理分配到各个sdn域,保证每个sdn域均能提供满足各自时延指标的路径,同时保证整个sdn网络内的资源使用较为均衡,策略服务器可以向n个sdn域内的每个sdn控制器发送第一审计命令。

该第一审计命令用于指示:接收到第一审计命令的sdn控制器上报 本域内传延最短的第一路径的第一路径信息,其中,该第一路径信息至少包括第一路径的第一时延开销。

也就是说,策略服务器通过获取到每个sdn域内时延最短的第一路径的时延开销,从而确定每个sdn域的承载能力,以便于基于每个sdn域的承载能力将时延总指标合理分配到各个sdn域。

在步骤103中,各个sdn控制器接收到策略服务器发送的该第一审计命令后,确定本域内时延最短的第一路径的第一路径信息,进而将该第一路径信息上报至策略服务器。

由于每一个sdn域内的sdn控制器负责对本域内所有转发设备的网络拓扑和状态信息的维护等工作,因此,sdn控制器可以基于本域内的网络拓扑信息,计算出本域内满足带宽等其它要求的时延最短的路径,即第一路径,并确定该第一路径的时延开销,即第一时延开销,这些第一路径的相关信息可以称为第一路径信息。

进一步地,该第一路径信息中还可以包括该第一路径的带宽占用率等,应当理解的是,当需要建立的业务路径有带宽要求时,在步骤103中确定的第一路径即为满足带宽要求的第一路径,以步骤101中的例子为例,策略服务器向域a内的sdn控制器1发送的第一审计命令,具体用于要求sdn控制器1确定域a内满足100m带宽而且时延最低的第一路径的第一时延开销,以及该第一路径的带宽占用率。

在步骤104中,各个sdn控制器将步骤103中确定出的第一路径信息发送至策略服务器,策略服务器分别接收这n个sdn控制器发送的上述第一路径信息,最终得到n个第一路径信息。

仍以步骤101中的例子为例,表1为策略服务器接收到的域a、域b和域c内的sdn控制器分别发送的第一路径信息,该第一路径信息中包括第一路径的第一时延开销和第一路径的带宽占用率。

表1

可以看出,当使用每个sdn域内时延最短的第一路径组成终端1到终端2之间的业务路径时,第一时延开销之和为:20ms+20ms+40ms=80ms,而该业务路径的时延总指标为200ms。

为了尽可能的接近时延总指标,在步骤105中,策略服务器可以将冗余时延分配给n个sdn域中的x个sdn域,以确定这x个sdn域中每个sdn域的时延指标,其中,冗余时延小于等于时延总指标与n个第一时延开销之和的差值,即0<该冗余时延≤时延总指标-n个第一时延开销之和,例如,该冗余时延为120ms,此时,策略服务器可以将这120ms的冗余时延平均分配给域a、域b和域c,那么,域a的时延指标为:20ms+40ms=60ms,域b的时延指标为:20ms+40ms=60ms,域c的时延指标为:40ms+40ms=80ms。

这样一来,即可以保证每个sdn域内分配的时延指标的可行性(即每个sdn域内的时延指标大于时延最短的第一时延开销),又可以避免一条业务路径内占用的时延最短的第一路径过多,即过度使用各个sdn域内时延最短的第一路径,这些第一路径可以留给后续时延总指标较低的业务路径使用,从而达到平衡整个sdn网络内资源利用率的目的。

示例性的,策略服务器可以根据每个sdn域上报的第一路径的带宽占用率,确定需要分配冗余时延的x个sdn域,例如,当sdn控制器1上报的第一路径的带宽占用率大于阈值时,例如70%时,策略服务器可以确定sdn控制器1所在的sdn域需要分配冗余时延,可以理解的是,70%仅是上述阈值可能的取值,本发明实施例对该阈值的取值不做限定。

这样,策略服务器将上述冗余时延分配为x个第一冗余子时延,例如,将上述冗余时平均分为x份,这里,x个第一冗余子时延与y个sdn域一一对应;进而,策略服务器将x个sdn域中每个sdn域内的第一时延开销与第一冗余子时延之和作为该sdn域的时延指标,即可分别得到这x个sdn域的时延指标。可以理解的是,本领域技术人员也可以按照一定的函数或算法将上述冗余时延分配为x个第一冗余子时延,本发明实施例对此不做限定。

当然,还可以将n个sdn域内第一路径的带宽占用率按照由大到小的顺序进行排序,进而将排序在前的x个带宽占用率所指示的x个sdn 域,确定为需要分配冗余时延的x个sdn域,应当理解的是,本领域技术人员可以根据实际经验设计相应的分配方法分配上述冗余时延,本发明实施例对此不做限定。

此时,对于n个sdn域中除x个sdn域之外的n-x个sdn域,策略服务器可以直接将步骤103中得到的每个sdn域的第一时延开销作为该sdn域的时延指标即可,当然,当x=n时,通过上述步骤105便可以得到n个sdn域中每个sdn域的时延指标。

其中,上述步骤101-105中策略服务器的动作可以由上述图5中的处理器11根据存储器13中的软件模块来执行,类似的,上述步骤101-105中sdn控制器的动作也可以由上述图5中的处理器11根据存储器13中的软件模块来执行。

作为一种可能的设计方式,本发明的实施例提供了一种策略服务器如何将冗余时延分配给x个sdn域,以确定x个sdn域中每个sdn域的时延指标的方法,如图6所示,该方法包括:

201、策略服务器将冗余时延划分为m级第二冗余子时延,m≥1。

202、策略服务器向x个sdn控制器发送第二审计命令,该第二审计命令用于指示:接收到第二审计命令的sdn控制器上报在本域内分别增加该m级第二冗余子时延后得到的第二路径的第二路径信息;该第二路径信息包括m条第二路径的第二时延开销,0<x≤n。

203、sdn控制器接收到该第二审计命令后,确定本域内增加m级第二冗余子时延后得到的第二路径的第二路径信息,并将第二路径信息上报至策略服务器。

204、策略服务器接收x个sdn控制器分别发送的第二路径信息,得到x个第二路径信息。

205、策略服务器根据上述x个sdn控制器上报的x个第一路径信息和x个第二路径信息,确定x个sdn域中每个sdn域的时延指标。

在步骤201中,为了能够更加合理的将冗余时延分配到各个sdn域中,策略服务器可将该冗余时延划分为m级第二冗余子时延,m≥1。

例如,上述实施例中第一时延开销的和为:20ms+20ms+40ms=80ms,而该业务路径的时延总指标为200ms,那么,该冗余时延可以是 (0-120]中的任意值,例如,该冗余时延=120ms,此时,可以以60ms为单位将这120ms的冗余时延划分为2级第二冗余子时延,即60ms的冗余子时延和120ms的冗余子时延,当然,m越大,则对冗余时延的划分精度越高。

在步骤202中,策略服务器向x个sdn控制器发送第二审计命令,目的是分别审计在第一时延开销的基础上增加上述第二冗余子时延后,各个sdn域的承载能力,也就是说,策略服务器可以选择n个sdn域中的一个或多个分配上述冗余时延,例如,在表1中,由于域b和域c的带宽占用率大于阈值,因此,策略服务器可以向域b和域c中的两个sdn控制器发送该第二审计命令。

其中,该第二审计命令用于指示:接收到第二审计命令的sdn控制器上报在本域内基于第一时延开销分别增加m级第二冗余子时延后得到的第二路径的第二路径信息;与第一路径信息类似的,该第二路径信息包括m条第二路径的带宽占用率和第二时延开销。

当然,若本域内增加某一级第二冗余子时延后无法得到相应的第二路径,则该第二路径信息为空或0,例如,对sdn域1中确定的第2级第二冗余子为80ms,第一时延开销为20ms,那么,当sdn域1内时延最长的第三路径的开销,即第三时延开销仅为50ms,那么,便无法审计得到满足20ms+80ms=100ms的第二路径,此时,sdn域1内的sdn控制器可上报第二路径信息为空。

例如,如表1所示,域b内第一路径的第一时延开销为20ms,那么,对于步骤201中确定的60ms的第二冗余子时延和120ms的第二冗余子时延,需要分别审计域b内时延在20ms+60ms=80ms和20ms+120ms=140ms内的两条第二路径。类似的,域c内第一路径的第一时延开销为40ms,需要分别审计域c内时延在40ms+60ms=100ms和40ms+120ms=160ms内的两条第二路径。

在步骤203中,相应的x个sdn控制器接收到该第二审计命令后,分别确定本域内基于第一时延开销增加m级第二冗余子时延后,得到的第二路径的第二路径信息,进而将该第二路径信息上报至策略服务器。

以域b为例,sdn控制器需要计算在域b内,分别增加上述2级第 二冗余子时延后,时延最接近80ms和140ms的两条第二路径,进而确定第二路径的带宽占用率和第二路径的第二时延开销等信息,例如,域b的sdn控制器确定的一条第二路径的第二时延开销为70ms,带宽占用率为30%;确定的另一条第二条路径的第二时延开销为120ms,带宽占用率20%。

在步骤204中,各个sdn控制器将步骤203中确定出的第二路径信息发送至策略服务器,策略服务器分别接收这x个sdn控制器发送的上述第二路径信息,最终得到x个第二路径信息。

仍以上述实施例中的例子进行说明,表2为策略服务器接收到的域a、域b和域c内的sdn控制器分别发送的第一路径信息和第二路径信息。

表2

此时,在步骤205中,策略服务器可以根据以上x个sdn控制器上报的x个第一路径信息和x个第二路径信息,确定这x个sdn域中每个sdn域内的时延指标。

可以理解的是,本领域技术人员可以根据实际经验设计算法,以根据第一路径信息和第二路径信息,确定出x个sdn域中每个sdn域内的时延指标。

示例性的,策略服务器选择x个sdn域中每个sdn域内的一个第一时延开销或第二时延开销作为该sdn域的待选时延指标,得到x个待选时延指标,也就是说,对于每一个sdn域,策略服务器要从1条第一路径和m条第二路径中选择一条路径的时延开销,即第一时延开销或第二时 延开销,作为待选时延指标,例如,对于域b,策略服务器选择70ms的第二时延开销作为待选时延指标,对于域c,策略服务器选择90ms的第二时延开销作为待选时延指标,此时,对于域a,策略服务器将第一路径的第一时延开销20ms,作为域a的选时延指标。

进一步地,若这x个待选时延指标与剩余的n-x个sdn域的n-x个时延指标的和最近接时延总指标,且中x个待选时延指标与n-x个时延指标的和小于时延总指标,则策略服务器将上述x个待选传输时延分别作为对应的sdn域的时延指标。

例如,上述x个待选时延指标为:70ms和90ms,上述n-x个时延指标为20ms,那么,这x个待选时延指标与剩余的n-x个时延指标的和为:70ms+90ms+20ms=180ms,最接近上述200ms的时延总指标,且小于200ms的时延总指标,因此,策略服务器可以将70ms作为域b的时延指标,将90ms作为域c的时延指标。

此时,策略服务器便确定出了域a、域b以及域c中每一个sdn域的时延指标,同时,由于每一个时延指标都与sdn域内的一条第一路径或第二路径对应,因此,可以同时得到每个sdn域内满足各自时延指标的路径,这些路径都是策略服务器根据本域的承载能力确定的,因此,可以保证每个sdn域的负载均衡,提高整个sdn网络的资源利用率。

又或者,当第一路径信息还包括第一路径的带宽占用率,第二路径信息还包括m条第二路径中每一条第二路径的带宽占用率时,策略服务器在选择每个sdn域内的待选时延指标时,可以优先选择带宽占用率小于预设的占用阈值的第一路径或第二路径,进而确定该路径对应的第一时延开销后第二时延开销为待选时延指标。

另外,在步骤102之后,即策略服务器向n个sdn域内的每个sdn控制器发送第一审计命令之后,策略服务器还可以向每个sdn控制器发送第三审计命令。

其中,该第三审计命令用于指示:接收到第三审计命令的sdn控制器上报本域内传延最长的第三路径的第三路径信息,与上述第一路径信息和第二路径信息类似的,第三路径信息可以包括第三路径的第三时延开销等信息。

这样,sdn控制器接收到第三审计命令之后,根据本域内的拓扑网络信息计算时延最长的第三路径,进而确定第三路径的第三时延开销等第三路径信息,并将该第三路径信息发送至策略服务器,例如,在上述域b中,时延最长的第三路径的第三时延开销为40ms,也就是说,域b内的时延开销在20ms-40ms之间。

此时,在执行步骤201时,即策略服务器将冗余时延划分为m级第二冗余子时延时,例如,以60ms为单位将120ms的冗余时延划分为2级第二冗余子时延,即60ms的第二冗余子时延和120ms的第二冗余子时延。

可以看出,由于域b内的最大的时延开销仅为40ms,那么,在第一时延开销,即20ms的基础上,就算再给域b增加60ms或120ms的第二冗余子时延,域b也永远无法达到60ms+20ms=80ms或120ms+20ms=140ms的时延指标,反而会占用了其他sdn域内可以分配的冗余时延,因此,策略服务器无需指示域b的sdn控制器继续审计增加60ms或120ms的第二冗余子时延后的第二路径的第二路径信息。

也就是说,通过第三审计命令可以确定出本域内传输时延最长的第三路径的第三路径信息,从而为后续的分配冗余时延时过滤掉一些不必要的审计过程,能够提高传输时延的分配效率。

进一步地,当策略服务器执行步骤201,即将冗余时延划分为m级第二冗余子时延时,具体可包括以下步骤:

对于任意sdn域,例如第一sdn域,策略服务器可以计算冗余差值,即冗余时延与时延开销差值的差值,其中,时延开销差值为第三时延开销与第一时延开销的差值,也就是说,冗余差值=冗余时延-第一sdn域内第三时延开销与第一时延开销的差值,以上述域b为例,冗余差值=120ms-(40ms-20ms)=100ms,也就是说,域b内可以承受的冗余时延实际上只有0-20ms,可以看出上述时延开销差值是冗余时延内的一个子集。

因此,若上述冗余差值大于0,则策略服务器将上述时延开销差值,即上述20ms划分为m级第二冗余子时延,若上述冗余差值小于或等于0,则策略服务器将该冗余时延划分为m级第二冗余子时延,这样,策略服务器可以根据审计结果,基于域b的承载能力为域b分配更加合理的时延指 标。

其中,上述步骤201-205中策略服务器的动作可以由上述图5中的处理器11根据存储器13中的软件模块来执行;类似的,上述步骤201-205中sdn控制器的动作也可以由上述图5中的处理器11根据存储器13中的软件模块来执行。

至此,本发明的实施例提供一种时延指标的确定方法,策略服务器根据需要建立的业务路径的时延总指标,向n个sdn控制器发送第一审计命令,以确定每个sdn域内时延最短的第一路径的第一路径信息;进而根据该第一路径信息,将冗余时延分配给n个sdn域中的x个sdn域,以确定这x个sdn域的时延指标,这样,由于收集到的每个snd域内时延最短的第一路径的第一时延开销,可反映不同sdn域的承载能力,进而,策略服务器可以根据冗余时延和不同sdn域内第一路径的第一时延开销确定不同sdn域的时延指标,可保证n个sdn域中每一个sdn域内均能提供满足时延总指标的一段路径,同时,还可以避免一条业务路径内占用的时延最短的第一路径过多,这些第一路径可以留给后续时延总指标较低的业务路径使用,从而避免了现有技术中采用自上而下的确定时延指标时,一条业务路径内占用的时延最短的第一路径过多,或者sdn域内无法提供满足时延指标的路径,从而导致不同snd域之间资源利用率不均衡以及时延指标分配不合理等问题。

如图7所示,本发明实施例还提供了一种策略服务器的结构示意图。该策略服务器包括:获取单元21,发送单元22和确定单元23。

其中,获取单元21,用于获取需要建立的业务路径的时延总指标,所述业务路径由所述n个sdn域中每个sdn域内的一条路径依次连接组成;以及,接收所述n个sdn控制器分别发送的第一路径信息,得到n个第一路径信息;发送单元22,用于分别向所述n个sdn控制器发送第一审计命令,所述第一审计命令用于指示:接收到所述第一审计命令的sdn控制器上报本域内时延最短的第一路径的第一路径信息,所述第一路径信息包括所述第一路径的第一时延开销;确定单元23,用于若所述n个第一路径信息中的n个第一时延开销之和小于所述时延总指标,则将冗余时延分配给x个sdn域,以确定所述x个sdn域中每个sdn域的时 延指标,其中,剩余的n-x个sdn域中每个sdn域的时延指标为本域内的第一时延开销,所述冗余时延小于等于所述时延总指标与n个第一时延开销之和的差值,x为小于等于n的自然数。

进一步地,所述获取单元21,还用于接收所述n个sdn控制器分别发送的第一路径的带宽占用率,其中,所述第一路径信息还包括所述第一路径的带宽占用率。

进一步地,所述确定单元23,具体用于根据所述n个sdn域中每个sdn域内第一路径的带宽占用率,确定需要分配冗余时延的x个sdn域;将所述冗余时延分配为x个第一冗余子时延,所述x个第一冗余子时延与所述x个sdn域一一对应;将所述x个sdn域中每个sdn域内第一时延开销与第一冗余子时延之和作为该sdn域的时延指标。

进一步地,所述确定单元23,用于根据所述n个sdn域中每个sdn域内第一路径的带宽占用率,确定需要分配冗余时延的x个sdn域,具体包括:将所述n个sdn域内第一路径的带宽占用率按照由大到小的顺序进行排序;将排序在前的x个带宽占用率所指示的x个sdn域,确定为需要分配所述冗余时延的x个sdn域。

进一步地,所述确定单元23,用于将所述冗余时延划分为m级第二冗余子时延,m≥1;根据所述x个sdn域内的x个第一路径信息和所述x个第二路径信息,确定所述x个sdn域中每一个sdn域的时延指标。所述发送单元22,还用于分别向x个sdn控制器发送第二审计命令,所述第二审计命令用于指示:接收到所述第二审计命令的sdn控制器上报在本域内基于第一时延开销分别增加m级第二冗余子时延后得到的第二路径的第二路径信息,所述第二路径信息包括m条第二路径的第二时延开销;所述获取单元21,还用于接收所述x个sdn控制器分别发送的第二路径信息,得到x个第二路径信息;。

进一步地,所述确定单元23,用于根据所述x个sdn域内的x个第一路径信息和所述x个第二路径信息,确定所述x个sdn域中每一个sdn域的时延指标,具体包括:选择所述x个sdn域中每一个sdn域内的一个第一时延开销或第二时延开销作为该sdn域的待选时延指标,得到x个待选时延指标;若所述x个待选时延指标与所述n-x个sdn域 的n-x个时延指标的和最近接所述时延总指标,且所述x个待选时延指标与所述n-x个时延指标的和小于所述时延总指标,则将所述x个待选传输时延分别作为对应的sdn域的时延指标。

进一步地,所述发送单元22,用于分别向所述n个sdn控制器发送第三审计命令,所述第三审计命令用于指示:接收到所述第三审计命令的sdn控制器上报本域内时延最长的第三路径的第三路径信息,所述第三路径信息包括所述第三路径的第三时延开销;所述获取单元21用于接收所述n个sdn控制器分别发送的第三路径信息,得到n个第三路径信息。

进一步地,所述划分单元24,用于将所述冗余时延划分为所述m级第二冗余子时延,具体包括:计算冗余差值,所述冗余差值为所述冗余时延与时延开销差值的差值,所述时延开销差值为第一sdn域内第三时延开销与第一时延开销的差值,所述第一sdn域为所述n个sdn域中的任一个;若所述冗余差值小于或等于0,则将所述冗余时延划分为m级第二冗余子时延;若所述冗余差值大于0,则将所述时延开销差值划分为m级第二冗余子时延。

在本实施例中,策略服务器是以功能单元的形式来呈现。这里的“单元”可以指特定应用集成电路(application-specificintegratedcircuit,asic),电路,执行一个或多个软件或固件程序的处理器和存储器,集成逻辑电路,和/或其他可以提供上述功能的器件。在一个简单的实施例中,本领域的技术人员可以想到策略服务器可以采用图4所示的形式。获取单元21,发送单元22和确定单元23可以通过图4的处理器和存储器来实现,本发明实施例对此不做限定。

至此,本发明的实施例提供一种策略服务器,可以根据需要建立的业务路径的时延总指标,向n个sdn控制器发送第一审计命令,以确定每个sdn域内时延最短的第一路径的第一路径信息;进而根据该第一路径信息,将冗余时延分配给n个sdn域中的x个sdn域,以确定这x个sdn域的时延指标,这样,由于收集到的每个snd域内时延最短的第一路径的第一时延开销,可反映不同sdn域的承载能力,进而,策略服务器可以根据冗余时延和不同sdn域内第一路径的第一时延开销确定不同sdn域的时延指标,可保证n个sdn域中每一个sdn域内均能提供满 足时延总指标的一段路径,同时,还可以避免一条业务路径内占用的时延最短的第一路径过多,这些第一路径可以留给后续时延总指标较低的业务路径使用,从而避免了现有技术中采用自上而下的确定时延指标时,一条业务路径内占用的时延最短的第一路径过多,或者sdn域内无法提供满足时延指标的路径,从而导致不同snd域之间资源利用率不均衡以及时延指标分配不合理等问题。

另外,本发明实施例还提供了一种计算机存储介质,用于储存为上述图7所示的策略服务器所用的计算机软件指令,其包含用于执行上述方法实施例所设计的程序。通过执行存储的程序,可以确定每个sdn域的时延指标。

尽管在此结合各实施例对本发明进行了描述,然而,在实施所要求保护的本发明过程中,本领域技术人员通过查看所述附图、公开内容、以及所附权利要求书,可理解并实现所述公开实施例的其他变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其他单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1