用于智能包分发的系统、方法和计算机程序的制作方法

文档序号:7884809阅读:184来源:国知局
专利名称:用于智能包分发的系统、方法和计算机程序的制作方法
技术领域
本发明涉及网络业务流包(packet)分发。本发明更具体地涉及智能包分发系统、方法和计算机程序。
背景技术
绑定和聚集技术使得两个或更多网络设备能够跨多个通信链路发送和接收数据包。绑定或聚集技术通常使用轮转(Round-Robin)调度以跨所有组合的较低链路来发送和接收数据包。在轮转算法中,负载均衡器基于轮转基将包请求分配给链路列表。对于随后的请求,负载均衡器遵循圆形顺序对该请求进行重定向。一旦一个请求被分配给一个链路,该链路被移动到列表的结尾。这使链路被平等地分配。当被绑定或聚集的线路的性能实质不同时,轮转调度导致吞吐量降低。当这些网络被组合时,被绑定的线路继承最差情况延迟的延迟。类似地,传输率取决于最慢的绑定线路。这不利于通过多个通信链路提供一致的、均衡的且最佳的带宽流的能力,对于VoIP之类对抖动和跨多个较低链路的变化的延迟高度敏感的实时应用而言尤其如此。这一小于最佳的性能源于这样的事实:当依靠较低级通信链路时,每个较低链路可能具有不同的特性,包括不对称的速度和延迟变化。绑定的或聚集的通信会话的聚集吞吐量的速度仅与最小公共速度与较低链路的数目的乘积一样。这样获得的是非高效的聚集或绑定,其没有对组合中可用的带宽进行最佳使用。在快速故障恢复技术中存在相似的问题,其中例如涉及较低级链路的对聚集或绑定连接的故障恢复的性能小于最优。以下事实加剧了上述问题:即使在使用相似的接入方法时,不同载波可能具有不同的延迟特性。载波差异性可能导致旧有对称电路与较新的非对称型宽带电路的组合,这在任一方向中混合了较快速度和较慢速度,使组合的所有较低链路具有变化的延迟。例如,当对两个较低通信链路(例如,具有相同速度)进行均衡时,轮转分发通常导致对组合的较低链路的所有可用带宽的充分利用。但是,当两个较低链路中的一个不平衡时,轮转分发通常导致性能低于组合的较低链路。当使用每个具有不同速度和延迟的三个较低链路时,轮转分发导致性能非常差并且在很多应用中实际上是不可用的。已提出分发算法用于解决这些问题。例如,已提出加权轮转分配。加权轮转是消除了其一些缺点的轮转的升级版本。在加权轮转的情况下,可以向组中每个链路分配权重,使得如果一个链路能处理另一链路负载的两倍,较大的链路获得权重为2。在这种情况下,负载均衡器将向较大的链路分配两个请求,每一请求分配给较小的链路。同时,美国专利6438135和7580355,公开了加权轮转算法的动态方法。除了性能降低,网络拥塞也提出了问题。当网络连接被通过连接传送的数据淹没时,将会发生网络拥塞。这导致服务质量(QoS)变差,一般体现为排队延迟、丢包或不能处理新连接。
避免网络拥塞是网络中用以避免拥塞的处理。网络中的拥塞使运行在网络上的所有服务降低,因为所有可用的容量被消耗。这可以发生,因为单个网络应用消耗所有可用的容量。这影响延迟和时间敏感的应用,例如语音、视频流等。为了补偿和/或避免在网络链路中发生拥塞,使用排队机制以保证可用容量被公平地分发在链路的所有消费者中。有几种通常实现的排队机制,包括:先进先出(FIFO)、力口权公平排队(WFQ)、定制排队(CQ)、优先级排队(PQ)。当它从发送器被接收且在它通过接口被传送之前,所有这些机制管理业务流。其他排队机制包括尾部丢弃、随机早期丢弃(RED)、加权随机早期检测(WRED)以及Blue。通过丢弃多余包使用拥塞管理机制例如丢弃尾部执行协议无关的速率限制的最一般形式。其他方法使用包排队、在运输中对包增加延迟或通常不被大多数实时应用支持的具体协议内置拥塞控制机制。使用拥塞管理机制例如对速率限制带宽使用丢弃尾部导致高抖动和丢包,降低实时应用的质量。这个实现不能用于低成本访问解决方案中的实时应用。因为与带宽使用相比延迟和丢失指数上升,当带宽使用接近上限阈值时这个问题更加复杂。图5A和5B图示了现有技术中相对于带宽的延迟。可以看出延迟在特定带宽使用率突然开始到峰值。尾部丢弃(也称为丢弃尾部)是不对业务流进行区分的简单的队列管理算法。丢弃尾部允许队列填充到其最大容量并且然后当新包到达时丢掉新包直到队列具有附加容量。尾部丢弃与以前提到的机制不同,因为它允许在采取行动之前队列填充,而其他在队列管
理中更主动。尾部丢弃的一个缺点是:在传送大量数据的网络中,实时应用可能变差因为数据可以容易地填充队列,使语音包被丢掉。此外,在VOIP (SIP)之类的特定应用中,信令业务流和包含呼叫音频的RTP包可以被丢弃。信令业务流可被再次传送,但是用于传送的定时器对于SIP是约500ms,并且如果SIP会话中关键包不被确认,所述呼叫将丢掉。同时,RTP包使用UDP被传送。这导致被丢弃的包将被丢失。虽然包丢失消除(PLC)的实现可以掩盖VOIP中丢包的一些影响,大量丢掉的呼叫将影响呼叫质量。同时,主动的队列管理机制实现了一种机制,用以通过如下方式来缓解尾部丢弃的一些问题:减少丢弃包的数目,减少触发TCP会话中的拥塞控制机制增加链路的使用率,减小队列大小,并且减少流所见的延迟和抖动并且尝试在多种流中平等地共享连接带宽。主动的队列管理算法包括RED、WRED和Blue。尾部丢弃的另一缺点是导致特定网络链路的消费者进入慢启动(slow-start)状态(其减少数据吞吐量),并且甚至导致全局同步通常足够,影响是对网络吞吐量有害的。虽然RED、WRED和Blue避免了上述问题,由于它们依赖于使用机制TCP内嵌的机制以及包被丢掉而不是排队这个事实,RED和WRED通常适用于仅IP网络。RED监测平均队列大小并且基于统计概率丢掉包。也可以用显式拥塞通知(ECN)标记包。但是,ECN仅被TCP/IP支持,其使作为用于和基于UDP的流一起使用的机制是不利的。而且,虽然ECN出现在最近的TCP/IP协议组中,它们一般在出厂时被禁用。WRED通过基于相关联的IP优先或DSCP值提供几个不同队列阈值来扩展RED。这使得如果队列填满了,较低优先级包被丢掉,保护同一队列中较高优先级包。但是,WRED也仅和基于TCP的会话一起工作。其他协议例如IPX不使用滑动窗的概念。当面对丢弃的包时,这些协议以与以前相同的速率简单地再次传送。RED和WRED在利用非TCP协议的网络中是低效的。Blue队列保持丢弃/标记概率,并且以它们进入队列的概率丢弃/标记包。当队列溢出时,丢弃/标记概率以小的常数增加,并且当队列为空时,丢弃/标记概率以小于用于增加概率的小常数的常数减少。Blue的主要缺陷,其共享大多数单队列排队规定,是它在流之间不区分,并且将所有流视为单个聚集。因此,单个进攻的流可推出属于其他、更好表现的流的队列包。当运行处理实时业务流例如VOIP或流视频的网络时,丢包是需要被避免的拥塞的副作用,因为它们对丢包敏感。Blue的主要缺陷,其共享大多数单队列排队规定,是它在流之间不区分,并且将所有流视为单个集合。因此,单个进攻的流可推出属于其他、更好表现的流的队列包。因此,需要一种排队和分发算法,其使用双向信息来支持非对称环境,并且充分利用绑定或聚集网络连接的带宽,即使连接中的链路展现出实质上不同的性能。

