用于管理响应等待时间的设备、系统和方法

文档序号:7972672阅读:117来源:国知局
专利名称:用于管理响应等待时间的设备、系统和方法
技术领域
本发明涉及管理响应等待时间,并且尤其涉及管理当把客户端与远程计算模块(computation module)相关联时的响应等待时间(latency)。
背景技术
诸如计算机工作站、终端、服务器、大型计算机等的数据处理装置(此处被称为客户端)经常会采用远程计算模块来执行一个或多个软件处理。所述计算模块可以是服务器等。所述服务器可以被配置为刀片式服务器、驻留在刀片中心内的具有一个或多个处理器、存储器和通信能力的模块化服务器。所述刀片中心可以是外壳,诸如安装在机架上的机箱,并具有多个其它刀片式服务器。所述刀片中心可以包括数据存储设备、数据存储系统接口和通信接口。数据中心可以包括多个刀片中心。
所述计算模块和客户端可以通过交换数据分组(此处被称为分组)来进行通信。分组可以在计算模块和客户端之间经由一个或多个通信模块来传递。每一分组均包括目的地地址和一个或多个数据字段,所述数据字段包括传输信息、指令和数据。通信模块可以接收来自计算模块或者客户端的分组,并且向分组的目的地地址传送所述分组。一个或多个通信模块可以收发在计算模块和客户端之间传递的每一个分组。
客户端可以向请求与数据中心计算模块相关联的一个或多个数据中心传递请求或者信标。如果数据中心包括具有足够的处理带宽以支持客户端的计算模块,则数据中心可以对所述信标作出响应。当与客户端相关联时,所述计算模块可以为该客户端执行一个或多个软件处理。
使人遗憾的是,虽然所述计算模块可能具有足够的处理带宽用于客户端,但是输入/输出(“I/O”)响应等待时间仍过大。I/O响应等待时间(此处被称为响应等待时间)是向计算模块传递输入消息并且从客户端和计算模块返回响应消息所需的时间。例如,第一数据中心可以包括具有充足的闲置(spare)处理带宽以支持客户端的计算模块。但是因多个通信模块重复地收发分组而使得计算模块和客户端之间的通信仍然可能受到延迟,从而使得客户端和计算模块之间的通信受到严重恶化。由此,由于较长的响应等待时间,具有足够处理带宽的计算模块未必会向客户端提供适当的服务。
响应等待时间可能难以测量。例如,测量响应等待时间可能要求在传送分组的设备和接收分组的设备处的时钟同步。另外,响应等待时间的测量经常会随通信模块的通信负载而变化,由此导致了随实例不同而变化的响应等待时间测量。
根据先前的讨论,应该清楚的是,需要有一种用于使用可靠的响应等待时间测量来管理与客户端相关联的计算模块的响应等待时间的设备、系统和方法。有益的是,这种设备、系统和方法将会把客户端与将向客户端提供预期的服务级别的计算模块相关联。

