通信网络的交换中的流量控制的制作方法

文档序号:7637439阅读:187来源:国知局
专利名称:通信网络的交换中的流量控制的制作方法
技术领域
本发明总体上涉及通信系统领域,具体地说,涉及一种通信系统中的流量控制。

背景技术
如果没有对网络过载进行有效的控制,则网络过载可以严重地降低电信业务的质量或可用性。需要有效的自动控制来保护业务平台的范围不受日益变得不稳定且不可预知的需求水平的影响。
在电话网络中,下列原因(以单独或组合方式)可以引起过载 ·媒体激发的大众呼叫事件,例如,远距离投票、慈善呼吁、竞赛和市场营销, ·紧急事件, ·网络设备故障, ·自动调度的呼叫, 在缺少有效的过载控制的情况下,这种过载会威胁网络系统的稳定性,并且导致成功完成的呼叫严重减少。最后,系统因丢失任务而发生故障,并且客户不能使用服务。
网络运营商不能经济地提供足够的能力来管理这种可能出现的呼叫率峰。此外,在过载中,因为终端线路很忙,所以不能成功地终止大多数服务请求。因此,需要过载控制来管理呼叫率峰。
这种现象的一个示例是TV机顶盒同时开始(例如,在2am)对互联网上的一服务器进行拨号以上载或下载客户数据。问题在于通常终端线路仅足以处理每单位时间提供的呼叫的小部分;并且瞬时峰需求可能超过可用的信令或处理能力。这种自动调度事件的一个挑战性特征是机顶盒都可以精确地跟随同一呼叫脚本,使得在无法建立第一呼叫尝试之后,所有的机顶盒接着以相同的内部重复延迟来精确地跟随同一重复序列。
对于任一特定网络环境,导致资源过载的节点数量可以随事件而变化很大。结论是在许多环境中,有效的过载控制必须能够按照流量分布在过载源上的方式自动地处理变化,该控制可以随事件而改变或甚至在一事件过程中改变。
在网络中,特定类型的资源的不同实例可以具有(通过设计)大大不同的容量。ISUP ACC例如可以用于保护(容量相对小的)端节点以及(容量较大的)转接节点。此外,以服务请求/秒为单位的单个目标资源的容量可以随时间而变化。因此,好的控制应当能够进行调整以自动处理目标容量的这种变化。
在大多数网络系统中,在多个不同的处理资源集之间分配呼叫处理。例如,在电话交换中,通常在处理流量路由集的外围处理器与处理呼叫路由、计费等的负载平衡中央处理器的池之间进行分配。因此,不同的处理资源集可能成为呼叫混合以及通过系统的呼叫流量的模式变化时的瓶颈。因此,为了使得无论何内部处理资源过载都保持短的响应时间并且保证正确的呼叫处理,系统的内部负载控制需要拒绝呼叫。
对于所提供的需求的特定混合,图1中示出了网络系统的典型吞吐量曲线。资源可以是电话交换、业务控制点(SCP)、信号转接点(STP)、ATM节点、万维网服务器等。
许可率曲线的准确形状取决于哪个内部处理资源是所提供的需求混合的瓶颈。然而,通常,当所提供的请求速率增大时,将出现以下点资源调用其内部过载控制来拒绝所提供的负载的某些部分以限制许可负载从而导致在阻塞的处理资源处的延迟的点。因此,在该点处,许可率开始下降到提供速率以下,并最终在某个确定的提供速率(在图1中由LM表示)处达到最大许可率(因为拒绝服务请求消耗处理工作量)。
进一步增大提供速率导致许可率实际上下降。最终出现不能保证正确的呼叫处理并拒绝所有的呼叫的速率(由LC服务请求/秒表示)。这例如可能出现在内部任务排队溢出的电话交换中,并且交换可能必须重新开始或者重新运行以使其自身恢复到“健全”状态。为了使资源恢复到正常工作,需要将提供速率减小到资源不再处于过载的水平。
另外,如图1所示,目标资源对请求的响应时间将随着内部拥塞的建立而开始增加。对于特定范围的提供速率,可以通过减小整个处理接受呼叫的速率的目标的许可控制来将该响应时间保持在可接受的低(并且大致恒定的)水平。然而,最终,拒绝或放弃呼叫的处理工作量可以自身用尽可用的处理能力来拒绝呼叫(当提供负载为LC时出现这种情况)。在该点处,响应时间可以开始迅速且不可控制地爬升,触发高速率的客户放弃和重试。
重要的是使目标的许可率最大化(以保持响应时间足够小为条件),以使客户重试最小化。这也避免了产生不必要的客户重复尝试的、资源对前往目标的请求流的过节流。
对于任一特定网络环境,导致资源过载的节点数量可以随事件而变化很大。此外,以服务请求/秒为单位的单个目标资源的容量可以随时间而变化。
“智能网络”的最初想法是能够限定支持快速建立大范围的新业务并将其部署到电话网络中的系统容量。业务包括具有高级呼叫分配特征(例如,呼叫排队)的业务。ITU-T结合INAP(智能网络应用协议,[3])而规定了限定这种容量的一系列建议。BT Technical Journal关于网络智能的专刊提供了智能网络的概述、标准和业务[1]。
尽管可能简单地因为未向期望的需求提供足够的容量而出现过载,但更普遍的是,过载由某些不可预料的快速出现的事件而导致。这些事件包括网络或系统故障、流量改变以及已被调度为同步出现的网络系统处理。这些事件还包括在IN上部署的业务类型,例如,媒体激发的事件或者自然紧急事件(例如,恶劣天气),因此流量可能非常不稳定。呼叫客户或系统重试行为通常放大流量,使情况变得更坏。为了避免响应时间过长和吞吐量降低乃至故障,任一系统都需要有效的过载控制。在IN的情况下,对于为什么特别容易出现过载,存在体系结构上的原因,如下所述。
图2中示出了ITU-T IN功能模块的基本组成部分。SCF(业务控制功能)包含呼叫控制功能,呼叫控制功能由基础业务构造块(buildingblock)组成。它们与业务逻辑和数据相互作用并且连接到包括SSF和SRF的其他功能。SSF(业务交换功能)扩展并修改呼叫控制功能,以使得可以识别IN业务控制“触发”,以询问SCF并管理呼叫控制与SCF之间的信令。由触发的“检测点”产生的信令消息是从SSF发送到SCF的IDP(初始检测点)。SRF(专用资源功能)提供执行IN提供的业务(例如,数字接收器和广播)所需的资源。作为SCF的主机的节点通常称为SCP(业务控制点),作为SSF的主机(即,交换系统)的节点通常称为SSP(业务交换点)。
虽然ITU标准规定了分布式智能网络,但是与物理实现无关的是,典型的IN体系结构集中于以下认知通常只存在少量的SCF实例而每个SCF存在很多(可能数百)SSF实例。这种与各SSP的通常容量相结合的高连接性意味着SSP可以产生的总需求可以容易地远大于SCP的容量。此外,SCP的总容量通常远大于(比方说)SCP指示要连接的目的地交换系统的容量。因此,如果实际上过载集中(即,流量集中到一个或几个目的地系统上),则存在两种可能的结果 目的地或中间网络可能不具有充分的过载控制来限制所处理的负载,导致性能劣化(响应时间过长或吞吐量降低); 即使控制充分,因为目的地资源(线路)很忙,所以经SCF处理的大量呼叫也可能无效。于是,SCF将处理大量无效的工作量,这可能导致否则将具有很好的竞争机会的其他呼叫被拒绝。因此,降低了SCF的有效吞吐量。
本发明人设计的自动、集中过载控制方案涉及以BT的名义提交的专利申请[4]的主题。该方案一般称为“自动呼叫限制”或“动态呼叫限制”,用于使资源具有在其利用变高时本地地拒绝需求(内部限制)的方式以及拒绝流量源处的需求以限制拒绝率(外部限制)的方式。内部限制可以被设计成限制系统的响应时间,同时,外部限制对被拒绝的或无效的需求进行限制,因而保持对资源的高效利用。在该发明中,规定了目标拒绝(故障)率,并使用漏桶算法(leaky bucket)来监视实际拒绝。仅当接收到对被拒绝呼叫的指示时才分配一监视桶。桶计数穿过阈值的上升和下降分别指示限制等级(即,控制许可的速率)是增大还是减小。有效的是,根据观察到的拒绝率是在目标率以上还是以下来调整许可率。


