分层软件定义网络中的流量工程控制器的制作方法

文档序号:18712716发布日期:2019-09-20 20:44阅读:147来源:国知局
分层软件定义网络中的流量工程控制器的制作方法

本发明申请要求于2013年12月26日递交的发明名称为“分层软件定义网络中的流量工程控制器”的第14/141,077号美国专利申请案的在先申请优先权,该在先申请的内容以引用的方式并入本文。

技术领域

本发明一般涉及电信,在具体实施例中,涉及分层软件定义网络中的流量工程控制器。



背景技术:

软件定义网络(software-defined networking,SDN)允许网络管理员通过低级别功能抽象化来管理网络业务。SDN中的一个策略是通过将控制面从数据面解耦来降低网络复杂性。这可以通过使用SDN控制器管理网络中的资源发放来实现,从而大量减轻来自切换组件的处理负载。值得注意的是,为了作出聪明的发放决策,集中式SDN控制器可以向切换设备和/或用户要求反馈信息(例如,缓冲区状态信息、时延统计等)。这可能会在大网络中制造瓶颈,因为涉及统计网络信息与分发发放指令的时延可能会严重延迟策略实施。此外,对于为大型网络服务的SDN控制器,流量工程可能会变成处理密集型,因为随着网络中额外链路的增加,优化算法的计算复杂度会大大增加。相应地,需要以有效及可扩展的方式将SDN发放技术应用于大型网络的机制。



技术实现要素:

一般情况下,本发明实施例描述了操作分层软件定义网络中的流量工程控制器的方法,以实现技术优势。

根据实施例,提供了操作分层SDN控制器的方法。在此例中,所述方法包括:从一个或多个子SDN控制器接收区域信息;根据所述区域信息计算基于成本的参数;将所述基于成本的参数发送给所述一个或多个子SDN控制器。为每个所述一个或多个子SDN控制器分配在域中的不同区域,配置所述基于成本的参数用于在所述域的每个所述不同区域中进行分布式网络资源分配。还提供了一种执行该方法的装置。

根据另一实施例,提供了另一种操作分层SDN控制器的方法。在此例中,所述方法包括:从分配给子SDN控制器的区域中的一个或多个网元中接收网络信息;将所述网络信息并入区域信息;将所述区域信息上报给父SDN控制器。所述方法还包括:从所述父SDN控制器接收基于成本的参数的集合;根据所述基于成本的参数的集合将网络资源分配给网络组件。还提供了一种执行该方法的装置。

附图说明

为了更完整地理解本发明及其优点,现在参考下文结合附图进行的描述,其中:

图1示出了传统的SDN架构的图;

图2示出了实施例分层SDN架构的图;

图3示出了实施例分层SDN控制面的图;

图4示出了在分层SDN环境中执行流量工程的实施例方法的流程图;

图5示出了在分层SDN环境中执行流量工程的另一实施例方法的流程图;

图6示出了在分层SDN环境中执行流量工程的又一实施例方法的流程图;

图7示出了在分层SDN环境中执行流量工程的又一实施例方法的流程图;

图8示出了实施例分层SDN配置的图;

图9示出了另一实施例分层SDN配置的图;

图10示出了又一实施例分层SDN配置的图;

图11示出了又一实施例分层SDN配置的图;

图12示出了计算拉格朗日变量的实施例方法的流程图;

图13示出了计算拉格朗日变量的另一实施例方法的流程图;

图14示出了计算拉格朗日变量的又一实施例方法的流程图;

图15示出了又一实施例分层SDN配置的图;

图16示出了又一实施例分层SDN配置的图;

图17示出了又一实施例分层SDN配置的图;

图18示出了又一实施例分层SDN配置的图;

图19示出了又一实施例分层SDN配置的图;

图20示出了实施例通信设备的方框图。

除非另有指示,否则不同图中的对应标号和符号通常指代对应部分。绘制各图是为了清楚地说明实施例的相关方面,因此未必是按比例绘制的。

具体实施方式

下文将详细论述本发明实施例的制作和使用。应了解,本文所揭示的概念可以在多种具体环境中实施,且所论述的具体实施例仅作为说明而不限制权利要求书的范围。进一步的,应理解,可在不脱离由所附权利要求书界定的本发明的精神和范围的情况下,对本文做出各种改变、替代和更改。

本发明的各方面提供了影响了分层SDN控制器架构的资源发放技术,以降低复杂性并提高使用效率。所述分层SDN架构将网络再分为多个区域(例如,域以及分区),其中,最高级区域(例如,根域)包括低级区域(例如,域、分区等)的层次树。可以分配专用SDN控制器分别在每个区域中发放资源。SDN控制器从各区域的网元(例如,交换机、路由器、接入点(access point, AP)以及子SDN控制器等)中收集网络状态信息,将这些网络状态信息并入它们特定的区域对应的区域信息。所述区域信息通过SDN控制面进行上行馈入(如,从子SDN控制器到父SDN控制器),进一步在分层结构的每一层上合并,直到在根SDN控制器(例如,分配给根域的控制器)上收到所有的区域信息。所述根SDN控制器通过所述区域信息计算基于成本的参数,所述基于成本的参数是分发给区域SDN控制器进行本地发放。所述基于成本的参数可包括任何用于通过推进全局流量工程目标的方式约束区域流量工程优化的参数(例如,拉格朗日变量估计等)。以下将对这些方面以及其他方面进行更具体的描述。

图1示出了传统SDN架构100,其中,SDN控制器101为网元110处理资源发放。如图所示,所述SDN控制器101从所述网元110接收测量,通过优化算法计算发放命令,并将所述发放命令分发给所述网元110。优化算法的计算复杂性随着网络100中网元110的加入而增加,并且,当附加的变量 (例如,无线干扰、路径损失等)作为因素计入优化算法时也会增加。(伴随着控制面时延的)该增加的复杂性可能会使SDN发放不适用于大型网络。此外,

本发明的各方面提供了解决困扰传统系统的效率、复杂性以及扩展性问题的分层SDN架构。图2示出了分层SDN架构200,包括核心网201、接入网202以及多个SDN控制器210-215。如图所示,分层SDN架构200包括分配给SDN控制器210的根域(区域0)。所述根域再划分为不同的区域,包括分配给SDN控制器211的分区1、分配给SDN控制器212的区域2、分配给SDN控制器212a的分区2a、分配给SDN控制器212b的分区2b、分配给 SDN控制器213的分区3、分配给SDN控制器214的分区4,以及分配给SDN 控制器215的分区5。SDN控制器210-215通过控制面250连接,如图3所示。为了本发明的目的,术语“区域”指分配给SDN控制器的物理或虚拟网络的任一部分。高级区域可以笼统的称为域,低级区域可以笼统的称为分区。区域可以包括与地理区域或物理网络组件组对应的物理域/分区。区域也可以包括与业务流组对应的虚拟域/分区。可以基于任何标准将流分组到虚拟区域。例如,虚拟区域可以包括具有普通服务质量(quality of service,QoS)要求的流或与普通服务水平协议(service level agreement,SLA)相关联的流。或者,虚拟区域可以包括具有类似流量特征的流或与同一个端点(例如,源、目的地等)或实体(例如,同一个客户等)相关联的流。