发明内容
为适应所属技术领域的目前状态,特别是为适应所属领域中通过目前可利用的响应等待时间管理方法仍未彻底解决的问题和需要,而开发了本发明。因此,开发了本发明,以便提供一种用于管理响应等待时间的设备、系统和方法,它们能够克服所属领域中的许多或全部上述缺陷。
用于管理响应等待时间的设备具有包含多个模块的逻辑部件,所述多个模块被配置为在功能上执行如下必要步骤识别计算模块、计算用于收发分组的通信模块的数目、并且关联客户端。所描述的实施例中的这些模块包括识别模块、计算单元模块(calculation module)和关联模块。
所述识别模块识别计算模块。所述计算模块可以是用于与客户端相关联的目标。在一个实施例中,客户端传递用于请求与计算模块的关联的信标。识别模块可以将计算模块识别为具有足以支持客户端的闲置处理带宽。
计算单元模块计算用于在计算模块和客户端之间收发分组的通信模块的数目。收发分组的通信模块的数目在此处被称为跳次计数。跳次计数可以是用于在计算模块和客户端之间通信的响应等待时间的近似值。在一个实施例中,所述计算单元模块使用分组的“生存周期(time to live)”数据字段来计算收发分组的通信模块的数目。
所述关联模块对跳次计数满足响应策略的计数范围作出响应,把客户端与计算模块相关联。所述响应策略可以指定在一个或多个环境下计算模块和客户端之间的最大容许响应等待时间。在一个实施例中,所述计数范围指定当关联模块首次试图将客户端与第一计算模块相关联时的最大容许响应等待时间。如果客户端和计算模块之间的响应等待时间符合响应策略,那么所述设备通过把客户端与计算模块相关联来管理客户端和计算模块之间的响应等待时间。
还提供了本发明的系统来管理响应等待时间。所述系统可以依照诸如刀片中心之类的客户端/服务器系统来实现。特别的是,在一个实施例中,所述系统包括客户端、多个刀片式服务器、多个通信模块、识别模块、计算单元模块和关联模块。在一个实施例中,所述系统还可以包括有效设备模块、地址模块和安全模块。
客户端可以是计算机工作站、终端、服务器、大型计算机等。客户端经由一个或多个通信模块与每一刀片式服务器进行通信。每一刀片式服务器可以为客户端执行一个或多个软件处理。
在一个实施例中,所述有效设备模块维护有效通信模块地址列表。所述识别模块识别第一刀片式服务器。所述计算单元模块计算用于在第一刀片式服务器和客户端之间收发分组的通信模块的数目,作为跳次计数。在一个实施例中,所述地址模块记录收发分组的每一通信模块的地址。
所述关联模块对跳次计数满足响应策略的计数范围作出响应,把客户端与第一刀片式服务器相关联。如果跳次计数不满足计数范围,那么关联模块可以对跳次计数满足响应策略的扩展计数范围、以及在先前关联尝试期间客户端不与第二刀片式服务器相关联作出响应,把客户端与第一刀片式服务器相关联。
在一个实施例中,安全模块可以对客户端经由无效的通信模块与第一刀片式服务器进行通信作出响应,阻止客户端与第一刀片式服务器进行关联。所述系统管理客户端与刀片式服务器相关联的响应等待时间,并且通过检查经由无效通信模块的通信来预防未经授权的客户端与刀片式服务器相关联。
还提供了本发明的方法来管理响应等待时间。所公开的实施例中的方法基本上包括用于执行上文中就所述设备和系统的操作所给出的功能所需的步骤。在一个实施例中,所述方法包括识别计算模块,计算收发分组的通信模块的数目,并且关联所述客户端。所述方法还可以包括生成事故单(trouble ticket)。
识别模块识别计算模块。计算单元模块计算用于在计算模块和客户端之间收发分组的通信模块的数目,作为跳次计数。关联模块对跳次计数满足响应策略的计数范围作出响应,把客户端与计算模块相关联。在一个实施例中,事故单模块对指定数目的客户端具有大于计数范围的跳次计数作出响应,生成事故单。所述方法为客户端管理响应等待时间,以便使计算模块向客户端提供可接受的服务。
在整个说明书中,对特征、优点的描述或类似语言并不意味着可以采用本发明实现的所有特征和优势应该是或者的确是在本发明的任何单个实施例中。相反,应该把描述了特征和优点的语言理解为这样的意思,即结合实施例所描述的具体特征、优点或者特性被包括在本发明的至少一个实施例中。因此,在整个说明书中,对特征和优点的描述或类似的语言可以但未必涉及相同的实施例。
此外,在一个或多个实施例中,所描述的本发明的特征、优点和特性可以依照任何适当的方式进行组合。所属领域技术人员将会意识到的是,本发明可以在没有特定实施例的一个或多个具体特征或优势的情况下实施。在其它情况下,在某些实施例中可能会出现不一定存在于本发明的所有实施例中的额外的特征和优点。
本发明计算客户端和计算模块之间的跳次计数,并且对跳次计数满足响应策略的计数范围作出响应,把客户端与计算模块相关联。另外,当客户端和计算模块之间的响应等待时间超出计数范围时,或者当客户端经由无效的通信模块与计算模块通信时,本发明阻止客户端与计算模块进行关联。通过下列描述和所附的权利要求书,本发明的这些特征和优点将变得更加明显,或者它们可以通过如此后所述那样实践本发明来获知。