发明内容
根据第一方面,本发明提供了一种控制器,该控制器用于根据控制最大平均许可率的控制值来控制通信系统中向一节点传送的消息的许可率,其中,该控制器包括用于定期更新所述控制值的装置,其中,更新后的控制值是前一控制值的递增函数和前一许可率的递增函数中的较小者。
根据本发明的另一方面,所述更新后的控制值是所述前一控制值及从前一更新起的时间段的递增函数和前一许可率的递增函数中的较小者。
根据本发明的另一方面,更新之间的时间段是可变的。
根据本发明的另一方面,下一间隔的控制值μi+1被设置为 μi+1=min{aγi,μi+cδt} 其中,a是控制速率系数,γi是前一许可率,c是增大系数,δt是从前一更新起的时间段。
根据本发明的另一方面,下一间隔的控制值μi+1被设置为 μi+1=min{f(γi),g(μi,δt)},其中,f和g是递增函数。
根据第二方面,本发明提供了一种用于控制通信系统中到一节点的消息的流量控制器,其中,该控制器包括拒绝监视器,用于监视所述节点的消息拒绝率;传送监视器,用于监视所述控制器向所述节点传送的消息的速率;以及控制装置,用于基于监视到的拒绝率和监视到的传送速率来控制向所述节点传送消息的速率,使得拒绝率趋向目标值。
根据本发明的另一方面,所述控制装置将传送消息的最大速率限制在控制值。根据本发明的另一方面,所述控制值是相对于监视到的向所述节点传送的消息的速率来计算的。根据本发明的另一方面,所述控制值是相对于监视到的所述节点接受的消息的速率来计算的。根据本发明的另一方面,所述控制值是正的。
根据本发明的另一方面,如果监视到的拒绝率在所述目标值以下,则放松对到所述节点的消息的流量的控制。根据本发明的另一方面,如果监视到的拒绝率在所述目标值以下,则增大所述控制值。根据本发明的另一方面,如果监视到的拒绝率在所述目标值以上,则减小所述控制值。
根据本发明的另一方面,所述向所述节点传送消息的速率被定期更新。根据本发明的另一方面,更新时段随所述节点接收到的消息的速率的改变率而变化。根据本发明的另一方面,所述更新时段作为从上次更新起的时间和从上次更新起接收到的拒绝的数量的函数而变化。
根据本发明的另一方面,所述控制器由下式决定 μi+1=max{γi+α(R-ωi),0},其中, γi是在第一时段中所述控制器传送的消息的速率;ωi是在所述第一时段中所述节点的消息拒绝率;μi+1是在所述第一时段之后的第二时段中所述控制器传送的消息的速率的上限;R是控制参数,其等于所述目标值;α是渐近系数。
根据本发明的另一方面,一种被设置用于控制通信系统中到多于一个节点的消息的流量的控制器,该控制器包括拒绝监视器,用于监视所述多于一个节点中的每一个的消息拒绝率;传送监视器,用于监视所述控制器向所述多于一个节点中的每一个传送的消息的速率;以及控制装置,用于基于针对各节点的监视到的拒绝率和该节点的监视到的传送速率来控制向所述多于一个节点传送消息的速率,使得各节点的拒绝率趋向目标值。
根据本发明的另一方面,各节点与单独的目标值相关联。
本发明还适合于包括根据任一上述权利要求所述的控制器的通信系统。根据本发明的另一方面,所述消息拒绝率与渐近函数传送的消息的速率有关,并且其中,所述渐近系数α是该函数的渐近线的梯度s的倒数。根据本发明的另一方面,所述渐近线的梯度s由给出,其中,r是所述节点拒绝一消息所需的工作量与该节点接受一消息所需的工作量的比。
根据优选实施方式,第一方面的控制器和另一方面的控制器布置在所述网络中分离的点处。
根据优选实施方式,第一方面的控制器和另一方面的控制器协作以产生与根据第一方面和另一方面的控制器而产生的两个值中的最小值相等的控制值。
根据本发明的另一方面,如所附权利要求所述,提供了控制通信系统中到一节点的消息的流量的方法。
根据本发明的另一方面,所述通信系统包括多个控制器,其中,各控制器包括拒绝监视器,该拒绝监视器用于监视所述节点对所述控制器传送到该节点的消息的拒绝率。