SDN控制器210-215从各区域的网元中收集网络状态信息。网元可能包括任意数据或控制面实体,包括网络切换元件(例如,交换机、路由器等)、无线和/或有线接入点(例如,基站、中继、低功率节点、毫微微蜂窝基站等)、用户设备(例如,用户设备(user equipment,UE)等)以及控制器(例如,调度器、子SDN控制器等)。网络状态信息可以包括任何与网络相关的数据,例如,与网络拥塞(例如,缓冲区状态等)、吞吐量、加载以及质量测量(例如,信道质量信息(Channel Quality Information,CQI)等)相关的数据。采集之后,网络状态信息并入区域信息,并上报给下一级父控制器,直到在根 SDN控制器210上接收(合并的或其他的)所有的区域信息。更具体的,SDN 控制器212a、212b(分别)将与分区2a与分区2b相关联的区域信息上报给 SDN控制器212,SDN控制器212将接收的区域信息以及从位于区域2内分区2a和2b之外的网元采集的网络状态信息并入区域2对应的区域信息。然后,SDN控制器212将合并的信息上报给根SDN控制器210。类似地,SDN 控制器211以及213-215从各区域/分区的网元中收集网络状态信息,将收集的网络状态信息并入区域信息,并将区域信息上报给根SDN控制器210。此处所用的区域信息是指属于给定区域的合并的网络状态信息,在本发明各部分中可以笼统的称为分区信息和/或域信息。

根SDN控制器210通过上报的区域信息计算区域0的基于成本的参数,其中,这些参数分发给SDN控制器211、212、213、214以及215进行本地发放。在一些实施例中,将不同的基于成本的参数组分发给SDN控制器211、 212、213、214以及215中不同的控制器。值得注意的是,SDN控制器212 可以通过从根控制器210接收的基于成本的参数为分区2a和2b计算新的基于成本的参数,这些参数可以分发给SDN控制器212a以及212b。所述SDN 控制器211-215中的每一个都可以通过从根控制器210接收的基于成本的参数在各自的域中进行本地发放。在一些实施例中,SDN控制器211-215将所述基于成本的参数输入到区域特定的流量优化算法,这些算法在本地进行求解,以在它们的相应区域实现发放。通过这种方式,所述基于成本的参数可以通过推进全局流量工程目标,例如,公平性以及吞吐量的方式来约束本地/ 分布式网络资源发放。

本发明的各方面提供了用于在分层SDN环境中进行资源发放的流量工程技术。图4示出了用于在分层SDN环境中执行流量工程的实施例方法400,其中,分配给根域的根SDN控制器可以执行该方法。如图所示,所述方法 400从步骤410开始,其中,所述根SDN控制器从分配给根域的区域的子SDN 控制器中接收区域信息。接着,所述方法400转到步骤420,其中,所述根 SDN控制器从包含在所述根域且排除在所述区域外的网络设备收集网络状态信息。随后,所述方法400转到步骤430,其中,所述根SDN控制器根据所述区域信息与所述网络状态信息计算基于成本的参数。其后,所述方法400 转到步骤440,其中,所述根SDN控制器将所述基于成本的参数发送给子SDN 控制器以便在所述区域中进行本地发放。接着,所述方法400转到步骤450,其中,所述根SDN控制器根据所述网络信息与所述基于成本的参数为网络设备发放网络资源。在一些实施例中,可以通过求解根域特定的流量工程优化算法实现在所述根域中的资源发放。

图5示出了用于在SDN环境中执行流量工程的实施例方法500,其中,分配给某区域的子SDN控制器可以执行该方法。如图所示,所述方法500从步骤510开始,其中所述子SDN控制器从该区域的网络设备中收集网络状态信息。然后,所述方法500转到步骤520,其中,所述子SDN控制器将所述网络状态信息并入区域信息。接着,所述方法500转到步骤530,其中,所述子SDN控制器将所述区域信息上报给父SDN控制器。其后,所述方法500 转到步骤540,其中,所述子SDN控制器从所述父SDN控制器接收基于成本的参数。随后,所述方法500转到步骤550,其中,所述子SDN控制器根据所述基于成本的参数中的所述网络状态信息在所述区域中发放资源。可以基于所述网络信息与所述基于成本的参数解决区域特定的流量工程优化问题以实现区域资源发放。

在一些实施例中,SDN控制器可以分配给较高级区域(例如,根域)和一个或多个较低级区域(例如,分区)之间的中间区域/域。图6示出了用于在SDN环境中执行流量工程的实施例方法600,其中,分配给某个域的SDN 控制器可以执行该方法。如图所示,方法600从步骤610开始,其中,SDN 控制器从分配给所述域的区域的子SDN控制器接收区域信息。接着,所述方法600转到步骤620,其中,所述SDN控制器从包含于所述域且排除在所述区域之外的网络设备收集网络状态信息。然后,所述方法600转到步骤630,其中,所述SDN控制器将所述网络状态信息与所述区域信息并入域信息。

接着,所述方法600转到步骤640,其中,所述SDN控制器将所述域信息上报给父SDN控制器。其后,所述方法600转到步骤650,其中,所述SDN 控制器从所述父SDN控制器接收基于域成本的参数。随后,所述方法600转到步骤660,其中,所述SDN控制器基于所述区域信息、所述基于域成本的参数以及所述网络状态信息计算基于区域成本的参数。接着,所述方法600 转到步骤670,其中,所述SDN控制器将所述基于区域成本的参数发送给所述子SDN控制器。其后,所述方法600转到步骤680,其中,所述SDN控制器根据所述网络状态信息、所述区域信息以及所述基于域成本的参数为网络设备发放网络资源。所述资源发放可以包括:基于所述网络状态信息、所述区域信息以及所述基于域成本的参数解决域特定的流量工程优化问题。图 7示出了操作SDN控制器的通用方法700,该方法可以应用于子SDN控制器、父SDN控制器以及根SDN控制器等。

未来,可能需要用无线网络向许多用户以及许多流量应用提供大量的带宽。由于有限的无线资源会限制网络的容量,因此通过高效公平的方式划分资源很重要,这样在保持高网络资源利用率的同时能够满足服务质量(quality of service,QoS)要求。由于UE与网络间存在很多可能的链路,因此无线网络中的流量工程具有挑战性。此外,集中管理方案可能会遇到扩展性问题。

在集中式SDN架构中,单SDN控制器制定关于网络资源分配的决策。所述控制器从网络组件收集网络测量,例如路由器上的缓冲区状态或来自用户设备(user equipment,UE)的信道质量指示(channel quality indicator,CQI) 测量,并通过它们来确定最佳全局网络资源分配。在确定全局网络资源分配之后,所述控制器把命令发送给网络组件,用来进行发放为资源分配的实施做准备。通常,所述发放涉及在路由器上建立转发信息库(forwarding information base,FIB),这样路由器可以通过为端到端连接实现分配的速率的方式来转发流量。所述发放也可以包括在路由器和基站上建立业务流的优先级。所述发放也可以包括为上行链路上的UE建立优先级。所述控制器通过流量工程优化确定资源的分配。流量工程优化可以基于线性规划或凸规划求解技术。优化的目标在于在遍历网络的端到端连接中实现某种公平性(例如,最大化最小公平或字典序),同时,保证分配的流量不超过网络中每条链路的速率。由于所述优化为指定目标分配了最大的端到端流量,它同时也最大化了网络中链路的利用率。

