新颖的带宽管理算法的制作方法

文档序号:7761858阅读:317来源:国知局
专利名称:新颖的带宽管理算法的制作方法
技术领域
本发明一般地涉及通信系统,更具体地涉及带宽管理机制。
背景技术
企业呼叫系统或者呼叫中心可以在给定一天中接收数以千计的呼叫。这些呼叫可 以在多个分散的位置被接收。去往这种位置或目的地的每个呼叫都需要来自承载呼叫的网 络的特定量的带宽。然而,在一个或多个通信链路中,网络带宽通常是有限的。因此,对于每 个呼叫,网络中的系统或部件必须确定是否存在足够的未用或可用带宽来处理每个呼叫。本领域已知的一些配置可以帮助带宽的分配或分布。更具体地,已经开发出了帮 助管理具有有限带宽的通信链路的各种方法和设备。在一些配置中,中心系统维护针对给 定通信链路上的可用带宽量的计算或估计结果。由于每个呼叫控制器都接收针对新呼叫的 请求,所以呼叫控制器向中心系统查询特定通信链路上是否存在充足的带宽来继续电话呼 叫。可以明白,这种集中方式相对于分散方法存在大量缺点。例如,由于网络随着多个呼叫 控制器和多个通信链路而变得更加多样,所以从中心系统请求针对每个链路的带宽信息的 处理变得低效,并且造成了过多的网络流量。另外,如果中心系统变得无效或者不可用,则 网络中没有其他部件可以确定是否可获得所期望的带宽。另外,当系统或网络变大时,可扩 展性的问题可能会出现。

