用于优化集成模型的应用程序接口的制作方法

文档序号:6433785阅读:122来源:国知局
专利名称:用于优化集成模型的应用程序接口的制作方法
优先权的要求本申请要求2000年10月26日提交的美国临时专利申请No.60/243783的优先权。
版权通告本说明书中陈述的部分揭示内容包括受版权保护的材料。特别是,包含了根据37 CFR Section 1.96的源代码附录,它列出了用于本发明在计算机系统中实施的过程的源代码指令。源代码附录包括缩微胶片的[TBD]片,它包括166帧或页的源代码。版权所有者不反对说明书的复制,如专利商标局中所提交的。但保留另外的全部版权。
相关申请参照本申请与以下的共同待批的申请有关,它们每一个都在此全文并入以供参考,如本申请中完整阐述的2001年10月12日提交的美国专利申请“System-Wide OptimizationIntegration Model(全系统优化集成模型)”(020897-000110US),编号No.09/976368;2001年10月12日提交的美国专利申请“Multi-PlatformOptimization Model(多平台优化模型)”(020897-000120US),编号No.09/976518;以及2001年10月26日提交的美国专利申请“Aggregate System Resource AnalysisIncluding Correlation Matrix and Metric-Based Analysis(包括相关矩阵和基于量度的分析的聚合系统资源分析)”(020897-000130US),编号No.10/040012。
背景技术
现在在商业、教育、研究和娱乐的许多方面广泛地采用诸如因特网的数字计算机网络。由于处理大量通信量的需要,许多因特网站点都用几组服务器计算机进行设计。

