CN1589558A - 客户机服务器网络 - Google Patents

客户机服务器网络 Download PDF

Info

Publication number
CN1589558A
CN1589558A CN02822787.5A CN02822787A CN1589558A CN 1589558 A CN1589558 A CN 1589558A CN 02822787 A CN02822787 A CN 02822787A CN 1589558 A CN1589558 A CN 1589558A
Authority
CN
China
Prior art keywords
server
request
servers
response
activity
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN02822787.5A
Other languages
English (en)
Other versions
CN100459608C (zh
Inventor
S·I·马丁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
M (DGPI) Ltd.
Ericsson AB
Original Assignee
Marconi UK Intellectual Property Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Marconi UK Intellectual Property Ltd filed Critical Marconi UK Intellectual Property Ltd
Publication of CN1589558A publication Critical patent/CN1589558A/zh
Application granted granted Critical
Publication of CN100459608C publication Critical patent/CN100459608C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1023Server selection for load balancing based on a hash applied to IP addresses or costs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/10015Access to distributed or replicated servers, e.g. using brokers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer And Data Communications (AREA)
  • Debugging And Monitoring (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Communication Control (AREA)
  • Multi Processors (AREA)

Abstract

网络中的客户机节点与包括多个服务器的服务器系统进行通信。客户机包括分配器,所述分配器定期测量服务器活动,评估服务器的相对负荷,以及调整请求分配,因而根据负荷评估来加载服务器。

Description

客户机服务器网络
本发明涉及客户机服务器网络,具体来讲,涉及其中客户机具有能够处理其请求的多个备选服务器的网络。
在这类客户机服务器网络中,在确定客户机应该向哪个服务器节点发送给定请求时出现问题。处理这个问题的已知方法包括:负载分担,其中负载以循环方式分散在多个服务器上;以及工作机备用机方案,其中把一个服务器指定为工作机,请求一般发送到工作机,而另一个服务器为备用机,在工作机无法处理请求时,备用机就处理请求。当工作机再次能够处理请求时,请求又发送到工作机。但是,没有一种方法令人满意。如果各种服务器的容量差异极大,则循环负载分担不适用,因为这种方法没有考虑相对的服务器大小。如果请求量超过单个服务器的容量,则工作机备用机方法不适用。
任何给定服务器的有效容量可能随时间而显著变化,例如因为服务器正在处理来自其它客户机的请求,或者由于诸如维护活动、存档之类的其它原因。
本发明旨在解决上述问题,并且提供对送往多个服务器的请求的改进处理。
根据本发明,提供一种把来自客户机节点的请求分配到具有多个服务器的服务器系统中的一些服务器的方法,所述方法包括定期重复以下步骤:
测量各服务器的活动;
根据所测量的服务器活动来评估多个服务器的相对负荷;以及
根据相对负荷的评估来调整对多个服务器中各个服务器的请求分配;
其中调整对各个服务器的请求分配包括根据所测量的服务器活动、多个服务器的平均活动以及分配给服务器的请求的现有比例来调整分配给各服务器的请求的比例。
本发明还提供一种用于把来自客户机节点的请求分配给具有多个服务器的服务器系统中的一些服务器的系统,所述系统包括位于客户机节点的分配器,所述分配器包括用于测量各个服务器活动的装置、用于根据所测量的服务器活动来评估多个服务器的相对负荷的装置以及用于根据相对负荷的评估来调整对多个服务器中各个服务器的请求分配的装置;
其中分配调整装置包括用于根据所测量的服务器活动、多个服务器的平均活动以及分配给服务器的请求的现有比例来调整分配给各服务器的请求的比例的装置。
本发明的实施例的优点在于,负载分配能够考虑到各服务器的相对容量而在各服务器上均匀分布。
客户机节点最好是包括负载控制器,用于把负载控制算法应用于分配到多个服务器中所有服务器的请求。其优点在于,负载可得到控制,从而防止所有服务器过载,而且分配器使多个服务器看起来就象单个服务器。
最好是通过计算一个周期中服务器请求和响应的数量来测量服务器活动。这个周期最好是请求的总数。
相对负荷的评估最好是包括比较在抽样周期中各服务器的服务器请求和响应。
服务器的请求分配最好是根据所测量的服务器活动、全部服务器的平均活动以及分配给服务器的请求的现有比例来调整。
最好是提供超越功能,从而把与前一个请求相关的请求发送到与前一个请求相同的服务器。
现在通过举例并参照附图来说明本发明的实施例,附图中:
图1说明实施本发明的请求分配系统的示意图;
图2是图1的分配器的UML使用情况图;
图3是测量服务器负荷以评估相对负荷的UML类图;
图4是“分配”使用情况的示例程序;
图5是“响应”使用情况的示例程序;
图6是“测量”使用情况的示例程序;
图7是“重新评估”使用情况的示例程序;
图8是“分配”使用情况的UML活动图;
图9是说明过载影响的、较大服务器的响应和请求的曲线图;
图10是说明过载影响的、较小服务器的请求和响应的曲线图;
图11是流程图,说明活动测量的第一实施例;
图12是流程图,说明活动测量的第二实施例;以及
图13是流程图,说明活动测量的第三实施例。
参照图1,将要描述的实施例是基于各客户机节点12内的请求分配器单元10。请求分配器接收客户机节点内部产生的本地请求14以及通过外部接口接收的外部请求16。分配器在n个服务器之中分配服务器请求,这些服务器在图中表示为服务器1(18)、服务器2(20)以及服务器n(22)。客户机节点还包括运行负载控制算法的负载控制单元24。分配器确保对远程服务器进行均匀加载。负载控制算法为分配器提供有效的前端处理。
图1所示的体系结构使相同的负载控制能够用于外部请求以及客户机节点上本机发起的请求。另外,分配器使服务器网络在负载控制算法看来就象单个节点一样。从图1可以看到,分配器在逻辑上设置在服务器和负载控制器之间。
当请求与较早的请求相关时,逐个请求地把负载分配到服务器是不起作用的。分配器包括超越功能,使请求的某个子集能够被发送到同一个服务器。在服务器存储从处理后续请求所需的第一个请求中导出的内容时,这通常是必要的。
分配器的UML使用情况如图2所示。本地应用或远程客户机26、时间28以及远程服务器30表示为远离该系统。该图表明,分配器根据来自服务器的响应32来分配31服务器请求,并且根据分配和响应来进行一些测量34。随着时间36来重新评估分配。
不管服务器请求的来源如何,无论在客户机节点外部还是内部,对于把服务器请求分配到一组可用服务器上的三个要求如下所述:
1.使可用服务器的负载尽量均匀;
2.通过不对先前的负载不平衡作出过度反应而导致新的负载不平衡,避免服务器负载中的高频振荡;以及
3.不管分配算法而允许超越请求保持在特定服务器上。
当后续请求要求已经在处理前一个请求的服务器中创建的上下文数据时,调用要求的超越请求。对前一个请求的响应表明哪个服务器对其进行了处理。
所用的分配最好是与客户机-服务器协议的特定细节无关,从而确保广泛适用性。在将要描述的实施例中,比较对于不同服务器的测量结果以评估其相对负荷。然后再调整后续请求的分配,使服务器测量结果会聚到其平均值。这样,重新平衡了服务器的负荷。这个方法不了解各个服务器是否过载,因为它是对负荷的相对测量,因此不会提供全面的控制机制。如果客户机节点上涉及到要避免服务器过载,则客户机节点可在分配器前面加入独立的负载控制算法、如图1的24所示。负载控制算法根据对全部服务器的总业务量的测量进行工作。适用于端接请求业务的服务器节点的负载控制方案应当同样适用于具有请求分配器的客户机节点。应该理解,负载控制不是必需的。
上述方法是基于对相对负荷的测量。可以测量业务量相关的量,例如请求和响应计数及其速度派生值、响应时间分布(例如平均值、第95个百分点和标准偏差)以及响应挂起的请求的数量。虽然这些都是通用测量,但它们或多或少都遇到区分正常和过载条件的阈值通常是协议和/或应用特定的问题。例如,对一个应用而言合乎需要的响应时间可能对于另一个应用却是不可接受的。因此,基于针对绝对值的测试测量的设计不令人满意。
除了基于相对负荷测量的方法之外,一些协议还包括让服务器在过载时拒绝客户机请求的明示功能。在分配器上对这些被拒绝的请求的区分和计数提供了可用来控制分配的另一组测量结果。
图3至7说明分配器的一般UML类和程序图。图3是说明三个实体的UML类图:服务器38、请求40和响应42。服务器具有测量结果、比例的属性,请求具有时标、事务处理标识和超越的属性,响应具有时标和事务处理标识的属性。服务器具有读取和更新操作。
图4说明“分配”使用情况的程序,其中客户机或本地应用42以及远程服务器44表示为在分配器系统之外。请求46被发送到分配器,并且对每个服务器对象实例执行读取操作48,从而获取当前比例,其中包括接收来自服务器对象的响应50。然后根据相对负荷把请求分配52到适当的远程服务器44。
图5说明响应使用情况的程序。图中,远程服务器44把响应发送到分配器控制,分配器控制又把响应发送到客户机或本地应用42。图6说明“测量”使用情况的程序,其中在分配器控制和服务器对象之间进行对测量结果51的更新,并把应答56返回给分配器控制。
图7说明“重新评估”使用情况的程序。这里的外部控制是时间58。属于周期性事件的计时器到期时,由分配器从服务器对象读取测量结果,并进行更新。这两个操作接收来自服务器对象的应答,并在服务器对象的每个实例上被调用。
分配算法不能因服务器的添加和删除而被破坏。虽然其它算法也是可行的,但最好是采用部分分配方案。在优选方案下,服务器的比例表示为根据容量的比率。例如,在其中一个服务器的容量是另外两个服务器的两倍的三个服务器情况下,比率将表示为1∶2∶1。
分配给各服务器的部分的数量为P1、P2、P3...Pn。在上述1∶2∶1的情况下,P1=1,P2=2以及P3=3。分配算法从第一服务器到最后一个服务器以累计方式把这些数量相加,对每个区间记录服务器标识。因此,范围P1-P2分配到服务器2,P2-P3分配到服务器3,依此类推。对于每个服务器请求,产生范围为0到∑Pr(r=1-n)的随机数。范围包含该随机数的服务器是请求被发送到的服务器。
在所产生的随机数等于区间边界值之一的情况下,应用平分(tiebreaker)规则。
在分配器启动时,它假定所有服务器具有相同的容量,并向各服务器分配相同的比例。不是应用值1,而是应用较大的值、如10,以便允许向下和向上调整。
图8说明“分配”使用情况的UML活动图。在60,把值B设置为零。在框62中,对各服务器重新说明服务器范围。这包括以下步骤:在64从各服务器对象读取比例P;在66把范围B到(B+P-1)分配给服务器;以及在68把B的值重新设置为B=B+P。然后在70产生随机数R,并在72设置值X,使得X=R mod B。在74,选取其范围包括X的服务器,然后在76向该服务器发送请求。
在以上说明中,已经确定,选择向哪个服务器发送请求应当基于服务器负荷的相对测量结果,以及采用基于服务器容量的算法来实现分配。以下说明涉及到服务器负荷的测量,并描述测量服务器负荷的三种可能方式:响应时间测量、未完成的响应计数以及请求和响应计数。后一种方式尤其适合,但前两种方法也是可行的。其它方法也是可行的,并且本领域的技术人员也会想到。
响应时间测量
分配器可计算各服务器的响应时间分布。然后再通过直接比较所选测量值、例如平均值或第95个百分点来估算相对负荷。当服务器过载时,它应该在其响应时间中呈现急剧上升。在图12的流程图中说明了这种方案,图中说明在步骤120中的响应时间测量,这种操作对全部服务器来执行,然后是在步骤122中对响应时间分布进行比较。这个方式虽然可行,但却有若干问题:
首先,各个服务器正常工作时的正常响应时间可能明显不同,使得更难以区分过载的服务器。其次,必须收集一定的最小数量的响应时间抽样值,然后才能对其统计分布进行可靠地评估。这使得抽样周期过长,分配器对变化的反应过于缓慢。第三,分配器必须把响应与相关请求相联系以获取定时。
未完成的响应计数
作为一个备选方案,分配器维护对发送到各服务器、没有接收到至少一个响应的请求的数量的计数。由于这是连续测量,因此定期评估可以基于固定间隔或者请求的总数。当服务器变为过载时,应当表现出其未完成响应的增加。TCP负载控制基于这个原理。图13中说明该过程,图中说明,在步骤124中,对没有接收到响应的请求计数,以及在步骤126中,在一段时间上或者在请求总数中对这些计数进行比较。但是,存在两个可能的问题。首先,该方法受到服务器响应时间之间任何正常差异的间接影响。这是根据下述基本排队理论公式得出的:
平均并发性=每秒事务处理(tps)×平均响应时间
因此,同样难以区分受压迫服务器与实质上较慢的服务器。
其次,分配器必须区分对请求的初始响应与后续响应,以便仅在发送了初始响应时才递减未完成响应的计数。这难以实现。
请求和响应计数
这种选择是三种考虑方式中最优选的。分配器在短抽样周期上记录发送到各服务器的请求的数量以及从各服务器收回的响应的数量。然后再通过比较抽样周期中的请求和响应计数来估算相对负荷。该方法在图11中进行说明,图中,在100对服务器请求计数,在步骤110对服务器响应计数,以及在步骤112进行比较。对各服务器重复这个过程。
请求或响应的绝对数量在服务器之间可能因不同的容量而有所不同。但是,只要没有任何服务器过载,各服务器的请求/响应比率应该几乎相同。这取决于各服务器接收请求类型的相同混合,这对于大量请求是真的,但在包含极少请求的短周期上可能不可靠。因此,最好是由所发送的请求总数、而不是由时间周期来定义抽样值。
对于可经过比较以确定相对负荷的值存在许多备选者。请求与响应的直接比率只是一个备选者。下面是一些备选量及其理论范围的非穷举列表。在列表中,Rq为发送到服务器的理论请求的数量,而Rs为返回的响应数量。
1.Rq/Rs: 0 → + ∞
2.Rs/Rq: 0 → + ∞
3.Rq-Rs: - ∞ → + ∞
4.Rs-Rq: - ∞ → + ∞
5.Rq/(Rc+Rs): 0 → 1
6.Rs/(Rs+Rc): 0 → 1
7.(Rq-Rs)/(Rq+Rs): - 1 → + 1
8.(Rs-Rq)/(Rq+Rs): - 1 → + 1
在这些备选值中,第1-4号具有无限范围,由抽样周期具有零响应或请求的可能性引起。选项5和6更着重于请求或响应计数。理论表明,请求和响应计数之间的归一化差是服务器相对负荷的最具信息性表示,表明选项7和8是最佳选择。值的极性是一个考虑事项,也就是说它是随负荷增加还是减少。凭直觉,该值应该随负荷的增加而增加,偏向于选项7。但是,当大多数协议平均每个请求产生略多于一个响应时,则偏向于最后一个选项、即选项8,因为服务器测量结果在正常条件下通常是正的。
图9和图10说明两个服务器在遇到不断增加的业务量时的请求和响应计数。这两个图都是每秒消息(mps)与时间的曲线图。图9的服务器具有较大容量,而图10的服务器具有较小容量。两个服务器分担相等的业务量。这些图强调了当服务器达到其容量且变为受压迫时其响应速率如何达到稳定状态。图9和图10是基于平均每个请求1.5个响应的假设。
在图10中,较小的服务器在时间t1开始达到稳定状态。这时,分配器应该开始把请求业务量转移到较大的服务器上。
分配调整
上文提到,重要的是不要对服务器分配的任何调整进行过度补偿而建立振荡。分配器定期地或者在一定请求数量之后将需要调整分配给各服务器的请求业务量的比例。目的是降低每个服务器所选测量值之间的差异。这可按照如下方式进行:
如果M1、M2、M3...Mn是为各服务器在最后一个抽样周期计算的测量值,μ是它们的算术平均值,而P1、P2、P3...Pn是每个服务器当前所分配的比例,则分配给第r个服务器的新的比例一般由以下类型的公式给出:
Pr=f(Mr,μ,Pr)
两个备选公式及其理论范围如下所述:
1 . ( 1 + ( M r - μ ) / ( | M r | + | μ | ) ) × P c ; 0 → 2 × P r
2 . ( 1 - ( M r - μ ) / ( | M r | + | μ | ) ) × P c ; 0 → 2 × P r
两者之间的差异反映了在以上选项7和8之间的选择中提到的极性选择。这些公式产生与旧值成比例的新值,因而比例绝不允许因算术舍位而被调整为零。
可通过两种方式之一来减少振荡。第一,来自最后几个抽样周期的数据可以显式组合,以便计算对下一个周期的比例的调整。这种方式有效地利用保留数据的滑动窗口。第二,来自先前所有样值的数据可采用衰减公式来隐式组合。在这种方式下,第二周期调整的数据是实际第二周期数据与来自第一周期的数据的平均值。用于第三周期的数据是实际第三周期数据与用于第二周期的数据的平均值,等等。
所述实施例使得能够以反映服务器的单独容量并基于其相对负荷的方式把请求从客户机节点分配到多个服务器。
对所述实施例的各种修改是可行的,并且本领域的技术人员会想到这些修改。例如,测量服务器活动的其它方法是可行的,而且可采纳其它分配调整公式。但是,这些修改在所附权利要求书所定义的本发明的范围之内。

Claims (23)

1.一种把请求从客户机节点分配到具有多个服务器的服务器系统中的一些服务器上的方法,所述方法包括定期重复以下步骤:
测量各个服务器的活动;
根据所述测量的服务器活动来评估所述多个服务器的相对负荷;以及
根据所述相对负荷的评估来调整对所述多个服务器中各个服务器的请求分配;
其中调整对各个服务器的请求分配包括根据所测量的服务器活动、所述多个服务器上的平均活动以及分配给所述服务器的请求的现有比例来调整分配给各个服务器的请求的比例。
2.如权利要求1所述的方法,其特征在于,测量各个服务器的活动包括在抽样周期中对送往所述多个服务器中每一个的服务器请求的数量进行计数以及对从各个服务器接收的服务器响应的数量进行计数。
3.如权利要求2所述的方法,其特征在于,所述抽样周期为一段时间。
4.如权利要求2所述的方法,其特征在于,所述抽样周期包括发送到所述多个服务器的请求的总数。
5.如权利要求2、3或4所述的方法,其特征在于,评估所述多个服务器的相对负荷包括比较在所述抽样周期上所述多个服务器中每一个服务器的服务器请求和响应。
6.如权利要求1所述的方法,其特征在于,测量各个服务器的活动包括计算各个服务器的响应时间。
7.如权利要求6所述的方法,其特征在于,评估所述多个服务器的相对负荷包括比较所述多个服务器中每一个服务器的所述服务器响应时间的分布。
8.如权利要求1所述的方法,其特征在于,测量各个服务器的活动包括对发往各个服务器、但未收到响应的请求的数量进行计数。
9.如权利要求8所述的方法,其特征在于,评估所述多个服务器的相对负荷包括比较在一定的时间间隔上或在送往所有的所述多个服务器的请求总数中没有得到响应的请求的数量。
10.如权利要求1所述的方法,其特征在于,调整请求分配包括组合来自先前的抽样周期的分配数据,以便计算在下一个抽样周期中对分配的调整。
11.如权利要求1或10所述的方法,其特征在于,调整请求分配包括根据延迟公式组合来自先前的抽样周期的数据。
12.如权利要求5所述的方法,其特征在于,通过比较比率(Rq-Rs)/(Rq+Rs)来比较所述相对负荷,其中Rq为发送到所述服务器的请求的数量,而Rs为从所述服务器返回的响应的数量。
13.如权利要求5所述的方法,其特征在于,通过比较比率(Rs-Rq)/(Rq+Rs)来比较所述相对负荷,其中Rq为发送到所述服务器的请求的数量,而Rs为从所述服务器返回的响应的数量。
14.一种用于把请求从客户机节点分配到具有多个服务器的服务器系统中的一些服务器上的系统,所述系统包括位于所述客户机节点的分配器,所述分配器包括用于测量各个服务器的活动的装置、用于根据所述测量的服务器活动来评估所述多个服务器的相对负荷的装置以及用于根据所述相对负荷的评估来调整对所述多个服务器中各个服务器的请求分配的装置;
其中所述分配调整装置包括用于根据所测量的服务器活动、所述多个服务器上的平均活动以及分配给所述服务器的请求的现有比例来调整分配给各个服务器的请求的比例的装置。
15.如权利要求14所述的系统,其特征在于,所述用于测量服务器活动的装置包括用于在抽样周期上对发送到所述多个服务器中每一个服务器的服务器请求的数量进行计数以及对从各个服务器接收的服务器响应的数量进行计数的计数器。
16.如权利要求15所述的系统,其特征在于,所述相对负荷评估装置包括用于在所述抽样周期上比较所述多个服务器中每一个服务器的所述服务器请求和响应的装置。
17.如权利要求14所述的系统,其特征在于,所述活动测量装置包括用于计算各个服务器的响应时间的计算装置。
18.如权利要求17所述的系统,其特征在于,所述相对负荷评估装置包括用于比较所述多个服务器中每一个服务器的所述服务器响应时间分布的装置。
19.如权利要求14所述的系统,其特征在于,所述活动测量装置包括用于对发往各个服务器、但未收到响应的请求的数量进行计数的计数器。
20.如权利要求19所述的系统,其特征在于,所述相对负荷评估装置包括比较器,用于比较在一定时间间隔上或在送往所有的所述多个服务器的请求总数中没有得到响应的请求的数量。
21.如权利要求14所述的系统,其特征在于,所述请求分配调整装置包括组合器,用于组合来自先前的抽样周期的分配数据,以便计算在下一个抽样周期中对分配的调整。
22.如权利要求17所述的系统,其特征在于,用于比较所述服务器请求和响应的装置比较比率(Rq-Rs)/(Rq+Rs),其中Rq为发送到所述服务器的请求的数量,而Rs为从所述服务器返回的响应的数量。
23.如权利要求17所述的系统,其特征在于,用于比较所述服务器请求和响应的装置比较比率(Rs-Rq)/(Rq+Rs),其中Rq为发送到所述服务器的请求的数量,而Rs为从所述服务器返回的响应的数量。
CNB028227875A 2001-09-18 2002-09-18 客户机服务器网络 Expired - Fee Related CN100459608C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB0122507.7 2001-09-18
GBGB0122507.7A GB0122507D0 (en) 2001-09-18 2001-09-18 Client server networks

Publications (2)

Publication Number Publication Date
CN1589558A true CN1589558A (zh) 2005-03-02
CN100459608C CN100459608C (zh) 2009-02-04

Family

ID=9922293

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB028227875A Expired - Fee Related CN100459608C (zh) 2001-09-18 2002-09-18 客户机服务器网络

Country Status (10)

Country Link
US (1) US7519710B2 (zh)
EP (1) EP1430684B1 (zh)
JP (1) JP2005503626A (zh)
CN (1) CN100459608C (zh)
AT (1) ATE291809T1 (zh)
AU (1) AU2002331949A1 (zh)
CA (1) CA2459575C (zh)
DE (1) DE60203404T2 (zh)
GB (1) GB0122507D0 (zh)
WO (1) WO2003026244A2 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011110028A1 (zh) * 2010-03-09 2011-09-15 华为技术有限公司 负载分担方法、系统和接入服务器
CN102195876A (zh) * 2011-03-21 2011-09-21 北京神州绿盟信息安全科技股份有限公司 一种网络任务分配设备、系统和方法
CN102932389A (zh) * 2011-08-11 2013-02-13 阿里巴巴集团控股有限公司 一种请求处理方法、装置及服务器系统

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070037648A (ko) 2004-07-23 2007-04-05 사이트릭스 시스템스, 인크. 주변장치에서 가상 사설망 게이트웨이로 패킷을 라우팅하기위한 방법 및 시스템
US9219579B2 (en) 2004-07-23 2015-12-22 Citrix Systems, Inc. Systems and methods for client-side application-aware prioritization of network communications
US9606821B2 (en) * 2004-12-17 2017-03-28 Intel Corporation Virtual environment manager for creating and managing virtual machine environments
US7810089B2 (en) 2004-12-30 2010-10-05 Citrix Systems, Inc. Systems and methods for automatic installation and execution of a client-side acceleration program
US8954595B2 (en) 2004-12-30 2015-02-10 Citrix Systems, Inc. Systems and methods for providing client-side accelerated access to remote applications via TCP buffering
JP2008527507A (ja) * 2004-12-30 2008-07-24 サイトリックス システムズ, インコーポレイテッド クライアント側の加速技術を提供するシステムおよび方法
US8255456B2 (en) 2005-12-30 2012-08-28 Citrix Systems, Inc. System and method for performing flash caching of dynamically generated objects in a data communication network
US20070168405A1 (en) * 2006-01-17 2007-07-19 Ori Pomerantz Self-optimizing network attached storage for multiple geographic locations
EP2023245B1 (en) 2006-04-26 2016-02-17 Nippon Telegraph And Telephone Corporation Load control device and its method
US20100036903A1 (en) * 2008-08-11 2010-02-11 Microsoft Corporation Distributed load balancer
US20100302944A1 (en) * 2009-05-29 2010-12-02 Bessis Thierry C System & method for load spreading
EP2395710B1 (en) * 2010-06-08 2013-11-06 Alcatel Lucent Device and method for data load balancing
US8589480B2 (en) * 2011-05-24 2013-11-19 Sony Computer Entertainment America Llc Automatic performance and capacity measurement for networked servers
US9448849B2 (en) * 2011-08-31 2016-09-20 Oracle International Corporation Preventing oscillatory load behavior in a multi-node distributed system
US10129769B2 (en) * 2015-12-31 2018-11-13 Affirmed Networks, Inc. Adaptive peer overload control in mobile networks

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5377327A (en) * 1988-04-22 1994-12-27 Digital Equipment Corporation Congestion avoidance scheme for computer networks
US5664106A (en) * 1993-06-04 1997-09-02 Digital Equipment Corporation Phase-space surface representation of server computer performance in a computer network
US5649103A (en) * 1995-07-13 1997-07-15 Cabletron Systems, Inc. Method and apparatus for managing multiple server requests and collating reponses
US6078943A (en) * 1997-02-07 2000-06-20 International Business Machines Corporation Method and apparatus for dynamic interval-based load balancing
US6173322B1 (en) * 1997-06-05 2001-01-09 Silicon Graphics, Inc. Network request distribution based on static rules and dynamic performance data
US5946686A (en) * 1997-07-11 1999-08-31 International Business Machines Corporation Parallel file system and method with quota allocation
US6697103B1 (en) * 1998-03-19 2004-02-24 Dennis Sunga Fernandez Integrated network for monitoring remote objects
US6138159A (en) * 1998-06-11 2000-10-24 Phaal; Peter Load direction mechanism
US6327622B1 (en) * 1998-09-03 2001-12-04 Sun Microsystems, Inc. Load balancing in a network environment
JP3270012B2 (ja) * 1998-09-08 2002-04-02 富士通株式会社 ネットワークサーバ負荷検出装置、割当装置および方法
AU1119100A (en) * 1998-10-16 2000-05-08 Objectera, Inc. Connection concentrator for distributed object systems
JP3550503B2 (ja) * 1998-11-10 2004-08-04 インターナショナル・ビジネス・マシーンズ・コーポレーション 通信を可能とするための方法及び通信システム
US6587881B1 (en) * 1999-04-09 2003-07-01 Microsoft Corporation Software server usage governor
US6560717B1 (en) * 1999-12-10 2003-05-06 Art Technology Group, Inc. Method and system for load balancing and management
US20030046394A1 (en) * 2000-11-03 2003-03-06 Steve Goddard System and method for an application space server cluster
US7321926B1 (en) * 2002-02-11 2008-01-22 Extreme Networks Method of and system for allocating resources to resource requests

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011110028A1 (zh) * 2010-03-09 2011-09-15 华为技术有限公司 负载分担方法、系统和接入服务器
CN102195851A (zh) * 2010-03-09 2011-09-21 华为技术有限公司 负载分担方法、系统和接入服务器
US8972593B2 (en) 2010-03-09 2015-03-03 Huawei Technologies Co., Ltd. Load sharing method, load sharing system and access server
CN102195876A (zh) * 2011-03-21 2011-09-21 北京神州绿盟信息安全科技股份有限公司 一种网络任务分配设备、系统和方法
CN102195876B (zh) * 2011-03-21 2014-07-02 北京神州绿盟信息安全科技股份有限公司 一种网络任务分配设备、系统和方法
CN102932389A (zh) * 2011-08-11 2013-02-13 阿里巴巴集团控股有限公司 一种请求处理方法、装置及服务器系统
CN102932389B (zh) * 2011-08-11 2016-06-22 阿里巴巴集团控股有限公司 一种请求处理方法、装置及服务器系统

Also Published As

Publication number Publication date
CA2459575C (en) 2012-07-24
US7519710B2 (en) 2009-04-14
GB0122507D0 (en) 2001-11-07
CA2459575A1 (en) 2003-03-27
JP2005503626A (ja) 2005-02-03
DE60203404T2 (de) 2005-09-08
DE60203404D1 (de) 2005-04-28
EP1430684B1 (en) 2005-03-23
CN100459608C (zh) 2009-02-04
US20050038891A1 (en) 2005-02-17
ATE291809T1 (de) 2005-04-15
WO2003026244A2 (en) 2003-03-27
WO2003026244A3 (en) 2003-06-19
AU2002331949A1 (en) 2003-04-01
EP1430684A2 (en) 2004-06-23

Similar Documents

Publication Publication Date Title
CN1589558A (zh) 客户机服务器网络
CN108376112B (zh) 压力测试方法、装置及可读介质
KR101242954B1 (ko) 저장부로 향하는 입/출력(i/o) 요청을 큐잉할지 여부를 결정하기 위한 우선순위의 이용
US6222856B1 (en) Adaptive bandwidth throttling for individual virtual services supported on a network server
US7568028B2 (en) Bottleneck detection system, measurement object server, bottleneck detection method and program
US20050076043A1 (en) Workload scheduler with resource optimization factoring
CN104714851B (zh) 一种实现资源分配的方法及装置
KR101923706B1 (ko) 확률적 스로틀링
WO2007032603A1 (en) Load balancing method and apparatus, and software streaming system using the same
CN101089818A (zh) 用于处理数据包的方法和上游处理节点
US7177271B2 (en) Method and system for managing admission to a network
CN101089819A (zh) 用于动态稳定流处理系统的方法和上游处理节点
US20100005468A1 (en) Black-box performance control for high-volume throughput-centric systems
RU2016103796A (ru) Система и способ управления полосой пропускания данных
US20110153828A1 (en) Load balancing apparatus and method for regulating load using the same
CN102130914B (zh) 多媒体文件推送方法和装置
US8224938B2 (en) Data processing system and method for iteratively re-distributing objects across all or a minimum number of processing units
US20040158637A1 (en) Gated-pull load balancer
US7636778B2 (en) System and method for providing continual rate requests
JP2003323224A (ja) ライセンス管理システムおよび方法、情報処理装置および方法、並びにプログラム
JP5981036B2 (ja) 自動的なスキャン行為の判断方法及び装置
CN1311696C (zh) 基于网络拥塞层次的通信网络的自适应服务成本
US8392578B1 (en) Method and apparatus for controlling access to a website
Yang et al. Bandwidth sharing: The role of user impatience
CN1878094A (zh) 一种网络最大可用带宽的测试方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1075149

Country of ref document: HK

ASS Succession or assignment of patent right

Owner name: L.M. ERICSSON CO., LTD.

Free format text: FORMER OWNER: M(DGPI) CO., LTD.

Effective date: 20070126

Owner name: M(DGPI) CO., LTD.

Free format text: FORMER OWNER: MARCONI UK INTELLECTUAL PROP

Effective date: 20070126

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20070126

Address after: Stockholm, Sweden

Applicant after: ERICSSON AB

Address before: Coventry, United Kingdom

Applicant before: M (DGPI) Ltd.

Effective date of registration: 20070126

Address after: Coventry, United Kingdom

Applicant after: M (DGPI) Ltd.

Address before: Coventry, United Kingdom

Applicant before: MARCONI UK INTELLECTUAL PROPERTY Ltd.

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1075149

Country of ref document: HK

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090204

Termination date: 20160918