发明内容
在一个方面,本公开涉及一种智能包分发系统,用于在多个不同链路所定义的绑定或聚集连接上分发一个或多个包,所述系统包括智能包分发引擎,其操作以基于决策树来确定在该一个或多个链路中的哪些链路上分发该一个或多个包。在另一方面,本公开涉及一种用于在多个不同链路定义的绑定或聚集连接上分发一个或多个包的智能包分发的方法,该方法包括:执行决策树以用于确定在一个或多个链路中的哪些链路上分发所述一个或多个包;以及借助于智能包分发引擎基于该确定在一个或多个链路上分发该一个或多个包。在又一个方面,本公开涉及一种用于管理在绑定或聚集连接中的一个或多个通信链路上的业务流的方法,包括步骤:(a)借助于智能包分发引擎检测影响连接性能的一个或多个数据业务流参数;以及(b)基于所述数据业务流参数,通过在实时或接近实时基础上间歇地规避一个或多个这种通信链路上的选定包的通信来对一个或多个这种通信链路应用速率限制,从而减缓一个或多个这种通信链路上的业务流,以便改进连接的性能而不考虑数据业务流参数。在这个方面,在详细解释本发明的至少一个实施方式之前,要理解本发明不限于其对下列说明或图示中提出的构造和组件的布置的细节的应用。本发明能有其他实施方式并且以多种方式实现和执行。而且,要理解这里使用的措辞和术语是为了说明且不应被视为限制。