发明内容
美国专利申请序列号No. 12/554,714(其全部内容通过参考结合于此)描述了一 种用于带宽分配的改进系统和方法,其中多个呼叫处理服务器或者模块中的每一个维护其 自身的针对特定通信链路上可用带宽的记录。具体地,‘714专利申请描述了分布式带宽管 理机制,其中,每个呼叫处理服务器都拥有特定通信链路上的可用带宽的总量中的一部分。 每个呼叫处理服务器可以基于该部分可用带宽量来管理呼叫。一般,每个呼叫处理服务器 可以通过仅参考其被分配的带宽来在给定通信链路上对呼叫进行路由。针对特定通信链路向所有呼叫处理服务器的分配的带宽的量从来不会超过该通 信链路上可用的总带宽。这保证了只要每个呼叫处理服务器没有过度使用其自身分配的带 宽,则充足数量的带宽将一直在该通信链路上可用。‘714专利申请还提出了使得每个呼叫 处理服务器向请求呼叫处理服务器分配其自身的带宽的一部分的机制。将会明白,‘714专利申请中描述的方案相对于以上描述的集中式方法存在一些改 进,一部分的原因是每个成员都可以从任意其他成员请求带宽,而不是只能从中心系统请 求带宽。然而,该方案并不是在所有情况中都最佳或者都期望。例如,在一些情况中呼叫处 理服务器或者模块可能被针对带宽的请求淹没,从而消耗了处理资源。例如,针对额外带宽 的请求可能需要被传送到若干个成员以聚集充足的带宽,这将不是系统资源的期望使用。 另外,呼叫处理服务器之间对所指派带宽的重新分配或共享会增加服务器间的信令,这可 能是成本高昂并且是有些低效的。当服务器在地理上分散(例如,横跨大洋的链路连接地理上分散的服务器)时后者尤其有问题,因为用于带宽请求和分配信令的额外带宽可能会 变得惊人地昂贵。本发明的实施例提出了用于利用呼叫控制服务器的分布组来管理有限带宽的新 颖的算法或算法组。本发明的一个方面在于,提供一种针对‘714专利申请提出的算法的替代算法。特 别地,远程位置的总带宽没有在能够将呼叫路由到远程位置的各种呼叫控制服务器之间 “分割”。相反,每个呼叫控制服务器维护其自身的针对远程位置处可用的总带宽的独立账 目(accounting),并且每个呼叫控制服务器将基于亲自负责路由到远程位置的呼叫来增加 其自身的带宽利用率的账目。所以,每个控制服务器独立追踪其造成消耗的带宽量。在周期性的基础上或者在预定的触发事件发生之后,审核处理被执行,从而呼叫 控制服务器共享带宽信息,以通知所有其他的呼叫服务器它们当前已经针对当前带宽利用 率计算的结果。这使得每个呼叫控制服务器重新对它的针对远程位置的带宽利用率的账目 进行同步。这使得每个呼叫控制服务器能够确切地知道过去某时刻的带宽利用率。每个呼 叫控制服务器的带宽利用率的账目的精确度将会随着审核处理被执行的频率而改变,但是 本发明不限于任意特定的周期。通过很好地获知带宽利用率,每个呼叫控制服务器被准许独立地控制呼叫并维护 其自身的表。这从根本上意味着,当呼叫控制服务器之一用完所分配的带宽时,呼叫控制器 将不需要与其他呼叫控制器“共享”带宽。尽管存在当前带宽利用率的某种残留的不确定 性,但是通过巧妙地选择审核处理发生的频率可以使不确定性最小化。当选择该频率时可 以考虑的一个因素是针对远程位置的呼叫率(call rate)(即,针对将远程位置连接到更大 的通信网络的特定通信链路的呼叫率)。另外,通过不需要“共享”带宽的节省,可以胜过所 述不确定性。本发明的另一方面提供了一种使呼叫控制服务器从它们的分布式带宽管理模式 切换到临时的单一权威控制带宽管理模式的机制。当确定带宽利用率超过特定阈值(例 如,总的可用带宽的90% )时,呼叫控制服务器可以协同转换到单一权威控制带宽管理模 式。在单一权威控制带宽管理模式中,单一的呼叫控制器变得负责在具有有限带宽的通信 链路上对来自/去往远程位置的其他呼叫进行路由。如果任意的其他呼叫控制服务器需要 将呼叫路由到远程位置,则该呼叫控制服务器将向负责该远程位置/通信链路的权威呼叫 控制服务器转发请求。这种单一权威控制操作模式被保持有效,直到带宽利用率降到第二阈值(其不必 与第一阈值相同)以下。一旦带宽利用率降到该阈值以下,则分布式带宽管理协议可以被 恢复。根据本发明的至少一个实施例,提供了一种方法,该方法一般包括在第一服务器处接收来自通信设备的在通信链路上建立通信会话从而利用该通 信链路的带宽的请求,其中所述通信链路包括固定的可用带宽;使得通信设备在通信链路上建立通信会话;通过第一服务器更新本地维护的控制表中的针对通信链路的可用带宽的账目;以 及通过第一服务器执行同步处理,其中在同步处理期间,第一服务器与第二服务器 共享第一服务器的针对通信链路的可用带宽的账目,其中第二服务器也能够在通信链路上建立通信会话,其中在以分散的带宽管理模式进行操作的同时并且在同步处理期间以外的 时间,第一服务器不与第二服务器共享第一服务器的针对通信链路的可用带宽的账目,并 且第二服务器不与第一服务器共享第二服务器针对通信链路的可用带宽的账目。如这里所使用的,短语“至少一个”、“一个或多个”、以及“和/或”是在操作上连接 或者分离的开放式表达方式。例如,表达方式“A、B、以及C中的至少一个”、“A、B、或C中的 至少一个”、“A、B、以及C中的一个或多个”、“A、B、或C中的一个或多个”、以及“A、B、和/或 C”中的每一种表达方式都是指以下内容中的任意一项只有A、只有B、只有C、A和B —起、 A和C 一起、B和C 一起、或者A、B、和C 一起。术语“一”或者“一个”实体是指一个或多个实体。这样,术语“一”(或者“一个”)、 “一个或多个”、以及“至少一个”在本文中可以被相互交换地使用。还应该注意,术语“包 括”、“包含”、以及“具有”可以被相互交换使用。本文中使用的术语“自动”及其变型是指任何处理或者操作被执行时在没有实质 的人为输入的情况下进行。然而,即使处理或者操作的执行使用了实质或者非实质的人为 输入,如果该输入是在处理或者操作的执行之前接收的,则处理或操作也是自动的。如果人 为输入会影响处理或操作将被如何执行,则这种输入被认为是实质的。同意处理或者操作 的执行的人为输入不认为是“实质的”。本文中使用的术语“计算机可读介质”是指参与将指令提供到处理器以供执行的 任意可感知介质。这种介质可以具有许多形式,这些形式包括但不局限于非易失性介质、易 失性介质,以及传输介质。非易失性介质例如包括NVRAM,或磁盘或光盘。易失性介质包括动 态存储器,例如内存。通常形式的计算机可读介质例如包括软盘、柔性盘、硬盘、磁带,或其 他任何磁介质、磁光介质、CD-ROM、其他任何光介质、穿孔卡、纸带、具有孔图案的其他任何 物理介质、RAM、PR0M,和EPROM,FLASH-EPR0M,诸如存储卡的固态介质、其他任何存储器芯片 或盒,或计算机可从中进行读取的其他任何介质。当计算机可读介质被配置为数据库时,应 当理解该数据库可以是任意类型的数据库,例如关系型、层次型、面向对象型,等等。因此, 认为本发明包括可感知存储介质和现有技术认识的等同及后续介质,其中存储了本发明的 软件实现。 本文中所使用的术语“确定”、“计算”和“运算”及其变型是可互换使用的,且包括 任意类型的方法、处理、数学运算或技术。本文中所使用的术语“模块”是指任意已知或后来开发的硬件、软件、固件、人工智 能、模糊逻辑,或硬件和软件的结合,其能够执行与该元件相关联的功能。而且,虽然根据示 例性实施例描述了本发明,但应当明白本发明的各个方面可以被单独要求保护。