集中式控制器设计存在四种主要的问题。第一,集中式控制器需要对网络进行很大规模的优化。优化变量的数目为端到端连接的数目的线性函数以及网络中链路的数目的线性函数(链路数目与节点的数目的平方成正比)。根据公式的类型,约束的数目为网络中可用路径数目的函数(其与网络中节点数目成近似指数关系),或者为网络中节点数目的线性函数。随着网络大小的增长,解决这些问题开始会花费很长时间(分钟或小时),之后会造成进行所述优化的计算机过载。第二,所述SDN控制器需要从所有网络组件收集信息,导致了网络的逆向泛洪。第三,所述SDN控制器需要为所有网络部件进行发放,导致了贯穿整个网络的命令泛洪。第四,某些组件可能离控制器非常远,导致网络状态以及命令交换的时延很长。当使用SDN控制环时,该时延可能会造成SDN控制环的不稳定性。值得注意的是,在无线网络中,很可能UE 网络组件离SDN控制器最远,造成这些组件传递的时间敏感信息延迟(或失效)。

本发明的各方面通过将网络分割为区域和分区并为每个区域分配SDN 控制器(例如,专用控制器)来减少/减轻这些问题。此处区域是指域与分区,其中,分区是网络中最小的逻辑划分/区域。可以基于网络的地理属性来分配分区,或将网络划分为逻辑网络来分配分区。就地理分区而言,分区可以遵从网络的自然分层。就逻辑网络而言,每个区域可对应于虚拟网络,且根据虚拟网络中的流数目进行扩展。

在一些实施例中,分区解决了之前所概述的SDN控制器的问题。每个 SDN控制器负责网络状态信息的收集,也负责为其区域或分区内的网络组件发放资源。在一些实施例中,这可以减少整个网络中交换的网络状态信息和/ 或控制指令/命令的数量。此外,由于流量工程优化问题得到简化(例如,考虑的组件/链路较少),每个控制器的处理负载都减少。

将网络分割成域/分区并分配SDN控制器功能的一个挑战是通过仍然寻找最佳流量工程解的方式将流量工程优化分解成相应的部分。此处公开了用于分解流量工程问题的技术以实现分布式操作。

所述流量工程的问题可以通过多种方式进行公式化。在一些实施例中,网络流优化框架对业务流进行了凸优化。实施例凸网络流优化技术可找到网络中每条弧上端到端速率的最佳分配,以降低目标函数的复杂性。在实施例流量工程技术中,目标函数可以是网络中每条链路上分配的流的凸效用函数的总和。

实施例凸网络流公式化技术的解决了传统的线性规划公式化技术中的普遍存在的几个问题。第一,线性规划公式化只允许了一族公平性目标,即,最大化最小公平性。相比之下,实施例凸优化技术允许不限定数目的公平性目标,其可以表示为分配的端到端速率的凸函数。凸优化也允许引入除了公平性以外的目标,例如能耗。第二,线性公式化经不起分布式计算的检验。由于约束矩阵的结构,这些问题不容易分解为更小的问题。在将该公式化转换为等效凸优化之前,可能无法以分布的方式解决流量工程问题的线性公式化。相比之下,实施例凸网络流公式化技术保留了关于网络拓扑的信息,该信息可以用于解决网络中沿着自然界线的分解/计算问题。

根据约束的公式化方法,可以采用不同技术来公式化流量工程优化问题。在一个实施例中,在问题的约束中采用基于弧的流守恒,而在另一实施例中,在问题的约束中采用基于路径的流守恒。两者皆有利弊。一般而言,基于弧的守恒约束会带来接近于最优速率分配的解。然而,基于弧的约束在计算上可能会更复杂,因为它们会引入更多变量和优化约束,且在求出解之后可以包括一个步骤,为基于源的路由生成路由条目。另一方面,基于路径的解倾向于包括一个预优化步骤,用以寻找优化使用的最佳路径集合。根据路径选择,基于弧的优化的解可以带来次优解。