为了使本发明的优点易于理解,将参考在附图中所图示的具体实施例来呈现对上文简述的本发明的更加具体的描述。应理解的是,这些附图只描述了本发明的典型实施例,因此不应将其视为对本发明范围的限制,将通过使用附图更加具体和详细地描述和解释本发明,其中图1是举例说明依照本发明的客户端/服务器系统的一个实施例的示意性框图;图2是举例说明本发明的响应等待时间管理设备的一个实施例的示意性框图;图3是举例说明依照本发明的客户端/刀片式服务器系统的一个
具体实施例方式
此说明书中所描述的许多功能部件都被称为模块,以便更加特别地强调其实现方式的独立性。例如,模块可以作为硬件电路来实现,所述硬件电路包括常规的超大规模集成(“VLSI”)电路或者门阵列、诸如逻辑芯片、晶体管之类的现有半导体或者是其它分立的元件。模块还可以用可编程硬件设备、诸如现场可编程门阵列、可编程阵列逻辑、可编程逻辑器件等实现。
模块还可以用软件实现,以便由各种类型的处理器执行。举例来说,一个标识的可执行代码模块可以包括计算机指令的一个或多个物理或者逻辑块,举例来说,其可以被构建为对象、程序或函数。尽管如此,所标识模块的可执行代码无需物理地位于一起,而是可以包括存储在不同位置上的不同的指令,当这些指令逻辑上结合在一起时,其构成模块并且实现该模块的规定目的。
实际上,可执行代码模块可以是单条指令或者是许多指令,并且甚至可以分布在多个不同代码段上,分布在不同程序当中,以及跨越多个存储器设备分布。同样地,操作数据可以在模块内被识别并且图示,并且可以依照任何适当的形式实现并且被组织在任何适当类型的数据结构内。所述操作数据可以作为单个数据集被收集,或者可以分布在不同位置上(包括在不同存储设备上),并且至少部分地可以仅作为电子信号存在于系统或网络上。
在整个说明书中所提及的“一个实施例”、“实施例”或者类似的语言是指把结合实施例描述的特定特征、结构或者特征包含在本发明的至少一个实施例中。因此,在整个说明书中,短语“在一个实施例中”、“在一实施例中”以及类似语言的出现可以但也未必全部涉及相同的此外,在一个或多个实施例中,所描述的本发明的特征、结构和特性可以依照任何适当的方式进行组合。在随后的描述中,提供了很多具体细节,诸如编程示例、软件模块、用户选择、网络事务、数据库查询、数据库结构、硬件模块、硬件电路、硬件芯片等,以便提供对本发明实施例的彻底的了解。然而,所属领域技术人员将会意识到的是,本发明可以在没有一个或多个该具体细节的情况下实施,或者可以利用其它的方法、组件、材料等来实施。在其它情况下,没有示出或详细说明众所周知的结构、材料或操作以免模糊本发明的各个方面。
图1是举例说明依照本发明的客户端/服务器系统100的一个实施例的示意性框图。所述系统100包括一个或多个数据中心105、一个或多个通信模块115和客户端120。另外,每一数据中心105均包括一个或多个计算模块110。虽然为了简单起见把系统100描述为具有两个数据中心105、三个通信模块115和一个客户端120,但是可以采用任意数目的数据中心105、通信模块115和客户端120。另外,每一数据中心105均可以包括任意数目的计算模块110。
客户端120可以是终端、计算机工作站等。用户可以采用客户端120。客户端120还可以在没有用户输入的情况下执行功能。计算模块110可以是服务器、刀片式服务器、大型计算机等。计算模块110被配置为为客户端120执行一个或多个软件处理。例如,计算模块110可以为客户端120执行数据库程序。计算模块110还可以为客户端120执行所有软件处理,所述客户端诸如是被配置为终端的客户端120。
客户端120和计算模块110经由一个或多个通信模块115进行通信。每一通信模块115均可以是路由器、交换机等。通信模块115可以被组建为网络。客户端120和计算模块110通过向通信模块115传送分组来进行通信。所述分组包括表明分组的最终目的地的目的地地址。通信模块115收发发往最终目的地的分组,这要么是通过直接向目的地传递分组来实现,要么是通过向在逻辑上较靠近最终目的地的通信模块115传递分组来实现。
例如,客户端120可以向第三通信模块115c传递分组。所述分组包括用于指定第一计算模块110a作为最终目的地的目的地地址数据字段。第三通信模块115c对于第二通信模块115b收发所述分组,而第二通信模块115b对于第一通信模块115a收发所述分组。然后,第一通信模块115a向第一计算模块110a传递所述分组。
客户端120向请求与计算模块110关联的一个或多个数据中心105传递信标。与客户端120相关联的计算模块110可以为客户端120执行软件处理。数据中心105可以识别具有闲置处理带宽的计算模块110,以便使所述计算模块110可以向客户端120提供可接受的计算服务级别。
使人遗憾的是,如果计算模块110和客户端120之间的响应等待时间过大,那么识别出的计算模块110未必能够向客户端120提供可接受的服务级别,即便计算模块110具有足够的处理带宽也一样。例如,在于客户端120处发出诸如指令或数据的输入与接收来自计算模块110的响应之间,客户端120的用户可能会经历很长的时间延迟。然而,期望的是,输入和响应之间的时间延迟相对较短。
使人遗憾的是,响应等待时间可能难以测量。例如,响应等待时间测量方法依赖于用于测量响应等待时间的同步时钟。另外,所测量的响应等待时间可能因实例不同而明显存在变化,这是由于通信模块115的通信负载的变化等引起的。
另外,未经授权的客户端120可能也会试图与计算模块110关联。如果数据中心105允许未经授权的客户端120与计算模块110关联,那么一个或多个数据中心105中的重要数据以及安全性可能会受到严重损害。
系统100使用可重复的响应等待时间测量来管理与客户端120相关联的计算模块110的响应等待时间。在一个实施例中,所述系统100还使用所述信息来管理响应等待时间,以便阻止未经授权的客户端120与计算模块110进行关联。
图2是举例说明本发明的响应等待时间管理设备200的一个实施例的示意性框图。图1的一个或多个计算模块110可以包括设备200。在所述实施例中,设备200包括计算单元模块205、关联模块210、识别模块215、有效设备模块220、地址模块225、安全模块230和事故单模块235。
在一个实施例中,所述有效设备模块220维护有效通信模块110的地址列表。所述列表可以包括由管理员收集的文件,其中添加到网络中的每一有效通信模块110的地址也被添加到所述文件中。
识别模块215识别诸如图1的第一计算模块110a之类的第一计算模块110a。在一个实施例中,所述识别模块215响应于来自客户端120(诸如图1的客户端120)的用于请求与计算模块110进行关联的请求,而识别第一计算模块110a。识别模块215可以将第一计算模块110a识别为具有足以支持客户端120的闲置处理带宽。
在一个实施例中,如果第一计算模块110a具有指定级别的闲置处理带宽,那么第一计算模块110a具有足够的闲置处理带宽。例如,如果第一计算模块110a具有百分之八十(80%)的闲置处理带宽,那么所述识别模块215可以识别出第一计算模块110a。在替代性的实施例中,如果第一计算模块110a与低于指定最大值的多个客户端120相关联,那么第一计算模块110a具有足够的闲置处理带宽。例如,如果第一计算模块110a与三个(3个)或者更少的客户端120相关联,那么第一计算模块110a可能具有足够的闲置处理带宽。
计算单元模块205计算用于在第一计算模块110a和客户端120之间收发分组的通信模块115(诸如图1的通信模块115)的数目。收发分组的通信模块115的数目是跳次计数。所述跳次计数是计算模块和客户端之间的通信的响应等待时间的近似值。计算单元模块205根据分组中包括的信息来计算跳次计数,并且不要求同步时钟等。在一个实施例中,所述计算单元模块使用分组中的“生存周期”数据字段来计算收发分组的通信模块的数目。所述跳次计数也是用于响应等待时间的可靠度量。
在一个实施例中,所述地址模块225记录收发分组的每一通信模块115的地址。例如,如果图1的客户端120向图1的第一计算模块110a传递分组,那么地址模块225记录第三通信模块115c、第二通信模块115b和第一通信模块115a的地址。
如果跳次计数满足可能包括计数范围的响应策略,那么所述关联模块210把客户端120与第一计算模块110a相关联。当在一个或多个环境下由计算模块和客户端之间的跳次计数来测量响应等待时间时,所述响应策略可以指定最大容许响应等待时间。例如,计数范围可以是值四(4),其表明用于收发在客户端120和第一计算模块110a之间传递的分组的通信模块115的容许数目是零到四(0~4)个通信模块115。
例如,对于具有计数范围为四(4)的响应策略来说,所述识别模块215可以识别第一计算模块110a以便与客户端120关联。计算单元模块205可以计算跳次计数为三(3),这是因为在客户端120和第一计算模块110a之间传递的分组经过三个通信模块115。因为跳次计数三(3)满足计数范围四(4),所以关联模块210可以把客户端120与第一计算模块110a相关联。
在一个实施例中,所述计数范围指定当关联模块210首次试图将客户端120与计算模块110相关联时的最大容许响应等待时间。如果跳次计数满足响应策略的扩展计数范围,并且如果客户端120在先前的关联尝试期间没有与第二计算模块110b(诸如图1的第二计算模块110b)相关联,那么关联模块210还可以把客户端120与第一计算模块110a相关联。
例如,对于具有计数范围为二(2)的响应策略来说,响应于来自图1的客户端120的、用于请求与计算模块110进行关联的请求,所述识别模块215可以识别图1的第二计算模块110b。所述计算单元模块205可以计算出在客户端120和第二通信模块110b之间的通信的跳次计数是二(2)。虽然所述跳次计数仍满足计数范围,但是关联模块210有可能无法把客户端120与第二计算模块110b相关联,这是因为,例如,第二计算模块110b可能缺少足够的处理带宽。
所述识别模块215随后可以识别出第一计算模块110a以便与客户端120关联。所述计算单元模块205计算出在客户端120和第一计算模块110a之间的通信的跳次计数是三(3)。如果响应策略指定扩展计数范围是六(6),那么当跳次计数三(3)满足扩展计数范围六(6)时,并且当所述客户端120在先前的关联尝试期间没有与第二计算模块110b相关联时,关联模块210可以把客户端120与第一计算模块110a相关联。由此,当环境需要时,诸如当一个或多个数据中心105过度使用时,设备200可能会以较长响应等待时间把客户端120与计算模块110相关联。
在一个实施例中,设备200为每个客户端120定期地检查具有改进的跳次计数的计算模块110。如果具有改进的跳次计数的计算模块110被识别出,那么设备200可以把客户端120的关联转移到具有改进的跳次计数的计算模块110。
在一个实施例中,如果指定数目的客户端120具有不满足计数范围的跳次计数,那么事故单模块235生成事故单。例如,所述事故单模块235可以记录与计算模块110相关联的、其中跳次计数不满足计数范围的每一客户端120。所述事故单模块235把所记录的客户端120的数目与诸如三十(30)之类的指定数目进行比较。如果所记录的客户端120的数目超出客户端120的指定数目三十(30),那么事故单模块235生成事故单,并且可以把事故单传递给管理员或者软件处理。管理员或者软件处理可以响应于所述事故单而重新配置一个或多个系统100。例如,管理员可以把计算模块110添加到数据中心105中。
在一个实施例中,安全模块230可以对客户端120经由无效通信模块115与第一计算模块110a进行通信作出响应,阻止客户端120与第一计算模块110a进行关联。安全模块230可以使用由地址模块225记录的通信模块115的地址来识别无效通信模块115。例如,未经授权的客户端120可以经由图1中的第三通信模块115c来进行通信。如果第三通信模块115c的地址不在由有效设备模块220维护的有效通信模块110的地址列表中,那么安全模块230可以把由地址模块225记录的第三通信模块115c的地址识别为无效的,并且阻止未经授权的客户端120与计算模块110进行关联。设备200管理与计算模块110相关联的客户端120的响应等待时间,并且通过检查经由无效通信模块115的通信来预防未经授权的客户端120与计算模块110进行关联。
图3是举例说明依照本发明的客户端/刀片式服务器系统300的一个实施例的示意性框图。系统300可以是图1的系统100的一个实施例。如图所示,所述系统300包括数据中心105、一个或多个路由器320和客户端120。数据中心105包括一个或多个刀片中心310,每一刀片中心均包括一个或多个刀片式服务器315。
所述刀片中心310可以是安装在机架上的外壳,具有用于多个刀片式服务器315的连接。另外,刀片中心310可以包括通信接口,与数据存储系统、数据存储设备等的接口。刀片中心310可以与数据中心105通信,并且数据中心105可以与路由器320通信。
刀片式服务器315可以被配置为模块化服务器。每一刀片式服务器315均可以经由刀片中心310、数据中心105和路由器320与客户端120进行通信。每一刀片式服务器315均可以为一个或多个客户端120提供计算服务。
图4是举例说明依照本发明的刀片式服务器315的一个实施例的示意性框图。所述刀片式服务器315可以包括一个或多个处理器模块405、存储器模块410、北桥模块415、接口模块420和南桥模块425。虽然把刀片式服务器315描述为具有四个处理器模块405,但是刀片式服务器315可以采用任意数目的处理器模块405。
此处被称为组件的处理器模块405、存储器模块410、北桥模块415、接口模块420和南桥模块425可以在一个或多个半导体衬底上由半导体门电路来制造。每一半导体衬底可以被封装在一个或多个半导体器件中,所述半导体器件被安装在电路卡上。这些组件之间的连接可以通过半导体金属层、衬底到衬底的布线、或者连接半导体器件的电路卡迹线(trace)或者电线来实现。
所述存储器模块410存储软件指令和数据。所述处理器模块405执行软件指令并且对数据进行操作,正如本领域技术人员公知的那样。在一个实施例中,存储器模块410存储软件指令和数据,并且处理器模块405执行该软件指令和数据,其中该软件指令和数据包括图2的计算单元模块205、关联模块210、识别模块215、有效设备模块220、地址模块225、安全模块230和事故单模块235。
所述处理器模块405可以经由北桥模块415、南桥模块425和接口模块420与计算模块110或者客户端120(诸如图1的计算模块110或者客户端120)进行通信。例如,执行识别模块215的处理器模块405可以通过经由接口模块420查询一个或多个计算模块110的闲置处理带宽来识别第一计算模块110a。执行计算单元模块205的处理器模块405可以通过读取经由接口模块420从客户端120接收的分组的“生存周期”数据字段,并且通过从一个已知值(诸如标准的初始“生存周期”数据字段值)中减去“生存周期”数据字段的值,来计算跳次计数,正如下面将解释的那样。在某一个实施例中,执行关联模块210的处理器模块405通过经由接口模块420与客户端120和计算模块110a通信,来把客户端120与第一计算模块110a相关联。
随后的示意性流程图总体上是作为逻辑流程图提出的。因而,所述的顺序和标记的步骤表示所给出的方法的一个实施例。可以设想出在功能、逻辑或效果上等效于所示方法的一个或多个步骤或者其一部分的其它步骤和方法。另外,所采用的格式和符号是为解释所述方法的逻辑步骤而提供的,并且应当理解为不对所述方法的范围构成限制。虽然在流程图中采用了各种箭头类型和线类型,但是应理解这些不是对相应方法的范围的限制。实际上,某些箭头或者其它连接符仅用来表明方法的逻辑流程。举例来说,箭头可以表明所述方法的所列举步骤之间的未规定持续时间的等待或者监控时段。另外,执行特定方法的顺序可以或者未必严格地遵循所示出的相应步骤的顺序。
图5是举例说明本发明的响应等待时间管理方法500的一个实施例的示意性流程图。所述方法500基本上包括用于实现上文中就图1和3的所述系统100、300和图2的设备200所述的操作而给出的功能所必需的步骤。
在一个实施例中,方法500开始,并且有效设备模块220(诸如图2的有效设备模块220)维护有效通信模块115的地址列表(步骤505)。在某一个实施例中,有效设备模块220根据一个或多个记录了由网络的一个或多个部分所使用的通信模块115的地址(诸如图1的通信模块115的地址)的配置文件,来维护所述列表(步骤505)。所述列表可以被组建为数据字段的链接阵列,每一数据字段阵列包括有效通信模块115的地址。
识别模块215(诸如图2的识别模块215)识别第一计算模块110a(诸如图1的第一计算模块110a)(步骤510)。在一个实施例中,所述识别模块215响应于来自客户端120(诸如图1的客户端120)的、请求与计算模块110进行关联的信标,而识别第一计算模块110a(步骤510)。在一个实施例中,识别模块215查询一个或多个计算模块110的可用闲置处理带宽,并且将第一计算模块110a识别为具有足够的闲置处理带宽以便为客户端120执行软件处理。
计算单元模块205(诸如图2的计算单元模块205)计算在第一计算模块110a和客户端120之间收发分组的通信模块115的数目,作为跳次计数(步骤515)。在一个实施例中,所述计算单元模块205使用分组的“生存周期”数据字段来计算跳次计数(步骤515)。
所述“生存周期”数据字段防止诸如无效分组之类的分组经由网络被无限地收发。当最初传送分组时,诸如计算模块110或者客户端120之类的发送设备可以把“生存周期”数据字段设定为指定的、诸如二十(20)之类的初始值。收发分组的每一通信模块115然后可以把“生存周期”数据字段递减一个指定的值、诸如一。当分组的“生存周期”数据字段值被递减为零(0)时,通信模块115可以删除所述分组。
计算单元模块205可以按照指定的初始“生存周期”数据字段值减去当所述分组到达目的地地址时的“生存周期”数据字段值,来计算跳次计数(步骤515)。例如,如果分组的“生存周期”数据字段的指定初始值是十(10),并且当分组到达目的地地址(诸如第一计算模块110a)时的“生存周期”数据字段的值是四(4),那么计算单元模块205可以计算出所述跳次计数是六(6)。
在一个实施例中,地址模块225记录收发分组的每一通信模块115的地址(步骤520)。例如,收发分组的每一通信模块115可以把通信模块115的自身地址添加到分组中。所述地址模块225可以根据附加到所述分组上的地址来记录用于收发分组的每一通信模块115的地址(步骤520)。
关联模块210确定所述跳次计数是否满足响应策略的计数范围(步骤525)。例如,如果计数范围是十五(15),而跳次计数是十二(12),那么跳次计数满足计数范围。如果跳次计数满足计数范围,那么关联模块210把第一计算模块110a与客户端120相关联(步骤530)。在一个实施例中,所述关联模块210通过在第一计算模块110a上产生与客户端120通信的软件处理,来将第一计算模块110a和客户端120相关联(步骤530)。在某一个实施例中,确定所述跳次计数是否满足计数范围的处理(步骤525)还包括安全检查。例如,未经授权的客户端120经常试图经由许多通信模块115与计算模块110相关联。把容许的跳次计数限制为所述计数范围,可以防止许多无效的客户端120的关联(530)。
如果跳次计数不满足计数范围,那么关联模块210可以确定跳次计数是否满足响应策略的扩展计数范围(步骤535)。在一个实施例中,如果跳次计数满足扩展计数范围,并且如果客户端120在先前的关联尝试期间没有与第二计算模块110b(诸如图1的第二计算模块110b)相关联,那么关联模块210确定跳次计数满足扩展计数范围(步骤535)。例如,如果识别模块215先前识别出第二计算模块110b用于与客户端120关联,但是关联模块210没有将第二计算模块110b与客户端120相关联,那么关联模块210可以确定所述跳次计数满足扩展计数范围(步骤535)。
如果关联模块210确定跳次计数不满足扩展计数范围(步骤535),那么识别模块215可以识别第三计算模块110c(步骤510)。在一个实施例中,如果跳次计数满足扩展计数范围,那么安全模块230确定把客户端120与第一计算模块110a进行关联是否存在安全风险(步骤540)。如果地址模块225记录了(步骤520)不在由有效设备模块220所维护(步骤505)的有效通信模块115的列表中的通信模块115的地址,那么把客户端120与第一计算模块110a进行关联可能会存在安全风险。
如果安全模块230确定把第一计算模块110a与客户端120进行关联存在安全风险(步骤540),那么方法500终止。如果安全模块230确定把第一计算模块110a与客户端120进行关联不会存在安全风险(步骤540),那么关联模块210将所述客户端120与第一计算模块110a相关联(步骤530)。方法500使用跳次计数作为响应等待时间的量度,来管理与计算模块110关联的客户端120的响应等待时间。
图6是举例说明本发明的事故单生成方法600的一个实施例的示意性流程图。所述方法600基本上包括用于执行上文中就图2的所述设备200的操作而给出的功能所必需的步骤。
在一个实施例中,事故单模块235(诸如图2的事故单模块235)为关联至计算模块110(诸如图1的计算模块110)的每个客户端120(诸如图1的客户端120)维护跳次计数记录(步骤605)。所述事故单模块235可以进一步确定关联到计算模块110的、具有不满足计数范围的跳次计数的客户端120是否超出了指定数目(步骤610)。如果具有不满足计数范围的跳次计数的客户端120超出了指定数目,那么事故单模块235生成一个事故单(步骤615)。在一个实施例中,事故单模块通知管理员以便使管理员可以采取措施来减少客户端120的响应等待时间。如果具有不满足计数范围的跳次计数的客户端120没有超出指定数目,那么事故单模块235继续维护与计算模块110关联(步骤530)的客户端120的跳次计数的记录(步骤605)。所述方法600生成事故单(步骤615),以便使管理员可以采取正确的动作来改进响应等待时间。
图7是举例说明依照本发明的分组700的一个实施例的示意性框图。分组700可以是在图1中的客户端120、计算模块110和通信模块115之间传递的分组。在一个实施例中,分组700包括目的地地址数据字段705。目的地地址数据字段705可以包括诸如图1的客户端120或者图1的计算模块110之类的设备的逻辑地址。分组700还可以包括用于标识分组700的分组标识(“ID”)数据字段710。
在一个实施例中,所述分组700包括“生存周期”数据字段715。所述“生存周期”数据字段715可以被设置为指定的初始值,诸如四十(40)。诸如用于收发分组700的通信模块115之类的每一个设备均可以递减“生存周期”数据字段715的值。例如,接收具有“生存周期”数据字段715的值为五(5)的分组700的通信模块115可以传送具有“生存周期”数据字段715的值为四(4)的分组700。所述分组700还可以包括其它数据字段720。虽然描述了两个其它数据字段720,但是可以采用任意数目的其它数据字段720。其它数据字段720可以包括在客户端120和计算模块110之间交换的数据。在一个实施例中,分组700遵循超文本传输协议(“HTTP”)规范。
本发明计算客户端120和计算模块110之间的跳次计数(步骤515),并且对跳次计数满足计数范围作出响应,把客户端120与计算模块110相关联(步骤530)。另外,当客户端120和计算模块110之间的跳次计数不满足计数范围时,或者当客户端120经由无效通信模块与计算模块110进行通信时,本发明阻止客户端120与计算模块110进行关联。
在不脱离本发明的实质或基本特性的情况下,可以依照其它具体形式来实现本发明。所描述的实施例在各方面都应当仅仅被视为是例证性的而非限制性的。因此,本发明的范围由所附权利要求书表明而不是由以上的描述来表明。落入权利要求的含义和等效范围内的所有变化都被包含在本发明的范围内。
权利要求
1.一种用于管理响应等待时间的设备,所述设备包括识别模块,被配置为识别第一计算模块;计算模块,被配置为计算在第一计算模块和客户端之间收发分组的通信模块的数目,作为跳次计数;以及关联模块,被配置为对跳次计数满足响应策略的计数范围作出响应,把客户端与第一计算模块相关联。
2.如权利要求1所述的设备,其中,所述关联模块还被配置为对跳次计数满足响应策略的扩展计数范围作出响应,把客户端与第一计算模块相关联。
3.如权利要求2所述的设备,其中,所述关联模块还被配置为对在先前的关联尝试期间客户端没有与第二计算模块相关联作出响应,把所述客户端与第一计算模块相关联。
4.如权利要求1所述的设备,还包括有效设备模块,被配置为维护有效通信模块地址列表。
5.如权利要求4所述的设备,还包括地址模块,被配置为记录收发分组的每一通信模块的地址。
6.如权利要求5所述的设备,还包括安全模块,被配置为对客户端经由无效通信模块与第一计算模块进行通信作出响应,阻止客户端与第一计算模块进行关联。
7.如权利要求1所述的设备,还包括事故单模块,被配置为对指定数目的客户端具有大于计数范围的跳次计数作出响应,生成事故单。
8.如权利要求1所述的设备,其中,所述第一计算模块被配置为刀片式服务器。
9.一种用于管理响应等待时间的方法,包括识别第一计算模块;维护有效通信模块地址列表;计算用于在第一计算模块和客户端之间收发分组的通信模块的数目,作为跳次计数;并且对跳次计数满足响应策略的计数范围作出响应,把客户端与第一计算模块相关联。
10.如权利要求9所述的方法,其中还包括对跳次计数满足响应策略的扩展计数范围作出响应,把客户端与第一计算模块相关联。
11.如权利要求10所述的方法,其中还包括对在先前的关联尝试期间客户端没有与第二计算模块相关联作出响应,把所述客户端与第一计算模块相关联的操作。
12.如权利要求9所述的方法,其中还包括记录收发分组的每一通信模块的地址的操作。
13.如权利要求12所述的方法,其中还包括对客户端经由无效通信模块与第一计算模块进行通信作出响应,阻止所述客户端与第一计算模块进行关联的操作。
14.如权利要求9所述的方法,其中还包括对指定数目的客户端具有大于计数范围的跳次计数作出响应,生成事故单的操作。
15.如权利要求9所述的方法,其中,所述第一计算模块被配置为刀片式服务器。
16.一种用于管理响应等待时间的系统,所述系统包括客户端;多个刀片式服务器,其每一个均被配置为为客户端执行软件处理;多个通信模块,被配置为在客户端和刀片式服务器之间收发分组;识别模块,被配置为识别第一刀片式服务器;计算模块,被配置为计算在第一刀片式服务器和客户端之间收发分组的通信模块的数目,作为跳次计数;以及关联模块,被配置为对跳次计数满足响应策略的计数范围作出响应,以及对跳次计数满足响应策略的扩展计数范围并且在先前的关联尝试期间所述客户端没有与第二刀片式服务器相关联作出响应,把所述客户端与第一刀片式服务器相关联。
17.如权利要求16所述的系统,还包括被配置为维护有效通信模块地址列表的有效设备模块,被配置为记录收发分组的每一通信模块的地址的地址模块,以及被配置为对所述客户端经由无效通信模块与第一刀片式服务器进行通信作出响应、阻止客户端与第一刀片式服务器进行关联的安全模块。
18.如权利要求16所述的系统,还包括事故单模块,被配置为对指定数目的客户端具有大于计数范围的跳次计数作出响应,生成事故单。
19.一种用于使用计算机基础设施的方法,包括把计算机可读代码集成到计算系统中,其中所述代码与所述计算系统结合,能够执行如下步骤维护有效通信模块地址列表;识别第一计算模块;计算在第一计算模块和客户端之间收发分组的通信模块的数目,作为跳次计数;对跳次计数满足响应策略的计数范围作出响应,把客户端与第一计算模块相关联;对跳次计数满足扩展的计数范围作出响应,以及对客户端在先前的关联尝试期间没有与第二计算模块相关联作出响应,把客户端与第一计算模块相关联;并且对指定数目的客户端具有大于计数范围的跳次计数作出响应,生成事故单。
20.如权利要求19所述的方法,还包括记录收发分组的每一通信模块的地址,并且对客户端经由无效通信模块与第一计算模块进行通信作出响应,阻止所述客户端与第一计算模块进行关联。
全文摘要
公开了一种用于管理响应等待时间的设备、系统和方法。识别模块识别可以经由一个或多个通信模块与客户端通信的计算模块。计算模块计算用于在计算模块和客户端之间收发分组的通信模块的数目,作为跳次计数。关联模块对跳次计数满足响应策略的计数范围作出响应,把客户端与第一计算模块相关联。在一个实施例中,事故单模块对指定数目的客户端具有大于计数范围的跳次计数作出响应,生成事故单。
文档编号H04L29/06GK1960364SQ200610153908
公开日2007年5月9日 申请日期2006年9月12日 优先权日2005年11月3日
发明者达里尔·C.·克罗默, 兰达尔·S.·斯普林菲尔德, 霍华德·J.·洛克, 罗德·D.沃特曼 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1