图1是示出了使用网络工具的智能包分发的实现的系统框图。图2示出了根据本发明的智能包分发引擎。图3A示出了基于权重包分发参数的智能包分发引擎的实现和决策树中考虑的性能标准。
图3B示出了基于速率限制规避分发参数的智能包分发引擎的实现和决策树中考虑的性能标准。图3C示出了基于应用和协议分发参数的智能包分发引擎的实现和决策树中考虑的性能标准。图4A示出了根据本发明的使用规避的速率限制,从而提供旁路/临界预留。图4B示出了根据本发明的使用规避的速率限制,从而提供了不使用尾部丢弃区的旁路/临界预留。图5A示出了现有技术中相对于带宽的ADSL延迟。图5B示出了现有技术中相对于带宽的线缆延迟。图6示出了显示根据本发明的相对于带宽的延迟的IPDE延迟图。图7示出了实现对VoIP应用的应用协议分发的智能包分发引擎的示例。图8示出了根据本发明的决策树的示例的流程图。
具体实施例方式本发明一种提供了用于跨通信链路的智能包分发的系统、方法和计算机程序。该系统包括用于实现智能包分发工作流的智能包分发引擎(“IPDE”)。智能包分发工作流可以使用智能包分发计算实现,例如算法(“IPDE分发计算”)。智能包分发可以与多种技术结合使用,例如用于提供负载均衡的网络连接聚集。本发明可操作以利用加权包分发和双向实时链路智能性来组合不同速度的链路。IPDE可操作以在实时或接近实时(即,基本上实时)收集与支持网络通信的至少两个网络链路的性能有关的数据(“数据业务流参数”)。多种类型的网络链路,例如不同的绑定或聚集网络链路。网络链路可以展现实质上不同的性能特性,例如非对称的速度(带宽)、延迟变化或其他不同的特性。IPDE可以在双向基础上收集每一链路的数据业务流参数。IPDE还可以接近实时地以每个包为基础提供旁路/规避链路状况,以改善聚集或绑定一束链路的总体通信。这可以这样实现=IPDE通过在实时或接近实时的基础上间歇地进行规避(avoidance)而对一个或多个所述链路应用速率限制。所应用的速率限制可以基于数据业务流参数。一个或多个通信链路上的选定包的通信可能减缓一个或多个通信链路上的业务流以改进连接的性能,而不考虑数据业务流参数如何。这使IPDE能够提供针对聚集或绑定会话中的所有链路而以每个较低链路基础限制速率的能力。以此方式,IPDE可规避由具有尾部丢弃机制的载波或网络提供商速率限制引起的非最优带宽区域。IPDE可以实现为IPDE网络工具,如图1所示。作为网络工具,IPDE可操作以处理或管理用于在网络中通信的信息的包的分发。IPDE可应用于多种方式。IPDE可实现为硬件或软件。IPDE可应用在网络连接的服务器上。IPDE可实现为链接到发送器和/或接收器网络组件的应用。本发明可实现到网络通信基础设施中的路由器。本发明的功能性可实现为芯片并且作为网络设备的一部分,例如,例如路由器。IPDE网络工具可以实现为任何芯片、服务器、路由器、发送器、接收器或其他网络组件/设备,其支持实时或接近实时地采集有关支持网络通信的至少两个网络链路的性能的数据,例如,例如数据业务流参数。本发明的实施方式所需的数据业务流参数的本质和范围将符合网络提供商。如图1所示,IPDE可包括支持IPDE的多个路由器10a、10b、10c、10d、10e、10f。这种路由器的数目和位置可以根据本发明的要求而变化。链路14可被创建在路由器与一个或多个网络12a、12b、12c之间。本领域技术人员将会认识到,多个网络可被包括在本发明的实施方式中并且多个网络链路可被形成为将路由器和网络相关联。作为一个示例,如果使用两个链路,例如链路A和链路B,链路可以被关联,使得如果例如一个链路(例如链路A)被规避,则包被发送给一个或多个其他链路,例如链路B,从而定义网络连接。本领域技术人员将会认识到,任何数目的链路可以利用在本发明中。链路的关联可以是多种类型的,例如绑定或聚集。任何关联都是足够的,并且绑定或聚集不是本发明的操作特别要求的。多个链路可包括一个或多个物理链路、逻辑链路和/或虚拟链路。IPDE网络工具可操作以通过测量与选定通信链路相关的通信性能中的峰值来监测网络性能。作为一个示例,iroE网络工具可以示出连接入和连接出的每个通信链路的速度。IPDE网络工具还可操作以包括或获得针对特定应用的数据业务流参数的有关信息。例如,IPDE网络工具可操作以包括或获得关于应用的数据业务流参数信息,该应用涉及用于特定通信链路上的传送的特定包。IPDE网络工具可以包含审查(review)装置或链接到审查装置,该审查装置可操作以执行决策树。IPDE网络工具可实时地获得数据业务流参数,并且可利用审查装置来实时地审查数据业务流参数和性能标准。特别地,数据业务流参数和性能标准可以参照预配置或可配置阈值而被审查,或者参照审查装置中包含的或者审查装置可访问的其他审查测量而被审查。基于该审查,审查装置可以选择性地应用一种或多种技术以改变一个或多个选定通信链路上的业务流以符合所述数据业务流参数。可以根据审查装置的决策树而应用改变业务流的技术。例如,当IPDE在通过数据业务流参数监测两个或更多网络链路的性能时,决策树可以由IPDE实现。如果被监测的性能落在期望性能标准以下,则决策树可发起一个过程,从而使IPDE可操作以发起一个或多个测量以管理网络上在流出时的包分发。对于特定的网络链路,测量可以按照相对特定的方式被定义。IPDE可以继续监测数据业务流参数以管理业务流分发。通过监测,IPDE可操作以相对于性能标准而维持和/或改进性能。尽管网络状况可能对相对于性能标准的性能具有不利的影响,但是可以实现对性能的这种维护或改进。例如,具有不利影响的这种网络状况可以包括网络连接上的信息包的通信的下降。作为一个示例,包分发管理可以基于决策树,其考虑以下一个或多个或其任意组合:(i)带宽;(ii)丢失;(iii) TOS (服务条款);(iv)加权;(v)速率限制;(vi)延迟;(vii)抖动;(viii)应用旁路;(ix)成本或财务考虑;(x) ToS (服务类型)字节数据;和/或(xi)定制过滤器。IPDE网络工具对这些技术的应用可以导致跨两个或更多链路而临时地应用数据业务流分发,从而优化性能。该两个或更多链路可以是物理或虚拟链路或者其组合。数据业务流分发可包括:Ca)基于权重的分发,其涉及跨两个或更多通信链路对业务流的加权的自适应配置;(b)速率限制分发,其涉及使用链路规避的在一个或多个通信链路上的数据业务流速率限制;(C)基于延迟和抖动规避的分发,其结合地通过规避和链路选择来控制跨两个或更多通信链路的延迟和抖动;以及(d)基于应用的分发,其通过以应用为基础的选择性的规避应用来旁路影响数据业务流的特定应用。分发可以被轮转、加权轮转或者根据任何其他计算或算法。决策树可以针对每个链路做出包分发的决策,其在规避和传送之间改变。本发明相对于现有技术可以提供多种优点和益处。IPDE的一个这种优点是可以支持对连接中的一个或多个链路的规避。现有技术系统不能规避连接中的链路。出于多种原因,规避连接中的链路可能是有利的。作为一个示例,如果需要维护与特定链路的关系而同时由于较差的性能、成本方面或其他原因而临时地或定期地规避链路,则规避可以是有利的。如上所述,通过本发明的决策树可以实现规避。本领域技术人员将会认识到这里所述的其他优点和益处。特别地,本发明获得的通信链路的总体改进的性能是相对于无法获得本发明性能的现有技术的特定优点和益处。IPDE网络工具可以操作以指定链路的加权。可选地,绑定或聚集连接中的一个或多个链路可被分配“零权重”。例如,具有高成本、延迟、抖动或任何其他指定特征的链路可被分配零权重。可以间歇地分配此类零权重,例如以实时、逐个包或者逐个包系列为基础。基于逐个包系列而分配的零权重可以按照速率限制。包可以被本发明紧密地分析和监测,并且该分析和监测可以提供指导用于决策包被发送到哪里。以每个包为基础,被零加权的状态可以是临时的。根据本发明提供的决策树可以支持规避在一个或多个链路上传送包。本发明可利用速率限制来实现这种规避。本发明还可在逐包的基础上应用规避。该规避可以基于决策树结果。可以利用智能包分发以通过任何网络连接支持多种通信。例如,可以实现智能包分发以支持语音、视频或通过网络连接通信的任何其他数据。IPDE可以根据连接上承载的数据类型而配置以便相应地调节参数,例如,例如规避参数和希望的性能标准。在本发明的一个实施方式中,智能包分发可以支持管理具有不同数据业务流参数的两个或更多链路的性能。例如,IPDE可以管理:(i)具有不同速度的两个或更多链路(例如,通过提供加权包分发技术);(ii) 一个或多个链路是对称的并且一个或多个其他链路是非对称的两个或更多链路;和/或(c)在形成两个或更多链路的部分的各链路之间存在不同延迟状况的两个或更多链路。本领域技术人员将会认识到,包括这里所描述参数的其他参数也可被智能包分发所使用。智能包分发可操作以基于每个链路确定包分发,同时出于带宽目的而保持该连接与其他链路之间的关联。IPDE分发计算可以被本发明执行,以处理双向信息以支持非对称环境。IPDE分发计算也可以用于单向网络通信并且可提供动态加权轮转的形式。IPDE分发计算可以链接到审查装置用于执行决策树以基于每个链路确定包分发。智能包分发引擎可被包含在本发明中,如图2所示。智能包分发引擎20可以接收一个或多个传入包22。智能包分发引擎可以包括若干可操作模块,包括消息收发系统24、决策树模块26以及分发实现模块28。消息收发系统可以是双向的,并且可以关于本地出站消息和从对等端侧入站的消息而操作。决策树模块如在此所述的工作,并且可以审查带宽、速率限制、延迟、抖动、丢失、T0S、定制过滤器和有关传入包的成本。分发实现模块可以实现并且控制包的分发。分发实现模块可以按照下列方式中的任何一个来实现一个或多个包的分发:加权包分发、速率限制通过规避分发或者应用包分发。包可以通过一个或多个链路或连接到所述智能包分发引擎的队列30a、30b、30c被分发。
如果需要,IPDE可操作以提供包分发以用于不同速度的链路(例如,例如绑定的连接、聚集的连接或其他连接)、支持加权轮转技术的非对称分发、负载均衡、安全、服务质量和成本控制。作为一个示例,非对称分发可以解决包括6M连接和4M连接的连接。作为另一不例,可以考虑成本控制,其中出站网络业务流比入站业务流具有更闻的成本(表不为例如每Mbps的成本)。包分发可以基于这里所述的数据业务流参数。包分发可以根据服务质量(QoS)而由IPDE管理。例如,IPDE可以通过规避来提供速率限制(RLA)。IPDE还可以提供加权包分发或应用包分发。根据QoS,IPDE可被双向地实现以用于以为至少2个链路双向地实现或者可以包括为本地出站和/或入站配置单向地实现。可以基于一系列技术实现决策树以实时优化性能。决策树可以使IPDE能包在链路上排队以提供QoS。RLA可以包括基于除带宽之外的因素的优先级排队,例如包括基于时间。IPDE可以包括或链接到使通信链路减速的速率限制器以为选择的类型的数据改进性能,包括例如仅语音包或者除语音之外的所有包。如图3A、图3B和图3C所示,可以包括在本发明的智能包分发引擎中的决策树可以以多种方式工作。决策树,在特定示例中,可以考虑基于权重的分发(如图3A所示),基于速率限制的分发(如图3B所示)、基于延迟和抖动的分发和基于应用的分发(如图3C所示)。基于权重的分发可以被预配置(硬设置)或自动地响应于网络状况。例如,如图3A所示,加权包分发32的决策树的判决可以实现加权的包分发或权重自适应包分发技术。特别地,决策树可以确定包的带宽。包可以从本地消息收发系统34发送并且被要求到达消息收发系统对等端36。决策树可以确定每个包的本地出站权重38和对等端出站权重40。作为一个示例,链路142可以被确定为大约6Mbps入站X大约800Kbps出站ADSL电路。作为又一示例,链路244可以被确定为大约1.5Mbps入站X大约1.5Mbps出站Tl电路。决策树可以按照规则46工作,例如,例如如果权重大于指定的权重值,链路将被规避。在这个示例中,决策树可以确定链路可以被绑定并且获得绑定的速度大约7.5Mbps入站X大约2.2Mbps的聚集服务。以这种方式,本发明可操作以绑定不同速度的链路。基于速度限制的分发可以通过规避来控制带宽。例如,如图3B所示,本发明可以通过规避技术实现速度限制。基于延迟和抖动的分发可以通过规避控制应用延迟和抖动。速度限制规避分发48的决策树判决可以确定包的带宽和速度限制。包可以从本地消息收发系统50发送并且被要求到达消息收发系统对等端52。决策树可以确定每个包的本地出站速率限制54和对等端出站速率限制56。作为一个示例,链路158可以被确定为大约
4.5Mbps入站X大约600Kbps出站ADSL电路。作为另一示例,链路260可以被确定为大约1.2Mbps入站X大约1.2Mbps出站Tl电路。决策树可以按照规则62工作,例如,例如链路将被规避如果速率限制大于指定的速率限制值。在这个示例中,决策树可以确定每个链路带宽速率限制被应用,并且链路可以被绑定并且获得绑定的速度大约4.5Mbps入站X大约600Kbps出站ADSL电路。作为另一示例,链路260可以被确定为大约5.7Mbps入站x大约1.SMbps的聚集服务。速率限制规避分发可减少总延迟并且可为旁路业务流创建空间。基于应用的分发可以通过规避经由具体链路来控制应用。例如,如图3C所示,本发明可以实现应用和协议分发(APD)技术。APD分发64的决策树判决可以确定包的带宽、速率限制、延迟、抖动、丢失、TOS和定制过滤器。包可以从本地消息收发系统66发送并且被要求到达消息收发系统对等端68。决策树可以确定每个包的本地出站APD70和对等端出站APD72。作为一个示例,链路174和链路276可以通过APD过滤器80a、80b被传递。决策树可以按照规则78工作,例如,例如,如果所述链路不是APD,链路将被规避。在这个示例中,决策树可以通过规避被应用确定每个链路应用条件,并且指定的应用仅通过最优链路传送。图3A、图3B和图3C所示的每一个决策树判决被提供为示例,并且这些决策树判决类型在这里被说明得更一般和更详细。管理业务流分发的一个可能的测量包括降低网络上的包分发速度,以用于改进通信质量之目的。这可以被称为RLA。速度的降低可以借助于规避来实现(提供通信速率限制或业务流整形)。管理业务流分发的另一方面可包括变更,其可以涉及对数据业务流进行“整形”、减速、重新路由等,这将在下文阐释。应当理解,RLA可以被实现以取代尾部丢弃,或者与尾部丢弃相结合,以便通过防止包丢弃(特别是在VoIP之类的实时应用中)来改进实时应用性能。这些技术可以由特定的过程、算法组成或使用具体设备(例如速率限制设备)以优化跨两个或更多链路的性能。选择性应用不只基于通信链路性能,而且基于特定于操作所述通信链路的载波的参数,其可以要求一个或多个技术的应用中的差异。上述监测可以在带内由通信协议或者在通信协议内完成。IPDE可以实现分发算法,其可操作以提供如图3A所示的加权包分发(WPD)。WPD有益于改进用于在多路径网络上通信的包分发。IPDE可操作以监测相关联的连接的速度和延迟并且基于这些参数通过链路权重设置对不同连接自动应用WPD,从而例如减少包到目的地的迟到影响。这提供了较好的网络性能而不考虑包在不同连接上的传递,不考虑在多路径网络连接中不同连接可能具有不同传输能力的可能性。IPDE可操作以自动解决这种网络状况。应当理解,WPD技术可以是自适应的。WPD技术可以实现为最佳地支持在绑定或聚集连接中使用备份或冗余链路。如图3A所示,与所讨论的通信相关联的IPDE的参数是“带宽”,使得链路142链接到链路244以便绑定或聚集与不同速度相关联的不同链路以便提供WPD0 wro解决用于多路径网络连接上的现场数据流的包分发的问题。根据不同链路的速度和延迟,IPDE可以基于链路权重调节链路上的包分发以减少包在其目的地的迟到。图3B示出对于其他网络通信,例如其中必须规避包延迟、抖动和包丢失的实时应用,除wro之外应用速率限制可以是有利的。在常规应用速率限制中,尾部丢弃技术被用于速率限制从而创建高延迟环境,其可能不适合在各个连接的上层中的实时应用。如图3B所示,本发明包括通过规避的速率限制,其通过对特定连接的使用设置速率限制来调节实时应用业务流,以便在不同的载波或多宿主环境中的规避包延迟、抖动或丢包。类似地,图3C示出例如对于实时应用,通过规避的每个链路应用调节可以怎样被应用以符合带宽、速率限制、延迟、抖动、丢失、TOS和定制过滤器的预定阈值,所有都是通过IPDE的操作并且跨不同的载波或多宿主环境。图4A和图4B提供根据本发明的带有旁路/临界预留的速率限制规避的示例。如图4A所示,由于带宽要求在高延迟应用中应用现有技术应用的速率限制增加。应用使用常规的现有技术82的速率限制可能导致不理的网络状况(例如丢包),因为以逐个包为基础,如图所示,应用于链路184或链路286的临界预留88a、88b和速率限制阈值90a、90b可被超过。速率限制可指示可以是早检测区的载波速率限制,并且可以使用尾部丢弃技术。应用尾部丢弃区可能是不利的,因为它可能导致包丢弃,并且对于VoIP可能尤其不佳。本发明可设置若干阈值,如图4B所示,例如尾部丢弃区94a、94b (不被本发明使用),高VoIP质量区96a、96b以及其中没有包将被丢弃的低延迟区102a、102b。本领域技术人员将会认识到,其他阈值也可被本发明设置。本发明可以创建多个链路的关联,因此关联的链路可利用可用的完全带宽。例如,如图4B所示,链路198和链路2100可以通过速率限制规避相关联,从而当状况与决策树标准匹配时,包通过一个或多个其他链路被发送。与现有技术相比,根据本发明的速率限制规避92的应用可导致一些不同结果的出现:(i)尾部丢弃区94a、94b不被用于任何应用,而使用基于速率限制的规避(根据本发明的技术);(ii)可选地,通过基于速率限制的规避的应用,可以建立又一阈值96a、96b以便在逐包的基础上为对于抖动以及跨多个较低链路的变化的延迟敏感的实时应用(例如VoIP)提供较好的性能;(iii)链路198和链路2100被关联(通过绑定或者聚集),并且在逐包的基础上当基于一个或多个阈值(例如,阈值94a、94b,或阈值96a、96b,或阈值102a、102b)存在带宽要求时,并且一个或多个受影响的包基于IPDE决策树的应用被自动发送到关联的链路。应当理解,本发明运行不同于带宽预留。带宽预留不是在逐包基础上工作的。本领域技术人员将会认识到,通过应用ITOE,如图4B所示,如果存在可用带宽,链路保持对其他包开放,但是一旦语音包被接收,例如基于决策树的应用,决策树为这些包定义的规则被IPDE动态地应用,从而提供比带宽预留更高效地利用网络资源的带宽管理。换句话说,ITOE可操作以对改变网络状况动态地做出反应,而不是试图基于预测的网络状况而设置阈值,这趋于高估或低估可负面影响网络通信的网络参数,因此导致小于最优的性能或小于最优的资源使用。当绑定的线路的性能实质上不同时,传统的轮转调度导致吞吐量下降,权重可以分配给每个网络链路。较高的权重可以表明优选的链路,其通常比其他较低权重的链路具有较高的带宽和/或较低的成本。通过典型的加权的包分发算法跨链路管理业务流。但是,在本发明中,所述链路中的一个或多个可被分配零权重。不同的载波基础设施可提供具有包括非对称速度(带宽)和延迟变化的不相似特性的较低链路。例如,载波差异性可造成旧有对称电路与较新非对称类型宽带电路的组合,创建较快和较慢速度在任一方向的混合,带有所有较低链路的变化的延迟组合。对这些链路的加权是一个挑战,因为对于在聚集连接中提供一致的、均等的且最佳的带宽流而言,使用这些不同的载波基础设施导致了不确定性。例如VoIP的实时应用对于跨多个较低链路的抖动和变化的延迟是高度敏感的。同时,这些实时应用常常包括具有如下头部的包,这些头部具有包开始/停止标志和序列号。接收器通常根据跨较低链路接收的包的序列号来组装包。当使用不平衡的较低链路时,序列号可能乱序到达。接收器可推断包丢失并且请求重传丢失序列号处的包。此时,在这个丢失序列号之后的所有已接收的包将被丢弃。重传将导致总体速度开始下降。解决这个问题的一个手段包括为每个较低链路实现基于权重的包分发系统,SP“加权的包分发”。权重可以是为对应的链路在轮转间隔发送的包的数目。权重可与速度和延迟具有直接的关系。当使用跨混合的较低链路的不平衡的且变化的延迟时,wro显著地改进绑定的会话的性能。在WPD的特定实现中,非常慢的或者成本高的链路可被分配零权重。在WPD的特定实现中,链路权重可以基于波动的宽带连接和饱和的环境被自动调节。这可称为动态WPD。零权重的链路可能是有用的,例如,当聚集或绑定连接包括有线宽带链路和例如WiMAX或3G蜂窝的无线链路时。在一些情况下,这些无线链路可具有比有线链路超过1500%的较高延迟。包括WPD中的无线链路可通常引起显著的下降,但是可以希望或要求无线链路作为备份链路。在这种情况下,将零权重分配给较慢或较贵的链路可以使它们能在常规包分发中被旁路并且仅在需要时被利用。如果基于数据业务流参数确定性能已落在以特定于特定网络链路的方式被定义的期望性能标准以下,则决策树可发起一个过程,从而使IPDE可操作以发起一个或多个测量,以管理夸所考虑网络链路的包分发。降级的网络链路可以被规避,并且加权的包分发技术可以检查所有其余较低链路的权重。非零权重的链路可被首先使用,并且如果不存在非零权重的链路,则可以使用零权重的链路发出包。性能下降的确定可以基于在接收器重新组装收到的包而完成。例如,如果数据带有序列号被发送,IPDE可以使用序列号字段来标识每个包。序列号可以标识在网络设备之间发送的包的顺序。当包不按顺序被接收或者根本没收到时,决策树可以确定较低链路已停止工作(down)。IPDE可以参考例如较低链路状态表,以从缓冲区获得最小的传入序列号并且使用这个值作为包重新组装代码中的当前序列号。如果在停止工作的链路中存在一些未被组装的包,这些包将被接收器丢失。然而,发送器可以重发这些包并且数据传输可以恢复。当零权重链路被添加到连接时,当前最小的传入序列号可能不是在所有链路上都是准确的。零权重链路状态表中的序列号可以是此链路上的先前传入包的序列号。通常,如果当前最小传入序列号是错的,重新组装代码将失败并且所有应用业务流将中止。然而,IPDE可以通过首先修改重新组装(reassemble)代码和故障恢复过程来支持零权重链路。例如,当非零权重链路停止工作时,可以计算组装代码的最小序列号;当零权重链路停止工作时,计算组装代码的最小序列号;当非零权重链路接通时,计算组装代码的最小序列号;以及当零权重链路接通时,计算组装代码的最小序列号。此外,权重可以被自适应地分配。在特定示例中,分配给链路的权重可以从权重集合{0,1,2, 3}中选择,其中0为不理想的链路预留以及3为最优选的链路预留。最大入站速度可以在所有链路中检测。对于连接中的每个链路,可以基于相对于最大入站速度的链路入站速度来分配权重。例如,具有至少最大速度80%的链路可被分配权重3,而具有至少最大速度40%的链路可被分配权重2,并且具有至少最大速度20%的链路可被分配权重I。任何其他链路可被分配权重O。类似的技术可用于分配每个链路的出站权重。如果线路的性能降低使得无入站和/或出站链路具有至少与某个阈值一样的速度,即最大值的80%,则权重可被减少和/或相应地随后增加以便补偿。当使用不相似和或不同的载波链路时,权重自适应包分发可以动态调节以改变。这可能是有益的,例如,当在初始连接和/或重连接之后拨号调制解调器链路的最大速度降低(这将使聚集连接的速度降低)时。例如,当断开和重连接发生时,不保证调制解调器将以与当会话第一次开始时它初始的相同速度再次连接。如图3B所示,IPDE分发计算也可以是通过速率限制规避(RLA)技术的速率限制。通常,所有宽带和城市以太网类型连接使用向消费者提供的速率限制服务的尾部丢弃技术。由于包延迟、抖动和丢失,当在各个连接的上层中通信时这将导致高延迟环境,这是传输实时应用时必须被避免的情况。在将例如语音和视频等实时应用与数据混合时,需要拥塞管理算法以用于在带宽饱和环境中相对于一个应用而高效地递送另一个应用。带宽预留是为具体应用留出带宽的有效技术。IPDE可实现RLA以克服现有技术的缺点,即使速率限制能被用于实时应用例如VoIP0 IPDE可实现考虑带宽和速率限制的决策树以提供RLA。RLA使用两个或更多物理连接、逻辑连接和/或虚拟连接来管理带宽使用。该概念是基于如下原理:避免用于速率限制的尾部丢弃的状况,以提供更高效且不丢包的机制以调节带宽。通过为链路设置速率限制,IPDE可调节应用业务流以规避或减少延迟、抖动和丢失。IPDE可调节在不同载波中或多宿主环境中任何链路上的业务流。图5A示出ADSL链路的延迟相对于带宽的现有技术示例的ADSL表104。在这个表中,带宽使用具有最大水平为800Kbps。表一般示出延迟大约在63%使用开始到峰值。图5B示出线缆链路的延迟相对于带宽的现有技术示例的线缆表104。在这个表中,带宽使用具有最大水平为1180Kbps。表一般示出延迟大约在83%使用开始到峰。如图6所示,ANA表106提供根据本发明的延迟相对于带宽的示例。通过比较图5A和图5B与图6,显然在本发明和现有技术之间延迟相对于带宽不同。本发明中的带宽使用可以包含ADSL的相关联链路和线缆链路。因此,本发明的带宽使用可以具有最大水平约
1.39Mbps上传。在本发明的这个示例中,当不应用通过规避的速率限制时,延迟可以在大约50%利用率时开始达到峰值。此外,使用RLA可能没有显著的延迟下降。PLA可以实现为不提供用于优先化的拥塞管理或实时应用的带宽预留的不依赖协议的带宽管理解决方案。使用RLA旁路技术提供对于实时应用的饱和的规避。这个技术可用于速率限制除了实时业务流之外的所有业务流。RLA旁路技术可用于覆盖用于可利用非速率限制的带宽的指定业务流的任何RLA设置。IPDE网络工具可以被用户配置以通过较低带宽速率来设置RLA,并且为指定的优先级业务流留下空间,实质上形成带宽预留技术。如在图3C中所见,IPDE分发计算也可以是应用协议分发(APD)技术。应用递送可基于多种因素而变化,包括公司政策和实时应用要求。Aro技术可包括考虑数据业务流参数的决策树,包括带宽、速率限制、延迟、抖动、丢失、T0S、字节数据和定制过滤。通过基于应用自适应的性能标准,IPDE可获得每个应用的最佳质量。本领域技术人员将会认识到,本发明可以具有若干实施方式。本发明的一个实施方式示出在图7中。在这个实施方式中,IPDE实现用于VoIP应用的应用协议分发技术。用于VoIP应用的技术优选地包括规避延迟和抖动以防止质量不佳的语音状况。IPDE可以实现APD以便基于每个链路智能地使用延迟和抖动信息以规避质量用于在不同的载波和/或多宿主的场景中传输VoIP包的不佳语音状况。例如,如图7所示,用于VoIP分发108的ADP的决策树判决可以确定包的延迟、抖动、丢失、TOS和定制过滤器。包可以从本地消息收发系统Iio发送并且要求到达消息收发系统对等端112。决策树可以确定本地出站每个链路延迟和每个包的抖动规避(LJA) 114和对等端出站LJA116。LJA可以具有用于改变线路状况的动态属性。一般地,ADSL和线缆或者宽带连接可以基于天气、本地段负载和线路状况而间歇地降级。可以在本发明中利用IPDE-LJA以解决连接降级的问题。IPDE-LJA可以动态调节并且因此规避降级。例如,动态调节可以发生而不考虑用于优先级应用的链路状况,例如,例如VoIP。LJA是一种可用于本发明的IPDE的包分发方法。例如,LJA可以使用较低链路延迟和抖动智能以规避通过具有高延迟和抖动的链路发送VoIP。以这种方式,LJA可以创建可操作以动态地容忍线路状况的改变的动态链路分配。作为本发明的实施方式的一个示例,可以确定根据过滤器118a、118b,链路1120和链路2122具有最大延迟为约250ms和最大抖动为约10ms。应用可涉及TOS或特别是定制过滤器以确定LJA规避。决策树可按照规则124工作,例如如果LJA大于具体LJA值,链路将被规避。以此方式,本发明可操作以仅通过最佳链路进行传输。IPDE可实现考虑数据业务流参数的决策树,包括延迟、抖动、丢失、TOS和定制过滤器。例如,性能标准可包括每个链路最大允许延迟250ms和最大抖动10ms。通过监测每个链路上的状况,决策树可通过在链路之间最佳地分发包优化延迟和抖动。例如,如果在链路上观察到最大延迟或抖动,链路可以被规避。包则可被分发到较好运行的链路直到被规避的链路准备好回到在线。决策树可以被初始化并且被配置以包括考虑包括带宽、速率限制、延迟、抖动、丢失、T0S、字节数据和定制过滤器的一个或多个数据业务流参数。可以为数据业务流参数中的一个或多个设置包括最大和最小阈值的性能标准。决策树可被配置以提供2个可能的判决:规避或传送。决策树可被配置用于双向或单向配置,包括用于本地出站和/或入站配置。一旦被配置,IPDE可与其对等端在连接的另一端通信以相应地支持对等端的配置。对于每个包,IPDE可以基于数据业务流参数确定较低链路带宽和延迟或其他因子。基于计算,IPDE可以调节较低链路权重,如上所述。对于这些包中的每一个,IPDE基于数据业务流参数以及基于参数是否在性能标准中来检查当前较低链路的状态,确定是否在当前较低链路上发送包。如果不是,IPDE确定连接中任何其他较低链路是否可用于发送包。如果是,检查该链路的状态。一旦基于性能标准中具有数据业务流参数已经确定一个链路可用于发送包,包在链路上排队并且使用传输协议向对等端发送包。在本发明的一个实施方式中,如图8所示,可以应用决策树的另一示例。决策树可以被初始化并且被配置以包括考虑一个或多个数据业务流参数,包括带宽、速率限制、延迟、抖动、丢失、T0S、字节数据和定制过滤器。可以为数据业务流参数中的一个或多个设置包括最大和最小阈值的性能标准。决策树可被配置以提供2个可能的判决:规避或传送。IPDE可以基于权重初始化模块126中的链路带宽比较对所有链路的权重进行初始化。首先基于带宽的比较获得每个链路的带宽128,权重被对应地分配给每个链路136作为权重初始化。所述比较可包括步骤:审查所述链路以确定它是否是速率限制链路130。如果所述链路是速率限制链路,则决策树可利用速率限制速度作为链路带宽132。作为下一步骤,链路权重可通过链路带宽比较被计算134。在权重调节模块中140中,IPDE然后可以检查每个链路的延迟138。如果所有链路具有是最大延迟设置144的性能标准以上的延迟,要发送的包可被丢弃142。否则,可选择特定链路作为发送包的优选链路。该链路的延迟与平均链路延迟相比较以确定它是否执行较差。例如,如果所述链路延迟比平均链路延迟146高50%以上,可以认为所述链路执行较差并且IPDE可以选择另一链路作为优选链路148。一旦选择了呈现可接受的延迟的链路,IPDE可检查所述链路的抖动。IPDE然后可以验证所述链路的抖动在性能标准以下。因此,如果包与包含在决策树中的特定配置或阈值匹配,IPDE自动地应用适用的判断过程。包发送过程150可以发生在包发送模块152中。速率限制过程、预留带宽、定制滤波和有关包发送的其他步骤可以应用在包发送过程中。本领域技术人员将会理解,也可以实现这里所述实施方式的其他变形而不脱离本发明的范围。其他修改因此是可能的。
权利要求
1.一种用于在由多个不同链路定义的绑定或聚集连接上分发一个或多个包的智能包分发系统,所述系统的特征在于,它包括智能包分发引擎,其可操作以基于决策树来确定在所述一个或多个链路的哪些链路上分发所述一个或多个包。
2.根据权利要求1所述的智能包分发系统,其特征在于,它包括的所述智能包分发引擎还可操作以基本上实时地收集关于每个链路的性能的一个或多个数据业务流参数,并且所述决策树基于一个或多个所述数据业务流参数来进行所述确定。
3.根据权利要求2所述的智能包分发系统,其特征在于,它包括选自包括以下项的组的所述数据业务流参数:带宽;丢失;服务条款;加权;速率限制;延迟;抖动;应用旁路;成本或财务考虑;服务类型字节数据;定制过滤器;或其任意组合。
4.根据权利要求1所述的智能包分发系统,其特征在于,它包括的所述多个链路包括至少一个物理链路,至少 一个逻辑链路,至少一个虚拟链路或其任意组合。
5.根据权利要求1所述的智能包分发系统,其特征在于,它包括的所述分发选自包括以下项的组:基于自适应权重的分发,速率限制分发,基于延迟和抖动规避的分发,或基于应用的分发。
6.根据权利要求5所述的智能包分发系统,其特征在于,它包括的所述分发是基于自适应权重的分发,并且所述智能包分发引擎基于所述链路的相对于所述连接的最大入站速度的监测入站速度而向每个链路分配权重。
7.根据权利要求6所述的智能包分发系统,其特征在于,它包括在间歇基础上分配的所述权重。
8.根据权利要求7所述的智能包分发系统,其特征在于,它包括的所述间歇基础选自包括以下项的组:实时,每个包,或每个包系列。
9.根据权利要求6所述的智能包分发系统,其特征在于,它包括的所述智能包分发引擎可操作以在非零权重可用于包分发时向低性能链路分配零权重以规避在该链路上的包分发。
10.根据权利要求6所述的智能包分发系统,其特征在于,它包括的所述智能包分发引擎可操作以基于在接收器处对接收到的包的重新组装来监测所述一个或多个链路的性能下降。
11.根据权利要求1所述的智能包分发系统,其特征在于,它包括速率限制器,其可操作以限制一个或多个所述链路的速率。
12.根据权利要求2所述的智能包分发系统,其特征在于,它包括的所述不同链路具有不同的速度,并且所述智能包分发引擎双向地针对每个链路而收集所述一个或多个数据业务流参数。
13.一种用于在由多个不同链路定义的绑定或聚集连接上的一个或多个包的智能包分发的方法,所述方法的特征在于,它包括: 执行决策树,以用于确定在所述一个或多个链路中的哪些链路上分发所述一个或多个包;以及 借助于智能包分发引擎,基于所述确定在所述一个或多个链路上分发所述一个或多个包。
14.根据权利要求13所述的方法,其特征在于,它还包括步骤:基本上实时地收集关于每个链路的性能的一个或多个数据业务流参数,所述决策树基于一个或多个所述数据业务流参数来进行所述确定。
15.根据权利要求14所述的方法,其特征在于,它还包括步骤:所述数据业务流参数选自包括以下项的组:带览;丢失;服务条款;加权;速率限制;延迟;抖动;应用芳路;成本或财务考虑;服务类型字节数据;定制过滤器;或其任意组合。
16.根据权利要求13所述的方法,其特征在于,它还包括所述多个链路包括至少一个物理链路,至少一个逻辑链路,至少一个虚拟链路或其任意组合。
17.根据权利要求14所述的方法,其特征在于,它还包括步骤:借助于所述智能包分发引擎向每个链路分配权重。
18.根据权利要求17所述的方法,其特征在于,它还包括步骤:基于对所述链路的所述带宽的比较而向每个链路分配所述权重。
19.根据权利要求17所述的方法,其特征在于,它还包括步骤:所述不同链路具有不同的速度,并且所述智能包分发引擎双向地针对每个链路而收集所述一个或多个数据业务流参数。
20.根据权利要求17所述的方法,其特征在于,它还包括步骤:决策树通过执行下列步骤来选择在其上分发所述一个或多个包的链路,所述步骤包括: 获得每个链路所述延迟并且选择所述链路中具有低于延迟性能标准的延迟的一个链路作为优选链路;以及 获得所述优选链路的所述抖动并且验证所述抖动低于抖动性能标准。
21.根据权利要求20所述的方法,其特征在于,它还包括步骤:验证所述优选链路的所述延迟小于所有链路延迟的平均值。
22.根据权利要求13所述的方法,其特征在于,它还包括步骤:以每个较低链路为基础限制一个或多个所述链路的所述速率,以便规避由具有尾部丢弃机制的载波或网络提供商速率限制引起的非最佳带宽区。
23.一种用于管理在绑定或聚集连接中的一个或多个通信链路上的业务流的方法,其特征在于,它包括步骤: Ca)借助于智能包分发引擎检测影响所述连接的性能的一个或多个数据业务流参数;以及 (b)基于所述数据业务流参数,通过在实时或接近实时基础上间歇地规避选定的包在一个或多个这种通信链路上的通信,来向所述一个或多个这种通信链路应用速率限制,从而减缓所述一个或多个这种通信链路上的业务流,以便改进所述连接的性能而不考虑所述数据业务流参数。
24.根据权利要求23所述的方法,其特征在于,它还包括步骤:所述一个或多个通信链路具有不同的速度,并且所述智能包分发引擎双向地针对每个链路而检测所述一个或多个数据业务流参数。
25.根据权利要求23所述的方法,其特征在于,它还包括步骤:对链路的所述规避是实时地或接近实时地以每个包为基础的,以改进所述聚集或绑定连接的总体通信。
全文摘要
本发明提供了用于多个潜在不同的链路上的智能包分发的系统、方法和计算机程序。该系统包括智能包分发引擎(“IPDE”),包括或链接至用于执行决策树的装置。IPDE实时地获得数据业务流参数,并且基于数据业务流参数和性能标准选择性地应用一个或多个技术来改变选定通信链路上的业务流以便符合数据业务流参数。
文档编号H04L12/801GK103098429SQ201180041068
公开日2013年5月8日 申请日期2011年7月12日 优先权日2010年7月12日
发明者帕特里希奥·亨伯托·萨维德拉 申请人:帕特里希奥·亨伯托·萨维德拉
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1