一种技术将网络拓扑建模为N个节点的集合,其中,所述N个节点与A个定向弧相连接,其中,弧对应于网络中的 MAC或物理层链路。双向链路可以建模为相对的一对弧,将一对节点连接起来。本发明中术语链路与弧可以互换使用。网络流量建模通过弧形流进行(将弧映射到实数的函数,弧形流为每条链路上速率分配。端到端流与物品相关联,这些物品对应于源与目的地之间端到端连接。网络中存在K个物品,其中,每个物品cK具有相应的一对源和目的地节点(sk,dk),其中,可以仅允许物品使用网络的链路子集。物品被允许使用的链路记作

图8示出了实施例网络(例如,),包含了与9条弧互相连接的6个节点网络中有两个物品:一个从s1=n1流向d1=n6,另一个从s2=n2流向d2=n4,如虚线所示。网络容量与链路上携带的流量的量的限制有关。可以基于流量的量的限制对容量进行建模,其中,流量能被分配给所有共享链路的流。拓扑中的每个弧aj都有相关联的容量Cj,容量Cj是能够在相应链路上携带的流量的最大量。从所有物品遍历链路aj的总流量记为yj,其是取决于遍历链路的流量的总量的随机过程。为了不超过网络容量,则要满足E[yj]≤Cj。若链路共享公共资源,例如无线带宽,则链路的容量间具有依赖关系。为共享容量建模的一种方式是对链路组设置限制。假设对具有共享约束的链路进行分组,形成可能重叠的集合之后,遍历链路的总速率的约束应该属于可以表达为以下公式的某些凸集合:

每个端到端连接(物品)具有相关联的资源分配(例如,此处记作xk),其可以是任意一种分配类型,例如,比特每秒、资源总数、时间共享或百分比分配等。因为实际上源发送了报文,xk是依赖于报文长度分布和报文到达间分布的随机过程。优化将平均速率分配给端到端连接,其使用的是xk的平均值E[xk]。后续,可以假设xk是随机过程的时间平均值。每个报文也具有相关联的端到端时延dk,是它的报文遍历网络以及在目的地上被成功接收所需要的时间。值得注意的是,由于其他网络流量的随机性或传输技术中的亏损,每个报文经历的时延与其他报文经历的时延可能不同。因此,dk是具有时间依赖分布的随机过程。

本发明的各方面提供了流量工程优化技术。流量工程优化能分解为分层的流量工程优化。所述流量工程优化的一个目标可以是通过实现某一运营商目标的方式分配端到端速率。本发明各部分可以假设运营商希望获得实现网络资源的一定利用效率的“公平”流量分配。本发明中,也可能采用其他优化目标。

可以通过凸优化以“公平”的方式分配资源。例如,可以选择α-公平性作为公平性类型,满足α-公平性的端到端速率根据最小化每个物品的下述效用函数之和。本框架中的效用函数很容易修改,以实现其他类型的公平性。例如,可以增加条件将分配的能耗或遍历其他运营商的网络的成本包括在内。

凸网络流优化能用于优化图上,其中,所述优化图准确地为网络、网络的连接以及优化目标建模。该优化图是通过扩大网络的拓扑图来获得。此修改在数学上与原始图等效,且仅用作数学之便。若无此扩大或者通过拓扑图的其他修改,可以很容易将以下所示的优化问题公式化。新图中包括拓扑图的所有节点所述扩大的图也包括所有链路另外,对于每个物品弧的创建源于目的地指向源这些链路记为集合新图记为其中,在不失通用性的情况下,当物品对应的弧具有物品对应的索引时,可以使用该约定,这需要重新标记集合中的弧。

图9示出了图8所描述的示例性拓扑的扩大图,其中包括两个物品:从 s1=n1流向d1=n6的c1,以及从s2=n2流向d2=n4的c2。对应所述流增加了两条新的弧。标记从目的地到源的两条弧以对应它们的流索引,其中a1对应流(n1,n6),a2对应(n2,n6)。鉴于扩大图的定义和效用函数,流量工程优化公式化如下:

该优化为扩大图上的每条链路aj以及每个物品ck找到链路分配的集合xj(k)。目标函数(2a)最大化了链路aj上的效用之和,其中, j=1,…,K。由于扩大图的构建,每条所述链路aj仅包含一个相应物品cj的流量,其中,j=1,…,K,因此,此目标函数对应于公平性目标(1)。约束(2b) 保证分配的流服从流守恒。该约束即为基于弧与基于路径的约束的不同之处,这两种约束分别在章节2.2.1与2.2.2中描述。约束(2c)和(2d)保证分配的流量不超过链路的容量。约束(2c)是对每条链路的简单容量约束,而约束(2d)是对共享调度域的链路的容量约束。最后,约束(2e)保证速率的分配为正数。

本发明的各方面提供了采用基于弧的约束的流量工程优化技术。在一个实施例中,优化问题公式化如下:

该优化为扩大图上的每条链路aj以及每个物品ck找到链路分配的集合xj(k)。目标函数(3a)最大化了链路aj上的效用之和,其中, j=1,…,K。由于扩大图的构建,每条所述链路aj仅包含一个相应物品cj的流量,其中,j=1,…,K,因此,此目标函数对应于公平性目标(1)。约束(3b) 保证每个节点上的每个物品的流守恒。链路上的流的流量分配与出链路上的流的流量分配相同。交点和和保证流守恒只考虑了物品k能用的链路。约束(3c)和(3d)保证链路上所有流的流量总量不超过链路的容量。约束(3c)是对链路的简单容量约束,而约束(3d)是对共享调度域的链路的容量约束。最后,约束(3e)保证速率的分配为非负数。

本发明的各方面提供了采用基于路径的约束的流量工程优化技术。就为网络中每个物品找到最佳的链路分配这一意义而言,基于弧的公式化可能更适合一些网络。该公式化的一个问题是该公式化没有限制最后的解中所使用的路径数。限制网络中路径的数目的一种方式是先找到路径,之后再通过路径进行流量分配。后续,可以假设路径集合可用于每个物品k都可用的路径集合,记作因为扩大图中的反向链路仅用作数学目的,它们不作为路径的一部分,因此,路径可以是弧的集合,所以注释可以指中第r条路径。在流量工程优化使用基于路径的约束的的情况下,优化问题可以公式化如下:

该优化为每条路径找到路径分配集合hr(k),其中,是为物品ck选择的路径的集合。鉴于每条路径上的分配,采用了变量辅助集xj(k),其是链路上的实际分配。实际上,对该优化来说,链路分配变量不是必要的,且完全可以用于可读性的目的,并与本发明的其他部分相关。由于辅助变量,目标函数(4a)与目标函数(3)相同。来自基于弧的优化的流守恒约束现用约束(4b)与(4c)表示。约束(4b)定义了辅助变量xj(k),其对应于与扩大拓扑中的流相关联的链路,其中,这些链路上的速率是要分配给与物品相关联的所有路径的速率之和。这些弧是特例,因为在真正的网络拓扑中这些弧不是任何路径。约束(4c)定义了辅助变量xj(k),其对应网络的原始拓扑图中的链路,其中,每条链路上分配的速率是通过链路在路径上分配的速率之和,在求和公式中指定。约束(4d) 和(4e)是网络的容量约束,与基于弧的公式化中的约束(3c)和(3d)相似。最后,约束(4f)保证速率的分配为非负数。

值得注意的是,若与每个物品相关联的路径的集合包括物品的源与目的地之间的所有可能路径,(3)和(4)的解可能会有相同的最优值。然而,在实际实施中,路径的集合可能仅是所有路径的子集,因此,和基于弧的公式化相比,基于路径的公式化为次优。

本发明的各方面提供了公式化共同链路约束的技术,可为有线容量或共享无线频谱的约束建模。链路容量上的有线约束通过简单的上限建模。对于有线链路,域是某节点的单条入链路或出链路。有线链路上的上限表示如下:且可以在扩大的弧上设置类似的界限以保证流的容量不超过某些最大允许值,因此,对于所有的

可以通过调度域为链路容量的无线约束建模。一种调度域类型为发射机上的资源限制约束。在无线网络中,存在有限数目的“资源”。资源是带宽在时间、频率或空间上的分配方式。例如,在LTE系统中,无线资源以资源块 (resource block,RB)的形式分配,且仅存在NRB个可用的资源块,这取决于系统的带宽。对于该系统,共享域的链路集合是无线节点的出链路或入链路。例如,在使用频分双工(frequency division duplex,FDD)模式的下行链路传输中,通过向用户设备(user equipment,UE)分配RB来共享带宽。每个连接到基站的UE的下行链路传输可以通过离开无线节点ni的弧建模。可以把能在RB l上用链路j传输的比特数目记为γjl,用rjl指示RB l被分配给链路j(对应一个UE),鉴于链路从无线节点发起,链路的容量如下:其中,TS是RB的时长,单位为秒。最后一个求和公式保证只一个UE(对应弧在每个 RB中被分配)。通过将节点的入弧分配给UE的上行链路传输,很容易就可以扩展无线链路容量(5)的限制以包括上行链路传输(通过将替换为可以修改该等式)。也可以通过将替换为扩展该等式来为时分双工 (time division duplex,TDD)建模。

另外一种建模无线调度域的方式是为基站上的UE的长期共享建模。例如,对于循环调度,众所周知,从长远来看,共享基站的UE分配有同等数目的资源。在该假设下,无线约束可以表示如下:

在等式中,是与基站连接的UE的数目,求和公式中计算了每个 RB中可以传输给UE的平均比特数。其他类型的调度器也存在类似的公式。

本发明实施例通过将约束分组到地理相关的分区来分布流量工程优化。分区可在优化过程之前确定。确定分区的一种方式是将网络组件分组到同一个子网中,但也存在用其他更复杂的方法的可能。例如,在无线接入网中,一个区域可能包含所有通过有线技术连接的节点,而另一个区域可能会包含使用无线技术的节点。在有线区域中,可以基于预先存在的子网设计确定分区。在无线区域中,可以确定分区以保持调度域聚在一起。保持调度域聚在一起的一个例子是保持同一个C-RAN簇的基站聚在一起。

本发明的各方面描述了分区分割改变流量工程优化的方法,以及以分布的方式解决分割的网络优化的方法。此外,各方面描述了在分布式框架中处理跨多分区的路径约束的方法。网络可以分为Z个分区,其中,每个分区中包含拓扑中节点的子集每个节点只处于一个分区且弧没有划分入分区。区分出在分区边界的弧以及分区内的弧是有可能的。

分区的内部弧是源和目的地都在分区内的弧,可以定义为:边界弧是源于一个分区而终于另一个分区的弧(即,源节点在一个分区,而其目的地在一个不同的分区中)。边界分区可以记为离开分区的弧以及进入分区的弧数学上,离开分区的弧可以定义为分区中一些节点的出弧集合中的弧,而不是在分区中任意节点的入弧集合中的弧,如下所示:

类似的,分区的入弧可以定义为在分区中一些节点的入弧集合中的弧,而不是分区中任意节点的出弧集合中的弧,如下所示:分区的边界是进入分区与离开分区的弧,根据上述定义,弧集合可以分为多个无重叠的内部弧和边界弧的集合,如下所示:

图10示出了一个系统,其中,分区基于子网络。存在三种分区以及分区的出弧是而入弧是的边界定义为为了解释流量工程优化的分布方式,可以根据扩大的拓扑图创建新图。新图中,每条边界弧都有额外的顶点。边界弧am可以替换为边界节点nm以及两条新弧和和,两条新弧和分别将am的源节点连接到节点nm,将节点nm连接到am的目的节点。弧上的符号-表示该弧离开分区,而符号+表示该弧进入分区。边界节点的集合记为 此变化造就了新图其中,且

图11示出了从对图10的修改得到的优化图。新集合中的弧集合逻辑上划分为与每个分区相关联的子集。每个分区有内部弧与外部弧。之前在(7)中定义了分区的内部弧,由于所有的内部弧仍然处于分割的图中这一事实,(7)仍然有效。分区的外部弧可以定义为进入中的边界顶点的弧,或从边界顶点进入分区的弧。分区Zl的外部弧记为若am的源弧在分区Zl中,则将加入到分区的外部弧,即类似的,若弧am的目的地在分区Zl中,则将加入到中。籍此,可以派生出以下注释:其中,是所有属于分区Zl的内部和外部弧的集合。因为每条外部弧都对应于一条之前定义的边界弧,后续边界弧和外部弧可以互换使用。

为了数学上的方便,可以定义入和出外部弧,为和若 则若则可以去掉+和–,这样边界弧与边界节点相关联。可以用注释指用指分别用和来表示内部分区以及外部分区中的物品k的内部和外部弧,用来表示与分区Zl中的物品k相关联的所有弧。由于与效用函数的关联,集合(例如,如图 9所示)中的反向物品弧需要特别处理。当分割图时,可能会出现其中一个反向弧是边界分区的情况。由于引入了两条新弧,两者中哪条与效用函数有关联变得不清楚。一种可能性是将目标函数应用到每条弧并适当地进行效用扩展。对于每条分裂到两个边界分区的弧,目标函数可以表示如下:

其中,每个弧分为两个。值得注意的是,在该优化中,在最优点处,会有这样转换不会使目标函数的值发生改变。另一种可能性是使用将效用函数分配给弧这一约定,其中所述弧属于物品终止于内的分区。这种情况下,若效用函数与优化图中反向弧am相关联,则效用函数与分割图中的相关联,可以用如下方式:

通过此约定,可以定义分区中的弧集合,该函数包含了相关联的效用函数。这些弧都是源于且终于该分区的反向弧,以及终于该分区的边界节点的弧。然后,通过可以基于物品函数所属的分区将物品分为分区。由于分割的图包括新弧,所以图中的路径也应该进行更新。若优化图中的弧在两个分区的边界上且在一条路径上,则可以假设该路径通过两条新弧以正确的顺序在所在的地方进行更新。即使在新图中,也仍用来指与物品k相关联的路径。

本发明各方面提供了通过基于弧的约束来分割流量工程问题的技术。在优化图中,基于弧的流量工程优化变为:

该公式化与原来的基于弧的流量工程优化(3)进行的优化相同,区别在于,变量和约束是按照分区来分组的,且存在与边界分区相关联的新约束。目标函数(8a)仍是与物品相关联的效用函数的总和,而所述物品现在被划为分区。约束(8b)是每个分区中的流守恒,与原始的公式化中的约束(3b) 相对应。约束(8c)与(8d)为每个分区中的无线约束建模,与约束(3c) 与(3d)相对应。此处,公式化中假设共享可用容量的弧总在同一分区中,而此处所讨论的分布式方法能够很容易地扩展到共享容量的弧处于不同分区的情况。约束(8f)执行每个进入分区的物品的流量等于从该分区中出去的流量这一事实。该约束是约束(8b)中流守恒的结果,应该增加该约束以保持每个分区中的优化问题的循环格式。最后,约束(8g)是边界节点上的流守恒。

优化中的分割可见于约束(8b)-(8f)。每个分区中只出现流守恒约束的子集。由于每条链路变量与约束相关联,因此每个分区中只有一个变量子集。唯一一个不能被分割的约束是(8h),因为(8h)涉及多个边界分区中的弧。后续描述中展示了通过拉格朗日对偶法分割这些约束的方法。

本发明的各方面提供了通过基于路径的约束来分割流量工程问题的技术。通过优化图,可以通过基于路径的约束来公式化流量工程优化:

与优化(4)相似,所述优化为每条路径找到路径分配的集合hr(k)。目标函数(9a)最大化了所有路径上的每条连接的效用率之和。约束(9b) 和(9c)引入辅助变量xj(k),表示分配给链路j上的物品k的总流。约束(9b) 是反向链路的特例,而约束(9c)是常规弧的示例。约束(9d)和(9e)在将链路上物品合并到一起,并为网络中无线约束建模。约束(9d)限制了约束(9e)中定义的每条弧上的总分配速率,其取决于容量约束。约束(9g) 保证了进入和退出分区的所有流的流守恒。约束(9h)是边界节点上的流守恒。

本发明各方面提供了通过拉格朗日对偶法实现分布式优化的技术。

实施例方法通过将优化问题分为几个独立的部分解决了优化问题,其中,每部分仅考虑了其中一个分区中的变量和约束。关于对偶性问题,拉格朗日对偶法用于基于弧和基于路径的优化分布。首先,定义了拉格朗日函数和对偶函数。拉格朗日函数通过拉格朗日乘数耦合问题的目标函数和约束的子集。为了为该问题创建拉格朗日函数,通过使用拉格朗日变量可以将耦合约束(8g)或(9h)加入到目标函数中,其中,每个约束使用一个变量,且k=1,..,K。值得注意的是,这些约束有个,每个边界节点和每个物品都有一个。优化(8)或(9)的拉格朗日函数表示如下:其中,λ是拉格朗日乘数的集合,λ=[λ(1),…,λ(K)];,其中是物品k的拉格朗日变量的矢量;x是变量xj(k)的集合,x=[x1,…,xL],其中,xl指变量xj(k)的子集,仅在与分区l以及该分区边界相关的约束中出现,注释 用于根据正在求解的公式指示x1满足约束(8b)-(8g)还是约束(9b)-(9g)。在第二个求和公式中,根据变量所属的分区为变量分组。每个与边界分区 其中之一相连接的弧属于外部分 区或这样(10)中的最后一个求和公式可在分区间拆分。该优化的对偶函数是对x的拉格朗日函数的求最小值公式,表示如下:

可以用该对偶函数公式化拉格朗日对偶性问题。对偶性问题找到了拉格朗日乘数的集合,最大化了所述对偶函数。优化(8)或(9)的拉格朗日对偶性问题是:

对偶优化的解给出了乘数的最优集合:

通过解决拉格朗日对偶性问题也给出了的集合,其中,最小化了拉格朗日函数:

拉格朗日对偶性保证最小化原始问题(8)或(9)。但不能保证总是原始可行,因为约束(8h)或(9h)并未出现在对偶函数中。然而,若效用函数是严格凸的,则是唯一的且其必须满足原始约束。因为对于α-公平效用函数(1)来说Uk(·)是严格凸的,解决了对偶性问题则会带来原始优化的解。

若效用函数不是严格凸的,则通过增加某些术语仍可使目标严格凸的,这些条件使目标严格凸的。例如,目标函数(8a)和(9b)可以被替换,由于约束(8g)和(9h)的原因,其与原始优化有相同最优解。平方条件保证了目标函数的严格凸性,保证(14)的对偶解是原始可行的。

本发明各方面描述了对偶性问题的解。优化对(12)和(13)给出了通过对偶性问题解决流量工程问题的方法。通过寻找最优拉格朗日乘数来找到该解,通过以最优的拉格朗日乘数来求解对偶函数从而给出一个找到最优速率分配的方法。

若原始问题的目标函数是凸的,则对偶函数是可区分的,这意味着,通过迭代梯度方法能够解决该对偶问题。对偶函数的梯度Δλq(λ)是与λ长度相同的矢量,其中,某个合适的拉格朗日乘数对应的偏导数的每个组成部分表示如下:

与物品k和节点对应的Δλq(λ)组成部分可以表示如下:

其中,是的组成部分之一,可以解出q(λ)。

一旦获得了对偶函数的梯度,则可以通过梯度迭代来解决对偶问题:λt+1=λt+αtΔλq(λt)(16)。凸优化理论的初步结果为:其中,是如(13)中定义的拉格朗日乘数的最优集。更新(16)是多个能用于更新拉格朗日乘数的选项中的一个。一般情况下,该更新为λt+1=ft+1(λt),其中,ft+1(·)是常数函数或动态变化的函数。

使得该问题能以分布式的方式来解决的关键观察结果为:对偶函数q(λ) 可以是可分离的。对偶函数(10)能够改写为

其中,

是拉格朗日函数L(x,λ)的一部分,对应于分区l。由于求和公式中的每一个求最小值公式与其他求和公式中的求最小值公式在变量与约束方面无共同之处,(18)中的求和公式与求最小值公式是可以调换的。

由于所有的变量和约束是分组到不同的分区中这一事实,所以,通过分布式的方式求解(18)实际上是可能的。只要每个平行优化都知晓拉格朗日乘数,(18)中的最后一个求和公式就能通过L次平行优化求解。分布式算法在中心位置重复步骤(16)并在其他位置重复(18)中的每个次优化,直到拉格朗日乘数收敛到某个值。

图12示出了在分布式算法中的分层分区控制器的操作。在分布式优化的步骤1中,分区控制器从它们的父控制器接收拉格朗日乘数。在步骤2中,分区控制器通过从它们的父控制器接收的拉格朗日乘数在每次迭代中解出 (18),以获得其分区上的速率分配。值得注意的是,拉格朗日变量是每条边界链路的权重(成本),边界链路影响了每个分区的流量工程优化在每个分区中分流流量的方式。在步骤3中,子控制器将边界链路上的流量分配和这个值发送给父控制器。在步骤4和步骤5中,父控制器接收边界分配,并利用它们通过(16)更新边界链路权重。在步骤6中,父控制器将发送更新的边界权重,这些权重由步骤1中的子控制器接收。

图12的算法可由单个处理器在一个节点上进行,其中每个步骤按顺序进行;可由多个处理器在一个节点上进行,其中,平行的步骤在不同的处理器上并行执行;或者由多个处理器在多个节点上进行,其中,各种值通过网络分配。

在不同步骤之间交换信息的方式有几种。例如,在步骤1中,中央控制器可能仅需要向子控制器发送迭代更新函数ft+1(·)。子控制器能将更新发送给边界节点,边界节点能通过本地信息为边界链路计算下一个拉格朗日变量。链路的权重发回给分区控制器。这是对算法很明显的改进,因为,每个拉格朗日乘数仅指代给定的边界弧以及跨弧的流的速率分配。该改进能大大降低算法的通信开销。值得注意的是,某些边界节点可能不对应实际物理边界(优化拓扑中的反向弧)。这些边界要求流的源和目的地交换链路上的所分配的速率。

更新函数的一个特例中,λt的演进如下:ft+1(λt)=λt+Δλq(λt)。通过扩展λt,可以看出,对于给定的t,λt的组成部分如下:其中,是在步骤1中的边界链路ai上的分配。若假设该链路上的分配与该链路上通过的流量数量严格匹配,则很明显λm(m)实际上是链路上的队列的大小。因此,在步骤3中,子分区控制器能够将其链路上的队列的值发送给父分区控制器,且算法应该收敛到最优。

每个所述L个优化(18)实际上是流量工程优化的较小实例。细小的差异在于,与原始优化相比,更多的弧分配有权重或函数。在分割的问题中,拉格朗日乘数将权重引入进入或退出分区的弧。权重的作用是根据其他分区中的流量分配改变本分区中流量的分布。这表示每个次优化都能通过多级分布式优化进一步分解到子分区中,促成了分层SDN控制器。值得注意的是,在每个分区中,基于路径的优化和基于弧的优化能够混用,即,某些分区可以采用基于路径的优化,而其他分区能采用基于弧的优化。

有时,获取路径约束很方便,其中,路径约束以加成的方式加和分配的速率的函数。一般情况下,要为加性路径约束建模,可以将约束的集合添加到每个路径的优化 (8)和(9),其中,函数fj(·)表示使用路径上的链路的某种成本,选择Ur(k)来限制成本。

路径上的约束可以是网络限制。一族路径约束函数可以与路径上的时延相关。假设与链路aj上的物品k相关的队列是qj,则流量工程之后,首先传输的报文会经历时延xj(k)≥0,ε>0,ε→0,其中, Lmax是最大网络报文大小,Cj是链路容量。为了满足所述连接的服务质量要求,可以在优化中添加如下约束:其中,Dmax是任意路径上最大的可接受时延。

在具有每条链路的安全时,另一族路径约束也可行。例如,可以假设安全风险值ρj分配给每条链路aj。安全风险可以是链路所有权以及连接所采用的加密的函数。例如,若用户在路径上采用128位加密且分区控制器拥有链路,则可以给安全风险赋值ρj=0;若用户在路径上采用128位加密但分区控制器并不拥有该链路,则ρj=1。然后,可以增加约束其中,根据(8)和(9),xk(k)是分配给流k的总流量。该约束保证遍历不安全链路的流量的总数小于某预定数目。

在具有遍历链路的成本时,另一族路径约束也可行。例如,不是所有链路都可以属于同一个服务供应商,该服务供应商可能要从其他供应商租赁链路。供应商可以制定规则:不应花超过预定数量的钱来为特定流提供流量。在该情况下,约束例如:保证任意服务该链路的路径上的总成本不超过Cmax,其中,cj是遍历链路aj的成本。

可以修改拉格朗日对偶以通过分布式方式来处理约束。第一,将路径约束传递到目标函数,来获得新拉格朗日函数其中,λ与L(x,λ)在(10) 中定义,μ是与路径约束相关的拉格朗日乘数的集合,μ=[μ(1),…,μ(K)];其中,是与路径约束(15)相关联的物品k的拉格朗日变量的矢量。

该优化的对偶函数是x的拉格朗日函数的求最小值公式,并且能够表示如下:对偶性问题找到了拉格朗日乘数的集合:且拉格朗日乘数的最优集合通过定义了流量工程优化的最优解。

通过与原始对偶问题(12)相似的梯度下降算法能够求解带有新拉格朗日变量的对偶问题。找到qPATH(λ,μ)的导数的方法与找到q(λ,μ)的导数的方法相似。由于λ和μ的可分离性,可得出以下公式:ΔλqPATH(λ,μ)=Δλq(λ),其中,组成部分ΔλL(λ)在(15)中定义。第二,可以找到ΔμqPATH(λ,μ)的导数的组成部分,考虑到能够通过与(15)类似的方式找到μ,所述导数是 qPATH(λ,μ)的第一导数。通过可以找到对应于物品k的第r条路径的ΔμqPATH(λ,μ)的组成部分,其中,是的组成部分之一,其可以解出LPATH(x,μ,λ)。

对偶问题(23)的梯度下降涉及两个步骤:λt+1=λt+αtΔλqPATH(μ,λ) (26a)和μt+1=[μt+αtΔμqPATH(μ,λ)]+,其中,[x]+=max{0,x}是在实线上的投影。凸优化理论的基本结果是:与以及其中,如(24)中定义,和是拉格朗日乘数的最优集合。

为了通过路径约束来分布问题,可以将拉格朗日函数(21)的最后一个求和公式中的约束分组到分区中。若路径遍历了多个分区,则其加性路径约束应该根据分区拆分。然后,才可以对拆分跨两个分区的路径的方式进行简单的举例,该示例很容易就能扩展到多个分区。假设路径遍历了分区Zk与Zl,其中,Zk与Zl通过弧am连接。结果,得出了以下公式:其中,是在Zk中的分段,且是在Zl中的分段。此处,可以使用约定:任何一个与边界链路am相关联的函数都与边界节点nm的出链路相关联。一般情况下,可以使用约束的变形,该变型采用与边界弧am相关联的函数fm(·),并创造出两个新函数:

通过此约定,可以将上述表达式改写为以下公式:

其中,是穿过分区l的路径r的分段,是分区l中出现的物品的集合。

因此,拉格朗日函数也能改写为:其中,且Ll(μ)在(21)中定义。

在给定导数时,可使基于梯度下降的分布式算法与图12所示的算法相似,此算法如图13所示。

与图12中的分布式算法的情况一样,可使此算法更有效。此算法的一个版本是:每个分区控制器发送分区控制器(图13)请求的路径的速率分配的值。另一版本是:分区控制器为其路径分段计算并将其发送给父控制器。值得注意的是,在可测量的量如时延的情况下,甚至不需要知道应受约束的量的表达式。分区控制器能够在其路径分段上测量父控制器所需的量的值,并将该测量发送给父控制器。

本发明各方面提供了基于流分区的分布式优化的技术。现在可以重新公式化流量优化问题以将流归为一组。在该公式化中,分区定义为流组。优化分布通过优化图分布进行。

本发明各方面提供了根据流分组分割流量工程优化的技术。网络分为Z个分区,其中,每个分区是流(物品)的子集,且只有当且时,每个物品只在一个分区中。节点和弧没有划分到分区中。但是,为了数学之便,可以区分分区内部的弧和多个分区的边界的弧。

分区内部的弧是仅供该分区中的物品使用的弧。在数学上,可以将分区内部的弧定义为其中,是图中的弧集合,由物品k所使用。多个节点的边界上的弧是由属于多个分区的物品所共享的弧。可以用表示多个节点的边界上的弧的集合。根据流的分割方式,可以定义M个边界分区,对于边界分区可以将环绕边界弧的物品集合定义为作为为共享边界分区中的链路的任何分区的流。在数学上,周围的节点定义如下:

在紧记将流分组的情况下,可以重新公式化流量工程优化(8)。公式化如下:

目标函数(27a)根据分组中函数所属流的成员关系将效用函数分组。流守恒约束(27b)保证在节点的入和出弧上不会为流分配过多或过少速率。弧容量约束(27b)保证分区的内部弧不超过它们的容量分配。约束(27d)保证链路的容量不被超过。约束(27f)保证多个分区的边界上的弧的容量不被超过。最后,约束(27e)保证速率分配为正数。

优化(27)根据流的分区成员关系分割基于弧的流量工程问题。约束(27f) 是唯一的公共约束,其中,多个分区的流是相关的。

通过基于路径的约束分割流量工程问题。类似的,基于路径的流量工程优化能如下分割:

目标函数(28a)根据分区成员关系将效用函数分组。约束(28b)和(28c) 计算分配给弧上的流的流量总量,与流相关的路径遍历该弧。约束(27d)保证了分配给分区内部的弧的总流量不超过链路的容量。约束(28e)指定了弧上的容量。约束(28g)保证在分区间共享的弧上分配的容量不被超过。最后,约束(28f)保证弧上速率分配为非负数。

优化(27)与(28)的分布可以通过与(8)或(9)中的优化分布技术相似的技术来进行。现在,可以演示公式化优化(27)和(28)的拉格朗日对偶的方法,并演示基于流分区来求解优化的分布式算法。

为了公式化拉格朗日对偶问题,优化(27)和(28)的拉格朗日函数可以表示为:其中,每个约束(27g)中都引入了拉格朗日变量,μ=[μ1,…,μm],且是边界分区中的弧的拉格朗日乘数。由于集合是非重叠这一事实,第二个求和公式可以通过以下公式转换:

该优化的对偶函数是x的拉格朗日函数的求最小值公式,如下:其中,是xl的集合,根据原始问题中使用基于弧的约束还是基于路径的约束,所述集合遵循约束(27b)至(27e) 或(28b)至(28f)。对偶问题找到拉格朗日乘数集合:拉格朗日乘数的最优集合通过定义了流量工程优化的最优解。

由于就拉格朗日乘数而言对偶函数是可区别的,因此可以通过梯度下降算法解决对偶问题。与第m个边界分区中的弧j相对应的Δμq(μ)的组成部分能够通过找到。对偶问题(31)的梯度下降涉及重复应用以下步骤:μt+1=[μt+αtΔμq(μ)]+ (34)。

其中,[x]+=max{0,x}是在实线上的投影。凸优化理论的初步结果为:其中,是如(32)中定义的拉格朗日乘数的最优集。本发明的各方面提供了求解分布式优化算法的技术。通过分布式的方式计算对偶问题的关键是利用拉格朗日函数的特殊结构。由于拉格朗日函数的结构,因此可以写为:其中,图14示出了分布式对偶优化。

本发明的各方面通过分布式优化降低了复杂性。值得注意的是,每个分区中的路径分段可以分别处理,这样大大降低了每个分区中优化的复杂性。图15示出了两个分区以及属于这些分区的四个路径分段。在分区Zl中,节点 nh和ni与路径和连接,而在分区Zm中,节点nj和nk与路径和连接。虽然每个分区中仅有两条路径,从全局来看,实际上,存在四条路径。例如,若认为路径的优化图为以及那么,在此例中,全局优化(9)可以有四个路径变量,而在求解(18)时,每个分区控制器仅有两个路径变量。

图16示出了具有6个节点n1、n2、n3、n4、n5和n6以及两个端到端流 (s1,d1)和(s2,d2)的示例性网络。节点n1、n2、n3、n4、n5和n6和与 s1、s2、d1和d2之间的区别在于,节点n1、n2、n3、n4、n5和n6可以由网络控制器控制,而节点s1、s2、d1和d2可以被认为是“主机”,且在网络控制之外。网络中所示链路仅允许一个方向(如箭头所示)的流量,但是也可以通过增加成对方向相反的链路为双向链路建模。

本发明的技术解释了找到优化链路上带宽分配的方法,这样,两个端到端流可体验某种公平性。进一步地,可能需要以分布式方式进行优化,其中,红节点n1、n2和n3由一个控制器控制,节点n4、n5和n6由不同的控制器控制。

可以将该问题公式化为最小凸网络流优化。图17示出了图16中用于为网络建模的图。该图中包括除了源节点和目的节点之外的所有节点。该图中也包括这些节点之间的所有链路。另外,对于每对源和目的节点来说,包括了从目的地到源的弧。该弧用于保证整个网络都满足流守恒约束。可以对两条从目的地到源的弧进行标记,以对应于它们的流索引,a1对应(s1,d1),a2对应(s2,d2)。

鉴于图17中的图,可以将以下优化问题公式化:在n1上,在n2上,在n3上,在n4上,在n5上,在n6上,

该优化试图找到将(36)最大化的流集合,(36)是分配给每个端到端流的总流的效用函数之和。可以采用以下注释:x1是为弧a1上的流。值得注意的是,该解找到了网络中每个弧上的流分配,x1,…,x11。在一些实施例中,从端到端流的角度来看,流x1和x2很具有重要意义。在该目标中,m指流(以下称为物品)的索引。选择效用函数,使得在最优时,物品满足某种类型的公平性(例如,α-公平性)。约束(37)至(42)代表每个物品的流守恒约束。最后,约束(43)保证链路上的所有物品不超过链路的容量。

为给该问题分割建模,可以将此图转换为图18中的图。这些节点分为两组:红节点n1、n2和n3以及蓝节点n4、n5和n6。对于每条连接这两个部分的弧a1、a2、a6、a7和a8,引入了节点以及另一条弧,使得在新图中所得的流与原始图中的流等效。考虑到图17中的弧a1,该弧连接了节点n6和n1。增加了节点n11,弧a1用于连接节点n6和n11;增加了弧a12,并用其连接节点n11和 n1。

该图适用于优化:在n1上,在n2上,在n3上,在n4上,在n5上,在n6上,在n7上,在n8上,在n9上,在n10上,在n11上,

与约束(45)至(50)一样,优化(44)中的目标函数与之前的优化相同,与网络中原始节点的流守恒相对应。约束(51)至(55)代表新增节点上的流守恒约束。约束(56)对应于网络中所有弧上的容量限制。

为将问题分为两个分割来解决,可以利用问题的对偶,其可以通过共享数据公式化为两个独立的优化。共享数据对应于与分割中节点相关的约束的对偶变量。

在对偶问题的情况下,可以引入与约束(51)至(55)对应的拉格朗日乘数和对原始问题的拉格朗日函数公式化:其中,是拉格朗日变量的矢量,是满足约束(45)至(50)和(56)的16元组集合和

本发明将记为函数L(p),中优化的解。

对偶优化与分割算法共同使用。在演示分割算法之前,展示对偶问题的某些属性是有用的。

第一,根据凸规划的对偶性理论,可以获得解出的 p,然后,求解出原始问题。第二,L(p)是可区分的,是拉格朗日变量对应的约束之间的差:

第三,由于拉格朗日变量的使用,某些约束被传递到目标函数,现可以将该问题分为两个优化,L(p)=L1(p)+L2(p),其中,且对应约束(45) 至(47)以及与弧a3,…,a8、a12和a13对应的约束(56)的子集,对应约束 (48)至(50)以及与弧a1、a2、a9,…,a11和a14,…,a16对应的约束(56)的子集。分别用与表示L1(p)和L2(p)的解。

在对偶问题上,分割算法使用梯度下降算法。该算法在迭代中进行。在迭代k中,可以包含pk的集合,并进行以下步骤:求解L1(pk)和L2(pk)以分别获得和用和计算通过获得pk+1,其中,αk是迭代k中的步长。

图19为分割问题的图示。据此,可以获得以下公式:

为了简化注释,可以将弧集合对应的分割中的流集合记为Xp。可以 Xp∈Fp这个注释来表示该分割中的流集合满足(58)至(60),其中,Fp是满足(58)至(60)的所有流的集合。

图20示出了通信设备2000的实施例的方框图,该通信设备可与上述讨论的一个或多个设备等效(例如,控制器等)。该通信设备2000可以包括处理器2004、存储器2006、蜂窝接口2010、补充接口2012和回传接口2014,其可以(或可以不)按如图20所示设置。处理器2004可以是任何能够进行计算和/或其他与处理相关的任务的组件,存储器2006可以是任何能够为处理器2004存储程序和/或指令的组件。蜂窝接口2010可以是任何允许通信设备2000通过蜂窝信号进行通信的组件或组件集,可用于通过蜂窝网络的蜂窝连接接收和/或发送信息。补充接口2012可以是任何允许通信设备2000通过补充协议进行数据通信或信息控制的组件或组件集。例如,补充接口2012可以是根据无线保真(Wireless Fidelity,Wi-Fi)或蓝牙协议进行通信的非蜂窝无线接口。或者,补充接口2012可以是有线接口。可选的,回传接口2014 可以包含于通信设备2000中,可以包括任何允许通信设备2000通过回传网络与其他设备进行通信的组件或组件集。

尽管进行了详细的描述,但应理解,可在不脱离由所附权利要求书界定的本发明的精神和范围的情况下,对本文做出各种改变、替代和更改。此外,本发明的范围不希望限于本文中所描述的特定实施例,所属领域的一般技术人员将从本发明中容易了解到,过程、机器、制造工艺、物质成分、构件、方法或步骤(包括目前存在的或以后将开发的)可执行与本文所述对应实施例大致相同的功能或实现与本文所述对应实施例大致相同的效果。相应地,所附权利要求范围包括这些流程,机器,制造,物质组分,构件,方法,及步骤。

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