图1示出了传统网络系统的典型吞吐量的曲线图; 图2以示意形式示出了传统智能网络的元素; 图3和图4示出了传统网络系统的拒绝特性的曲线图; 图5示出了根据本发明一方面的拒绝率如何收敛的曲线图; 图6、图7(a)、图7(b)、图7(c)、图8(a)、图8(b)以及图8(c)以示意形式示出了根据本发明不同方面的过程; 图9到图12以示意形式示出了根据本发明不同方面的网络节点。

具体实施例方式 下面将阐述上述针对过载问题的两种方法。第一种方法不使用反馈,可以称为“开环”。第二种方法使用反馈,可以称为“闭环”。可以单独或者一起应用这些方案。每种方法针对一种不同的过载情况。两种过载情况可以单独或同时出现。同时出现不仅使收敛到期望水平花费较长时间,而且可能引入可能花费很长时间来消失的不稳定性。考虑具有大的应答容量(线路数量)的业务供应商,该业务供应商起初传输非常少的流量或者不传输流量,并经受呼叫率的突然增大。因为占用起初很低,所以接受全部第一批呼叫导致线路占用的快速增加。因为没有拒绝呼叫,所以源处的限制性控制未被激活,并且目的地处的到达速率未受到限制。然而,线路群一变满就开始拒绝。实际上,因为到达速率如此高并且因为在达到占用时间之前不清除任何线路,所以存在所有新到达的呼叫都被拒绝的时段。因此,拒绝率几乎瞬时从零到极高的水平。
这种非常高的拒绝水平将导致源处的控制被激活。到达速率也非常高,并且可能导致系统/网络中的其他问题。当非常高的拒绝率持续了约占用时间时,源处的控制在该时间间隔中可以显著减小。在另一时段之后,开始清除线路。如果占用时间完全一致,则可以几乎同时清除所有的线路。即使现在到达速率很低并且线路只是很慢地填充,因为拒绝率现在归零,所以控制也开始迅速向上调整许可率。在线路被再次充满时,到达速率可以再次很高并且将重复整个循环。
显然,这种效果的严重性取决于线路的数量和占用时间,并且具体地说,如果占用时间分布具有低方差(典型的是许多大众应答的情况),则这种效果的严重性更坏。可以设计控制参数,来为特定条件集给出较好的性能,但是控制可能不是可以有效地响应于任何预先未知的条件的通用控制。这种通用控制在使网络管理最小化、资源以及鲁棒性方面显然非常有利。
开环 过载的公共特性是负载的非常突然的增大,在极端情况下,这可以等同于呼叫率的阶跃增大。由于提供反馈的延迟,可能导致系统的下述问题仅在过载资源产生了拒绝请求的指示并在控制点处接收到这个指示时才激活控制。可能发生以下情况在控制接收到反馈并向许可率施加限制之前,下游资源中的消息/信号排队溢出。当存在大量流量源和控制点时,这将混合,因为需要在它们都可以施加限制之前向每一个提供反馈。这不仅是过载资源和居间网络上的开销,而且引入延迟。
一般原理 这里描述的方案通过监视请求到达控制(限制)点的速率并对称为控制速率的最大许可率进行调整来工作。可以利用任一种限制方法(例如,具有适当特性的漏桶算法)。漏桶控制系统的关键参数是漏率,对该参数的控制确定控制系统的行为。漏率设置的值是控制值。
当测量到的到达速率缓慢变化时,控制速率被设置为充分高于到达速率,使得拒绝请求的概率很小。可配置的参数确定控制速率大多少以及该概率的值。当到达速率开始更快地增大时,允许控制速率增大,但是增大速率受限。通常,所允许的增大速率是当前控制速率和测量到的许可率的函数,但是对于下面描述的特定实现,所允许的增大速率是线性函数。
概述 基于不连续的步骤之间的时间间隔上的测量和前一控制值,在这些不连续的步骤上进行对控制值的更新。在从步骤i到步骤i+1的长度为δt的时间间隔上,使测量到的平均许可率为γi(即,在控制已拒绝了任何请求之后),并令控制值为μi。则下一间隔的控制值被设置为 μi+1=min{f(γi),g(μi,δt)} 其中,f和g是满足下列条件的递增函数 ·对于固定的平均到达速率,f应当使拒绝一呼叫的概率足够低,即,低于对业务损耗的某些限制; ·函数g是两个自变量的递增函数,使得许可率可以随时间进展而增大。
数学术语“递增”函数如下定义。对于一个或更多个变量的函数,如果这些变量中特定的一个增大而其他变量保持恒定时,该函数的值增大或者保持相同,则这种函数被认为是随该特定变量递增。这隐含了如果同一变量减小,则函数的值减小或保持相同。如果多于一个变量的函数随每一个变量而递增,则该函数是递增的。对于多个变量的函数,如果这些变量中特定的一个增大而其他变量保持恒定时,该函数的值增大而不保持相同,则该函数随该特定变量严格递增。这隐含了如果同一变量减小,则函数的值减小而不保持相同。
可以使步骤间的时间间隔δt如下变化在到达速率变化不大时增大,而在到达速率快速增大时减小。这使得最大许可率可以与函数g所允许的一样快地增大。这可以通过在对控制的服务请求的到达计数达到指定阈值时或者在更新之间的时间达到指定最大时间δtmax时(无论哪个先出现),对控制速率进行从μi到μi+1的更新来实现。快的到达速率将导致由前一条件引起的控制更新,而慢的到达速率将导致由后者引起的控制更新,分别对应于δt的较小值和较大值。作为示例,已发现,如果两个函数都是线性的,则给出很好的性能,所以设置 μi+1=min{aγi,μi+cδt} 其中,分别将系数a和c称作“控制速率系数”和“增大系数”。
可以导出确定要针对下一控制速率μi+1应用哪个值的阈值时间。因此,使用上述表达式,条件为 μi+1=aγi,当aγi≤μi+cδt或者等价地δt≥(aγi-μi)/c时, μi+1=μi+cδt,当aγi≥μi+cδt或者等价地δt≤(aγi-μi)/c时, 应当注意,如果许可率接近恒定,使得对于两个连续的步骤i和i+1,对某些“小”值ε有|ri+1-ri|<ε占并且在步骤i应用μi+1=aγi,则对于下一步骤i+1有 (aγi+1-μi+1)/c<(a(ri+ε)-ari)/c=aε/c 这也是“小”的,使得δt可能大于该值,其中,再次应用 这说明对于缓慢变化的流量,控制速率保持不变。
实际上,还想要对控制值分别设置极限上界和下界(即,μmax和μmin),因此,还在上述更新之后应用以下调整 μi+1=min{max{μi+1,μmin},μmax) 示例实现 下面将参考图6中的非正式SDL(规范设计语言)符号对一示例实现进行描述(在本说明书的附录中给出了SDL符号的概要)。这定义了具有单个状态OPEN的称作“开环速率适配器”处理的单个处理,其通过信号传送与外部处理连接。具体地说,其必须与进行速率限制(拒绝请求)的控制器相连接,这里将其称作“限制器”。这里,将术语ControlRate用于最大控制值,并且其被限制器调整和使用。
开环速率适配器可以接收三个信号 RestartRateAdaptor其用于开始或重新开始处理并初始化所有的变量,传送ControlRate的初始值。
AdmitCommit其表示限制器已许可一请求。
ControlReject其表示限制器已拒绝一请求。
发送一个信号 UpdateControl其是限制器改变ControlRate的指示,ControlRate与该信号一起被传送。
使得更新(即,限制器改变ControlRate的指示)之间的时间间隔可以按最大长度UpdateIntervalMax改变。为了ControlRate可以与IncreaseCoeff所允许的一样快地增大,对(受控制之前的)到达进行监视并将其计数为ArrivalCount。还计算从上次更新起的时间UpdateInterval。因此,在UpdateInterval超过UpdateIntervalMax或者ArrivalCount超过ArrivalCountMax时,进行更新。
许可呼叫也被计数为AdmitCount。对于各更新时间,上一间隔的许可率被计算为 AdmitRate=AdmitCount/UpdateInterval 然后,可以对速率进行平滑以获得移动平均速率MeanAdmitRate。在这个示例实现中,使用具有系数pO(其中0<pO≤1)的几何平滑,其仅应用于减小速率,而不对增大速率进行平滑,以使得ControlRate可以快速增大 MeanAdmitRate=pO×AdmitRate+(1-pO)×MeanAdmitRate 然而,可选择对于增大或减小进行平滑,并且在任一情况下可以使用不同的系数(没有平滑与将系数设置为1相同)。
确定了MeanAdmitRate,现在可以确定下一时间间隔的ControlRate。如上所述,应用下式 ControlRate=min{ControlRateCoeff×MeanAdmitRate,ControlRate+IncreaseCoeff×UpdateInterval} 最后,将ControlRate限制在ControlRateMin与ControlRateMax之间。一旦进行了更新,就必须重置变量 ArrivalCount=0 AdmitCount=0 UpdateInterval=NOW 分别在表1和表2(见附录)中总结了在控制中使用的控制参数和动态变量,并且图6中的SDL指定了逻辑。
闭环 限制拒绝率单独用于调整控制许可率的控制方案的有效性的另一因素是过载目的地资源的容量可以极大且不可预知地变化。例如,语音呼叫可以指向单个终端线路或者具有数千条线路的应答中心。此外,呼叫的占用时间可以显著地变化。虽然这种方案不需要为了收敛到最佳许可率(R3)而知道目的地的容量,但是收敛速度通常不能与目的地容量已知的方案一样快。下面描述的“闭环”控制方案被设计成用于克服这种限制,在无需预先知道过载资源的容量的情况下提供快得多的收敛。
如上所述,对闭环控制方案的有效性的测量是它们收敛到目标率有多快。所描述的本发明使用了新的适应方式,使得快速且简单地实现(低开销)向目标率的收敛。
一般原理 在向网络资源提供请求的速率增大时,其利用通常增加。例如,对利用的测量可以是语音传输线路(电路)群中占用的线路的平均数或者CPU(处理器)的占用率和/或消息排队的长度。在利用增加时,资源(或者相关联的资源)通常具有通过向发送节点(例如,呼叫的发起者)并且还有可能向中间节点返回拒绝信号来明确地拒绝请求的能力。
对请求尝试的明确拒绝会消耗资源的一些容量。如果资源是处理器则将是这种情况。另一方面,例如当资源是可以各自为语音呼叫占用的线路(电路)群时,不需要用于信号拒绝的资源容量。
在任一情况下,拒绝请求的速率通常具有图3中示出的渐近行为。图3示出了在一节点处提供的呼叫的数量与拒绝的呼叫的数量之间的关系。可以示出直线渐近线的斜率(梯度)为 其中,r是用于拒绝一请求的工作量与用于接受一请求的工作量的比。应当注意关于该曲线的作为确定要描述的方案的收敛性的重要因素的下列特性 ·拒绝率的梯度总是小于s,并且是提供速率的递增函数; ·只要r严格为正(s>1),就存在提供速率的上限。超过该上限,系统进入不能再拒绝流量的“崩溃”状态; ·如果比率r=1,则s无穷大。实际上,要描述的方案不起作用,但是这将是很拙劣的设计系统,其中,拒绝需求的成本与接受需求的成本相同; 如果比率r=0(s=1),则实际上不存在所示出的提供速率的上限,并且曲线从不达到渐近线。
这种渐近行为是控制器“下游”的任一资源的特性。任意一个或者更多个这样的资源可能变成瓶颈(尽管可能性较小,但每次多于一个是可能的)。
最后一种情况,不需要资源容量来拒绝请求(通常称作“溢出”),通过被提供语音呼叫的线路群来例示,其中各呼叫对线路占用的时段为占用时间平均值。溢出率具有与溢出流量(厄兰)相同的渐进行为,并且在图2中例示,其中通过除以线路的数量来对提供的和溢出的流量进行归一化(因此,它们从不超过1)。这使得可以容易地看到曲线的形状如何随线路数量的改变而改变,但是应当注意,在每一种情况下都满足上面列出的性质。
图4示出了作为10条线路的提供速率和10秒的占用时间的函数的实际拒绝率。控制的目的是收敛到目标(或目的)拒绝率,在该示例中,目标拒绝率被设置为0.5呼叫/秒。这出现在等于目标拒绝率的恒定率的曲线与拒绝率曲线相交的地方。
基于在不连续的步骤之间的时间间隔上的测量和前一控制值,在这些步骤处进行对控制的更新。假定步骤i与i+1之间的平均提供速率(即,向过载资源发送呼叫的速率)被测量为γi,并且同一时间间隔的溢出(拒绝)率为ωi。那么第i+1次更新的控制速率被设置为 μi+1=max{γi+α(R-ωi),0} 即,这是期望对γi+1测量的,使得ωi+1是对称为目标率的控制参数R的近似。另一参数α是渐近线的梯度s的倒数,称为渐近系数。
图5例示了α=1但是其他值类似的特殊情况。如图5所示,可以通过从与当前提供速率相对应的溢出率曲线上的一点对向与渐近线相平行的线直到与目标拒绝率曲线(其采取与提供速率轴相平行的直线的形式)相交为止,来获得对控制速率的更新。与目标率曲线的交点与要施加给过载资源的下一控制值(即,提供速率)相一致。
可以表明,因为溢出率曲线的梯度总是正的并且小于1,所以无论是从目标率的上面还是下面,这种方法总是收敛的。理论上,更新速率不应是负的,但是因为测量到的速率经受随机可变性,所以需要考虑这种可能性。因此,在上式中应用下界0。
实际上,由于拒绝数量必须小于或等于发送数量,因此不期望从资源接收到的测量拒绝率大于向该资源发送的速率,所以可以强加大于零的下界。
μi+1=max{γi+α(R-ωi),R} 实际上,还想要对控制值μ分别设置极限上界和下界(即,μmax和μmin),因此,还在上述更新之后应用以下调整 μi+1=min{max{μi+1,μmin},μmax} 可以看到,收敛的速率将取决于目标拒绝率是多高以及起始点是多高。从目标拒绝率上方的收敛明显更快,这是因为在目标拒绝率上方时,拒绝率曲线的梯度比在目标拒绝率下方时更接近于渐近线的梯度。
上述方法必需通过精确地限定应当如何测量速率以及应当何时开始和停止控制来实现。
下面使用图7中的包括图7(a)并且在图7(b)和图7(c)中延续的非正式SDL(规范设计语言)来描述示例实现。在附录中给出了SDL符号的概要。在(附录中的)表3和表4中分别总结了所使用的控制参数和变量。
SDL定义了具有三种状态UNCONTROLLED、CLOSED2、CLOSED1的这里称作“闭环速率适配器”的处理。该闭环速率适配器通过信号传送与外部处理连接。具体地说,它必需与进行速率限制(拒绝请求)的速率控制器连接,将该速率控制器简称为“限制器”。这里,将术语ControlRate用于最大控制值,并且其被限制器调整和使用。
驱动闭环控制的以呼叫/连接请求拒绝或故障形式的反馈被称为“事件”。应当注意,这些事件指的不是本地限制器本身的拒绝而是“下游”(即,来自资源的)反馈。
在进行更新方面,限制(控制)被激活时使用的两种封闭状态CLOSED2和CLOSED1是相同的。使用两种状态的原因是要确保系统在返回UNCONTROLLED状态之前,在封闭状态中停留足够长的时段(由参数CLOSED1_Duration表示)。
控制器可以接收三个信号 RestartRateAdaptor其用于开始或重新开始处理并初始化所有的变量,传送ControlRate的初始值。
AdmitCommit其表示限制器已许可一请求。
EventReport其表示对一事件的接收。
控制器发送三个信号 StartControl其是启动利用ControlRate给出的最大速率的限制的指示,ControlRate与该信号一起被传送。
UpdateControl其是限制器改变ControlRate的指示,ControlRate与该信号一起被传送。
StopControl其是停止施加限制的指示。
在所有的状态中将许可的请求和事件分别计数为变量AdmitCount和EventCount,它们具有对应的移动平均速率MeanAdmitCount和MeanEventCount。允许对这些速率的更新之间的时间间隔(UpdateInterval)变化最大长度UpdateIntervalMax。这也是对ControlRate的更新之间的(变化的)时间间隔,但是仅在两种封闭状态中或者向它们的转变中进行这种变化。
在UNCONTROLLED状态中,在UpdateInterval超过UpdateIntervalMax时或者EventCount超过EventCountMax时进行对平均速率的更新。这种想法是为了快速响应事件速率的突然增大。因此,无论是何事件,速率都以时段UpdateIntervalMax定期进行更新,但是如果事件速率增大,则将根据EventCount,较快地强制更新。
在每次更新时,将上一间隔的许可率和事件速率计算为 AdmitRate=AdmitCount/UpdateInterval EventRate=EventCount/UpdateInterval 然后,对速率进行平滑以分别获得移动平均速率MeanAdmitRate和MeanEventRate。在这个示例中,在UNCONTROLLED状态中使用了具有系数pU的几何平滑 MeanAdmitRate=pU×AdmitRate+(1-pU)×MeanAdmitRate MeanEventRate=pU×EventRate+(1-pU)×MeanEventRate 在这些更新之后,如果MeanEventRate超过GoalEventRate,则根据上述方法来计算ControlRate ControlRate= max{MeanAdmitRate+AsymptoticCoeff×(GoalEventRate-MeanEventrate), GoalEventRate} 然后,通过与ControlRate的值一起发送StartControl信号来启动控制,并进入CLOSED2状态。在ClosedMacro中定义在两种封闭状态中使用的公用逻辑。这两种状态之间的差别在于它们的可能转变。
在ClosedMacro中,对速率的更新与UNCONTROLLED状态中的更新相似。差别在于允许几何更新系数的差值pC并且总是根据上述公式来进行对ControlRate的更新,导致生成携带该更新后的值的待发送的UpdateControl信号。下一动作取决于系统处于哪种封闭状态。
在CLOSED2状态中,将得到的MeanEventRate的值与称作LowerEventRate的参数进行比较。如果MeanEventRate较大(或相等),则不采取行动,并且系统保持在CLOSED2状态中。另一方面,如果MeanEventRate较小,则发生向CLOSED1状态的转变,并且该转变的时间被记录为CLOSED1_EntryTime。
如果在CLOSED1状态中,则再次将MeanEventRate与称作LowerEventRate的参数进行比较。这时,如果MeanEventRate较大(或相等),则系统回到CLOSED2状态,但是如果MeanEventRate较小,则进行测试以查看系统在CLOSED1状态中的持续时间是否大于参数CLOSED1_Duration。如果是这样,则通过向限制器发送StopControl信号来停止限制,并且系统进入UNCONTROLLED状态。
两种封闭状态的使用确保了系统在封闭状态中停留得“足够长”并且不过早地弹回UNCONTROLLED状态。
本发明的另一方面包括对限制监视到的事件速率的增强。对于许多系统来说,自动产生由事件构成的明确反馈。在某些应用中,必须要求这种增强,并且在这样做时将会有一些开销。为了提高后一种情况下的效率,可以仅请求许可的请求的子集的EventReport。下面将描述两种这样的方法,它们可以一起使用。它们都具有在封闭状态中时总是请求EventReport的性质。这在确保调整ControlRate时不使事件流变小得太多方面通常很重要,否则结果是引起统计偏差并且因此导致控制不稳定性。
在图7的SDL图中,以灰色表示这种增强。接收及发送请求的应用可以询问闭环速率适配器是否做出对事件报告的请求。这由信号ReqER_Query来表示。响应是携带称作ReqER_State的变量的信号ReqER_Resp,ReqER_State可以取具有显而易见的含义的两个值REQUEST或NO_REQUEST。
第一种方法是在测量到的许可率(MeanAdmitRate)大于控制参数阈值RequestEventRate时,简单地仅请求EventReport。在连接器0下的SDL中可以看到,如果MeanAdmitRate低于阈值,则ReqER_State被设置为NO_REQUEST。
否则,可以做出请求,并且这是应用第二种方法的情况。这种方法允许对事件报告请求的采样。每当已发送(许可)了特定数量的请求时请求EventReport。“特定数量”是称作ReqER_CountMaxCurrent的变量,并且利用变量ReqER_Count对可能的请求事件报告进行计数。当控制首先在UNCONTROLLED状态中启动时,ReqER_CountMaxCurrent被设置为控制参数ReqER_CountMax的值。例如,它可以是值5,使得仅针对每5个许可的请求中的1个请求事件报告。但是一接收到EventReport,ReqER_CountMaxCurrent就被设置为1,使得针对每个许可请求事件报告。时间间隔ReqER_IntervalMax用于回到采样的请求。在UNCONTROLLED状态中无论何时接收到ReqER_Query,首先进行速率阈值测试,如上述第一种方法中所述。如果事件请求是可能的,则ReqER_Count增加1,然后与ReqER_CountMaxCurrent进行比较。如果计数已达到这个限制,则通过将ReqER_State设置为具有值REQUEST并发送信号ReqER_Resp来进行请求,并且把计数重置为零。另外,进行检查,以查看从接收上一事件报告起的时间是否大于ReqER_IntervalMax。如果是这样,则将ReqER_CountMaxCurrent的值重置为较大的值ReqER_CountMax,以再次开始采样。
组合的开环和闭环控制 可以把上述开环控制和闭环控制的新方法有利地结合为单个控制方案,从而获得增多的益处。
原理是相同的,但是对两个方法的结合包括一些改变。开环方案仅具有限制性控制总是被激活的一种行为(状态),然而,对于闭环方案,限制性控制可以不被激活或者被激活(封闭型行为)。综合控制方案具有实质上具有两种行为的控制开环行为和闭环行为,但是,与闭环布置不同的是,其总是被激活,所以限制器总是能够拒绝请求。
示例实现 使用图8中的包括图8(a)并且在图8(b)和图8(c)中延续的SDL来描述示例实现。在表5和表7中分别总结了所使用的控制参数和变量。
根据本发明的另一方面的处理称为“速率适配器”。速率适配器具有三种状态OPEN、CLOSED2以及CLOSED1,分别与开环方案的单个状态和闭环方案的两种封闭状态相似。
可以接收到的信号集是开环方案和闭环方案接收到的信号集的并集。发送的信号仅仅是开环方案的那些信号。这是因为控制从不启动或停止,因此不需要StartControl和StopControl。
OPEN状态类似于来自上述开环方案的OPEN状态与来自上述闭环方案的UNCONTROLLED状态的混合。然而,根据综合控制方案,允许更新时间间隔在各状态中不同,使得具有OpenUpdateIntervalMax和ClosedUpdateIntervalMax。
特定示例应用 在下面示出的示例中,参照图9到图12,总体布置由向过载资源/节点传送消息(请求)或尝试向过载资源/节点传送信息(请求)的许多流量源节点(它们自身可以对来自别处的流量进行中继,而不必是流量的起始源)组成。每一种控制(开环或闭环)具有三个主要功能 ·监视控制许可的速率γ(由M表示); ·更新控制速率μ(由U表示); ·通过应用速率控制算法来限制流量(由R表示)。
这些控制功能可以在节点两端被复制,并且可以设置在源节点处或过载节点处。
监视到的许可率可以是例如在一个或更多个源节点处监视到的对于过载资源来说许可的总速率的一部分,或者是例如在过载节点处监视到的总许可率的一部分。类似地,可以按某些方式在许多限制点之间分配通过进行更新而导出的控制速率。
在下面的表中示出了实际网络协议应用的示例 表控制的示例应用,包括源节点和过载节点功能以及协议开环速率控制 可以将所有的开环功能共同地设置。这在图9和图10中示出,其中,图9示出了将所有的功能设置在过载点处的开环控制,图10示出了将所有的功能设置在源处的开环控制。作为另一种选择,可以分离地设置这些功能,例如,过载节点可以监视许可率并向源节点传送源控制速率。
闭环速率控制 图11示出了闭环功能在源与过载点之间分开的布置。
综合闭环和开环速率控制 可以按各种方式来构造组件功能。作为示例,图12示出了所有的开环功能设置在源处而闭环功能在过载点与源之间分开。开环和闭环控制方案可以在网络中的不同点处串联组合或在单个点处组合。如果施加在网络中的同一点处,则控制值取各方案所指示的值的最小值。
根据本发明,可以通过除拒绝率自身之外还测量向过载资源发送的速率并使用上述算法来调整向过载资源发送的速率,来获得向目的(目标)拒绝率R的更快收敛。具体地说,该算法利用了拒绝率的渐近行为。选择最小拒绝率确保目标资源具有高的利用等级,从而提高网络的效率。
上述观点起源于控制电话网络中的过载的领域。因此,在这种环境中进行了大量的描述。然而,在本发明的范围内稍加修改就可以使这里所阐述的本发明应用于广泛的业务和技术,并且可以有效地应用于较新的业务和技术。尽管上面主要针对智能网络来描述本发明,但是本发明普遍适用于容易发生过载的资源(包括处理器)以及其他通信技术领域,例如,ATM、ISUP、SIP、HTTP以及网络协议。具体地说,所述开环方案潜在地适用于对任意消息流的控制。
表 表1在开环速率适配器的SDL定义中使用的控制参数 表2在开环速率适配器的SDL定义中使用的变量 表3在闭环速率控制的SDL定义中使用的控制参数 表4闭环速率控制的SDL定义中使用的变量 表5在综合闭环和开环速率控制的SDL定义中使用的控制参数 表6在综合闭环和开环速率控制的SDL定义中使用的变量
参考文献T W Abernethy and A C Munday,‘Intelligent Networks,standardsand services’,BT Technology JournalNetwork intelligence,Vol.13 Nol2-April 1995.P M Williams and M J Whitehead,‘Adaptive rate-based controls forgeneric network overload control’,BTTJ paper.ITU-T,Q.1214Distributed Functional Plane for Intelligent NetworkCS-1,§5.4.2 Call Gap Capability,§6.4.2.9 Call Gap;Q.1224DistributedFunctional Plane for Intelligent Network Capability Set 2,§11.4.2 Call gapcapability,§12.4.3.12 Call Gap.‘A method of controlling overload in a telecommunications network’,patent applicationEP 93309185.2;priority date18 Nov 1993. 缩写 ATM 异步传输模式 CISL 公共智能业务层 HTTP 超文本传输协议 IDP 初始检测点 INAP 智能网络应用协议 ISUP ISDN用户方 SDL 规范设计语言 SIP 会话发起协议 SSP 业务交换点 SCP 业务控制点 SDL (规范设计语言)符号 非正式地使用SDL。使用传统的SDL符号,这些符号包括 当前状态 宏的开始 宏的结束 宏
权利要求
1.一种用于控制通信系统中到一节点的消息的流量的控制器,其中,该控制器包括
拒绝监视器,用于监视所述节点的消息拒绝率;
许可监视器,用于监视所述控制器向所述节点传送的消息的速率;以及
控制装置,用于基于监视到的拒绝率和监视到的许可率来控制向所述节点传送消息的速率,使得所述拒绝率趋向目标值。
2.根据权利要求1所述的控制器,其中,所述控制装置将传送消息的最大速率限制在控制值。
3.根据权利要求2所述的控制器,其中,所述控制值是相对于监视到的向所述节点传送的消息的速率来计算的。
4.根据权利要求2或3所述的控制器,其中,所述控制值是相对于监视到的所述节点接受的消息的速率来计算的。
5.根据权利要求2、3或4所述的控制器,其中,所述控制值是正的。
6.根据任一前述权利要求所述的控制器,其中,如果监视到的拒绝率在所述目标值以下,则放松对到所述节点的消息的流量的控制。
7.根据任一前述权利要求所述的控制器,其中,如果监视到的拒绝率在所述目标值以下,则增大所述控制值。
8.根据任一前述权利要求所述的控制器,其中,如果监视到的拒绝率在所述目标值以上,则减小所述控制值。
9.根据任一前述权利要求所述的控制器,其中,所述向所述节点传送消息的速率被定期更新。
10.根据权利要求9所述的控制器,其中,更新时段随所述节点接收到的消息的速率的改变率而变化。
11.根据权利要求9或10所述的控制器,其中,所述更新时段作为从上次更新起的时间和从上次更新起接收到的拒绝的数量的函数而变化。
12.根据任一前述权利要求所述的控制器,该控制器由下式决定
μi+1=max{γi+α(R-ωi),0},其中,
γi是在第一时段中所述控制器传送的消息的速率;
ωi是在所述第一时段中所述节点的消息拒绝率;
μi+1是在所述第一时段之后的第二时段中,所述控制器传送的消息的速率的上限;
R是控制参数,其等于所述目标值;并且
α是渐近系数。
13.一种被设置用于控制通信系统中到多于一个节点的消息的流量的控制器,该控制器包括
拒绝监视器,用于监视所述多于一个节点中的每一个的消息拒绝率;
许可监视器,用于监视所述控制器向所述多于一个节点中的每一个传送的消息的速率;以及
控制装置,用于基于针对各节点的监视到的所述拒绝率和该节点的监视到的许可率来控制向所述多于一个节点传送消息的速率,使得各节点的所述拒绝率趋向目标值。
14.根据权利要求13所述的控制器,其中,各节点与单独的目标值相关联。
15.一种通信系统,该通信系统包括根据任一前述权利要求所述的控制器。
16.根据权利要求15所述的通信系统,其中,所述消息拒绝率与所述节点的渐近函数传送的消息的速率有关,并且其中,所述渐近系数α是该函数的渐近线的梯度s的倒数。
17.根据权利要求15或16所述的通信系统,其中,所述渐近线的梯度s由下式给出
其中,r是所述节点拒绝一消息所需的工作量与该节点接受一消息所需的工作量的比。
18.一种通信系统,该通信系统包括多个根据权利要求1或14中的任一项所述的控制器,所述控制器用于控制向所述节点传送的消息的许可率,其中,各控制器包括拒绝监视器,该拒绝监视器用于监视所述节点对所述控制器向该节点传送的消息的拒绝率。
19.一种用于控制通信系统中到一节点的消息的流量的方法,该方法包括以下步骤
监视所述节点的消息拒绝率;
监视所述控制器向所述节点传送的消息的速率;以及
基于监视到的所述拒绝率和监视到的许可率来控制向所述节点传送消息的速率,使得所述拒绝率趋向目标值。
20.一种用于控制通信系统中从多个源到一节点的消息的流量的方法,该方法包括以下步骤
监视所述节点对来自各源的消息的消息拒绝率;
监视从各源向所述节点传送的消息的速率;以及
基于监视到的所述拒绝率和监视到的许可率来控制从各源向所述节点传送消息的速率,使得所述拒绝率趋向目标值。
21.一种用于控制通信系统中到多于一个节点的消息的流量的方法,该方法包括以下步骤
监视所述多于一个节点中的每一个的消息拒绝率;
监视控制器向所述多于一个节点中的每一个传送的消息的速率;以及
基于针对各节点的监视到的所述拒绝率和该节点的监视到的许可率来控制向所述多于一个节点传送消息的速率,使得各节点的所述拒绝率趋向目标值。
22.根据权利要求19至21中的任一项所述的方法,该方法包括以下步骤基于监视到的所述拒绝率和监视到的许可率来对控制最大平均许可率的控制值进行定期更新。
全文摘要
本发明涉及通信网络的交换中的流量控制。提出了一种用于控制通信系统中到一节点的消息的流量的控制器,其中,该控制器包括拒绝监视器,用于监视所述节点的消息拒绝率;许可监视器,用于监视所述控制器向所述节点传送的消息的速率;以及控制装置,用于基于监视到的拒绝率和监视到的许可率来控制向所述节点传送的消息的速率,使得拒绝率趋向目标值。所述控制装置将传送消息的最大速率限制在控制值。
文档编号H04L12/54GK101199167SQ200680016176
公开日2008年6月11日 申请日期2006年5月12日 优先权日2005年5月13日
发明者菲利浦·马克·威廉斯 申请人:英国电讯有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1