图1A中示出了站点网络系统的一个实例。
图1A中,网络系统10包括4个主要层。它们是通信层12、网络层14、应用层16和数据库层18。每个层都表示一组服务器计算机或者其它处理、存储或通信系统之间的接口。每个接口都处理两组服务器计算机之间的通信。应注意,层是很重要的,因为它们表示通信协议、路由选择、通信量控制和与服务器计算机组之间的信息传输有关的其它特点。如现有技术所示,软件和硬件可以用于执行由每个层表示的通信功能。
服务器计算机由诸如20的框示出。数据库22和因特网24由符号表示并可以包含任意数量的服务器、处理系统或其它装置。组中的服务器通常与邻近组中的一个或多个计算机通信,如由这些组之间的层限定和控制的。例如,从因特网接收到对信息(例如,数据库的记录)的请求并将该请求引导到Web-Com(网络通信)服务器组中的服务器计算机26。从而,在通信层12中产生通信。
服务器计算机26可以要求由应用服务器组中的多个计算机(诸如计算机20、28和30)进行处理。该处理请求在网络层14上转移。接着,应用服务器组中被请求的计算机可以经由应用层16调用数据库服务器组中的计算机32、34、36和38。最后,被调用的计算机经由数据库层18请求数据库22。所返回的记录通过这些层和服务器被传送回因特网24以完成对信息的请求。
现今的大而复杂的网络系统中所特别关心的是监控系统的性能和优化系统。现有技术方法监控系统性能的一种方式是在网络中的某些点处使用一进程以便将数据报告回诸如控制台40的中央位置。在图1A中,可以通过在服务器26处用一进程记录该请求的时间和性质来监控对数据库记录的请求。随后服务器20处的进程记录从服务器26接收到请求的时间。同样,服务器32(或者从服务器20接收到数据库请求的任一服务器)记录它参与入该事务中。被记录的事务的这个“链”由图1A中的粗体箭头示出。
在这种方式中,监控系统的现有技术可以确定花费多长时间使得对记录的请求通过网络。还可以在其它方向上跟踪该事务以确定花费多长时间来完成所述请求。这种数据记录的性质是很复杂的,因为一个层或组中的服务器会要求多个其它服务器的帮助或处理。同样,会在不同的时间点处询问不同的服务器。请求、处理和事务的速度能引起大量数据快速的记录。在某些较晚的时候,数据被转移到控制台40。控制台40解析该数据并产生关于系统性能的有意义的结果,该结果可以由管理员进行分析。
现有技术方法的问题在于记录进程是分离的且即使有也只进行很少的相互通信。这意味着很难精确分析进程、服务器等之间的复杂的相关性。记录进程趋向于在执行该进程的主机服务器中产生高开销。一种方法使用控制台来轮询进程。大量进程的频繁轮询也会产生过度开销。由于使用不同的平台且缺乏更完整的分析,妨碍了基于现有技术方法的优化和性能改善。必须每隔一段时间将数据堆到控制台,随后解析该数据,最终意味着不能实时进行监控。
因此,需要提供一种系统,它改善了现有技术中的一个或多个缺点。
发明概述本发明提供了一种用于网络优化系统的应用程序接口。该接口提供了用于如这里以及相关申请中所述般控制网络优化系统的功能、对象、程序和其它进程或功能性。在一个实施例中,本发明提供了一种接口,它提供了对脚本语言的双重接口支持。
附图概述图1A示出现有技术的系统中的被测网络性能;图1B示出根据本发明的被测网络性能;图2A示出本发明的中传递的智能对象和性能值;图2B示出本发明的架构组件;以及图2C示出具有多个平台的网络系统。
具体实施例方式
本发明的一优选实施例结合在MetiLinx,Inc.制造和供销的产品、文件和其它系统及材料中,作为一套称作“Metilinx iSystem Enterprise”系统的产品。Metilinx系统被设计成监控和优化数字网络,尤其是大因特网应用中许多计算机服务器的网络,诸如技术支持中心、网页服务器、数据存取等等。关于本发明的接口的脚本语言和源代码的描述和实例可以在附于本说明书的源代码附录中找到。
本发明的系统使用称为“智能对象(intelligence objects)”(IOs)的软件机制,该智能对象在网络中的各种服务器、计算机或其它处理平台上执行。智能对象用于获得一个过程或多个过程、硬件操作、资源使用或影响网络性能的其它因素的性能的信息。智能对象间传递值,从而可以导出表示大部分网络的性能的合成值。
图2A示出智能对象和值的传递。图2A中,诸如102和104的智能对象驻留在计算机服务器中。任意数量的智能对象都可以驻留在服务器计算机中且n层系统中的任意数量的服务器计算机都可以配置一个或多个智能对象。第一类型的智能对象是称为系统等级对象(SLO)的软件进程,它可以监控和报告在其主机计算机服务器中操作的其它进程或硬件的一个或多个方面。被称为事务等级对象(TLO)的第二类型的智能对象被设计成监控相对于其主机计算机或该主机计算机内执行的进程的事务负荷。
在一个实施例中,IO 102测量其主机计算机的性能特性并将该特性表示成二进制值。由于仅仅是主机计算机的测量或关于该主机计算机的事务信息的测量,该值被称作“局部”使用值。该局部使用值被传递到IO 104。IO 104可以修改该传递的值,以便包括它自己的主机计算机的测量。修改后的值称作“合成”使用值。该合成使用值可以依次传递到连续加建或添加测量的其它智能对象,从而实现经过多个计算机、分层、操作系统、应用程序等的执行。
最后,该使用值或多个使用值被传递到其它过程,它可以将组合测量的结果显示给用户,使用该结果导出其它结果,使用该结果来自动优化n分层的系统,或者使用该结果用于其它目的。本发明的一个方面用于根据计算机或节点的估计使用值重定向过程和网络上的互连,以便改善或优化网络性能。执行该重定向的过程称作“过程重定向对象”、应注意,虽然有时候相对于多层服务器结构讨论本发明,但服务器、计算机、数字处理器等的任意结构都是可以的。术语“处理装置”用于表示能对数据执行功能的任何硬件。处理装置包括服务器、计算机、数字处理器、存储装置、网络装置、输入/输出装置等等。网络无需在多层的处理装置结构中,而是可以使用任何的结构、拓扑、互连等等。网络的任何类型的物理或逻辑组织结构适合与本发明一起使用。
图2B示出本发明更具体部件的一种可能结构。应注意,用于本说明书中的术语“部件”包括任何类型的处理装置、硬件或软件,它们可以存在于数字处理器或系统内或者可以由数字处理器或系统执行。
诸如图1、2A和2B所示的系统与实际上任何类型的网络系统一起可以具有IOs。在优选实施例中,IOs可以安装在分布式对等架构中网络内的每个服务器上。IOs测量服务器部件、资源等的实时工作情况,以便实现网络工作情况和性能的整体测量。
在上述共同待批的申请中提供了一种软件系统,它用于用节点扩充网络,并用于监控、分析、管理和优化网络。
一优选实施例收集低等级系统上的数据和网络参数,诸如CPU使用、网络使用、延迟等等。使用了约400个不同的测量特性。
在每个节点处产生数据,作为反映用于该节点的主机处理系统特性的四字节值。这些值称作局部节点值(LNVs)。来自不同节点的多个LNVs被组合成称作合成节点值(CNV)的合成值。CNVs还可以包括由其它节点传递的CNVs。
CNVs的尺寸保持4个字节。CNV沿网络层次传递并用于通过与连续节点处的LNV组合来获得进一步的合成值,从而合成值中最终提供整体系统性能。通常将节点值传播组织成组织的和功能的块,如相关申请中描述的。通常节点值传播在相关性的方向中,或者与请求流相反。但是,由于请求流和相关性松散地依附于任何特定网络(并可以随时间变化),本发明的系统可以适合于改变条件。通常,节点值的传递可以动态地变化,可以一对多或者多对一,并且是双向的。因此,与图1A中示出的现有技术系统的限制方向“链”不同,本发明的系统可以提供柔性的对等的值传递。来自许多节点的性能和使用信息可以以各种方式组合,以便实现更通用的分析结构,诸如图1B所示(通过粗体箭头)。
当然,在其它实施例中,局部和合成值可以是任意大小,变化的大小等等。与“值”相对,该值可以是更复杂的数据结构。可以测量网络特性的任何组合。
LNVs和CNVs由四个子值组成。每个子值是具有较高值(例如,255)的数据字节,它表示子值的有关网络属性中的最佳功能。第一子值是系统平衡值(SBV)。SBV测量功能组内服务器节点的平衡操作。功能组由用户/管理员指定并由本发明的系统使用以便定义组,在该组中CNVs累计值。较高的SBV值表示服务器节点的功能分组以良好的平衡进行操作。
第二子值是系统使用值(SUV)。根据单个或聚合的资源节点的分析,SUV表示系统资源使用。较高的值表示更有效地使用资源。
第三子值是性能优化值(POV)。POV表示对系统资源的响应或速度的量度。较高的值表示响应时间较短,或者响应速度较高。
第四和最末子值被称为MetiLinx优化值(MOV)。MOV表示整个系统优化的程度。较高的值表示更好地平衡功能组。MOV反映平衡、资源使用和响应速度的其它子值。
为了有目的地合成从其它节点接收到的LNV和CNV值,每个节点保持“相关矩阵”。该相关矩阵包括基于网络中不同节点环境的特性中的差异的以数字表示的数量权重因数。例如,可以为系统中的每个节点保持最佳性能值。可以在90%的使用和3秒响应的最佳性能组合处记录节点A。节点B可以具有2秒响应的90%的使用。当节点C接收到表示用于每个节点的3秒响应的90%使用的LNV或CNV值时,节点C现在意识到节点A的主机环境正以较高的性能工作同时节点B的环境以低于理想使用的使用状况工作,这是因为响应时间比以前实现的要慢。在从节点A和B值中产生CNV时,节点C的过程根据相关矩阵通过权重组合使用和响应时间。在该简化实例中,如果“A”是节点C与节点A的使用的相关性(用于节点C的有效操作和使用),同时“B”是节点C与节点B的使用的相关性,则节点C处的CNV可以计算为A+(B*2)/3。
根据该节点从其它节点接收到的信息来更新每个节点的关联矩阵。例如,如果节点C被通知节点B现在以1秒响应时间的90%的使用进行操作,则更新相对于节点B的节点C的关联矩阵因数。应注意,关联矩阵是多维的。只是在简化的实例中,可以是用于每个节点的使用比响应时间的二维阵列。
在较佳实施例中,相关矩阵局部地存储到节点过程。通常,相关矩阵驻留在节点的主机处理系统中的快速RAM中。但是,其它实施例可以使用相关矩阵的变化并可以以不同的方式保持和存取该相关矩阵。例如,相关矩阵可以存储在中央控制台计算机上并从其存取。
例如,当管理员停用节点、关闭(bring down)节点的主机处理器等时,可以将节点从网络移除。当关闭(bring down)节点时,本发明的优化系统通信被路由到不同的节点。将关闭的节点的相关矩阵转移到一个或多个节点是有利的,其中通信被重新路由到这一个或多个节点,从而不必重新创建相关矩阵中的信息。
本发明的优选实施例使用变化的等待周期以允许节点收集特性数据从而以变化的频率产生局部值。例如,等待周期可以从0变到100。较大的数字表示较少频繁地获得特性。等待周期的值0表示尽可能频繁地获得特性值。当然,较低的等待周期表示主机CPU花费更多的时间获得特性数据并且有可能产生值。
虽然已相对于特殊实施例讨论了本发明,但这些实施例仅仅是说明性的,并非限制性的。
因此,本发明的范围仅由所附权利要求书限定。
权利要求
1.一种用于网络优化系统的应用程序接口,其特征在于,所述接口包括用于脚本语言的双重接口支持。
2.一种用于网络优化系统的应用程序接口,其特征在于,所述接口包括用于加载数据对象的接口,用于加载数据对象的所述接口包含以下的一个或多个用于获得数据服务器的程序;用于获得连接字符串的程序;用于关闭连接的程序;以及用于打开连接的程序。
3.一种用于网络优化系统的应用程序接口,其特征在于,如本申请中充分描述的。
全文摘要
一种用于网络优化系统的应用程序接口(10)。该接口(10)提供了用于如这里以及相关申请中所述的用于控制网络优化系统的功能、对象、程序和其它进程或功能性。在一个实施例中,本发明提供了一种接口(10),它提供了对脚本语言的双重接口支持。
文档编号G06F11/34GK1608245SQ02826095
公开日2005年4月20日 申请日期2002年5月6日 优先权日2001年10月26日
发明者C·M·克拉佐 申请人:麦提林克斯公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1