专利名称:用于利用反馈信息网络环境中的负载均衡的系统和方法
技术领域:
本发明一般地涉及通信领域,更具体地说,本发明涉及用于利用反馈信息网络环境中的负载均衡的系统和方法。
背景技术:
网络环境中连网体系结构已变得非常复杂。另外,希望在网络环境中通信的客户或最终用户的增多已致使许多连网配置和系统通过添加元件来适应连网流量的增长从而作出响应。可以使用通信隧道或链路,以便建立或获得对网络的接入,从而最终用户或对象可以通过调用选中的位置或网络节点来发起隧道建立协议。该网络节点或选中的位置可能然后提供最终用户可以用来执行通信会话的平台。
随着最终用户的订户基数增大,正确的路由选择和有效的通信会话和数据流管理变得极其关键。对于执行适当的负载均衡技术来说,能够访问或者知道网络节点的能力和/或当前活动是重要的。在执行了不适当的负载均衡协议的情形中,某些网络元件可能被淹没饵其他(可能更有能力的)网络资源保持不可用并且未使用。这种不均衡的场景可能降低吞吐量并且可能抑止网络流量的流动从而导致系统中的拥塞或瓶颈。在最坏的场景中,由于中央节点不能访问实际上能够容纳会话或流的节点,从而导致所请求的通信会话失败。
发明内容
本领域技术人员从前述内容可以理解,需要一种改进的通信方法,该方法用于基于两个终点或者节点之间的通信提供的准确反馈信息提供更准确的负载均衡。根据本发明的一个实施例,提供了用于负载均衡的系统和方法,该系统和方法极大地减少了与传统的负载均衡技术相关联的缺点和问题。
根据本发明一个实施例,提供了一种用于网络环境中的负载均衡的方法,该方法包括在中央节点处接收来自最终用户的用于通信会话的请求。该方法还包括标识出多个网络节点中被选中的一个网络节点来基于所选网络节点提供的反馈信息实现所述最终用户的所述通信会话。所述反馈信息从所选网络节点被传输,并且在执行判决之前被处理,以在所选网络节点和所述最终用户之间建立所述通信会话。
在其他实施例中,表格可以被用来存储先前接收到的与多个网络节点相关联的反馈信息。中央节点可以参考该表格,从而使得可以基于所述表格中包括的反馈信息执行负载均衡判决。在这种场景中,来自所选网络节点的当前反馈信息不必在执行负载均衡判决之前被接收到(也不必考虑)。
本发明的某些实施例可以提供许多技术优点。例如,根据本发明的一个实施例,提供了一种通信方法,该通信方法允许负载均衡器更准确地向多个网络节点分配工作。这是因为负载均衡器可以基于从可用网络节点中的任意一个或多个接收到的反馈信息执行负载均衡判决的结果。负载均衡器然后可以将创建请求引导到最能处理到来流的网络节点。例如,负载均衡器可以识别出具有最少数量的当前会话的给定网络节点应当接收该流。通过参考维护这种信息的数据结构或表格,可以实现高效的负载均衡,这是因为数据可以被正确地引导到最能容纳流量流的网络节点。此外,负载均衡器的提高的容量提供了更好的用户体验,因为连接请求无需总是重试以便连接到替换服务器。这还可以消除对回退(run back-off)定时器的任何需求或者进一步延迟给定的连接。
与本发明的一个实施例相关联的另一个技术优点是负载均衡器的工作的结果。负载均衡器通过对反馈信息进行评估和分类,可以有效地获得智能。反馈信息可以包括节点的能力,例如,处理某些类型的流或者容纳特定类型的服务质量级别的能力。该信息可以充当负载均衡器将数据有效地传递到优化网络节点的基础。本发明的某些实施例可以拥有这些优点中的一些、全部或者不拥有这些优点。本领域技术人员从附图、说明和权利要求书可以容易地清楚本发明的其他技术优点。
为了提供对本发明极其特征和优点的更全面的理解,结合附图参考下面的描述,其中相似的标号标识类似的部分,在附图中图1是根据本发明一个实施例用于网络环境中的负载均衡的通信系统的简化框图;图2是在通信系统中提供的负责均衡器内可以包括的表格的简化框图;以及图3是示出了与用于网络环境中的负载均衡的方法相关联一系列示例步骤的流程图。
具体实施例方式
图1是用于在网络环境中传输数据的通信系统10的简化框图。通信系统10可以包括最终用户12、无线电接入网络(RAN)14、通用分组无线电服务(GPRS)支持节点(SGSN)18和因特网协议(IP)网络20。另外,通信系统10可以包括负载均衡器26(其可能包括表格28)和多个网关GPRS支持节点(GGSN)30a-b。通信系统10还可以包括多个反馈元件40、42a和42b。通信系统10还可以包括授权、认证和记帐(AAA)服务器36和数据库50。
图1可以一般地配置或布置来表格示2.5G通信体系结构,该通信体系结构可适用于更久本发明具体实施例的全球移动系统(GSM)环境。然而,该2.5G体系结构被提供来仅用于示例,并且可替换地可以用向通信系统10提供通信平台的任何适当的连网协议或布置来代替。例如,通信系统10可以与包括负载均衡操作的任何版本的GPRS隧道建立协议(GTP)协作。这可以包括提供工作量分配特征的第一代、2G和3G体系结构。
为了理解通信系统10的教导的上下文,提供关于一般地管理用户连接的方式的一些概况是有用的。该描述被提供来仅用于示例,绝不应被解释为限制本发明的原理、特性和特征。
总地来说,当会话或应用被布署到负载均衡环境中后,出于各种原因,应用服务器可能拒绝用户连接。例如,一些常见的拒绝包括没有可用的服务器容量、来自客户端的非法连接请求、未经授权的客户端访问,或者特定类型的客户端不能访问服务。随着网络应用发展,并且随着用户个性化服务被布署,这些拒绝原因的特性也在发展。例如,一种拒绝可能是基于用户的服务质量(QoS)简档作出的,服务器仅在从例如后端数据库提取了数据后才知道该简档。
服务器协议一般不提供向客户端传递拒绝原因的机制。即使在的确提供拒绝原因的协议中,原因的粒度也不足以标识出拒绝的真正原因。在这种状况中,没有关于拒绝的原因的详细信息,给定的负载均衡器就不能智能判决该拒绝是由于单个服务器的容量问题导致的还是连接将会被集群中的任何服务器拒绝。结果,负载均衡器不得不将所有拒绝消息转发到客户端,或者丢弃所有拒绝消息并且等待客户端重传来在另一台服务器上重试该请求。
这种两难困境的一种示例应用在GPRS GTP隧道负载均衡中可能出现,其中,由于缺乏可用带宽,所以选中的GGSN可能拒绝客户端的分组数据协议(PDP)创建请求。这种拒绝发生在集群中的另一个GGSN具有充足的资源用于建立PDP上下文时。
根据本发明的教导,通信系统10避免了这种问题,并且提供了一种负载均衡操作,该操作在最终用户12和选中的GGSN 30a-b之间提供了优化通信。通信系统10将服务器反馈扩展到向给定的负载均衡器提供每个连接的拒绝原因信息。这在(非常可能)存储在数据库中的用户简档确定该用户所要求的服务器资源的情形中尤其有用。在这种场景中,客户端的请求未指示所请求的资源,在没有提供反馈信息的情况下,负载均衡器没有办法确定该请求是否可由给定的服务器处理。
在用于说明的示例实施例的操作中,给定的GGSN可以将连接拒绝原因与原始用户连接请求一起传输到负载均衡器26。负载均衡器26然后基于该拒绝原因确定适当的动作。如果负载均衡器26认为拒绝原因是第一选中GGSN本地的,则可以容易地选中可能能够处理原始转发请求的另一个GGSN并将该请求转发到该GGSN。如果拒绝原因是在整个服务器场(farm of server)普遍存在的,或者如果没有替换服务器当前可用来重分配流,则负载均衡器26为用户产生连接拒绝消息。
这种协议通过向负载均衡器26提供连接拒绝信息,使负载均衡器26能够更好地管理负载和用户请求。反馈信息可以用来确定拒绝原因是特定服务器本地的(在这种情形中可以在替换服务器上重试该连接)或者拒绝原因是由集群中的任何服务器产生的。
注意,在传统的负载均衡中,负载均衡器在分组级别上收集信息,或者通过监听流量确认信息,以便执行正确的负载均衡判决。在许多情形中,这种判决是足够的,尽管不完全是。在其他情形中,负载均衡器基于当前拥有的有限的信息可能不能实现正确的判决。
因此,负载均衡器仅可能基于所知道的有限的参数实现负载均衡判决。这些有限的参数(例如,负载、权重等)是非常一般的。选中的GGSN一般提供其可以容纳所分配的流的最终确认。在这些场景中,选中的GGSN可能不能处理该流,但是第二个(相邻的或本地的)GGSN(该GGSN可用)可能适当地处理了连接。在其他情形中,没有GGSN处理该流。“认证失败”是有问题的错误的示例,因为其是一般的并且其禁止任何给定的GGSN容纳这种流。因此,在这种场景中,所提供的信息中的更多的详情可能使负载均衡器26能够快速识别出没有GGSN能够服务该请求。
通信系统10通过提供基于每个会话或者每个流的反馈从而可以避免这种不足。在(选中的GGSN和负载均衡器26之间的)反馈信息中可以提供数据片段或者标记,指示所选中的GGSN(例如,GGSN 30a)不能处理所请求的会话,并且负载均衡器26应当挑选另一个GGSN。可以重复将请求转发到后一个GGSN的过程,直到标识出具有满足该会话的要求的资源的给定GGSN为止。反馈元件42a和42b提供到反馈元件40的反馈可以是专有协议,或者可利用已在执行机器上执行的现有协议。例如,SGSN 18和选中的GGSN 30a和30b之间的GTP协议可以被用来提供这种反馈。
这种方法向负载均衡器26提供了精确的反馈,使得其可以更好地执行如何实现负载均衡的判决。此外,由于这种通信仅涉及负载均衡器26和选中的GGSN,所以其不牵涉到SGSN 18。例如,如果SGSN 18已请求负载均衡器26,则负载均衡器26然后可以在确认所选中的GGSN可以处理该流之前与若干个GGSN通信(经由涉及负载均衡器26和GGSN的若干往返通信)。因此,负载均衡器26在将流实际分配给所选中的GGSN之前,可以连续对给定的GGSN试探请求。负载均衡器26和GGSN 30a和30b之间的这种反馈信息中继可以在不涉及SGSN 18的情况下连续执行,SGSN 18不知道这种通信。
另外,提供给负载均衡器26的反馈可能不仅被用在当前的负载均衡判决中,还可以被用在将来的负载均衡判决中。表格28可用来存储反馈信息,该表格在任何时刻都可以被参考以便进行负载均衡判决。表格28可以包括任何适当的反馈信息和/或关于任何现有GGSN的特性,所述GGSN可能接收会话或流。因此,负载均衡器26可以基于表格28中的信息执行将来的负载均衡判决,或者基于由给定的GGSN提供的当前反馈执行更多充分信息的负载均衡判决。
负载均衡器26通过检查表格28并且通过与选中的GGSN通信,更准确地将工作分配给多个网络节点。这种方法实现了更高效的负载均衡,因为数据可以被正确地引导到最能够容纳额外的流量流的网络节点。此外,负载均衡器26的提高的容量提供了更好的用户体验,因为连接请求无需重试以便连接到替换服务器。这还可以消除对回退定时器的任何需求或者进一步延迟给定的连接。
负载均衡器26通过对由GGSN提供的反馈信息进行评估和分类,可以有效地获得智能。反馈信息可以包括GGSN的能力,例如,能够处理某些类型的流或者能够容纳特定类型的服务质量级别。下面将详细描述的图2给出了在一种示例网络配置中由反馈信息提供的GGSN参数的示例集合。通信系统10可以轻易地容纳其他类型的反馈信息。这种反馈信息又允许负载均衡器26将数据有效地传递到优化网络节点。负载均衡器26的操作还可以在连续接收通信流的网络节点不能承受额外的任务时减轻在其上施加的压力。
最终用户12是希望经由IP网络20在通信系统10中发起通信的客户端或客户。最终用户12可以包括用来发起通信的设备,例如,计算机、个人数字助理(PDA)、膝上型或电子笔记本、电话、移动台或者能够发起通信系统10内的语音或数据交换的任何其他设备、组件、元件或对象。最终用户12也可以包括对人类用户的合适的接口,例如,麦克风、键盘或者其他终端设备(例如,在最终用户12被用作调制解调器的情形中到个人计算机或者到传真机的接口)。最终用户12也可以是寻求代表格另一个实体或者元件发起通信的任何设备,例如,程序、数据库,或者能够发起通信系统10内的语音或数据交换的任何其他组件、设备、元件或对象。在本文档中所使用的数据是指任何类型的数字、语音、视频、音视频或者脚本数据,或者任何类型的源或对象代码,或者处于可以从一点被传输到另一点的任何合适格式的任何其他适当的信息。
RAN 14是最终用户12和SGSN 18之间的接口。RAN 14可以包括基站收发台和基站控制器。RAN 14所提供的通信接口给出了连通性,并且允许在最终用户12和通信系统10内任何数目的被选中元件交换数据。RAN 14帮助传递最终用户12所产生的请求分组,并且帮助接收最终用户12寻求的分组。RAN 14仅是最终用户12和SGSN 18之间的通信接口的一个示例。其他类型的通信接口可以基于特定需求用于期望的网络设计。
IP网络20互连通信路径的用于接收和发送传递过通信系统10的信息分组的一系列点或者节点。IP网络20提供最终用户12和选中的GGSN30a-b之间的通信接口,并且可以是任何局域网(LAN)、无线局域网(WLAN)、城域网(MAN)、广域网(WAN)、虚拟专用网(VPN),或者实现网络环境中的通信的任何其他适当的体系结构或者系统。在本发明的具体实施例中,IP网络20实现用户数据报协议(UDP)/因特网协议(UDP/IP)通信语言协议。然而,IP网络20可以可替换地实现任何其他合适的通信协议,用于在通信系统10内发送和接收数据或信息。
SGSN 18和GGSN 30a-b是协作来实现涉及最终用户12的通信会话的网络元件。GGSN 30a-b是可能正与多个SGSN 18结合工作来在通信系统10内传输数据交换时提供GPRS服务网络环境中的通信介质的网络节点。GPRS代表格基于分组的承载服务,用于可以作为任何类型的合适网络配置或平台的网络覆盖被传递的通信服务。GPRS一般应用分组无线电和分组交换原理来在GSM元件或单元与外部分组数据网络之间高效传送数据分组。GPRS可以支持多种因特网通信协议,并且可以使现有的IP、X.25或者任何其他适当的应用或平台能够通过GSM连接工作。
负载均衡器26是接收请求并且然后将那些请求分配给下一个可用服务器或节点的元件或设备。可以认为负载均衡器26是中央节点或者是最终用户12和任何数量的GGSN之间的中间节点。可用来接收会话的服务器或节点可以是网络中的可以管理网络资源或处理数据的任何计算机或设备。例如,网络节点可以是所选中的GGSN 30a-b。这种负载均衡判决可以基于负载均衡器26中提供的适当的算法、软件或者硬件执行。负载均衡器26也可以包括反馈元件40,反馈元件40被耦合到表格28。这两个元件可以协作以便存储和参考关于网络中的被选中的GGSN的数据。另外,这两个元件在一个示例实施例中可以被包括在软件中。可替换地,这两个元件可以被提供在适于辅助或实现它们的操作的适当的硬件(或者硬件和软件的组合)中、或者任何适当的组件、设备、元件或者对象中。另外,这些元件可以包括包括在单个模块中,和/或在适当的情形中基于特定的需求而被提供在负载均衡器26外部。
负载均衡器26还可以执行其他适当的负载均衡任务,例如,在两个或更多个元件之间划分一个元件必须处理的工作量以确保在同样的时间量中完成更多的工作,从而一般来说更快地向用户提供服务。负载均衡器26可被任何其他适当的网络元件替换,例如,路由器、交换机、网桥、网关,或者能够在网络环境中接收或发送数据的任何其他适当的元件、组件、设备或对象。另外,负载均衡器26可以包括任何适当的硬件、软件(或者这二者的组合),或者能够适当地辅助或实现网络中的流量管理的任何适当的组件、设备、元件或对象。
在示例实施例的操作中,负载均衡器26可以针对选中的GGSN 30a-b执行负载均衡判决。去往和来自SGSN 18和GGSN 30a-b的进入和外出信令流量可以流过负载均衡器26(全部或者部分)。负载均衡器26可以利用任何合适的标准过滤流量,所述标准例如是源IP地址、目的地IP地址、源端口、目的地端口、协议元组,或者任何其他的适当参数或特性。负载均衡器26最初可能试图根据第一(主)创建请求创建会话。会话可由下述内容标识客户端(SGSN)IP地址和端口、服务器(GGSN)IP地址和端口、协议和会话密钥,或者在合适的情形中任何其他适当的参数。对于GTP版本1,负载均衡器26可以针对每个隧道端点标识符(TEID)创建一个会话。
负载均衡器26可以参考表格28和/或在将流分配给给定的GGSN之前检查由该GGSN提供的反馈信息。表格28可以包括特定GGSN的能力,并且根据任何适当的类别被矢量化。例如,一种类别是QoS,该类别又可以被用特定GGSN可以处理的QoS的类型进一步表格征。(注意,关于表格28的更多的细节在下面提供并且在图2中示出。)负载均衡器26处理了反馈信息和/或参考了表格28后,会话然后可以被引导到最能处理该会话的给定GGSN。通过在执行负载均衡判决之前利用这种信息,负载均衡器26确保来自最终用户12的创建请求成功的高概率。
AAA服务器36是一种服务器程序,该服务器程序可以管理最终用户12访问连网资源的请求。对于相应的网络,AAA服务器36还提供认证、授权和记帐服务以及管理。授权一般指许可最终用户12执行某些任务或者访问某些内容的过程。在多用户计算机系统中,系统管理员可以为该系统定义允许哪些最终用户访问系统中的某些数据,向最终用户12提供何种特权。最终用户21登入到网络后,例如IP网络20,该网络可能希望标识出在通信会话期间给予最终用户12何种资源。因此,通信系统10内的认证可以被看作包括系统管理员对许可的最初设立和在最终用户12试图访问时对已设立的许可值的实际检查和验证。认证一般指确定最终用户12事实上是否是该最终用户12声明的它是何人或何物的过程。在专用或公共计算机网络的情形中,认证可能通常是通过使用唯一的标识元素或登录口令完成的。关于口令的知识提供了一种假设,假设最终用户12是可信的。记帐一般指跟踪每个最终用户12的利用,并且可能额外包括跟踪关于通信系统10内或者特定子网内的其他信息流的信息或数据。
AAA服务器36可以接收来自任何适当的源(例如,合适的网络网关)或者可替换地来自动态主机配置协议(DHCP)服务器或者域名系统(DNS)数据库元件的IP地址和其他参数,以便引导要被传输到最终用户12的数据。AAA服务器36可以包括工作来接收与最终用户12相关联的数据并且向通信系统10内的网络组件提供相应的AAA相关功能的任何适当的硬件、软件、组件或元件。授权和IP地址管理可由AAA服务器36从第二层隧道建立协议网络服务器(LNS)取回,并且可以在适当的情形中被提供给最终用户12的地址安全服务。
数据库50可以与AAA服务器36通信,并且包括任何适当的软件、硬件、随机访问存储器(RAM)、专用集成电路(ASIC)、算法、只读存储器(ROM)、可擦可编程ROM(EPROM)、电EPROM(EEPROM),或者可工作来存储网络信息或关于给定的最终用户集合的信息的任何其他适当的组件、设备、元件或对象。在一个示例实施例中,数据库50可以包括任何给定最终用户的许多用户简档。这些简档可以包括QoS信息,以及用于处理流或会话的任何其他相关信息。GGSN 30a和30b可以经由AAA服务器36参考数据库50,以便标识出最终用户的QoS级别,并且确认给定会话或流的将需要的资源需求。GGSN 30a和30b然后在向负载均衡器26提供反馈响应之前可以考虑到它们的可用资源。
数据库50可以与AAA服务器36通信,并且包括用于正确存储一个或多个最终用户简档的表格格,所述最终用户简档将用在在通信系统10中路由信息或数据时。数据库50内包括的表格格可以以多种方式被填充。另外,在最终用户12连接到网络时,网络接入服务器(NAS)或者任何其他合适的设备可以代表格其作出RADIUS请求。在移动连网的场景中,这种请求(可能被称作接入请求)可以在用户名称属性中或者在呼叫台ID属性中包含用户ID,用户ID唯一地标识出正请求来自网络的信息的最终用户。如果AAA服务器36成功地认证并授权了最终用户12,则RADIUS接入接受消息和成帧IP地址属性中的IP地址一起可以被传输回RADIUS客户端(或者NAS)。该IP地址可以是最终用户12在发送IP分组到网络中的任何给定位置时使用的地址。所交换的RADIUS分组可以被检查,从而构建将用户ID与所分配的IP地址绑定的表格。该表格内的条目可以被周期性地清空、删除或者更新(或者可替换地基于某些事件或者对系统参数的修改而被更新或改变),以便准确地翻译与一个或多个最终用户12相关联的简档。条目也可以被专门删除或者针对每个通信流而被删除。在RADIUS消息交换的情形中,对表格的填充可由RADIUS记帐消息控制,或者可根据特定需求由任何其他适当的填充协议控制。
图2是示出了通信系统10的示例实现方式中的表格28的简化框图。表格28可以被存储在负载均衡器26内,或者在负载均衡器26的外部提供。表格28可以包括任何适当的软件、硬件、RAM、ASIC、算法、ROM、EPROM、EEPROM,或者在合适的情形中基于特定的需求可以在任何其他合适的组件、设备、元件或对象中。表格28可由数据库或者可工作来存储反馈信息的任何其他适当的存储器元件来容易地替换。
如图2所示,表格28可以包括与会话对象相关联的任何适当的信息、针对每个GGSN 30a-b作出的分配,或者根据特定需求的其他连网数据。在一种示例性实现方式中,表格28包括GGSN#列、多个QoS类型列、一个会话容量#列、数据/视频/语音能力列和杂项列。这种信息类别被提供来仅用于示例,并且应当如此解释。
表格28可以可替换地包括关于在通信系统10中传播的通信会话或流的任何其他适当的信息(并且被该信息索引)。例如,表格28可以包括PDP数目、策略/简档/订阅信息、源IP地址、目的地IP地址、协议、最终用户12的IP地址、源和目的地端口,或者最终用户12正采用的设备的能力特性。这些元素可以被用来区分服务质量,或者实现用于处理相应流量的不同策略。
在工作中,表格28可以用来存储关于GGSN池的信息和/或存储由负载均衡器26接收到的反馈信息。表格28可由负载均衡器26适当地更新,或者根据特定需求合适地配置或设计。可以在任何合适时刻参考表格28,以便执行信息充分的负载均衡判决。
图3是示出了与用于网络环境中的负载均衡的方法相关联的一系列示例步骤的简化流程图。该方法开始于步骤100,在该步骤中最终用户12可以接入网络以便打开PDP上下文(可能具有描述服务质量、安全等的参数的特定集合或向量)。例如,web流量可能最终通过链路传输,因为最终用户12以利用GPRS电话启动了他的web浏览器。在步骤102中,负载均衡器26可能选择参考表格28(在负载均衡器26先前已与给定GGSN进行了大量通信的情形中)以便对流进行处理,并且分配给定的GGSN来容纳该流。
可能存在一般的资源问题(例如,CPU过载或者存储器过载)或者更特定的资源问题(例如,基于从表格28或者数据库50获得的QoS参数,所选中的GGSN不能容纳该会话)。在该示例场景中,负载均衡器26可以在步骤104中基于由反馈元件42a和42b提供的特定资源问题执行负载均衡判决。
在步骤104中提供的反馈给出了足够的数据来执行智能负载均衡判决。负载均衡器26可以识别出这不是用户失败的通用情形(例如,通过认证失败),而是由特定的资源问题导致的失败。在本示例中,最初联系的GGSN不能处理会话,因为它不能处理某一QoS级别。[这也可能是由于GGSN不能支持要被传递到GPRS电话的web流量]。该创建请求然后在步骤106中可以被负载均衡器26转发到另一个GGSN,从而使得该请求可以被成功地处理。在步骤108中,负载均衡器26然后可以在表格28中记录并存储结果(即,所分配的容纳会话的GGSN),以使得在稍后的时间中可以参考该段数据。
从而,在后续请求的上下文中,通过参考表格28,对于将来的连接可以实现更高的成功概率。负载均衡器26能够基于表格28中的信息执行将来的负载均衡判决,或者负载均衡器26可以基于由给定的GGSN正提供的当前反馈执行更充分信息的负载均衡判决。
图3所示的一些步骤在合适的情形中可以被改变或删除,并且额外的步骤也可以被添加到该流程图。这些改变可以基于特定的通信体系结构,或者基于关联元件的具体接口布置和配置,并且不脱离本发明的范围和教导。
尽管已结合IP通信详细描述了本发明,但是通信系统10可以用于负载均衡环境中涉及用户请求的任何隧道建立协议。涉及选择网络节点来实现最终用户通信的任何适当的通信都能从本发明的教导获益。使用最终用户12和IP通信仅出于教导目的,绝不应解释为限制本发明的范围。
此外,通信系统10的体系结构并不专用于隧道建立协议;该体系结构也可以用在应用服务器之前。例如,如果给定的服务器可以标识出请求中的用户的应用需求,并且识别出其缺乏能力来提供这些需求,则反馈信息可以被传递到负载均衡器26来通知这种状况,从而随后选择另一个服务器。此外,考虑包括视频服务器场的另一种示例情形。用户请求可能指示“要求高清晰流”。一个服务器在给定时刻可能不能处理这种请求,而另一个则可能能够容纳这种流。负载均衡器26和关联组件中的任何这种置换或修改都在通信系统10的宽广教导的范围内。另另外,通信系统10可以被扩展到任何场景,在该场景中最终用户12具有移动性(在有线或者无线连接或耦合的上下文中)并且与某些类型的接入服务器通信(例如,网络接入服务器(NAS)、外代理等)。最终用户12可以使用某种形式的专用连接,或者在合适的情形中使用多种接入协议的形式。接入可以被与点到点协议(PPP)相关联,或者可替换地根据特定需求与L2层上的第三层协议相关联。这种实施例可以包括可工作来与负载均衡器26通信的任何适当的隧道端接器和/或隧道发起器。
此外,尽管已参考实现负责均衡过程的特定元件说明了通信系统10,但是,这些元件可被实现通信系统10的期望功能的任何适当的体系结构或配置替换。负载均衡器26基于反馈信息执行负载均衡判决,并且从而可以经由任何适当的元件或对象接收关于这种判决的信息。表格28仅提供了由反馈信息提供的一组可能参数。其他参数可以容易地被替代到表格28中,并且因此在通信系统10的教导的宽广范围内是清楚的。这种替换可以是基于具体GGSN配置或者特定连网体系结构的。另外,这种替换可以是在现有GGSN和负载均衡器之间存在的通信上实现的,或者在独立的协议中被提供。
本领域技术人员可以确认许多其他改变、替代、变动、替换和修改,并且本发明是要包括落入所附权利要求书的精神和范围内的所有这种改变、替代、变动、替换和修改。为了帮助美国专利商标局(USPTO)和针对本申请授予的专利的任何读者理解所附权利要求,申请人希望注意到申请人(a)除非在特定的权利要求中专门使用了短语“用于xxx的装置”,否则不是要所附权利要求中的任何一个都因为在本申请的递交日存在而援引paragraph six(6)of 35 U.S.C section 112;并且(b)说明书中的任何陈述不是要以未在所附权利要求书中另行反映出的方式限制本发明。
权利要求
1.一种用于网络环境中的负载均衡的装置,包括负载均衡器,可工作来接收来自最终用户的用于通信会话的请求,并且标识出多个网络节点中被选中的一个网络节点来基于所选网络节点提供的反馈信息实现所述最终用户的所述通信会话,其中所述反馈信息从所选网络节点被传输到所述负载均衡器,使得所述负载均衡器可以在执行判决之前处理所述反馈信息,以在所选网络节点和所述最终用户之间建立所述通信会话。
2.如权利要求1所述的装置,其中,所述负载均衡器包括耦合到所选网络节点中包括的第二反馈元件的第一反馈元件,所述第一反馈元件可工作来接收来自所述第二反馈元件的所述反馈信息。
3.如权利要求2所述的装置,其中,所述负载均衡器包括表格,所述表格可工作来存储与所选网络节点相关联的所述反馈信息。
4.如权利要求3所述的装置,其中,所述负载均衡器可工作来在执行后续负载均衡判决之前参考所述表格。
5.如权利要求1所述的装置,其中,所述反馈信息包括从包括下述元素的一组元素中选出的一个或多个元素a)与所选网络节点相关联的服务质量参数;b)与所选网络节点可容纳的会话数目相关联的量;c)所选网络节点容纳语音数据的能力;以及d)所选网络节点容纳视频数据的能力。
6.如权利要求1所述的装置,其中,所选网络节点可工作来在将所述反馈信息返回给所述负载均衡器之前与认证、授权和记帐(AAA)服务器通信,并且其中所述AAA服务器可以向所选网络节点提供资源信息,所选网络节点可以使用所述资源信息来确定其是否可以容纳所述通信会话。
7.如权利要求6所述的装置,其中,所述AAA服务器可工作来与包括在与所述最终用户相关联的一个或多个简档中提供的所述资源信息的数据库通信。
8.一种用于网络环境中的负载均衡的方法,包括在中央节点处接收来自最终用户的用于通信会话的请求;以及标识出多个网络节点中被选中的一个网络节点来基于所选网络节点提供的反馈信息实现所述最终用户的所述通信会话,其中所述反馈信息从所选网络节点被传输,并且在执行判决之前被处理,以在所选网络节点和所述最终用户之间建立所述通信会话。
9.如权利要求8所述的方法,其中,所述中央节点包括耦合到所选网络节点中包括的第二反馈元件的第一反馈元件,所述第一反馈元件可工作来接收来自所述第二反馈元件的所述反馈信息。
10.如权利要求9所述的方法,其中,所述中央节点包括表格,所述表格可工作来存储与所选网络节点相关联的所述反馈信息。
11.如权利要求10所述的方法,还包括在执行后续负载均衡判决之前参考所述表格。
12.如权利要求8所述的方法,其中,所述反馈信息包括从包括下述元素的一组元素中选出的一个或多个元素a)与所选网络节点相关联的服务质量参数;b)与所选网络节点可容纳的会话数目相关联的量;c)所选网络节点容纳语音数据的能力;以及d)所选网络节点容纳视频数据的能力。
13.如权利要求8所述的方法,其中,所述中央节点是从包括下述元件的一组元件中选出的一个或多个元件a)路由器;b)负载均衡器;c)交换机;d)网关;以及e)网桥。
14.一种用于网络环境中的负载均衡的系统,包括用于接收来自最终用户的用于通信会话的请求的装置;以及用于标识出多个网络节点中被选中的一个网络节点来基于所选网络节点提供的反馈信息实现所述最终用户的所述通信会话的装置,其中所述反馈信息从所选网络节点被传输,并且在执行判决之前被处理,以在所选网络节点和所述最终用户之间建立所述通信会话。
15.如权利要求14所述的系统,还包括用于提供表格的装置,其中所述表格可工作来存储与所选网络节点相关联的所述反馈信息。
16.如权利要求15所述的系统,还包括用于在执行后续负载均衡判决之前参考所述表格的装置。
17.一种计算机可读介质,用于在网络环境中执行负载均衡的软件被包含所述计算机可读介质中并且包括用于以下操作的代码在中央节点处接收来自最终用户的用于通信会话的请求;以及标识出多个网络节点中被选中的一个网络节点来基于所选网络节点提供的反馈信息实现所述最终用户的所述通信会话,其中所述反馈信息从所选网络节点被传输,并且在执行判决之前被处理,以在所选网络节点和所述最终用户之间建立所述通信会话。
18.如权利要求17所述的介质,其中,所述代码还可工作来在表格中存储与所选网络节点相关联的所述反馈信息。
19.如权利要求18所述的介质,其中,所述代码还可工作来在执行后续负载均衡判决之前参考所述表格。
20.如权利要求17所述的介质,其中,所述代码还可工作来在将所述反馈信息返回给所述中央节点之前与认证、授权和记帐(AAA)服务器通信,并且其中所述AAA服务器可以向所选网络节点提供资源信息,所选网络节点可以使用所述资源信息来确定其是否可以容纳所述通信会话。
21.一种用于网络环境中的负载均衡的方法,包括在中央节点处接收来自最终用户的用于通信会话的请求;参考表格;以及标识出多个网络节点中被选中的一个网络节点来基于先前传输的与所述多个网络节点相关联的反馈信息实现所述最终用户的所述通信会话,其中所述反馈信息被存储在所述表格中,并且在执行判决之前被所述中央节点处理,以在所选网络节点和所述最终用户之间建立所述通信会话。
全文摘要
本发明提供了一种用于网络环境中的负载均衡的方法,该方法包括在中央节点处接收来自最终用户的用于通信会话的请求。该方法还包括标识出多个网络节点中被选中的一个网络节点来基于所选网络节点提供的反馈信息实现所述最终用户的所述通信会话。所述反馈信息从所选网络节点被传输,并且在执行判决之前被处理,以在所选网络节点和所述最终用户之间建立所述通信会话。
文档编号H04L12/26GK1965519SQ200580018775
公开日2007年5月16日 申请日期2005年2月14日 优先权日2004年6月21日
发明者阿施史·A·查德瓦卡, 贾亚拉曼·R·耶尔, 克里斯·奥'鲁尔克 申请人:思科技术公司