图IA是根据本发明的至少一些实施例的通信系统的框图;图IB是根据本发明的至少一些实施例的通信系统中的通信的框图;图IC是根据本发明的至少一些实施例的通信系统中的通信的框图;图2是根据本发明的至少一些实施例的一系列服务器的框图;图3是根据本发明的至少一些实施例的被利用的数据结构的框图;图4是示出根据本发明的至少一些实施例的一般带宽管理方法的流程图;以及
图5是示出根据本发明的至少一些实施例的管理带宽利用率的方法的流程图。
具体实施例方式出于说明的目的,阐述了大量细节以提供对本发明的透彻理解。然而应该明白,本 发明可以在没有本文中阐述的具体细节的情况下通过各种方式实现。下面结合示例性通信系统描述本发明。尽管例如适合与使用(一个或多个)服务 器或(一个或多个)数据库的系统一起使用,但是本发明不限于与任意特定类型的通信系 统或者系统元件的配置一起使用。本领域技术人员将认识到,所公开的技术可以被用在任 意的期望管理具有有限的带宽可用性的一个或多个通信链路上的带宽的环境中。为了避免 不必要地模糊本发明,下面的描述省去了可以以框图形式示出、是公知的,或以其他方式概 括的公知结构、部件和设备。现在参考图1A,示出了通信系统IOOa的实施例。包括在通信系统IOOa中的若干部 件可以是硬件、软件、或者硬件和软件的组合。根据一些实施例,提供了多个服务器l^a-N。 服务器112 —般可操作用来管理通信终端(例如,电话、计算机、膝上型计算机、服务器、蜂 窝电话等)之间的呼叫和其他带宽消耗活动(例如,虚拟专用网络(VPN)链路、互联网电话 (VoIP)呼叫、视频呼叫、数据呼叫、多媒体通信会话等)。一般来说,每个服务器112可以为很多不同的分支l(Ma-M管理带宽消耗活动。将 分支104连接到企业通信网络116的一个或多个通信链路可以包括有限的可用带宽。根据 本发明的至少一些实施例,分支104和服务器112之间的本地通信网络108可由网络服务 提供商(例如,互联网服务提供商(ISP))拥有和运营。任意分支104和通信系统IOOa其 余部分之间的可用带宽量可以由企业网络的管理者或者企业从网络服务提供商处购买。根据本发明的至少一些实施例,企业可以选择只购买固定量的带宽,以最小化运 营成本。这使得穿过网络108并终止于分支104的通信链路的可用带宽有限。尽管多个呼 叫和其他带宽消耗活动可以在该通信链路上被同时建立,但是通信链路上的可用带宽的总 量是有限的。这意味着可以在通信链路上被同时建立的带宽消耗活动的总数目有限。因此, 服务器Ilh-N适于根据分散式管理模式或者单一权威管理模式(singleauthoritative management mode)来管理这些不同的通信链路上的带宽。根据本发明的至少一些实施例,服务器112的数目不等于分支104和/或网络108 的数目。具体地,分支和本地通信网络的数目M可以大于服务器的数目N。例如,图IA示出 了与本地分支104M和l(Mc通信的服务器112N。然而这不是必须的,并且可以存在这样的 系统配置其中服务器的数目N等于或者大于分支和本地网络的数目M。分支104的数目 也可以大于本地网络108的数目,这意味着单个本地网络108可以服务于多于一个的分支 104。分支104可以包括诸如电话、计算机、膝上型计算机之类的一组多个通信设备。例 如,分支104可以是呼叫中心的部分,或者是企业网络的站点。分支104可以是互联网协议 (IP)地址或者电话号码的集合。分支可以以用户级交换机(PBX)为特征,也可以不以PBX 为特征。没有PBX的位置只可以通过IP链路访问。根据一些实施例,分支可以部分地通过 中心网络116被访问。根据其他实施例,分散式网络被提供,其中服务器可以在不调用另一 个服务器的功能的情况下直接访问任何其他分支。例如,第一服务器11 可以适于经由网络116和108b将呼叫路由到第二位置或分支104b,而不必调用第二服务器112b。网络108a_M或116可以是容许分支l(Ma_M和服务器Ilh-N之间的数据通信的任 意可信或不可信网络。一般,网络IOSa-M或116可以包括任意类型的已知通信介质或者通 信介质的集合,并且可以使用任意类型的协议来传输消息。网络可以包括有线和/或无线 通信技术。互联网是构成IP网络的通信网络的示例,其中IP网络包括通过很多电话系统 和其他装置连接的遍布全世界的很多计算机、计算网络、以及其他通信设备。示例性网络的 其他示例非限制性地包括普通老式电话系统(POTS)、综合业务数字网(ISDN)、公共交换电 话网(PSDN)、局域网(LAN)、广域网(WAN)、会话发起协议(SIP)网、蜂窝网、以及本领域已知 的任意其他类型的分组交换或电路交换网。另外可以明白,网络IOSa-Ml或116不需要被限 制于任意一种网络类型,相反可以包括很多不同网络和/或网络类型。另外,网络IOSa-Ml 或116可以包括诸如同轴电缆、铜质电缆/电线、光纤电缆、用于发送/接收无线消息的天 线、以及它们的组合之类的很多不同的通信介质。在图IA中,来自一个或多个分支104处的一个或多个IP地址的针对带宽的请求 或电话呼叫可以被协调。例如,可能期望对第一分支10 进行电话呼叫。请求可以由第二 服务器112b或者第N服务器112N在网络116上发送至第一服务器11加。然而,在允许呼 叫之前,期望请求服务器确定第一网络108a是否具有充足的带宽来支持呼叫,这常常要求 请求服务器对将第一分支10 连接至通信系统IOOa其余部分的通信链路上的可用带宽有 某种估计。根据各种实施例,试图建立呼叫连接的服务器112可以在进行呼叫之前咨询本 地存储并维护的控制表来确定是否有充足的带宽可用。根据其他实施例,权威模式被提供, 其中试图建立呼叫连接的服务器112在完成呼叫之前向权威服务器咨询期望的通信链路 上的带宽可用性。在图IB中,通信被根据本发明的至少一些实施例建立。特别地,通信被发射器 116b发送至接收器116a。通信被通过服务器112b,但不通过服务器112a,路由穿过网络 100b。图IB中的通信可以根据下面进一步描述的分布式带宽分配方法被路由。在图IC中,通信被根据本发明的至少一些实施例建立。特别地,通信被发射器 116b发送至接收器116a。通信被通过服务器112b和112a,路由穿过网络100c。图IC中 的通信可以根据下面进一步描述的权威带宽分配方法被路由。将会明白,尽管图IB和IC 中只示出了两个服务器112,但是任意服务器112都可以被连接至若干其他服务器112。另 外,连接至多个分支104或者服务器112的服务器112可以根据下面将进一步讨论的分散 的带宽管理模式或者权威带宽管理模式来管理去往每个位置的通信。现在参考图2,将描述根据本发明的至少一些实施例的服务器Ilh-N的额外细 节。根据一些实施例,每个服务器112是在本公开中的其他部分描述并且在本领域已知的 计算机系统。服务器112可以具有可以作为计算机模块执行的一个或多个部件。计算机模 块可以根据例如存储在计算机可读介质上的指令执行,本文中公开的其他方法和算法也一 样。服务器112可以包括但不限于呼叫处理模块208和本地控制表212中的一个或多个。呼叫处理模块208被服务器112用来管理或者控制针对服务器112的呼叫。呼叫 处理模块208可以接收来自服务器或者分支104的IP地址的针对电话呼叫的请求以及针 对其他类型的带宽消耗活动的请求。呼叫处理模块208可以根据需要对这些请求进行路 由,以完成呼叫和其他带宽消耗活动。然而,根据各种实施例,呼叫处理模块208首先确定去往目的地站点的路径是否具有充足的带宽来支持呼叫或带宽消耗活动,例如,横跨源和 目的地位置的链路是否具有充足的带宽来支持通信。例如,根据至少一种操作模式,请求服 务器112的呼叫处理模块208可操作用来检查来自发起站点的链路和去往目的地站点的链 路二者上的带宽。根据至少另一种操作模式,请求服务器112的呼叫处理模块208检查来自 发起站点的链路上的带宽,而不检查去往目的地站点的链路上的带宽。如果一个或多个通 信链路当前不具有充足数量的可用带宽来支持呼叫和带宽消耗活动,则呼叫处理模块208 可以拒绝进行呼叫或者完成带宽消耗活动。在一些实施例中,呼叫处理模块208还可充当 群组管理者,或担当权威性的角色,如下面进一步描述的。根据进一步的实施例,呼叫处理 模块208可以被配置为基于预定的标准从去往目的地位置的均具有充足的带宽来支持通 信的若干路由中进行选择,如本领域技术人员将会明白的。控制表212可以被呼叫处理模块208用来存储使得呼叫处理模块208能够确定是 否存在充足的带宽可用来进行或者接受呼叫或者允许带宽消耗活动被执行。对于任意给定 的服务器112,控制表212中的一些信息可以基于由本地呼叫处理模块执行的活动被维护。 该信息可以在同步步骤期间被与其他服务器中的其他表同步并调整一致(例如,第一服务 器11 可以与所有其他服务器12b-N同步)。当同步被触发时,每个服务器Ilh-N的表 212中的信息可以根据在过去的某个时间(即,当同步被发起时)针对给定通信链路的已知 利用率数据来更新。根据至少一些实施例,在同步之后,每个服务器112—般继续基于服务 器112已知的活动来更新控制表212中的信息,直到另一个同步发生为止。另外,根据本发 明的至少一些实施例,各种其他数据可以被提供在控制表212中。现在参考图3,将讨论根据本发明的至少一些实施例的控制表212的额外细节。一 般,通信系统100中的每个服务器1 Ih-N维护并控制其自身版本的控制表212,这使得每个 服务器112能够单独监控并协调大量通信链路上的带宽分布。根据本发明的至少一些实施例,带宽管理信息可以被维护在每个控制器112的控 制表212中。维护在给定控制表212中的控制信息可以包括数据字段304、308、312、316、 320、324、328、332、以及336。可以存在包括类似或不同种类的比图3中所示的字段更多或 更少的字段。将会明白,数据字段的数目可部分地取决于系统中存在的位置(即,用来建立 通信链路的分支104和通信网络108)以及服务器112的数目,因为网络中的每个服务器 112都可以由一个或多个数据字段代表。根据一些实施例,一个或多个数据字段还可以代表 网络,例如,网络108a-M或116。根据本发明的至少一些实施例,最大带宽字段304、308、312、以及316反映了与各 个位置和/或这些位置的通信链路相关联的最大带宽。另外,根据本发明的实施例,已用带 宽字段320、324、328、以及332存储针对相应的一个或多个位置和/或这些位置的通信链路 的当前本地已知或者估计出的带宽值。根据一些实施例,当呼叫或者其他带宽消耗活动在 某个位置处被开始或者完成时,被用来建立该呼叫或带宽消耗活动的服务器112可以被配 置为更新对应于呼叫方和目的地位置的适当的已用带宽字段,如下面将进一步描述的。根 据进一步实施例,服务器112还可以在同步处理期间更新适当的已用带宽字段。同步数据336可以被维护在控制表212中,或者被维护在每个服务器Ilh-N上的 其他位置。同步数据336可以包括与如下事项相关的信息同步消息的生成和接收,这些消 息何时应该被发送(例如,同步处理和/或将触发同步处理的事件之间的周期性),这些消息何时应该被期望来自其他服务器112,和/或当同步消息被服务器112接收时应该由服务 器112执行的步骤。同步消息还可以在带宽信息的“审核”期间在服务器112之间被共享, 并且将在下面进一步详细说明。将会明白,其他值、测量结果、以及计算结果可以被存储在控制表212中。例如,每 呼叫带宽,即每个呼叫或带宽消耗活动所需的带宽的量也可以被提供在控制表212中。每 呼叫带宽可以包括每个呼叫所使用的带宽的平均量,或者可以表示呼叫所需的最高历史带 宽。针对特定位置或者服务于该位置的通信链路的诸如抖动、延迟、以及数据包丢失之类的 服务质量(QoS)信息也可以被存储在控制表212中。当确定特定带宽管理阈值时(例如, 当确定是否在单一权威带宽管理模式和分散的带宽管理模式之间进行切换时),QoS信息 可以被利用并参考。另外,一些控制信息可以是具有稳定值的静态信息,而其他控制信息是 动态的。动态信息可以被周期性地(例如,每天、每小时等)计算出来,或者可以被响应于 事件(例如,新呼叫被接收到,新成员加入服务器群组等)而计算出来。如果新服务器或设 备在网络中被建立,则本发明的实施例预期经由一个或多个同步消息在设备或链路的控制 下发送与设备或链路有关的信息。现在参考图4,将描述根据本发明的各种实施例的预期一般带宽管理的算法。尽管 图4在呼叫被进行的背景下示出,但是应该明白,该方法一般可以应用于任何带宽消耗活 动。根据本发明的实施例,该方法开始于事件在服务器112处发生(步骤404),其中该事件 可以是以下事件中的一项或多项呼叫被请求、针对带宽变化的请求、呼叫被断开、或者用 于同步的时间、条件、或者请求发生。如果针对新呼叫的请求由第一服务器112请求,则第一服务器112最初可以验证 存在充足的发起带宽来进行呼叫(步骤408)。例如,服务器112可以验证在请求分支104 和控制目的地分支104的服务器112之间的任意点处可获得充足的可用带宽。由于第一服 务器112是外发代理服务器(outbound proxy),所以第一服务器一般对于发起链路是权威 的,所以可以访问发起带宽。如果不能获得充足的发起带宽,则第一服务器112可以禁止呼 叫(步骤420),然后等待另一个事件(步骤442)。如果可获得充足的发起带宽,则第一服务器可以评估分散操作模式还是权威操作 模式被针对目的地使能(步骤41幻。更具体地,通过确定哪一种模式被使能,第一服务器 112可以确定是在部分地负责管理呼叫目的地处带宽的权威服务器112的帮助下还是不需 要权威服务器112的帮助来对呼叫进行路由。在这样做的过程中,第一服务器112可以咨 询它的控制表212来确定应促使第一服务器根据权威操作模式来对呼叫进行路由的阈值 或者其他条件是否已经被触发。阈值或条件可以对应于这样的情况,其中针对特定通信链路的预定量的带宽(例 如,100Mb/S)或者最大可用带宽的比例(例如,80^^85^^90%等)当前正被使用。其他类 型的阈值或条件可以包括接收在通信链路上建立带宽消耗活动的请求,其中已知该带宽消 耗活动会利用大量带宽或者预计该带宽消耗活动会利用该通信链路上的最大或当前可用 带宽中的一大部分。如果第一服务器确定阈值或条件还没有满足,则呼叫可以根据分散操作模式被路 由,例如,不将呼叫路由通过内发权威服务器(inboundauthoritative server) 112 (步骤 434)。一般,第一服务器然后可以适当地更新它的控制表212中的数据字段(步骤438)。然后,等待下一个事件(步骤442)。然而,如果第一服务器确定这些第一阈值条件中的任意一个被满足(步骤412), 则该方法通过根据单一权威带宽管理方案来路由呼叫或活动而继续。在权威带宽算法的操 作期间,第一服务器112可以请求权威服务器112路由呼叫或者帮助带宽的分布或管理。例 如,权威服务器112可以验证例如在权威服务器112和目的地104之间的一个或多个通信 链路上存在充足的带宽(步骤416)。如果权威服务器112确定可用来路由呼叫的带宽不充 足,则呼叫被禁止(步骤420),并且等待另一个事件(步骤442)。然而,如果权威服务器确定存在充足的可用带宽,则呼叫被路由到目的地(步骤 424),并且第一和权威服务器112中的每一个服务器的控制表212中的数据字段被相应更 新(步骤430)。在任意呼叫的悬而未决(pendency)期间,改变带宽的请求可以被一个或多个服 务器112接收。举例来说,语音呼叫的参与者可能希望结合视频数据,例如,需要额外带宽 的高清晰度视频呼叫。在图4的实施例中,在针对带宽的改变的请求被接收之后,呼叫或活 动被相应调整(步骤446),然后适当的表条目被调整(步骤450)。然而将会明白,在现有 呼叫上响应于请求带宽改变的方法可以类似于以上描述的对新呼叫事件的请求。例如,在 接收到针对带宽改变的请求之后,充足的发起带宽可以被评估,然后评估适当的操作模式, 并且如果不存在充足的带宽则拒绝请求或替代地对请求进行路由。当服务器112授权会话利用给定带宽时,检测该会话的终止或转让(demise)以缩 减控制表212中的适当数据条目一般是相同服务器112的职责。另外,在切换到单一权威 模式的过程中,一般仍由最初授权会话的服务器负责监控并缩减先前建立的会话所使用的 带宽。另外,如上所述,若干条件或发生的事件可能会使得服务器112经由同步算法对 带宽的账目进行同步(步骤458)。服务器然后可以继续操作,并等待新事件(步骤442)。 根据本发明的至少一些实施例,在不同的间隔处,或者在条件发生或未发生时,一个或多个 服务器112执行同步或者账目审核。具体地,服务器112将首先单独或者共同确定是否到 了执行同步处理的时间。如果(一个或多个)服务器112确定需要同步处理,则该方法通 过服务器112交换同步消息或类似信号而继续。可以被用于触发何时同步处理应该发生的间隔可以是周期性的、非周期性的、随 机的、伪随机的等。根据至少一些实施例,服务器112可以操作用来在一天的特定时间进行 同步,优选地在系统流量在历史上的非高峰时进行同步。当同步发生时,一个或多个服务器 112可以向其他服务器112广播或者传送它们自己的针对该服务器112所服务于的一个或 多个通信链路或者位置的当前带宽利用率账目。每个接收服务器的控制表212中的一个或 多个相关字段然后可以被利用新信息适当更新。同步消息可以包括各种信息。根据本发明的至少一些实施例,同步消息提供与服 务器自己在给定时间针对一个或多个通信链路的可用带宽的账目有关的信息。尽管这种估 计可能由于测量和传输中的迟延而不是带宽可用性的即时度量,但是该估计应该精确反映 过去某个时间的带宽可用性。将会明白,可用带宽的测量和向另一个服务器112传送数据 之间经过的时间可以根据需要基于本领域技术人员已知的一个或多个因素来估计。根据进 一步的实施例,审核或者同步处理的频率可以由针对目的地位置的呼叫率或者平均利用率来确定;所以同步处理的频率可以基于针对那个位置的当前或者平均呼叫率动态改变。另 外,一些位置可能比其他位置需要执行更频繁的同步,特别是在呼叫率在不同位置之间剧 烈变化的情况下。 在同步处理完成之后,每个服务器的针对特定通信链路或位置的可用或者已用带 宽的账目参照同步处理被发起时的时间点完全相同和精确。另外,在同步发生后,服务器
112可以被允许继续维护它们自己的针对各种通信链路或者位置的带宽利用率的独立账目。在一些实施例中,当一个服务器112确定第一阈值或条件针对特定位置已经被满 足时,服务器112可以向适于将呼叫路由到该位置的任意其他服务器112发送通知,其中该 通知指示所有服务器112都应该进入针对所识别的位置的单一权威带宽管理方案。在一些 实施例中,这个决定可以由所有服务器112在同步处理发生之后立即自动做出,并且每个 服务器112独立但是基本同时地确定第一阈值或者条件已经被满足。在一些实施例中,针 对特定位置的权威服务器112可以适于通过周期性地向这些服务器请求该信息来监控在 每个服务器112处确定的当前可用带宽计算结果。如果权威服务器112确定在所监控的位 置上对呼叫进行路由的其他服务器112之一已经计算出满足第一阈值或条件的当前可用 带宽,则权威服务器112可以向所有其他服务器112通知单一权威带宽管理方案应该被调 用,直到进一步布告为止。第一服务器112可以将另外的呼叫路由到被确定处于权威模式的目的地,直到第 二阈值条件发生为止。例如,第二阈值可以是可用带宽已经下降到相应最大带宽的80%以 下。将会明白,第一和第二阈值不需要是相同的值;相反,根据一些实施例,优选地第二阈值 条件的带宽利用率值或者比例小于第一阈值条件的值。例如,使用这种不相等的阈值可以 防止单一权威模式和分散操作模式之间的不稳定性和过多的切换。另外,第一和第二预定 条件不需要被限制于带宽利用率阈值,而可以包括例如,一天中的某些时间或者一周中的 某几天、网络的一部分中的故障或堵塞等。分散和权威操作模式之间的切换可以在进行到 目的地的下一个呼叫时进行,或者其可以在呼叫期间被动态进行,即,操作模式可以在呼叫 的悬而未决期间改变。图4的方法和本文中描述的其他方法一般可以在每个位置上进行,这意味着每个 位置或者去往特定位置的通信链路可以根据本文中讨论的机制被单独管理。例如,单一服 务器112可以适于针对去往两个或两个以上分支104的两个或两个以上通信链路路由呼叫 并且建立其他带宽消耗活动。在一些实施例中,第一通信链路可以根据分散模式被管理, 而第二通信链路可以根据单一权威模式被管理。例如,如果第一通信链路当前没有消耗它 的最大可用带宽的很大比例,则第一通信链路可能不需要单一权威模式的仔细的带宽管 理。另一方面,第二通信链路可能当前正在消耗它的最大可用带宽的巨大比例(例如,大于 90% ),在这种情况下可能期望实现单一权威模式的带宽管理。如果这种情况发生,则服务 器112可以根据分散操作模式在第一通信链路上对呼叫进行路由,同时根据单一权威操作 模式在第二通信链路上对呼叫进行路由。现在参考图5,示出了进一步的实施例。特别地,图5示出了用于进行呼叫或其他 带宽消耗活动的方法,其中呼叫根据分散的带宽管理方法或者共享的带宽管理方法,例如 在‘714专利申请中描述的方法被路由。将会明白,图5的方法可以被看作图4的方法的步骤404中的另一个事件,或者图4的实施例的各种特征可以被结合到图5中。根据该方法的实施例,针对呼叫或者其他带宽消耗活动的请求在第一服务器112 处被接收(步骤504)。该请求将包括可以被呼叫处理模块208分析的发起地址和目的地地 址。一旦呼叫处理模块208识别出所期望的目的地位置,则呼叫处理模块208继续参考本 地控制表212来核对网络的一个或多个部分中的可用带宽。第一服务器112首先验证在发 起链路上是否存在充足的带宽(步骤508)。如果第一服务器没有确定发起链路上存在充足 的带宽,则呼叫被禁止(步骤M0),或者被根据替代的通信链路(未示出)而路由。如果确定存在充足的发起带宽,则服务器112可以咨询它的控制表212来确定目 的地处是否存在支持呼叫的充足带宽(步骤51幻。根据一些实施例,如果第一服务器112 的控制表212没有反映出充足的目的地带宽,则第一服务器可以请求第二服务器112共享 分配给第二服务器112的一些或者全部带宽(步骤53 。如果充足的带宽没有被共享,则 第一服务器112可以禁止呼叫(步骤M0),或者根据进一步实施例,可以向另一个服务器 112,或者在等待预定量的时间之后,或者在等到另一个条件(诸如,另一个呼叫被断开(未 示出))发生为止,再次请求带宽。如果第一服务器112在步骤512或536中确定有充足的目的地带宽可用,则第一 服务器112可以进行呼叫(步骤516)。将会明白,此时的呼叫可以被如上所述地根据分散 或权威模式路由,并且控制表212的条目然后可以被根据以上方法和描述中的任意内容适 当更新(步骤520)。更具体地,呼叫处理模块208可以更新它的控制表212中的对应于发起和/或目 的地地址的可用或者已用带宽字段。该更新只在本地维护的表上执行。此时,通信系统100 中的其他服务器112都不会接收这样的指示新的带宽消耗活动已经被建立在目的地位置 的通信链路上。所以,完成请求的服务器112的更新后字段中的值将反映出可用带宽的估 计结果,特别地,这是因为服务器112将不知道自该字段上次被同步以来由其他服务器112 在相同的通信链路上建立的其他呼叫。随着时间的推进,每个服务器的总可用或已用带宽 的账目将继续不同,不同的程度可能变化,至少直到同步处理被执行为止。根据本发明的实施例,由于呼叫处理模块208继续独立监控并管理带宽利用率, 所以呼叫处理模块208确定由该呼叫处理模块208以前在通信链路上建立的其他类型的带 宽消耗活动或者呼叫是否已经被拆除(步骤524)。因此,显然提供了根据本发明的用于分配和管理带宽和带宽消耗活动的方法、系 统、和设备。尽管结合很多实施例描述了本发明,但是显然很多替代、修改和变化对于可用 领域的技术人员来说是显而易见的。因此,本公开用于覆盖落入本发明的精神和范围中的 所有替代、修改、等同和变化。
权利要求
1.一种方法,包括在第一服务器处接收来自通信设备的请求,该请求用于在通信链路上建立通信会话从 而利用该通信链路的带宽,其中所述通信链路包括最大可用带宽;通过所述第一服务器更新本地维护的控制表中的针对所述通信链路的当前可用带宽 的账目;以及通过所述第一服务器执行同步处理,其中在所述同步处理期间,所述第一服务器与第 二服务器共享所述第一服务器的针对所述通信链路的当前可用带宽的账目,其中所述第二 服务器也能够在所述通信链路上建立通信会话,其中在以分散的带宽管理模式进行操作的 同时并且在所述同步处理期间以外的时间,所述第一服务器不与所述第二服务器共享所述 第一服务器的针对所述通信链路的当前可用带宽的账目,并且所述第二服务器不与所述第 一服务器共享所述第二服务器针对所述通信链路的当前可用带宽的账目。
2.根据权利要求1所述的方法,还包括通过所述第一服务器确定先前由所述第一服务器在所述通信链路上建立的通信会话 已经被拆除;通过所述第一服务器更新所述本地维护的控制表中的针对所述通信链路的当前可用 带宽的账目。
3.根据权利要求1所述的方法,其中所述同步处理包括以下处理中的一项或多项所述第一服务器向所述第二服务器发送第一同步消息,其中所述第一同步消息包括所 述第一服务器的针对所述通信链路的当前可用带宽的账目、以及所述账目被确定的时间;所述第一服务器从所述第二服务器接收第二同步消息,其中所述第二同步消息包括所 述第二服务器的针对所述通信链路的当前可用带宽的账目、以及所述账目被确定的时间;所述第一服务器将所述同步处理被发起时所述第一服务器的针对所述通信链路的当 前可用带宽的账目调整得与所述同步处理被发起时所述第二服务器的针对所述通信链路 的当前可用带宽的账目相一致,然后将指示所确定的调整的结果的第三同步消息发送给所 述第二服务器;以及所述第二服务器将所述同步处理被发起时所述第二服务器的针对所述通信链路的可 用带宽的账目调整得与所述同步处理被发起时所述第一服务器的针对所述通信链路的可 用带宽的账目相一致,然后将指示所确定的调整的结果的第四同步消息发送给所述第一服 务器。
4.根据权利要求1所述的方法,还包括通过所述第一服务器确定第一阈值条件已经满足;以及响应于确定所述第一阈值条件已经满足,从所述分散的带宽管理模式转换为单一权威 带宽管理模式。
5.根据权利要求4所述的方法,其中当所述通信链路被根据所述单一权威带宽管理模 式管理时,所述第一服务器根据分散的带宽管理模式管理第二通信链路。
6.根据权利要求4所述的方法,还包括通过权威服务器确定第二阈值条件已经满足;以及响应于确定所述第二阈值条件已经满足,从所述单一权威带宽管理模式转换到所述分 散的带宽管理模式,其中在从所述单一权威带宽管理模式到所述分散的带宽管理模式的转换期间,所述权威服务器将所述权威服务器的针对所述通信链路的可用带宽的账目提供给 所述第一服务器。
7.一种通信系统,包括第一服务器,用于在去往第一位置的通信链路上建立通信会话,其中所述通信链路包 括最大可用带宽;第二服务器,用于在所述通信链路上建立通信会话;以及其中所述第一和第二服务器二者都用于分别在本地维护的控制表中维护针对所述通 信链路的当前可用带宽的账目,其中所述第一服务器的针对所述通信链路的当前可用带宽 的账目是以针对所述通信链路的所述最大可用带宽、以及仅由所述第一服务器在所述通信 链路上建立的通信会话消耗的带宽量为基础的,并且其中所述第二服务器的针对所述通信 链路的当前可用带宽的账目是以针对所述通信链路的所述最大可用带宽、以及仅由所述第 二服务器在所述通信链路上建立的通信会话消耗的带宽量为基础的。
8.根据权利要求7所述的系统,其中在以分散的带宽管理模式进行操作的同时并且在 同步处理期间以外的时间,所述第一服务器不与所述第二服务器共享所述第一服务器的针 对所述通信链路的当前可用带宽的账目,并且所述第二服务器不与所述第一服务器共享所 述第二服务器的针对所述通信链路的当前可用带宽的账目,其中所述同步处理被周期性执 行,其中所述同步处理被执行的频率根据所述通信链路的呼叫率改变,并且其中所述同步 处理的执行包括以下操作中的一项或多项所述第一服务器向所述第二服务器发送第一同步消息,其中所述第一同步消息包括所 述第一服务器的针对所述通信链路的当前可用带宽的账目、以及所述账目被确定的时间;所述第一服务器从所述第二服务器接收第二同步消息,其中所述第二同步消息包括所 述第二服务器的针对所述通信链路的当前可用带宽的账目、以及所述账目被确定的时间;所述第一服务器将所述同步处理被发起时所述第一服务器的针对所述通信链路的当 前可用带宽的账目调整得与所述同步处理被发起时所述第二服务器的针对所述通信链路 的当前可用带宽的账目相一致,然后向所述第二服务器发送指示所确定的调整的结果的第 三同步消息;以及所述第二服务器将所述同步处理被发起时所述第二服务器的针对所述通信链路的可 用带宽的账目调整得与所述同步处理被发起时所述第一服务器的针对所述通信链路的可 用带宽的账目相一致,然后向所述第一服务器发送指示所确定的调整的结果的第四同步消 肩、ο
9.根据权利要求7所述的系统,其中所述第一服务器进一步可操作用来确定先前由所 述第一服务器在所述通信链路上建立的通信会话已经被拆除,并且更新所述第一服务器的 本地维护的控制表中的所述第一服务器的针对所述通信链路的当前可用带宽的账目。
10.根据权利要求7所述的系统,其中所述第一和第二服务器中的至少一个用于确定 第一阈值条件已经满足,并且响应于确定所述第一阈值条件已经满足,从分散的带宽管理 模式转换为单一权威带宽管理模式。
全文摘要
本发明涉及新颖的带宽管理算法,提供了建议在分布式网络中分配带宽的方法、系统、和设备。根据分散操作模式,网络设备之间的带宽可以被协作地共享和管理,这使得一个或多个呼叫处理模块有选择且巧妙地进行呼叫或执行活动。还提供了针对给定通信链路的单一权威操作模式,其中一个或多个网络设备可以咨询权威成员来确定是否有充足的带宽可用来支持活动。各种触发事件或条件可以帮助从一种模式转换到另一种模式。进行审核或记账,其中设备可以更新或者同步存储在与系统带宽有关的控制表中的信息。
文档编号H04L12/56GK102088402SQ201010504080
公开日2011年6月8日 申请日期2010年9月30日 优先权日2009年12月2日
发明者戈登·布鲁森, 钱德拉·拉维帕特 申请人:阿瓦雅公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1