CN101263458A - 用于网格网络节流和负载收集器的方法和装置 - Google Patents

用于网格网络节流和负载收集器的方法和装置 Download PDF

Info

Publication number
CN101263458A
CN101263458A CNA2006800332369A CN200680033236A CN101263458A CN 101263458 A CN101263458 A CN 101263458A CN A2006800332369 A CNA2006800332369 A CN A2006800332369A CN 200680033236 A CN200680033236 A CN 200680033236A CN 101263458 A CN101263458 A CN 101263458A
Authority
CN
China
Prior art keywords
grid
processor
node
work
network
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.)
Pending
Application number
CNA2006800332369A
Other languages
English (en)
Inventor
维克托斯·伯斯蒂斯
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN101263458A publication Critical patent/CN101263458A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3442Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for planning or managing the needed capacity
    • 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/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • H04L43/045Processing captured monitoring data, e.g. for logfile generation for graphical visualisation of monitoring data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/25Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3457Performance evaluation by simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Environmental & Geological Engineering (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供了用于对在网格节点处网格工作对处理器和网络资源的利用率进行控制的网格项目节流控制的方法和装置。该节流机制基于当调度网格项目时所确定的预期网络和处理器有效性的判定,对网络和处理器利用率进行控制,以便网格项目不会对节点关于其正常非网格工作的功能造成不利影响。

Description

用于网格网络节流和负载收集器的方法和装置
技术领域
本发明通常涉及改进型数据处理系统。具体而言,本发明涉及这样的改进型网格计算系统,其中,提供节流控制,以便控制网格工作对处理器和网络资源的利用率。
背景技术
在1990年代,计算机科学家开始研究关于计算机基本结构(被称为计算网格)的设计和开发,对它的设计是基于当时已知的电力网格。网格计算最初设计用于大型、资源密集型科学应用,如地外文明探索(SETI)程序的计算网格,与在单个管理域中少量计算设备可提供的资源相比,这些应用需要的资源更多。其后,当网格计算作为处理计算任务的机制广为流行时,它已变得更加普及。
计算网格使得来自地域分布式计算设备的计算机资源得以共享和聚集,以解决大型资源密集型问题。也可将计算网格仅称为“网格”。为了构建网格,需要低层和高层服务。网格的低层服务包括安全、信息、目录和资源管理服务。高层服务包括用于应用开发、资源管理、资源调度等的工具。在这些服务之间,最优化实现资源管理和调度往往最具挑战性。
已知的网格计算系统,如Legion、Data Synapse、PlatformComputing、来自United Devices的Grid MPTM、Berkley OpenInfrastructure for Network Computing(BOINC)、来自Altair的PBS PROTM Grid、Globus
Figure A20068003323600051
Toolkit(可从处在伊利诺斯州芝加哥的Argonne National Laboratory获得)和Open Grid ServicesArchitecture(OGSA,开放网格服务架构),主要基于计算网格中各节点(即,计算设备)的处理器负载,以及考虑某些其他非动态先决条件因素来确定可使用计算网格中哪些节点,由此执行资源管理和调度。从而,如果某节点符合所有非动态先决条件因素且其当前处理器负载低于预定阈值,则可将网格工作调度到该节点上运行。如果节点的处理器负载高于预定阈值,则该节点不再成为运行网格工作的候选,直至其处理器负载再次低于预定阈值为止。
由于已知网格计算系统仅考虑处理器负载作为确定工作调度的动态因素,未能考虑网格工作可创建的网络流量,通常会导致次优化调度。从而,网格工作(打算使其按照不干扰节点的正常功能的方式执行)可对节点上的现有负载产生不利影响。
由于因仅基于处理器负载进行调度而导致该次优化调度,许多科研机构和企业因担心网格计算可能对其现有信息技术基础结构造成负面影响,从而,都不愿使用网格计算。首先,这些企业并不能确定有多少网格行为可对其现有工作负载造成干扰,其次,在对于关键任务项目而言,由于他们不能量化在所需时间间隔内运行与网格项目相关的网格工作所需要的网格容量,因此,他们对使用计算网格表现得犹豫不决。
现有网格计算系统存在这些问题的根源在于这样的事实,即,在这些网格计算系统中的资源管理和调度没有考虑执行网格工作必需的网络流量的数量或该流量可对网格中节点的现有负载产生的影响。网络流量可对网格中节点的现有工作负载的性能以及网格工作本身的性能产生负面的影响。
发明内容
本发明的方面提供了用于对在网格节点上的网格工作执行进行控制的方法和装置。识别出用于标识用于网格节点上网格工作的网络行为的参数集。基于数据传输速率和该参数集,对网格节点处处理网格工作而生成的数据进行数据传输的速率进行控制。如果判定网格节点具有支持基于该参数集控制数据传输的应用,则将该参数集发送到网格节点。
根据本发明的方面,从网格节点上的网络利用监视器收集网络利用统计数据。确定可归因于网格工作和非网格工作的网络利用。网格节点可接收封装在与网格工作或网格工作数据相关联的包封中的预期网络有效性阈值。如果确定数据传输速率超过在参数集中给出的预期网络有效性阈值,则对来自网格节点的数据传输速率进行限制。
根据本发明的方面,还识别出用于识别网格节点上网格工作的处理器行为的参数集。基于处理器利用率和该参数集,对网格节点处的网格工作的处理器利用率进行控制。
根据本发明的方面,从网格节点上的网络利用监视器收集处理器利用统计数据。确定可归因于网格工作和非网格工作的处理器利用。可归因于网格工作负载和非网格工作负载的处理器利用的确定,可通过将处理器利用数据和与网格节点进行处理的网格工作相关联的标识符进行比较来实现。
网格节点可接收封装在与网格工作或网格工作数据相关联的包封中的预期处理器有效性阈值。如果处理器利用率超过预期处理器有效性阈值,则对处理器利用率进行限制。
附图说明
在所附权利要求中给出了认为是本发明特性的新颖特征。然而,结合附图,参照后面给出的对示意性实施例的详细描述,会获得对本发明本身以及优选使用方式,及其进一步优点的最佳理解。在附图中:
图1的示例性视图表示其中可实现本发明的方面的网格计算环境;
图2的示例性视图表示网格管理系统与各种网格节点上的网格代理的交互;
图3的示例性框图表示根据本发明的一个示例性实施例的网格代理;
图4表示,根据本发明的一个示例性实施例,用于确定网格节点之间链路的容量,以便将最小容量链路设置为两个网格节点之间可用的最大容量的示例性处理;
图5的示例性视图表示根据本发明的一个示例性实施例的网格管理系统;
图6A的示例性视图表示,根据本发明的一个示例性实施例的网格项目建模语言创建的网格项目模型;
图6B的示例性描述表示描述网格项目的网格项目建模语言高级XML代码脚本;
图7的示例性视图表示,根据本发明的示例性实施例的其中描述了计算网格的资源有效性曲线的图形用户界面;
图8的示例性视图表示,使用本发明的一个示例性实施例的资源有效性绘图描述网格项目执行的一个机制;
图9的示例性视图表示如图8所示的同一网格项目的图形描述,其中,改变了执行网格项目的开始时间;
图10的示例性视图表示,根据本发明的一个示例性实施例的扩展网格对如图8和9所示网格项目的影响;
图11表示,根据本发明的一个示例性实施例的网格节点的群集;
图12表示基于处理器和网络资源有效性或容量的网格节点群集的示例性二维绘图;
图13表示根据本发明的一个示例性实施例的节流机制的操作;
图14的流程图概括性表示出,根据本发明的一个示例性实施例的当生成网格项目模拟的可视化表示时本发明的示例性操作;
图15的流程图概括性表示出,根据本发明的一个示例性实施例的当调度网格工作分派时本发明的示例性操作;以及
图16的流程图概括性表示出,根据本发明的一个示例性实施例的当对与网格项目相关联的网络流量进行节流时本发明的示例性操作。
具体实施方式
图1的示例性视图表示其中可实现本发明的方面的计算网格环境。如图1所示,计算网格100包括通过一个或多个网络120-130连接在一起的多个网格节点110。网格节点可以是能够对网格工作和提供给它的网格数据进行处理或能够向其他网格节点提供这样的网格数据的任何类型计算设备。例如,网格节点110可为服务器计算设备、客户机计算设备、工作站、个人计算机、数据库系统、大型计算机系统等。
计算网格100由网格管理系统140进行管理。网格管理系统140与处在网格节点110上的代理软件进行通信,以获得关于每个网格节点110的信息,并向网格节点110提交要进行处理的网格工作和网格数据。网格管理系统140提供必要功能用于确定在计算网格100中哪些网格节点110在线,哪些网格节点110具有处理网格工作的有效容量,调度网格工作到各个网格节点110的分派,对分派到网格节点110的网格工作的结果进行接收和相关,以及执行根据后面描述的本发明实施例的其他网格管理功能。
网格项目是在网格上的最高层一件工作。有时还可将网格项目等效地称之为术语“网格应用”。网格工作是执行网格项目所需工作的一部分。也就是,将网格项目分成多个独立网格工作,可将它们分派到网格节点进行处理。执行网格项目的一组网格工作可在网格中的不同节点上并行执行。有时还可将网格工作称为本领域中的事务、工作单元、任务或提交。
在计算网格100中的每个网格节点110可执行其正常工作负载,即,非网格有关处理,此外还可执行对由网格管理系统140提交给它们的网格工作的处理。然后,将对于这些网格工作的处理结果返回到网格管理系统140或其他指定节点,由它们将各个网格工作结果进行组合,以获得完成网格项目的必要数据。存在于网格节点110上的网格代理软件对网格节点110的性能特性进行测量,并将这些测量结果提供给网格管理系统140,以便网格管理系统140能够正确调度网格工作到各网格节点110的分派。
如以上所述,在已知计算网格系统中,网格节点的有效处理器容量是网格节点的动态特性,并基于此来确定对网格工作的调度。也就是,网格管理系统从网格节点上的网格代理软件获得表示网格节点随时的CPU利用。由该信息,网格管理系统可确定网格节点的CPU利用在何时可能低于预定阈值,从而能够在该预定时间调度关于网格工作到网格节点的分派。
仅使用CPU有效性作为确定何时分派网格工作的测量的问题在于,可能在较慢的链路上发送大量的数据,并且,可能甚至并不在存储所需数据的位置附近执行使用该数据的网格工作。这导致额外的网络流量。从而,在较慢链路上发送大量数据,以及因网格中低效的数据设置需要额外网络流量,导致对网络造成比最优负载更大负载。这对网格节点的正常操作可产生不利影响。从而,使用网格节点并不是不具干扰性,而是网格工作实际对这些网格节点所执行的正常工作产生了负面影响。
本发明的方面通过考虑使用计算网格执行网格项目功能所需的处理器利用和网络利用,来避免网格计算的这些负面影响。也就是,本发明利用存在于网格节点上的网格代理来确定网格节点处理网格工作的有效性,网格代理对网格节点的处理器利用和有效性(针对网格工作和非网格工作)以及网格节点之间链路的网络利用和有效性进行监测。然后,使用该信息对网格行为进行建模,以便模拟关于处理网格项目的计算网格性能,调度网格工作到网格节点的分派,对网格工作以及其数据到各网格节点的传输进行节流,以避免对网格节点的正常功能造成不利影响。
图2的示例性视图表示网格管理系统与网格计算系统200的各个网格节点上的网格代理的交互。如图2所示,网格管理系统210与计算网格240的网格节点230上的网格代理220进行通信,以获得处理器和网络有效性数据。网格代理220包括处理器利用监视器和网络利用监视器,用于针对网格和非网格工作处理获得对于处理器和网络利用的测量。处理器利用监视器确定在某一时期有多少网格节点的处理器资源要用来处理非网格工作、网格工作,以及有多少处理器资源处于空闲。网络利用监视器确定在一段时期要使用多少与连接到该网格节点的链路相关联的网络容量,以及有多少容量可用。
该处理器和网络利用数据被传送到网格管理系统210,在此将数据存储在数据库215中,以便以后使用。例如,本发明的网格管理系统210使用在数据库215中存储的信息生成网格项目描述模型,确定对网格项目处理性能的模拟,调度网格工作分派,以及对网格工作数据传输进行节流。
网格管理系统210从网格项目提交系统250接收网格项目。网格项目提交系统250可与网格管理系统210进行通信,以提交网格项目,请求和查看网格项目模拟,基于网格项目模拟调节网格项目分派参数,以及接收由计算网格240对网格项目进行处理的结果。
当网格项目提交系统250将网格项目提交给网格管理系统210时,可使用在数据库215中保存的数据对网格项目进行模拟,以便可确定各个开始时间、各个附加网格节点等的影响。由该信息,网格项目提交系统的用户可选择合适的网格项目分派准则,用于将网格项目作为多个网格工作分派给计算网格240的网格节点230。
然后,网格管理系统210基于所选分派准则,调度网格工作的分派。网格工作的这种分派可涉及,基于网格管理系统210所保持的关于网格节点的非动态特性信息,选择应向其提交网格工作的某些网格节点。在调度时,网格管理系统210将网格工作和/或相应数据传送到合适网格节点230上的网格代理220。网格代理220优选包括允许网格代理220在其各自网格节点230上执行网格工作的网格客户机软件。网格工作在网格节点上的分派和执行通常是本领域所熟知的。例如,可使用Globus
Figure A20068003323600111
或OGSA机制来使用网格客户机软件在网格节点上执行网格工作。
图3的示例性框图表示根据本发明的一个示例性实施例的网格代理。如图3所示,网格代理300包括控制器310、处理器利用监视器320、网络利用监视器330、网络接口340、网格客户机软件350、处理器/网络利用统计数据存储器360和网格项目节流控制370。网格代理300被实现为通过网格节点的处理器执行的软件指令,且在该网格节点上部署有网格代理300。网格代理300执行作为后台应用,其对于运行有网格代理300的网格节点的用户而言并不是很容易辨别的。
控制器310对网格代理300的全部操作进行控制,并与元件320-370的操作相配合。针对网格和非网格工作负载,处理器利用监视器320对网格节点的处理器利用进行监视。处理器利用监视器320将网格工作负载相关的处理器利用与非网格工作负载相关的处理器利用区分开。网格工作负载与非网格工作负载的处理器利用之间的这种区分通过用网格客户机软件350尝试处理器利用监视器320的监视功能来实现。
网格客户机软件350与网格管理系统进行通信,接受要执行的网格工作,在合适环境下执行它们,然后从网格工作返回结果。添加用于本发明不同实施例的网格客户机软件350以跟踪代表网格进行工作的进程和线程。也就是,在执行进程和创建线程时,网格客户机软件350保持有数据结构,该数据结构用于存储与网格节点进行处理的网格工作相关联的进程或线程的标识符。在另一数据结构中保持有关于网格节点的处理器执行的所有线程的统计数据。这些统计数据可包括,例如,执行线程所需的处理周期数、存储器利用量、磁盘空间利用量、用于执行线程所需的CPU时间量等。
通过将这两个数据结构进行比较,可区分出与网格相关线程和非网格相关线程相关联的统计数据。非网格相关线程构成不是由网格工作启动的系统上工作负载,从而,表示在系统上的正常工作负载。从而,可判定在特定时刻在网格节点的处理器上存在多少非网格工作负载。由此,确定对网格节点的实际处理器容量的更精确测量。
网络利用监视器330用于生成网格节点的网络利用统计数据。一般而言,网格工作需要大量输入数据,该数据必须发送到执行工作(即,处理网格工作)的网格节点。网格工作也会生成大量输出数据。此外,如果没有将网格工作调度到存储了网格工作可能需要访问的所需数据的数据库附近的节点上,则会由于网络流量以及需要从远程数据库检索所需数据而出现较大延迟。
所有这些情形可能占用宝贵的网络带宽,并可导致严重网络阻塞。从而,由于在来自/去向网格节点的链路上的网络带宽消耗,可能对网格节点的正常工作负载和网格工作本身产生负面影响。
如果处理器和网络的利用超过预定的预期处理器和网络有效值,则网格项目节流控制370对处理器和网络利用进行节流。该节流机制(后面将会更详细讨论)防止因执行网格工作导致出现网络阻塞和处理延迟,以确保网格节点的正常操作(即,网格节点正常的工作负载)不会因网格工作和网格工作数据的传输和处理受到不利影响。
为了收集确定网格节点的网络利用所需的信息,网络利用监视器330使用传统网络流量监视器确定在物理网络链路上每对网格节点之间的流量的数量。也就是,网络的每个网格节点包括传统网络流量监视器,用于确定在该网格节点与链接该网格节点的网格节点之间的链路上的网络流量的数量。对于本发明的示意性示例的网络利用监视器330确定出数据包将在该网格节点与其他网格以及非网格节点之间行进的最佳可能路由。然后,网络利用监视器确定在该路由中的最小容量链路。例如,网络利用监视器330可使用在Windows(Microsoft、Widnows、Windows NT,以及Windows标识是微软公司在美国、其他国家等的商标)和Unix(Unix是Open Group在美国和其他国家的注册商标)开放系统(即,tracert或traceroute命令线程序)中可获得的跟踪路由工具,以确定数据包在任何两个网格节点之间穿过的可能路由。沿该路由的网格节点和非网格节点的传统网络流量监视器可用于确定在网格节点之间链路的容量,以便将最小容量链路设置为在两个网格节点之间可用的最大容量。
该处理如图4所示。如图4所示,网格节点410需确定在其本身与计算网格400的其他网格节点420-450之间可用的最大容量。每个网格节点410-450都配有网格代理,该网格代理包括传统网络流量监视器,用于监视到该网格节点的连接或链路的流量的数量和可用带宽。此外,非网格节点460-490还可存在于网络中,其并非作为计算网格400的一部分。这些非网格节点也可配有传统网络流量监视器,用于监视到给定网格节点的连接的流量的数量和可用带宽。
在确定在其本身与每个其他网格节点420-450之间可用的最大容量时,在一个示例性实施例中,网格节点410基于网格节点420-450的目的IP地址、统一资源定位器(URL)等执行跟踪路由操作,以此运行跟踪路由工具。在与网格代理相关联的数据结构中可保持有网格节点410-450的IP地址、URL等,以便在确定网络容量和利用时使用。作为在网格节点420的IP地址上运行跟踪路由工具的结果,跟踪路由工具确定出将数据包从节点410发送到节点420的最可能路由是包括链路A和B的路由。同样,由跟踪路由工具确定出在节点410与430之间的路由是链路C。在节点410与节点440之间的路由包括链路C,D和E,在节点410与450之间的路由包括链路C,F,G和H。
在网络中节点410-490之间链路的网络容量可通过使用网格节点410-450和非网格节点460-490的传统网络流量监视器来确定。所述示例是计算网格400的简化版本,从而,在网格节点410与其他网格节点之间的许多路由都包括单个链路(如虚线所示)。然而,在更复杂的计算网格配置中,应该理解,单个路由可涉及三个或更多个节点(包括网格节点与非网格节点)之间的链路。
涉及多个节点的路由的一个示例是,在网格节点410与网格节点440之间的路由。在该示例中,该路由通过网格节点430。从而,存在两个可测链路:在网格节点410与430之间的链路C,和在网格节点430与440之间的链路I。确定每个链路的网络容量,或可用带宽,并选择最小网络容量或可用带宽作为在特定测量周期内在网格节点410与网格节点440之间的最大网络容量。从而,可(近似)得出任何两个网格节点之间可用的网络容量的值。
返回到图3,使用处理器/网络利用统计数据存储器360存储在“n”分钟间隔上收集的处理器利用统计数据和网络容量或利用统计数据,其中,“n”值取决于本发明的实施例的特定实现方式,并可被设置为任何时间周期。该间隔可由网格代理发送到网格管理系统,于此可将它们与自该网格节点以及其他网格节点获得的其他统计测量结果群集在一起。然后,可将群集的处理器与网络利用信息进行统计评估,以确定典型值,如在计算网格中预期处理器和网络容量的每日、每周、每月或其他重复周期值。
具体而言,在一个示例性实施例中,对于每个收集点、网格节点和时间窗口,都存储有处理器和网络可用容量的值之和、这些值的平方和,和采样数。该数据存储允许对收集的数据进行标准偏差、平均值和其他统计的计算,而无需保持全部收集数据。然后,可将该数据用于模拟在周、月、年等各个时间上,在计算网格上网格项目的执行,以确定关于网格工作到网格节点的分派的调度、对于与网格工作相关联的数据传输的节流等,正如后面所讨论的。
图5的示例性视图表示根据本发明的方面的网格管理系统。可采用硬件、软件,或硬件和软件的任意组合,来实现网格管理系统500。在本发明的示意性实施例中,将网格管理系统500实现为由一个或多个数据处理设备执行的软件指令。
如图5所示,网格管理系统500包括控制器510、网络接口520、网格项目存储接口530、网格项目存储系统535、网格项目可视化和模拟引擎540、节点处理器/网络有效性存储系统接口550、节点处理器/网络有效性数据存储系统555、网格项目调度引擎560,和网格项目工作分派器580。这些元件彼此通过控制/数据信号总线590进行通信。尽管在图5中示出了总线体系结构,但本发明的不同方面并不受限于这样的体系结构,而是在不偏离本发明范围的条件下,可使用实现上述元件之间的控制/数据信号通信的任何体系结构。
控制器510对网格管理系统500的总体操作进行控制,并与在该系统中其他元件的操作相配合。网络接口520提供了用于接收和发送数据的通信路径。具体而言,网络接口520提供了可接收关于各网格节点的处理器和网络有效性的统计数据的机制。同样,可将网格项目工作和数据通过网络接口520发送到网格节点。此外,还可通过网络接口520接收这些网格项目工作的结果。
网格项目存储接口530提供了用于从网格项目存储系统535存储和检索网格项目数据的通信接口。在网格项目存储系统535中的网格项目数据可包括用于生成网格项目工作和网格项目工作所操作的数据的实际网格项目数据。或者,可将网格项目和网格项目工作所操作的数据存储在一个或多个远程数据库中。
网格项目可视化和模拟引擎540用于生成网格项目的模拟以及用户通过其可看到模拟以确定网格项目工作的最佳调度的图形用户界面。网格项目可视化和模拟引擎540使用通过网络接口520从各网格节点获得的,以及通过节点处理器/网络有效性数据存储系统接口550存储在节点处理器/网络有效性数据存储系统555中的处理器和网络有效性信息,来确定在各个时间(如日、周、月或年的各个时间)的网格处理器和网络有效性。该信息用于确定网格项目的各个开始时间将如何对网格项目的完成时间产生影响,以及如何对网格处理器和网络有效性利用产生影响,后面将对此进行讨论。
网格项目调度引擎560用于调度网格项目工作到网格节点的分派。网格项目的这种调度,例如,可响应于用户使用网格项目可视化和模拟引擎540所提供的图形用户界面选择用于网格项目的特定开始时间而执行。网格项目调度引擎560将网格项目及相应网格项目数据分成网格工作,并确定应将每个网格工作发送到其相应网格节点的时间。
网格项目工作分派器580实际执行将网格工作及其相应数据经由一个或多个网络分派到网格节点的操作。网格项目工作分派器580采用与现有计算网格系统中已知的方式同样的方式工作,主要的不同之处在于,根据网格项目调度引擎560以及网格项目可视化和模拟引擎540的操作,确定由网格项目工作分派器580传送的网格工作和数据。
当用户想要确定用于网格项目的最佳可能调度时,用户登录到网格管理系统500,并请求对特定时间周期上的特定网格项目的执行进行模拟。例如,当用户登录到网格管理系统500并选择通过网格管理系统500所提供的图形用户界面(GUI)呈现的“grid projectsimulation(网格项目模拟)”选项时,则会对用户呈现另一GUI,通过该GUI,用户可选择或输入网格项目标识符、用于模拟的时间窗口,例如,开始日期/时间和结束日期/时间,以及用于模拟的统计基础,如每天、每周、每月的平均处理器或网络有效性,每天一次标准偏差处理器/网络有效性,每周一次标准偏差,等。
然后,网格项目可视化和模拟引擎540从节点处理器/网络有效性数据存储系统555,检索在与所选的特定时间窗口相对应的时间周期中的节点处理器/网络有效性数据。例如,如果用户选择从2004年2月1日到2004年2月29日的时间窗口,则从存储系统555检索在与该时间窗口相对应的时间周期内的节点处理器/网络有效性数据。例如,检索表示该周每天的节点处理器/网络有效性的数据,并在2004年2月1日到2004年2月29日之间的每周进行重复,从而模拟在指定时间周期期间的计算网格的处理器/网络有效性。
从节点处理器/网络有效性数据存储系统555检索到的该节点处理器/网络有效性数据表示,在所选时间周期期间在计算网格中处理器和网络链路资源的总有效性。该信息可用于生成表示在所选时间周期上的计算网格的有效资源的绘图曲线。将这些曲线与分派所选网格项目的方式相关的信息一起使用,以确定对网格项目性能的模拟。从自网格项目存储系统535获得的网格项目模型中,获得与分派所选网格项目的方式相关的信息。
网格项目描述模型提供了对于网格项目各个阶段的描述。网格项目的阶段包括,例如,分派、执行,然后是结果数据的返回。网格项目的各个阶段被描述模型描述为描述集合,其包括,例如,分派的网格工作数量、与每个网格工作相应的数据量、对数据执行网格工作的运行时间量,以及与网格工作执行结果相应的估计数据量。对各个阶段的描述还包括对要并行和串行执行的行为的描述。
网格项目描述模型是通过使用被设计用于描述网格项目各个阶段的网格项目建模语言来生成。根据项目建模语言,可由网格项目的用户或提供方生成描述模型。
网格项目建模语言使用XML格式定义网格项目的阶段顺序。图6B表示描述网格项目的网格项目建模语言高级XML代码脚本的示意性示例。
网格项目建模语言标识出网格项目的各个阶段。建模语言阐述了网格项目阶段的序列。在每个阶段内,可存在关于要执行的并行行为(包括CPU处理、网络行为,或嵌套子阶段)的任意数量的描述。每个描述设定了所述行为的特性,如处理要求,预期网络流量、先决条件、从属条件、行为分离限制和特性、可靠性行为等。
图6A表示根据本发明的一个示例性实施例的网格项目建模语言创建的网格项目模型视图。网格项目模型600在方框610表示,在分派阶段,通过一个或多个传输文件,网格工作和/或网格项目数据到一个或多个网格节点的传输。方框630-645表示在执行阶段期间并行处理网格工作和/或网格数据的网格节点。尽管该示意性示例表示出将网格工作620单次分成并行处理的四个网格工作630-645,在该阶段期间也可存在由任意数量的网格节点执行的任意数量的并行行为。此外,在执行阶段期间,分成并行的行为可出现多次。在方框650,对来自网格工作630-645的输出的附加处理可出现在网格工作650处。当完成处理时,在方框660-670处,将来自网格工作620-650的输出并行传输回网格管理系统。
网格项目模型可通过本发明的示意性示例进行分析,以确定网格项目的各阶段以及每个阶段的各特性。对执行网格项目的各个阶段所需的处理器和网络资源数量的判定,可通过处理网格项目描述模型来实现。然后,与所选时间周期内的处理器和网络有效性信息一起,使用必须的处理器和网络资源,来确定执行网格项目的每个阶段将占用多长时间。
例如,将执行网格项目各阶段所需使用的处理器和网络容量表示为由处理器和网络有效性曲线围成的区域,这些曲线是基于自网格节点获得的网格资源有效性信息生成的。由于这些区域由资源有效性曲线围成,如果资源有效性与执行网格项目阶段的特定部分所需的资源有效性相比更少,则执行所需区域需要的时间将更多。对于网格项目的每个阶段可执行该操作,以便可使用户看到与计算网格资源有效性相关的网格项目执行的完整展示。
图7的示例性视图表示,根据本发明的示例性实施例的其中描述了计算网格的资源有效性曲线的图形用户界面。如图7所示,图形用户界面(GUI)700包括用于输入模拟的开始时间/日期和结束时间/日期的字段710和715。字段720被设置用于选择进行模拟表示的统计基础,字段730用于为网格项目的模拟绘图指定粒度。字段740用于选择图形表示类型,如,时间线状图或其他类型的图形表示。字段750提供了通过其选择特定网格项目进行模拟的字段,而部分760提供了由根据所选时间窗口(即,开始时间和结束时间)检索的节点处理器/网络有效性数据所确定的资源有效性曲线绘图。
如图7所示,部分760包括两个线状图一一个是线状图元素770,其表示在时间窗口内在重复出现的时间周期上的处理器有效性,另一个是线状图元素780,其表示在重复出现的时间周期上的网络有效性。应该理解,在部分760中表示的时间周期的粒度可具有多个级别。例如,可以不采用时间窗口内重复出现的时间周期,而是在部分760或其任何子部分中表示出全部时间窗口。此外,用户可改变或滚动所表示出的时间周期。
线状图770和780表示出网格项目可利用的处理器和网络资源的上边界。线状图770和780可表示出实际处理器和网络有效性、处理器和网络资源有效性的平均、与实际或平均处理器和网络资源有效性的一个标准偏差,等。这些线状图770和780提供了用于确定完成网格项目每个阶段所需多长时间的基础。
图8的示例性视图表示,使用本发明的一个示例性实施例的资源有效性绘图来描述网格项目执行的一个机制。如图8所示,在本发明的一个示例性实施例中,将网格项目的每个阶段表示成在表示计算网格资源有效性的网格线下面的区域。网格项目的阶段涉及其中处理器资源占主导地位的阶段和网络资源占主导地位的网格项目阶段。
在图8中将这些阶段表示成处理器和网络资源有效性以下不同阴影区域。浅阴影区域810,820和830表示网络有效性作为用于确定网格项目性能的主导因素的网格项目阶段。暗阴影区域840和850表示处理器有效性作为主导因素的网格项目部分。然而,应该理解,可以不基于主导资源对阶段进行区分,本发明的方面可对其中将这两方面资源视为对于确定网格项目性能而言同等重要的网格项目阶段进行操作。
如图8所示,网格项目包括由区域810表示的执行阶段,其中网格项目将网格工作和网格项目数据传输到网格节点。操作的第二阶段由区域840表示,表示网格节点对传送给它们的网格工作和数据进行处理。操作的第三阶段,被表示为区域820,表示传输要由网格节点进行处理的某些附加数据。网格项目的第四阶段,被表示为区域850,表示网格节点执行某些附加处理。网格项目的第五阶段,被表示为区域830,表示网格节点将数据(如执行网格项目的结果)传送回网格管理系统。
网络资源有效性占主导作用的网格项目阶段810,820和830基本由表示网络资源有效性的线状图围起。如图8所示,区域810,820和830存在有超过处理器有效性线状图但仍低于网络有效性线状图的部分。同样,区域840存在有区域840超过网络有效性线状图但仍低于处理器有效性线状图的部分。
基于所选开始点、网格项目模型定义的网格项目阶段,以及从网格节点获得和保持在节点处理器/网络有效性数据存储系统中的资源有效性数据描述低于资源有效性线状图的区域。用户可通过在表示800上移动光标或输入不同的开始时间,来修改开始时间。网格管理系统基于开始时间的变化修改网格项目性能的表示800。以此方式,用户可以看到不同开始时间对网格项目性能的影响。
例如,如果用户选择更早开始时间,这导致可用于执行网格项目的各阶段的不同量的处理器和网络资源。如果这样不同量的处理器和网络资源导致更低资源量用于特定阶段,则可增加完成网格项目该阶段的时间周期。同样,如果不同量的处理器和网络资源导致更高量的可用资源,则可缩短执行网格项目该阶段的时间周期。
如图8所示,在网格项目性能模拟的绘图表示中,同时表示出处理器资源起支配作用的阶段和网络资源起支配作用的阶段。从而,在网格项目性能的图形表示中,表示出可用网络资源和可用处理器资源对网格项目性能的影响。当网格项目的开始时间发生变化时,区域810-850的大小保持一致,即使基于可用处理器和网络资源量可对准度(即,时间相对于资源量)进行修改也是如此。
图9的示例性视图表示如图8所示的同一网格项目的图形描述,其中,改变了执行网格项目的开始时间。如图9所示,当开始时间发生变化时,也会改变网格项目的结束时间。这是由于,尽管完成网格项目所需的处理器和网络资源的量不会发生变化,但处理器和网络资源的有效性会由于网格项目的开始时间发生变化而发生变化。从而,通过改变网格项目开始的开始时间,完成网格项目的结束时间由此发生变化。这对于完成网格项目的最后期限而言,可能非常重要。
从而,本发明的方面提供了图形用户界面,通过图形用户界面,提供了网格项目性能相对于可用处理器和网络资源的表示900。图形用户界面允许用户修改网格项目的开始时间,并且随开始时间变化而动态修改网格项目的表示900。以此方式,用户可确定,考虑到处理器和网络资源有效性,在所需时间周期内是否会完成网格项目。
尽管根据由网格节点获得的处理器和网络资源有效性数据对以上示意性示例进行了描述,在本发明的其他示例中,可使用图形用户界面来确定添加附加网格节点对网格项目性能的影响。与改变网格项目开始时间一样,将附加网格节点引入到计算网格中改变了处理器和网络资源的量。本发明的方面可基于因添加来自除在计算网格中通常可用的源之外的其它源的网格节点而提供的附加资源,修改可用处理器和网络资源的上边界。然后,可按照与以上所述同样方式,表示出这些附加资源对网格项目性能的影响。
例如,用户可确定,由所建立的计算网格获得的处理器和网络资源有效性不足以按照实现用户的目的和最后期限的方式,执行网格项目。计算网格的提供方可与其他计算系统提供方签署协议,以便在需要时有条件地提供计算系统和/或网络资源。可存在用于不同组的处理器和/或网络资源的许多这样的协议。使用图形用户界面,可确定包含这些组中的每一个以及对网格项目性能的最终影响。
可在图形用户界面中给图形用户界面的用户提供选择查看对具有扩展网格的网格项目的模拟的机制。此外,对网格的扩展程度可以是可选的。从而,这些附加网格节点的资源有效性数据(采用类似于以上对于基本网格节点描述的方式获得)可从节点处理器/网络有效性数据存储系统中检索,并将其用来修改用于定义网格项目的各阶段区域上边界的处理器和网络资源有效性线状图。由于通过添加附加网格节点可获得附加资源,包括这些附加网格节点的结果往往会缩短完成网格项目性能所需的时间量。
该结果如图10所示,图中表示出扩展网格对如图8和9所示的网格项目的影响。如图10所示,包括有附加处理器和网络资源,导致线状图表示出有更多资源量可用。从而,使得从开始时间到完成网格项目的时间周期更短。对于本发明的前述实施例,用户可再次修改网格项目的开始时间,以及在网格项目性能的表示1000上,查看在所选扩展计算网格内对网格项目性能的影响。
一旦给出了网格项目的模拟,并且用户确定出网格项目的合适开始时间,以及是否应使用扩展网格,网格管理系统就调度网格项目工作到特定网格节点的分派。该处理的一部分基于网格项目模型生成网格项目工作,并选择网格项目工作和数据要发往的网格节点。基于网格项目生成网格项目工作在本领域中通常是熟知的,从而,在此不提供详细描述。
在选择网格工作所派往的网格节点时,首先确定网格项目的网络特性。例如,网格项目调度引擎确定网格项目是否为以下其中之一:集中星型(hub and spoke type)的网格项目,其中,在网格节点的网格代理上执行的网格工作与提交点来回发送数据量,且在工作处理期间的其他通信量最少;网格工作主要从处在计算网格上特定位置处的数据库访问数据的网格项目;以及网格工作在其处理期间彼此大量通信的网格项目。
基于对网格项目特性的判定,然后,使用群集算法,基于网格节点与提交点连接得如何好,指定位置处的数据库,或基于网格节点互连接性,对网格节点的集合进行映射。群集算法在本领域中通常是熟知的,从而,在此不提供关于群集算法的详细描述。基于以上确定的网格项目的类型,确定群集算法的基础。然后根据处理器容量和网络容量(已扣除其他非网格或网格工作消耗的处理器和网络容量),对生成的群集排序。
例如,按处理器容量排序生成的网格节点群集的第一表格。按网络容量排序生成的网格节点群集的第二表格。然后,使用这两个表格,基于处理器和网络容量,生成群集的二维绘图。然后建立用于选择节点群集来执行网格工作的处理器和网络资源的初始最小要求。然后,判定具有高于最小要求的网格节点群集是否有足够容量执行网格项目必需的工作。若否,则对初始最小处理器和网络容量进行调整,以便对更多群集进行评估。
可重复进行该处理,直至具有高于最小要求的群集提供足够容量执行网格项目为止,或直至连续重新计算显示出当使用更多群集时返回值降低或变小为止。如果识别出群集集合将符合在通过模拟网格项目所表示的时间期限内执行网格项目的容量要求,或设置时间期限,则使用群集集合调度网格项目的性能。如果有证据表明当重新计算最小处理器和网络容量和评估附加群集时返回值降低或减小,则将不能实现合适调度的表示返回给用户。
图11表示,根据本发明的一个示例性实施例的网格节点的群集。如标记1100所示,根据网格节点彼此的网络邻近关系、网格工作的源,或为执行网格工作而从其存取数据的数据库,对网格节点进行群集。网络群集算法在本领域中通常是熟知的,本发明的实施例可使用任何已知的网络群集算法来确定网格节点的群集。
基于所用的特定群集算法,可生成各种群集,如群集1150-1170。对于每个群集,确定在执行网格项目的时间周期上用于每个群集的平均处理器和网络容量,例如,如使用本发明实施例的图形用户界面和模拟机制选择的那样。也就是,例如,将群集中的每个网格节点的总处理器和网络容量相加,并将所关心的时间周期之和进行平均,以确定群集的平均资源有效性。
然后,使用处理器和网络资源有效性或容量的平均在相应表格1180和1190中对群集进行排序。表格1180是按平均处理器容量进行排序的所识别出的群集的表格。表格1190是按平均网络容量进行排序的所识别出的群集的表格。这些表格用于在处理器容量相对于网络容量的二维图形中绘制群集。
图12表示基于处理器和网络资源有效性或容量的网格节点群集的示例性二维绘图。如绘图1200所示,在该示例性实施例中,x轴表示网络容量,y轴表示处理器容量。然后,基于群集被确定出的平均处理器和网络容量,在该图上绘制群集。
然后,确定处理器和网络容量的最小阈值。由用户或通过在调度网格项目中的规定对这些最小值进行选择。将最小值表示为线1210和1220。然后,判定在图右上部分中绘制出的群集(如在最小线1210和1220之上的)是否有足够的总处理器和网络容量来在通过网格项目模拟建立的时间周期内,或否则在用户指定的时间周期内,完成网格项目的执行。如果是,则将在图右上部分中识别出的群集被选作为被分派网格工作的群集,并执行对于由所选群集进行处理的这些网格工作的调度。
然而,如果在图右上部分中的群集的总容量不足以完成在被请求时间周期内完成网格项目,则重新计算最小处理器和网络资源容量线1210和1220,并评估群集的更大集合。从而,生成新的最小容量线1230和1240,并对这些线右上侧的群集进行评估,以确定其总资源容量是否使得会在所选时间周期内完成网格项目。可重复该处理,直至识别出具有足够资源容量的足够大尺寸的群集为止,或直至返回降低的或减少的附加重新计算结果为止。
一旦识别出群集集合,网格项目调度引擎为群集中的每个网格节点生成网格工作,并调度这些网格工作到网格节点的分派,以便可以在所选时间周期内实现网格项目的执行。通过使用用于在调度时间将网格工作以及可选性地将网格工作操作的数据传送到网格节点的网格项目工作分派器,采用已知的方式,执行网格工作到网格节点的实际分派。
如以上所述,最小处理器和网络资源容量线的重新计算有可能导致降低或减小返回值。在这样的情形中,按照以上关于网格项目模拟描述的同样方式,可提供用于扩展计算网格的选项。也就是,可根据建立的与潜在网格节点提供方的关系,将附加网格节点引入到基本计算网格中。
当判定不能实现网格项目的合适调度时,可向用户提供用于考虑扩展计算网格对调度网格项目能力的影响的选项。如果用户选择扩展计算网格,可提示用户指出将哪些附加网格节点添加到计算网格。也就是,如果存在附加网格节点的多个可能的源,则用户可选择获得这些附加网格节点的一个或多个源。
一旦用户选择扩展计算网格,并选择了获得附加网格节点的一个或多个源,则可再次执行群集和绘制。从而,通过附加处理器和网络资源,生成网格节点的附加群集。执行与以上关于确定用于允许在所选时间周期内执行网格项目的群集集合所描述的同样的处理。如果群集集合的发现导致确定群集集合允许网格项目在所选时间周期内完成,则使用这些网格节点调度网格工作的分派。该分派可涉及与附加网格节点源计算系统的协调,以请求对附加网格节点的访问,以执行对网格工作的处理。从而,使得有可能对计算网格进行动态扩展,以调度网格工作的分派,使得在通过网格项目的模拟确定的时间周期内可以完成网格项目。
从而,本发明的方面提供了用户可基于在所选时间周期测量的网格节点的处理器和网络资源有效性/容量而获得对网格项目性能模拟的机制。用户可以看到改变网格项目的开始时间对将在计算网格中执行网格项目的方式产生的影响,以及更重要的是,对网格项目完成时间/日期的影响。这允许用户确定出在计算网格上启动网格项目的最佳时间,以实现性能目标。
此外,本发明的方面提供了在计算网格上调度网格工作分派,是否基于模拟机制实现该调度,的机制。调度机制允许选择关于网格工作所派往的网格节点的群集的最优集合,以便在用户所选定的时间周期内完成网格项目。当判定当前群集集合将不具有在指定时间终止期限内完成网格项目的足够处理器和/或网络有效性或容量时,调度机制可反复扩展所考虑的群集集合。
通过模拟机制和调度机制,本发明的实施例提供了,利用与潜在网格节点提供方或源所做的协议,通过包括附加网格节点,扩展基本计算网格的机制。可将附加网格节点映射到计算网格中,并可确定附加网格节点对网格项目的模拟行为和/或网格节点群集的群集和资源有效性的影响。以此方式,可判定扩展计算网格是否将导致在所需时间周期内完成网格项目,若是,可从附加网格节点提供方/源请求对计算网格的扩展。
除以上所述外,本发明的方面还提供了用于对在网格节点上网格工作的执行进行控制的网格项目节流控制。节流机制用于保持对与网格工作相关联的网络流量的数量的预定限制。也就是,通过以上所述的模拟机制,基于由节点处理器/网络有效性数据所确定的可用网络容量,确定最大数据传输量。然后,可由网格项目节流控制将网格工作的该最大数据传输,或网络流量,报告给与网格节点相关联的网格代理,以便它们可对其网络接口处理的网格数据量进行调节。从而,根据该节流机制,网格管理系统将网格工作和数据分派给网格节点。网格节点还根据节流机制在网格节点以及网格管理系统之间传输数据。以此方式,防止网格项目淹没网络,并使其速率减慢到所计算的、不对网格节点的正常操作造成影响的速率。
节流控制通过识别出用于标识网格节点上网格工作的网络行为的参数集进行操作。参数集包括标识网络行为的一个或多个参数。例如,参数集将对于网格工作设置预期网络有效性的速率和/或预期处理器有效性的速率。如果网格节点具有支持基于参数集对数据传输进行控制的应用,则可将参数集发送到网格节点上的应用。可基于来自网格节点的数据传输速率和参数集,可对来自网格节点的数据传输速率进行控制。从而,如果数据传输速率超过预期网络有效性,则可通过节流机制对数据传输速率进行限制。
图13表示根据本发明的一个示例性实施例的网格项目节流控制的操作。如1300所示,网格项目调度引擎1310将表示网络资源量,如在网格项目执行的每个阶段期间每个网格工作将需要的带宽量的资源要求信息(包括预期网络和处理器有效性信息)提供给网格项目节流控制1320。然后,将该信息封装到与网格工作1330和/或网格工作数据相关联的包封1325中,并通过调度引擎1310将其提供给与网格工作和/或网格工作数据相关联的网格代理1340。网络接口1360的网络接口应用程序接口(API)1350剥开包封1325,并对然后用于控制在网络上从网格节点1380发送网格数据的速率的预期有效性信息进行处理。
也就是,网格接口1360对表示预期网络有效性的信息进行处理。在其操作阶段期间网格节点1380可利用的网络资源通过预期网络有效性阈值来表示,其中,通过网格节点1380将网格数据发送到其他计算设备。预期网络有效性信息对可由网络接口1360传送来自网格代理的数据的速率设置限制。从而,网络接口1360可对从与网格代理1340相对应的端口1375相关联的缓冲器1370检索网格数据,以及在网络上传输该数据的速率进行限制。
以此方式,结合自网格项目节流控制1320接收的节流信息,通过网格节点的网络接口1360,对网格节点的数据传输进行控制。
网格项目节流控制1320用于当判定网格工作引起的数据传输速率超过在网格节点处数据传输的预期网络有效性阈值时,启动用于网格工作的网络利用的节流,以便数据传输不会超过预期网络有效性。以此方式,网格节流控制1320对从网格节点1380发送网格流量的速率进行控制,以便网格流量不会对网格节点1380的正常操作产生负面影响。
网格项目节流控制1320还用于对网格节点对网格工作的处理进行节流控制。网格节点可利用来处理网格工作的网格节点处理资源由预期处理器有效性阈值来表示。判定网格节点处的网格工作引起的处理器利用率是否超过处理器利用的预期处理器利用有效性阈值。如果处理器利用率超过网格工作的预期处理器利用阈值,则节流控制1320对网格节点的处理器利用率进行限制,以便在网格节点处执行网格工作不会对非网格工作的网格节点处理产生负面影响。
基于网格工作的调度,确定预期网络和处理器有效性值,正如由网格工作调度器、网格项目可视化和模拟引擎,或可选性地由网格工作调度器和网格项目可视化和模拟引擎的组合所确定的那样。网格项目节流控制1320还用于针对在网格节点处因网格工作和非网格工作引起的网络和处理器利用进行判定。节流控制1320可基于任务标识,或本领域中熟知的其他方式进行该判定。节流控制还收集关于系统使用方面的统计数据,如网格和非网格工作的处理器和网络使用。从处在网格节点上的处理器利用监视器和网络利用监视器收集关于处理器利用和网络利用的统计数据。节流控制1320可扣除对网格节点工作负载的网格贡献。
节流机制的又一优点在于,该节流机制提供了一种机制,通过该机制,与网格代理相关联的网络行为监视器可将网络流量分成网格和非网格类型,如先前所讨论的。也就是,由于网络接口对从网格节点发出的网络流量进行节流,网络行为监视器知道与网格工作相关联的网络流量不会大于所建立的预期网络有效性阈值。从而,如果网络链路以全容量运行,则可归因于网格工作的最大值是节流阈值。在这些实施例中,全容量例如为所消耗的所有带宽。
图14-16的流程图用于描述以上所述本发明某些实施例的多个操作。应该理解,流程图表示出的每个步骤以及流程图表示出的步骤组合可通过计算机程序指令实现。可将这些计算机程序指令提供给处理器或其他可编程数据处理装置,以生成机器,以便在处理器或其他可编程数据处理装置上执行的指令创建用于实现在流程图步骤中指定的功能。这些计算机程序指令还可存储在计算机可读存储器或存储介质上,它们可使处理器或其他可编程数据处理装置按照特定方式工作,以便存储在计算机可读存储器或存储介质中的指令生成包括用于实现在流程图步骤中指定的功能的指令部件的制造商品。
因此,流程图表示出的步骤支持用于执行指定功能的部件的组合,用于执行指定功能的步骤与用于执行指定功能的程序指令部件的组合。还应理解,流程图表示的每个步骤,以及流程图表示的步骤组合,可通过用于执行指定功能或步骤的基于专用硬件的计算机系统,或专用硬件和计算机指令的组合实现。
图14的流程图概括性表示出,根据本发明的一个示例性实施例的用于生成网格项目模拟的可视化表示的示例性操作。如图14的流程图1400中所示,在步骤1410,从用户接收请求,以便对特定时间周期上网格项目的执行进行模拟。在步骤1420,通过向用户提供用于请求网格项目标识符、开始日期、开始时间、结束日期、结束时间、用于模拟的统计基础、图形表示类型,和/或任何其他附加参数的GUI,用户进行为被请求的网格项目模拟输入或选择参数的请求。
基于用户输入的参数和网络有效性和处理器有效性数据,生成对网格项目的模拟。在步骤1430,从网络和处理器有效性数据存储系统检索网络和处理器有效性数据。在步骤1440,基于处理器/网络有效性数据,生成资源有效性绘图。在步骤1450,使用在1440的资源有效性绘图,以及可选性地使用来自网格项目模型描述的信息,如以上所述,生成对于网格项目执行的模拟。
图15的流程图概括性表示出,根据本发明的一个示例性实施例,用于调度网格工作分派的示例性操作。如图15的流程图1500所示,网格管理系统在步骤1510接收网格项目提交。在步骤1515,确定网格项目的网络特性。在步骤1520,使用网络群集算法生成网格节点群集。可使用用于确定网格节点群集的任何已知网络群集算法,生成网格节点群集。
在步骤1525,对于每个群集的网络和处理器有效性,确定平均资源有效性。在步骤1530,根据处理器和网络资源有效性的平均,对每个网格节点群集进行排序。
在步骤1535,确定对于处理器容量的最小阈值和对于网络容量的最小阈值。可通过用户或网格项目中的指定,选择最小阈值。在步骤1540,对于网格节点群集是否超过处理器和网络最小阈值,以及是否有足够的总网络和处理器容量来执行网格工作进行判定。可选择超过最小阈值且具有足够容量的网格节点。步骤1545根据所选网格节点群集,调度网格项目。
如果没有群集满足步骤1540的要求,则在步骤1555向下调节最小阈值,以允许附加群集的评估。可重复该处理,直至识别出满足步骤1540的要求的群集并可在步骤1545进行调度为止,或直至在步骤1550附加重新计算导致返回值减小或降低,在此情形中,在步骤1560,向用户提供关于调度不能实现的表示。
图16的流程图概括性表示出,根据本发明的一个示例性实施例的用于对与网格项目相关联的网络流量进行节流的示例性操作。如图16的流程图1600中所示,在步骤1610,确定预期网络有效性和预期处理器有效性阈值。如果在步骤1620处数据传输速率超过预期网络有效性阈值,则在步骤1630处节流控制对数据传输速率进行节流。如果在步骤1640处处理器利用率超过预期处理器有效性阈值,则在步骤1650处节流控制对处理网格工作的处理器利用率进行节流控制,以使其落回至预期处理器有效性。
节流控制还收集关于处理器和网络资源的系统使用的统计数据。节流控制能够扣除对处理器和网络负载的网格工作贡献。节流控制可通过任务标识或本领域中已知的其他方式识别网格工作。节流控制将仅对与网格工作相关联的处理器和网络行为进行节流。以此方式,与网格节点上的网格代理相关联的网格项目节流控制程序对网格节点处的网络/处理器利用率进行控制,以防止网格工作干扰非网格工作的执行。
重要的是要注意,尽管在全功能数据处理系统的情形中描述了本发明,本领域普通技术人员应该理解,本发明的处理能够以指令的计算机可用介质形式分发,以及以同样应用本发明的多种形式分发,而与实际用于实现分发的具体信号承载介质类型无关。
本发明可采用全硬件实施例、全软件实施例,或包含硬件和软件元素的实施例的形式。在优选实施例中,采用软件形式实现本发明,在软件中包括但不限于固件、常驻软件、微代码等。
此外,本发明可采用可从计算机可用或计算机可读介质进行访问的计算机程序产品的形式,这些介质提供由计算机和任何指令执行系统使用或与其结合使用的程序代码。出于该描述的目的,计算机可用或计算机可读介质可以是能够包含、存储、通信、传递,或传输程序以便由指令执行系统、装置或设备使用或与其结合使用的任何装置。
介质可为电、磁、光、电磁、红外、或半导体系统(或装置、设备)或传播介质。计算机可读介质的示例包括半导体或固态存储器、磁带、可移动计算机磁盘、随机存取存储器(RAM)、只读存储器(ROM)、硬磁盘和光盘。光盘的现有示例包括光盘-只读存储器(CD-ROM)、光盘-读写存储器(CD-R/W)和DVD。
适合存储和/或执行程序代码的数据处理系统将包括,直接或通过系统总线间接与存储器元件相连的至少一个处理器。存储器元件可包括在程序代码实际执行期间采用的局部存储器、大容量存储设备,和高速缓存,高速缓存为至少某些程序代码提供临时存储,以减少在执行期间必须从大容量存储设备对代码进行检索的次数。
输入/输出或I/O设备(包括但不限于键盘、显示器、点击设备等)可直接或通过中间I/O控制器与系统相连。
网络适配器也可与系统连接,以便使数据处理系统通过中间私有或公用网络,与其他数据处理系统或远程打印机或存储设备相连接。调制解调器、电缆调制解调器和以太网卡仅仅是数种当前可用的网络适配器类型。
出于说明和描述的目的给出了关于本发明的描述,其并不意在以所披露形式穷举或限制本发明。本领域普通技术人员显然会想到许多修改例和变型例。所选出和描述的实施例是为了更好理解本发明的原理,实际应用,并能够使本领域普通技术人员理解本发明可应用于具有适合于所考虑具体用途的多种修改的多种实施例。

Claims (20)

1.一种用于对网格工作在网格节点上的执行进行控制的计算机实现方法,所述计算机实现方法包括:
识别出用于标识网格工作在网格节点上的网络行为的参数集;以及
基于数据传输速率和所述参数集,对通过在网格节点处处理网格工作而生成的数据进行数据传输的速率进行控制。
2.根据权利要求1的计算机实现方法,其中,控制步骤包括:
如果数据传输速率超过在参数集中给出的预期网络有效性阈值,则对数据传输速率进行限制。
3.根据权利要求1的计算机实现方法,还包括:
判定网格节点是否具有支持基于参数集控制数据传输的应用;以及
响应于在网格节点上存在所述应用,将参数集发送到网格节点上的应用。
4.根据权利要求2的计算机实现方法,还包括:
确定可归因于网格工作的数据传输速率是否超过数据传输的预期网络有效性阈值。
5.根据权利要求1的计算机实现方法,还包括:
接收封装在与网格工作或网格工作数据相关联的包封中的预期网络有效性阈值。
6.根据权利要求1的计算机实现方法,还包括:
从网格节点上的网络利用监视器收集关于网络利用的统计数据。
7.根据权利要求1的计算机实现方法,还包括:
确定可归因于网格工作和非网格工作的网络利用。
8.一种用于对网格工作在网格节点上的执行进行控制的计算机实现方法,所述计算机实现方法包括:
识别出用于标识网格工作在网格节点上的处理器行为的参数集;以及
基于处理器利用率和所述参数集,对网格工作在网格节点处的处理器利用率进行控制。
9.根据权利要求8的计算机实现方法,还包括:
如果处理器利用率超过预期处理器有效性阈值,则对处理器利用率进行限制。
10.根据权利要求9的计算机实现方法,还包括:
确定可归因于网格工作的处理器利用率是否超过在参数集中给出的处理器利用的预期处理器有效性阈值。
11.根据权利要求8的计算机实现方法,还包括:
接收封装在与网格工作或网格工作数据相关联的包封中的预期处理器有效性阈值。
12.根据权利要求8的计算机实现方法,还包括:
从网格节点的处理器利用监视器收集关于处理器利用的统计数据。
13.根据权利要求8的计算机实现方法,还包括:
确定可归因于网格工作和非网格工作的处理器利用。
14.根据权利要求13的计算机实现方法,还包括:
确定可归因于网格工作负载和非网格工作负载的处理器利用,其中,将处理器利用数据和与网格节点进行处理的网格工作相关联的标识符进行比较。
15.一种包括程序代码装置的计算机程序,当所述程序在计算机上运行时,所述程序代码装置用于执行权利要求1至14中任何一项的所有步骤。
16.一种用于对网格工作在网格节点上的执行进行控制的装置,包括:
计算机,包括:
总线;
与总线相连的存储设备,其中,存储设备包含计算机可用程序产品;
处理器部件,其中,处理器部件执行计算机可用程序
产品,以识别出用于标识网格工作在网格节点上的网络行为的参数集;以及
基于数据传输速率和所述参数集对来自网格节点的数据传输速率进行控制。
17.根据权利要求16的装置,其中,处理器部件还执行计算机可用程序代码,以便在数据传输速率超过在参数集中给出的预期网络有效性阈值时,对数据传输速率进行限制。
18.根据权利要求16的装置,其中,处理器部件执行计算机可用程序代码,以便在处理器利用率超过预期处理器有效性阈值时,对处理器利用率进行限制。
19.根据权利要求18的装置,其中,处理器部件执行计算机可用程序代码,以便确定可归因于网格工作的处理器利用率是否超过预期处理器有效性阈值。
20.根据权利要求17的装置,其中,处理器部件执行计算机可用程序代码,以便确定可归因于网格工作的数据传输速率是否超过预期网络有效性阈值。
CNA2006800332369A 2005-09-13 2006-08-24 用于网格网络节流和负载收集器的方法和装置 Pending CN101263458A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/225,609 US7995474B2 (en) 2005-09-13 2005-09-13 Grid network throttle and load collector
US11/225,609 2005-09-13

Publications (1)

Publication Number Publication Date
CN101263458A true CN101263458A (zh) 2008-09-10

Family

ID=37101617

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2006800332369A Pending CN101263458A (zh) 2005-09-13 2006-08-24 用于网格网络节流和负载收集器的方法和装置

Country Status (3)

Country Link
US (1) US7995474B2 (zh)
CN (1) CN101263458A (zh)
WO (1) WO2007031394A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104040978A (zh) * 2012-12-03 2014-09-10 华为技术有限公司 通信单板硬件资源管理方法、通信单板及基站
CN104753810A (zh) * 2013-12-30 2015-07-01 腾讯数码(天津)有限公司 一种网络入流量限速方法及装置

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8150994B2 (en) * 2005-06-03 2012-04-03 Microsoft Corporation Providing flow control and moderation in a distributed message processing system
US7853948B2 (en) * 2005-10-24 2010-12-14 International Business Machines Corporation Method and apparatus for scheduling grid jobs
US7831971B2 (en) 2005-10-24 2010-11-09 International Business Machines Corporation Method and apparatus for presenting a visualization of processor capacity and network availability based on a grid computing system simulation
US20070118839A1 (en) * 2005-10-24 2007-05-24 Viktors Berstis Method and apparatus for grid project modeling language
US20090077235A1 (en) * 2007-09-19 2009-03-19 Sun Microsystems, Inc. Mechanism for profiling and estimating the runtime needed to execute a job
US7769856B2 (en) 2007-11-15 2010-08-03 Intel Corporation Automatic tuning of communication protocol performance
US7856348B2 (en) * 2007-11-15 2010-12-21 Intel Corporation System and method for generation of synthetic parallel application kernels using tracing information
US8286081B2 (en) 2009-04-30 2012-10-09 Apple Inc. Editing and saving key-indexed geometries in media editing applications
US9350616B1 (en) * 2010-05-11 2016-05-24 Trend Micro Inc. Bandwidth prediction using a past available bandwidth value and a slope calculated from past available bandwidth values
WO2012155985A1 (de) * 2011-05-19 2012-11-22 Siemens Aktiengesellschaft Prozessvisualisierung in einem automatisierungssystem
US10097474B1 (en) 2013-03-15 2018-10-09 Google Llc Shared rate limiting
US10061780B2 (en) * 2014-04-28 2018-08-28 Bank Of America Corporation Information management command process device
US10447040B2 (en) 2014-10-15 2019-10-15 Cummins Power Generation Ip, Inc. Programmable inverter for controllable grid response
US10007556B2 (en) 2015-12-07 2018-06-26 International Business Machines Corporation Reducing utilization speed of disk storage based on rate of resource provisioning

Family Cites Families (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4745593A (en) 1986-11-17 1988-05-17 American Telephone And Telegraph Company, At&T Bell Laboratories Arrangement for testing packet switching networks
CA2100540A1 (en) 1992-10-19 1994-04-20 Jonel George System and method for performing resource reconfiguration in a computer system
US5528735A (en) 1993-03-23 1996-06-18 Silicon Graphics Inc. Method and apparatus for displaying data within a three-dimensional information landscape
US5680531A (en) 1993-07-02 1997-10-21 Apple Computer, Inc. Animation system which employs scattered data interpolation and discontinuities for limiting interpolation ranges
CH689800A5 (de) * 1994-01-21 1999-11-30 Kolbus Gmbh & Co Kg Vorrichtung zum Einrichten einer Buchbindemaschine.
US6006299A (en) 1994-03-01 1999-12-21 Intel Corporation Apparatus and method for caching lock conditions in a multi-processor system
US5828879A (en) 1994-12-22 1998-10-27 Fore Systems, Inc. Method and a scheduler for controlling when a server provides service to an entity
US5774668A (en) 1995-06-07 1998-06-30 Microsoft Corporation System for on-line service in which gateway computer uses service map which includes loading condition of servers broadcasted by application servers for load balancing
US5978583A (en) 1995-08-07 1999-11-02 International Business Machines Corp. Method for resource control in parallel environments using program organization and run-time support
US6480194B1 (en) 1996-11-12 2002-11-12 Silicon Graphics, Inc. Computer-related method, system, and program product for controlling data visualization in external dimension(s)
SE511881C2 (sv) 1997-08-08 1999-12-13 Ericsson Telefon Ab L M Förfarande och arrangemang för överföring av paketinformation i ett digitalt telekommunikationssystem
US6195622B1 (en) 1998-01-15 2001-02-27 Microsoft Corporation Methods and apparatus for building attribute transition probability models for use in pre-fetching resources
US6324654B1 (en) 1998-03-30 2001-11-27 Legato Systems, Inc. Computer network remote data mirroring system
US6460068B1 (en) 1998-05-01 2002-10-01 International Business Machines Corporation Fractal process scheduler for testing applications in a distributed processing system
US6519553B1 (en) 1998-05-14 2003-02-11 Sandia Corporation Multiprocessor computer overset grid method and apparatus
US6324656B1 (en) 1998-06-30 2001-11-27 Cisco Technology, Inc. System and method for rules-driven multi-phase network vulnerability assessment
US6321181B1 (en) 1998-08-24 2001-11-20 Agere Systems Guardian Corp. Device and method for parallel simulation
US6678642B1 (en) 1998-10-08 2004-01-13 Sandia Corporation Method of and apparatus for modeling interactions
US6269376B1 (en) 1998-10-26 2001-07-31 International Business Machines Corporation Method and system for clustering data in parallel in a distributed-memory multiprocessor system
US6563793B1 (en) 1998-11-25 2003-05-13 Enron Warpspeed Services, Inc. Method and apparatus for providing guaranteed quality/class of service within and across networks using existing reservation protocols and frame formats
US6415321B1 (en) 1998-12-29 2002-07-02 Cisco Technology, Inc. Domain mapping method and system
US6539445B1 (en) 2000-01-10 2003-03-25 Imagex.Com, Inc. Method for load balancing in an application server system
US6779016B1 (en) 1999-08-23 2004-08-17 Terraspring, Inc. Extensible computing system
US6597956B1 (en) 1999-08-23 2003-07-22 Terraspring, Inc. Method and apparatus for controlling an extensible computing system
US6694345B1 (en) 1999-10-05 2004-02-17 International Business Machines Corporatioin External job scheduling within a distributed processing system having a local job control system
US20030018694A1 (en) 2000-09-01 2003-01-23 Shuang Chen System, method, uses, products, program products, and business methods for distributed internet and distributed network services over multi-tiered networks
US7003559B1 (en) 2000-10-23 2006-02-21 Hewlett-Packard Development Company, L.P. System and method for determining probable network paths between nodes in a network topology
US6988090B2 (en) 2000-10-25 2006-01-17 Fujitsu Limited Prediction analysis apparatus and program storage medium therefor
GB0026703D0 (en) 2000-11-01 2000-12-20 Parc Technologies Ltd Traffic flow optimisation system
US6687693B2 (en) 2000-12-18 2004-02-03 Ncr Corporation Architecture for distributed relational data mining systems
EP1388073B1 (en) 2001-03-01 2018-01-10 Akamai Technologies, Inc. Optimal route selection in a content delivery network
US6959405B2 (en) 2001-04-18 2005-10-25 Blue Pumpkin Software, Inc. Method and system for concurrent error identification in resource scheduling
US7130927B2 (en) * 2001-07-05 2006-10-31 International Business Machines Corporation Method of bandwidth management between the stations of a local area network
US7356689B2 (en) 2001-07-09 2008-04-08 Lucent Technologies Inc. Method and apparatus for tracing packets in a communications network
US20030101167A1 (en) * 2001-11-29 2003-05-29 International Business Machines Corporation File maintenance on a computer grid
US6798741B2 (en) * 2001-12-05 2004-09-28 Riverstone Networks, Inc. Method and system for rate shaping in packet-based computer networks
US6889332B2 (en) * 2001-12-11 2005-05-03 Advanced Micro Devices, Inc. Variable maximum die temperature based on performance state
US20030200347A1 (en) 2002-03-28 2003-10-23 International Business Machines Corporation Method, system and program product for visualization of grid computing network status
US20060041887A1 (en) 2002-07-18 2006-02-23 Intermec Ip Corp. Expert system for solution management
JP4133068B2 (ja) 2002-07-23 2008-08-13 株式会社日立製作所 計算機システム
US20040024673A1 (en) 2002-07-31 2004-02-05 International Business Machines Corporation Method for optimizing the allocation of resources based on market and technology considerations
US8489741B2 (en) 2002-11-21 2013-07-16 International Business Machines Corporation Policy enabled grid architecture
US20060294238A1 (en) * 2002-12-16 2006-12-28 Naik Vijay K Policy-based hierarchical management of shared resources in a grid environment
US7383550B2 (en) 2002-12-23 2008-06-03 International Business Machines Corporation Topology aware grid services scheduler architecture
KR100554015B1 (ko) * 2002-12-23 2006-02-22 한국과학기술정보연구원 그리드 컴퓨팅에 적합한 데이터 전송 제어 시스템 및방법과 그 프로세스를 기록한 컴퓨터 판독가능한 기록매체
US20040225711A1 (en) * 2003-05-08 2004-11-11 Spotware Technologies, Inc. System for administering computers on a computing grid
US8935401B2 (en) * 2003-06-20 2015-01-13 Hewlett-Packard Development Company, L.P. Method and system using admission control in interactive grid computing systems
JP3861859B2 (ja) * 2003-07-22 2006-12-27 コニカミノルタビジネステクノロジーズ株式会社 電子写真感光体
US20050076113A1 (en) 2003-09-12 2005-04-07 Finisar Corporation Network analysis sample management process
US7552437B2 (en) 2004-01-14 2009-06-23 International Business Machines Corporation Maintaining application operations within a suboptimal grid environment
US20050165854A1 (en) * 2004-01-23 2005-07-28 Burnett Robert J. System for managing job performance and status reporting on a computing grid
US8782654B2 (en) * 2004-03-13 2014-07-15 Adaptive Computing Enterprises, Inc. Co-allocating a reservation spanning different compute resources types
CA2559603A1 (en) * 2004-03-13 2005-09-29 Cluster Resources, Inc. System and method for providing advanced reservations in a compute environment
US7861246B2 (en) * 2004-06-17 2010-12-28 Platform Computing Corporation Job-centric scheduling in a grid environment
KR100677753B1 (ko) * 2004-11-26 2007-02-02 삼성전자주식회사 데이터 수집이 가능한 센서 네트워크 및 그 데이터 수집방법
US20060167966A1 (en) * 2004-12-09 2006-07-27 Rajendra Kumar Grid computing system having node scheduler
US8045453B2 (en) 2005-01-20 2011-10-25 Alcatel Lucent Methods and systems for alleviating congestion in a connection-oriented data network
US7853948B2 (en) 2005-10-24 2010-12-14 International Business Machines Corporation Method and apparatus for scheduling grid jobs
US20070118839A1 (en) 2005-10-24 2007-05-24 Viktors Berstis Method and apparatus for grid project modeling language
US7831971B2 (en) 2005-10-24 2010-11-09 International Business Machines Corporation Method and apparatus for presenting a visualization of processor capacity and network availability based on a grid computing system simulation

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104040978A (zh) * 2012-12-03 2014-09-10 华为技术有限公司 通信单板硬件资源管理方法、通信单板及基站
CN104040978B (zh) * 2012-12-03 2017-02-01 华为技术有限公司 通信单板硬件资源管理方法、通信单板及基站
CN104753810A (zh) * 2013-12-30 2015-07-01 腾讯数码(天津)有限公司 一种网络入流量限速方法及装置

Also Published As

Publication number Publication date
US7995474B2 (en) 2011-08-09
WO2007031394A1 (en) 2007-03-22
WO2007031394A9 (en) 2008-06-26
US20070058547A1 (en) 2007-03-15

Similar Documents

Publication Publication Date Title
CN101263458A (zh) 用于网格网络节流和负载收集器的方法和装置
CN1956457B (zh) 用于安排网格计算系统中的网格作业的方法和设备
CN1956456B (zh) 用于在网格计算系统中呈现资源要求的方法和设备
US8095933B2 (en) Grid project modeling, simulation, display, and scheduling
Mansouri et al. Combination of data replication and scheduling algorithm for improving data availability in Data Grids
Hao et al. An enhanced load balancing mechanism based on deadline control on GridSim
CN104050042B (zh) Etl作业的资源分配方法及装置
Patel et al. Survey of load balancing techniques for grid
Hou et al. AlphaR: Learning-powered resource management for irregular, dynamic microservice graph
Li et al. An effective scheduling strategy based on hypergraph partition in geographically distributed datacenters
Ankita et al. Ba-PSO: A Balanced PSO to solve multi-objective grid scheduling problem
Shukla et al. FAT-ETO: Fuzzy-AHP-TOPSIS-Based efficient task offloading algorithm for scientific workflows in heterogeneous fog–cloud environment
Alizadeh et al. TPEL: Task possible execution level for effective scheduling in fog–cloud environment
Yassir et al. Graph-based model and algorithm for minimising big data movement in a cloud environment
Li et al. Dynamic data replacement and adaptive scheduling policies in spark
Wang et al. An improved particle swarm optimization algorithm for scheduling tasks in cloud environment
Almashhadani et al. Design of A new Algorithm by Using Standard Deviation Techniques in Multi Edge Computing with IoT Application.
Karoczkai et al. A meta-brokering framework for science gateways
Yang et al. Distributed query engine for multiple-query optimization over data stream
Shukla et al. Interpretive structural modeling based assessment and optimization of cloud with internet of things (CloudIoT) issues through effective scheduling
Gupta et al. Modified Fire Hawks Gazelle Optimization (MFHGO) Algorithm Based Optimized Approach to Improve the QoS Provisioning in Cloud Computing Environment
Du et al. A load balancing method for avionics systems via artificial bee colony and simulated annealing algorithms
Du Scientific workflows in heterogeneous edge-cloud computing: A data placement strategy based on reinforcement learning
Liu et al. A heterogeneous cluster multi-resource fair scheduling algorithm based on machine learning
Hao Enhanced resource scheduling in Grid considering overload of different attributes

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20080910