CN1658570B - 过程代数指定契约及其性能预测实现度量指定系统和方法 - Google Patents

过程代数指定契约及其性能预测实现度量指定系统和方法 Download PDF

Info

Publication number
CN1658570B
CN1658570B CN2004101022682A CN200410102268A CN1658570B CN 1658570 B CN1658570 B CN 1658570B CN 2004101022682 A CN2004101022682 A CN 2004101022682A CN 200410102268 A CN200410102268 A CN 200410102268A CN 1658570 B CN1658570 B CN 1658570B
Authority
CN
China
Prior art keywords
performance
agency
rate
service
entity
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.)
Expired - Fee Related
Application number
CN2004101022682A
Other languages
English (en)
Other versions
CN1658570A (zh
Inventor
L·G·梅利迪斯
A·L·小布朗
D·里奇特
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft 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 Microsoft Corp filed Critical Microsoft Corp
Publication of CN1658570A publication Critical patent/CN1658570A/zh
Application granted granted Critical
Publication of CN1658570B publication Critical patent/CN1658570B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5009Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/147Network analysis or design for predicting network behaviour
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5006Creating or negotiating SLA contracts, guarantees or penalties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/04Network management architectures or arrangements
    • H04L41/046Network management architectures or arrangements comprising network management agents or mobile agents therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Physics & Mathematics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Development Economics (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Game Theory and Decision Science (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明的系统和方法利用随机微积分(如π微积分)来确定(例如指定、预测等等)包括费率、可用时间(Uptime)和容量至少其一的服务质量。服务质量可表示某代理所提供或要求的服务(例如网络服务)级别。服务质量可通过由模型(例如,状态图或数学算法)表示代理之契约及对该模型标以用来计算转换成本的成本函数来获得,其中转换成本被用来预测相应转换的相关联费率。该模型还可被标以错误状态来确定可用时间,并被用来确定信道容量。通常,可对请求方代理和供应方代理的服务质量进行比较,来确定供应方代理是否能满足请求方代理的性能级别。

Description

过程代数指定契约及其性能预测实现度量指定系统和方法
(1)技术领域
本发明一般涉及网络服务,尤其涉及表达服务请求和/或公开通告服务供应者的费率、可用时间(Uptime)、和/或容量的系统和方法。
(2)相关申请参照
本申请要求于2003年12月10日提交的题为“随机π微积分”(“Stochastic Pi Calculus”)的美国临时专利申请60/528,758的权益,其全文在此引入作为参考。
(3)背景技术
计算机和网络化技术的持续进步已将计算机从高成本低性能的数据处理机器转化为低成本高效率的通讯、解决问题和娱乐的系统,这种系统彻底改变了个人和企事业单位的处理日常任务的方式。这种任务的示例包括基本通信、购物、供货、收集信息、要求服务、提供服务等等。传统地,诸如与朋友和家人通信的个人任务需要人们去获取纸张、书写工具、信封和邮票,生成信件的硬拷贝,并将信件投寄出去。前述任务一般需要消费者花费金钱、时间和必要的行程去获得用品和/或邮寄信件。另外,取决于发信者愿意支付给邮局多少钱,收信者要在几小时或几天后才能收到信件。传统的商业交易通常包括与一方或多方的若干次电话通话、文书往来(例如,信件和传真)、和/或人员交往;而且,在某些实例中,一方或多方因为诸如成本、接近性或无法满足交易要求而无法成为合适的伙伴。
今天,数量越来越多的个人和商业事务可能由计算机和网络化技术推动和/或执行。例如,通信、付账、购物、预算及收集信息都可通过与适当网络连接的计算机辅助及合适的用户特权来获得。作为示例,消费者/供应者可得到一台计算机(例如,台式计算机、膝上型计算机、手持式计算机、手机等等),并将其通过接口连接到诸如LAN、WAN、Wi-Fi网络、因特网等的网络上。网络可提供从该计算机到基本上可位于世界上任何地方的另外一台或多台计算机(如服务器)的通讯连接。这一连接可被用来交换数据、消费商品、和访问位于如数据银行储存库的丰富信息。这种通讯的另一优点是它在某人家中即可便利利用,用户只要按动键盘或轻击鼠标按钮,且在许多时候,对用户而言是无费率或费率最少。
一个正在成长的趋势是通过发挥(leverage)web域益处来推动个人和商业事务的完成,因为web域能提供例如用户友好的接口、相对安全的环境、可互用性、和开发者友好的环境。在web域中,与各种网站和/或全异网络服务器相关联的服务能通过一网络浏览器来访问。例如,网络用户可打开网络浏览器并通过在网络浏览器地址栏打入网站的统一资源定位器(URL)访问网站。典型的URL至少具有帮助建立与网站的连接的四项信息。也就是,该URL可包括指示一套信息交换用规则和标准的协议(通讯语言)、网站的地址或位置、维护网站的组织名称、和用以标识组织类型的后缀(如,com、org、net、gov、edu)。作为示例,示例性虚构地址http://www.foo.com可被分解如下:“http”指定网络服务器利用超文本传输协议(HTTP);“//”是标准URL句法;“www”指定该网站位于万维网(“web”)内;“foo”指定网络服务器位于Foo公司;“com”指定Foo公司是一个商业机构;“.”被用作前述各域间的分隔符。
在因特网上通讯的这种分布式方法(位于完全不同的地点的计算机之间的通讯)导致一种被称为“web服务”的概念。一般而言,web服务被定义为一种应用,该应用结合万维网执行以提供一种定位和选择执行任务或提供这种服务的服务供应者的机制。在许多实例中,在这样的服务间的通讯包括提供有关任务和/或全异用户所提供服务的信息。这种信息可被用来促进请求供应者的服务和适当的服务供应者间的匹配。传统技术为这种匹配提供了基本框架;然而,需要有一种增强方法来提供更丰富信息,以改进服务请求和适当的服务供应者的匹配。
(4)发明内容
为了提供对本发明某些方面的基本理解,以下提供本发明的简要内容。本“发明内容”部分并非是本发明的广泛总览。它并非要标识本发明的关键或重要元素或是描绘本发明的范围。它的唯一目的是用简化形式介绍本发明的某些概念,作为以下提供的更详细说明的序幕。
本发明提供了一种指定和核查契约的新途径。本发明的系统和方法采用随机-π技术作为指定机制,并采用性能预测技术作为要依照该指定进行测量的一种实现。这样,契约可在随机-π片断中指定并据其核查实现。本发明发挥(leverage)了随机-π微积分学以使费率明确地与动作相关联,其中语义学容许Gillespie型随机基于代理仿真。另外,本发明发挥了随机-π微积分学增强操作语义学,其允许人们将证明树与对应于π-微积分过程的执行的标示转变系统中的转变相关联。此外,本发明发挥了一种技术,该技术提供了一种成本函数,而该成本函数将这种证明树综合地映射成代表费率的数字。
本发明具有提供与包括费率、可用时间和/或容量等服务质量相关的丰富信息的系统和方法。这种性能可与一请求相关联,并指定服务该请求所需性能级别和/或指定所提供服务,诸如用以服务请求的性能级别。服务性能可利用诸如随机微积分等数学方法(例如,过程代数)来确定和/或表示。合适的数学方法示例包括但不限于:π和ρ微积分及其求导。另外,服务性能连同描述消息内容、服务位置、通讯协议等等的信息一起可包括在描述(例如,契约)中。通常,为请求方代理和服务提供方代理所指定和/或预测的服务性能可进行比较,以确定提供方是否可满足所需的性能级别。前述途径提供了新的对传统技术的增强,传统技术通常不使用随机微积分为代理提供诸如费率、可用时间和/或容量等丰富性能数据。
在本发明的一个方面,阐明了一种促进对代理(如web服务)服务性能的表达的系统。该系统包括允许该代理的用户为其指定性能级别的服务管理器组件。该性能级别可确定用户所寻求用来服务代理(或来自代理的请求)的最小的、期望的、和/或必需的性能级别,或者有代理采用来服务某请求的性能级别。性能级别可由数学算法(例如,通过诸如象π和/或ρ微积分的随机算法等过程代数)产生和/或表示,这些算法可计算和/或预测提供所请求和/或所提供的服务质量的客观度量的请求或服务的性能级别。性能级别可被用来指示诸如费率、可用时间、和/或容量的标准。
在本发明的另一方面,性能表达系统还包括一可存储性能级别描述的描述组件和一可存储描述的实现的实现组件。该描述可具有与费率、可用时间和/或容量相关的信息及其它信息。存储于描述组件中的描述可与其它代理的性能描述相比较,以确定各代理是否在功能上相当。这种比较通常便于用依从算法(compliance algorithm)进行。另外,这样的描述可与存储于实现组件的实现作比较,以确定服务供应者是否能够满足由代理指定的性能质量。这种比较便于由一致性算法进行。任何代理都可选择性地向其它代理通告其描述和/或其实现。
在本发明的其它方面,阐明了描述谈判中诸代理的系统。至少一个谈判中的代理可发送一个对有指定性能级别服务的“询问”。该“询问”可被至少一个其它代理利用,以确定这样的代理是否能满足该指定性能级别。另外,至少有一个代理可发送一个“投标”,它通告所提供的性能级别以处理来自其它代理之一的请求。此外,该“投标”还可与成本相关联,从而使任何接收该“投标”的代理得知与所提供服务相关联的成本。“询问”和“投标”中所提供的性能级别及其比较可通过过程代数确定。另外,费率、可用时间和容量组件可被用以分别确定诸代理的费率、可用时间和容量。这一信息可合并到“询问”或“投标”中,以便于确定是否“询问”可为“投标”所满足。
在本发明的其它方面,阐明了利用性能级别的模型和方法论。模型包括表示契约各种状态和标示状态转变,以确定诸如费率、可用时间和容量等性能标准。方法论为谈判中的代理提供便于确定和/或利用性能级别的示例性行动。与系统相类似,模型和方法论也利用了过程代数。
以下说明和附图详细陈述本发明的某些说明性方面。但这些方面仅仅是示出了本发明诸原理可在其中采用的各种方式的其中几种,且本发明旨在包括所有这些方面及其等同方案。结合附图阅读以下具体说明,本方面的其它优点和新特征将变得清楚。
(5)附图说明
图1所示是一种便于表达性能的系统。
图2所示是一种采用性能定义及其实现以便于表达代理的服务质量的系统。
图3所示是用各自性能定义进行谈判的两个代理。
图4所示是谈判中的代理的示例性市场。
图5所示是采用了利用过程代数来预测描述服务质量之费率的组件的代理。
图6所示是采用了确定与服务质量相关联的可用时间度量的组件的代理。
图7所示是采用了确定信道容量服务质量度量的组件的代理。
图8所示是根据本发明可被用来描述契约的各种状态的示例性模型。
图9所示是用成本函数标示以预测相应状态转变的费率的示例性契约模型。
图10阐明了表达性能的示例性方法论。
图11阐明了益于定位可接受性能级别的服务供应者的示例性方法论。
图12阐明了确定是否服务供应者能满足一定性能级别的示例性方法论。
图13阐明了示例性网络化环境,其中可采用本发明的新方面。
图14阐明了示例性操作环境,其中可采用本发明的新方面。
(6).具体实施方式
如于本申请中所用,术语“组件”、“系统”等等意指计算机相关实体,不管是硬件、硬件和软件的组合、软件、或是执行中的软件等等。例如,组件可以-但不限于-是,运行于处理器上的过程、处理器、对象、可执行程序、执行的线程、程序、和/或计算机。作为说明,运行于服务器上的应用和服务器都可作为组件。一个或多个组件可驻留于进程和/或线程中,且组件可本地化在一台计算机上和/或分布在两台或多台计算机上。
本发明涉及指定诸如万维网服务的代理服务质量的系统和方法。服务质量可包括费率、可用时间和/或容量指定(例如,量度),它们可用来表示服务一项请求所需要/所期望的性能和/或服务一项请求可用的/所提供的性能。这种服务质量规格可通过那些利用随机微积分的技术来预测以确定提供服务的代理是否可满足来自另一代理的特定请求。作为说明,本发明的系统和方法可采用随机-π技术作为指定机制,而采用性能预测技术作为根据该指定所要测量的实现。例如,随机π微积分可用来使费率明确地与动作相关联,其中语义学容许Gillespie型随机的基于代理的仿真;相关增强操作语义学(related enhanced operational semantics)可被用于将证明树与对应于π-微积分过程的标示转换系统中的转变相关联;而这种证明树可综合地通过成本函数映射成代表费率的数字。前述内容提供了一种新技术,其中契约可在随机-π片断中指定、且可据其进行实现的核查。
本发明参照附图进行说明,其中贯穿所有附图相同数字代表相同元件。在以下说明中为作解释,陈述有很多具体细节以便提供对本发明的全面理解。然而没有这些具体细节也可实践本发明是显然的。在另外的实例中,为便于描述本发明,众所周知的结构和设备以块图形式示出。
图1所示是一种益于表达服务性能的系统100。系统100包括可用来定义(例如,指定、预测等等)代理的性能级别的服务管理器组件110和可将该服务管理器组件与各种代理耦合的接口组件120。可根据本发明诸方面采用的代理示例包括,但不限于,可请求服务的代理、可服务(例如,操作、处理、满足、响应、等等)请求的代理、既可请求服务又可处理请求的代理。
作为示例,适当的代理可以是经总线或网络与其它组件(比如其它状态机)交互的状态机。这种状态机可传送数据或处理服务的请求(如,通过信号)。另外,状态机可提供数据或处理服务给另一请求这种服务的组件。可以理解,所利用的总线和/或网络可以是对状态机来说为本地的、对状态机和多个其它组件而言共同的或对状态机来说为远程的。另外,各种协议可被用于促进经总线和/或网络的通讯。在另一示例中,代理可以是利用图形用户接口(GUI)的传统web服务器/网页系统中的客户机和/或服务器。而在又一示例中,代理可以是web服务环境中的客户机和/或服务器,其中事务逻辑(business logic)、数据和进程可通过程序性接口并在网络上于网络服务间共享,而网络服务可一体化到GUI中或可执行程序中以提供特定功能性。这样,该代理就可通过各种网络拓扑如局域网(LAN)、广域网(WAN)、因特网等等,和诸如超文本传输协议(HTTP)、文件传输协议(FTP)、和简单邮件传输协议(SMTP)的传输协议与一个或多个其它代理(如客户机、服务器和网络服务)进行通讯。
应当理解,以上示例所提供的是根据本发明可采用的各种类型代理例子,且不是穷举清单。另外,可理解的是这样的代理可在软件、固件和/或硬件中表示和/或实现,并分散于各不相同的系统中或与单个系统相连接。例如,一个代理可用标记语言表示,如可扩展标记语言(XML)、超文本传输协议(HTTP)、动态HTML、通用标记语言标准(SGML)、网络服务描述语言(WSDL)、简单对象访问协议(SOAP)等等,并用诸如基于C的语言等的编程语言实现。此外,在本发明中代理不限于任何具体操作系统(OS)。
服务管理器组件110可使具有适当特权(如代理所有者和代理管理者、设计者、编程者等等)的代理的用户能够指定代理的性能级别。此性能级别可确定用户寻求来服务代理或向代理请求的最小、期望、和/或必需性能级别。在另一示例中,该性能级别可显示由代理用于服务请求的性能级别。可以理解,这样的性能可按代理的不同而变化、可以是固定的或者可变的。可变性能级别可表示为若干范围,使得所利用的实际性能级别是基于所请求或选中的性能级别和/或可用资源的。另外,在一个范围内的相应性能级别可分别与成本相关联,使得所消费或所分配的资源的数量还可成为请求方代理愿意为特定性能级别所支付量的函数。
应当理解,用户可手工地把性能级别提供(例如上载或在其中生成)给服务管理器组件110或者性能级别可通过智能(比如机器学习技术)自己创建。另外,性能级别可用数学算法产生和/或表示,这些算法可计算和/或预测请求或服务的性能级别。在本发明的某一方面中,该数学算法可基于诸如象π和/或ρ微积分的随机微积分的过程代数。这样,性能级别可表示所请求和/或所提供的服务质量的客观度量。另外,性能级别可表示诸如费率、可用时间、容量等各种信息,如下所述。
如以上简要所述,接口组件120能将服务管理器组件110耦合到代理上。应当理解,该接口组件可具有各种协议,以便耦合基本上任何代理和服务管理器组件110并提供其间的通讯。另外,接口组件120能被一个以上的代理和/或服务管理器组件110同时和/或以串行方式利用。例如,服务管理器组件110可通过接口组件120与一个以上的代理耦合,其中它可被利用来促进指定该一个以上的代理的性能。另外,一个以上的服务管理器组件110可通过接口组件120与一个代理耦合,其中任一服务管理器组件110可为来自代理的请求指定性能,和/或互相竞争以服务来自代理的至少部分请求。
通常,传统系统并不提供在此所述的、通过正式过程语言指定性能(例如费率、可用时间、容量等等)。相反,这种系统通常会把责任交给程序员:计算诸如任务等级信息并手工对此类信息编程。这样,传统技术会缺少丰富性,并消耗了可通过执行其它任务来更有效利用的有限资源。另外,传统技术易受计算错误和/或编程者主观意愿影响。
本发明能通过利用过程代数预测(例如,通过在此所述的性能预测技术)可被用于将处理请求的性能级别与服务供应者用来服务该请求的性能级别相比较的客观度量而减轻这些问题。因此,性能级别可为请求方或服务方代理指定,且这样的性能可在代理间的谈判中利用,以通过比较性能的预测级别和指定级别而促进对请求服务进行有效可靠的处理。在本发明的一个方面,随机π微积分及其相关联操作语义学可被用来使费率明确地与动作及带有对应于π-微积分过程执行的标示转换系统中的变换的证明树相关联,其中证明树可通过成本函数综合地映射成代表费率的数字。前述内容使得契约可用随机-π片断来指定,并依照它使实现得以核查。
图2阐述了益于表达服务性能的系统200。系统200包括服务管理器组件110和接口组件120,且还有描述组件210和实现组件220。如上所述,服务管理器组件110益于指定服务一个代理所请求的性能级别和/或由一个代理提供来服务一项请求的性能级别。这样的性能通过提供了可被用来作为在请求服务的代理和提供服务的代理间谈判标准的客观量度的过程代数(如π和ρ微积分)确定。
描述组件210可用来存储性能级别(如指定的、预测的、等等)的描述,而实现组件220可用来存储该描写的实现。该描写具有与指定费率、可用时间和/或容量相关的信息,以及其它信息。一般而言,可以用费率来表示由请求发起者向供应者请求的资源量和/或代理供应者为了服务这样一个请求而愿意支出的资源量。可用时间可被用来表示请求方愿意接受的处理延迟(如由于错误)或供应者在服务一项请求中的估计延迟。容量通常表示在任何给定时间可处理的数据量。
请求服务的代理可利用此参数来确保供应者有能力处理其请求,而提供服务的代理可利用此参数来通告其容量能力。该通告可包括供应者容量是否取决于正在处理其它请求。例如,供应者可同时并行处理多个请求,其中在任何给定时间其容量是基于当时所处理的其它请求的数量的。当多个请求是连续处理时,该通告可表示处理过程是为多个请求分时、或者各个请求是在另一请求被处理前得到服务。
存储于描述组件210的描述可与其它代理的性能描述(如指定的、预测的、等等)相比较,以确定该描述在功能上是否与另一描述相同。这一比较通常由依从数学算法帮助进行。另外,这样的描述可与存储在实现组件220中的实现作比较。这一比较可由一致性算法帮助进行,并确定是否服务提供者能够满足由代理指定的性能质量。
应当理解,服务管理器110可选择性地向其它代理展示性能描述和/或描述实现。例如,一个典型代理可展示其性能描述让其它代理观看,但不允许对描述实现的访问。通过允许代理寻找服务供应者以排除甚至没有表示其有满足请求的性能级别的供应者,这有助于代理间的谈判。类似地,服务供应者可将其性能与竞争服务供应者及代理请求相比较,以确定是否其性能级别是有竞争力的并可满足该请求。
图3所示是有两个互相通讯的代理的系统300。系统300具有包括第一服务管理器组件320、第一描述组件330和第一实现组件340的第一代理310。系统300还具有包括第二服务管理器组件360、第二描述组件370和第二实现组件380的第二代理350。应当理解,服务管理器组件320和360、描述组件330和370、实现组件340和380可以与服务组件110(图1)、描述组件210(图2)、和实现组件220(图2)大致相似。
如与系统100相关所述(图1),在此所用的代理可以是能够请求服务和/或服务请求的实体。因此,第一代理310可向第二代理350传送对服务的请求,其中第二代理350可处理该请求。此外,第二代理350可向第一代理310传送对服务的请求,其中第一代理310可处理该请求。为了解释及简洁起见,以下描述阐述了一示例性场景,其中第一代理310作为需要服务的客体而第二代理350则用作可完成这样请求的服务供应者。然而,本领域普通技术人员将理解这一场景并不限制本发明。
第一代理310的第一服务管理器组件320有助于通告所请求服务的定义。这样的定义可被称为契约,且通常存储在第一描述组件330中。另外,该定义具有诸如消息内容描述、第二代理350的位置、可用于与诸如第二代理350的代理进行通讯的一种或多种通讯协议、和来自诸如第二代理350的服务代理的服务性能质量的信息等等。服务的性能质量通常由第一代理310的用户提供,并可指定与所期望或所需的与如费率、可用时间和/或容量相关的信息。在一实例中,第一代理310的用户可在第一代理310利用第二代理350提供的服务前,指定第二代理350必须符合的费率。在另一实例中,第一代理310的用户可指定与服务请求时的延迟相关联的可接受可用时间。在又一实例中,第一代理310的用户可指定反映第二代理350能够并愿意在任何给定时间所处理的数量的容量。此外,可请求和/或提供与性能相关的表示(indicia)的任何适当组合。
第一服务管理器组件320可把该定义作为“询问”(ask)提供给第二代理350,它可被第二代理350用来同意提供指定级别的性能、返回反要约(counter offer)、或表示它不能满足指定级别性能。可选地,第一服务管理器组件320可获得与第二代理350相关联的定义,以确定第二代理350提供的性能级别是否能满足其定义中性能的指定级别。
第二代理350的第二服务管理器组件360有助于通告所提供服务的定义。类似地,这一定义可被称为契约,且通常存储于第二描述组件370中。另外,该定义可具有诸如消息内容描述、第一代理310的位置、可用于与诸如第一代理310的代理进行通讯的一种或多种通讯协议、和/或提供给诸如第一代理310的其它代理的服务性能质量的信息。如同第一代理310相关联服务的性能质量,第二代理350的服务性能质量可指定表示费率、可用时间和/或容量的信息。
第二服务管理器组件360可把该定义作为“投标”提供给第一代理310,它可被第一代理310用于确定第二代理350是否可满足其指定的性能级别。如果不能满足,第一代理310通知第二代理350其所提供的性能级别不够。可选地,第一代理310可接受更低的性能级别(例如,某任务需要处理但没有服务代理提供所需性能级别)或者第一代理310可用不同性能级别返回一个“询问”,其中第二代理350可调整其“投标”或撤回反要约。
实现组件340和380通常提供对应于其相关联定义的实现。通常,这样的实现对其它代理而言是隐蔽的。然而如果需要,代理可对另一代理展露(expose)其实现。例如,第二代理350可向第一代理310提供其定义的实现。第一代理310然后可利用一致性算法(conformance algorithm)确定该实现是否可满足其性能的指定级别。另外,第一代理310可利用依从算法(compliance algorithm)确定代理350的定义是否与其定义功能性等同。类似地,第二代理350可确定与第一代理310相关联的定义实现和/或定义的一致性和/或依从性。
应当理解,代理310和350的用户可以手工方式提供(如上载或从中产生)性能级别或者性能级别可通过智能(例如,通过概率、推论、统计等等)自己产生。另外,性能级别可通过数学算法预测。这种算法是基于例如π或ρ微积分的过程代数的随机微积分数学方法。这样,性能级别可以是请求服务质量和/或提供服务质量的客观度量。另外,性能级别可以是静态或动态的。因此,“询问”和“投标”可以是确定服务是否能满足性能指定级别的预设定指标,或者它们可基于代理间的谈判作动态改变。另外,“投标”可与成本相关联,从而使请求方代理(如第一代理310)得悉与所给予的服务相关联的成本。
代理310和350间的通讯信道实际上可以是任何通讯信道。例如,该信道可以是硬接线的、射频(RF)的、红外线(IR)的、电磁的、光学的、等等。另外,该信道可以是单向或双向的、全双工或半双工的、和/或单路或多路的。另外,可交换的数据可被编码、加密、压缩、调制、包含在封装中等等。此外,该信道可以是专用或公共的总线或网络(如LAN或WAN)的一部分,并可与因特网接口以在基本上全世界的任何地方可用。
图4所示是描绘多个通讯中的代理405-445的系统400。代理405-445可分别与网络450耦合。如以上所详述,代理在此具有带有包括至少一个请求性能级别定义的契约。该级别可与要求服务请求的性能和/或在服务请求期间提供的性能相关联。另外,这样的代理具有定义的实现。应当理解,代理405-445可经网络450互相谈判(例如,通过定义、定义的实现、等等),以创建一个寻求服务供应者的代理和提供服务的代理的市场。
作为示例,代理405的服务管理器组件455有助于服务请求的传送,其中该请求包括与处理该请求相关联的性能级别(例如,包括费率、可用时间和容量中的至少之一)的表示。如前所述,这样的级别可由代理405的用户指定,并连同其它信息存储为契约和/或存储在描述组件460中。另外,契约的实现可存储在实现组件465中。来自代理405的请求可经网络450向可至少访问一个与该请求相关联性能级别的代理410-445中任一或所有代理广播。类似地,一个或多个其它代理410-445可向代理405广播所提供的性能级别(包括费率、可用时间和容量中的至少之一),以指示与处理该请求相关联的性能。这一性能级别可由一个或多个代理410-445的用户指定,存储于相应的描述组件中,并与相应实现相关联。
请求的指定性能级别和服务该请求的任意指定性能级别可被用于帮助选择适当代理来服务该请求。在一个实例中,代理410-445中没有一个代理提供符合该请求的性能级别。这样,代理405的用户和/或代理405可调整其指定性能级别,一个或多个服务代理410-445(或其用户)也可调整其性能级别,或对该请求可不作考虑。本发明的另一方面中,一个或多个代理410-445能达到或超过该请求指定的性能级别。代理405则可选择其中一个代理来提供服务。通过考虑诸如与某具体代理服务相关联的成本的信息,有助于进行这种选择。例如,两个代理可提供基本相似的性能级别,而其成本迥异,其中代理405就可选择稍便宜些的代理。在另一示例中,代理405可确定,超越指定级别之性能的附加成本添加了足够的价值,使得这个代理能超过刚好满足指定性能级别的代理而被选中。
应当理解,各个代理405-445可单独地和/或集体耦合到其它网络。例如,代理405可与排除其它代理410-445的一工作域或工作组相关联。因此,各个代理405-445可并发地或以串行方式向驻留于多个网络的多个代理请求服务或提供服务。在某个实例中,一个代理可作为驻留于全异网络中的代理间的经纪人。例如,代理405可向代理410显示某性能级别,而代理410允许全异网络(未示出)中的代理查看此性能级别。如果在此全异网络中有一服务方代理可至少满足该性能级别,代理405就可利用这个代理来服务该请求。
图5阐述了系统500,其中代理405还具有费率预测组件510。该费率预测组件510可利用随机π微积分来预测与在此所述存储于相应描述组件中的定义或契约的描述中从一个状态到另一个状态的转变相关联的费率(例如延迟、概率比例等等)。在本发明的一个方面,因为该契约可以是其实现的抽象,至少一个子集的π微积分(如CCS)可用来描述该契约。例如,π微积分和成本函数可用来预测各个转变中的费率。一般而言,成本函数可关联到每一个转变以确定相应成本,其中后面的转变成本一般是前面转变的成本和当前成本的总计,且各个成本是通过对于状态转变从头到尾递归地采用成本函数来确定的。利用π微积分,这些成本可被关联到费率上,使得对每一转变可预测一相应费率。通过比较预测费率和提供服务的代理的通告费率,这些预测费率可用于确定服务供应者是否能满足请求服务的代理。通过利用此费率信息,契约可类似于货币用在服务市场中。例如,代理405可向其它代理显示预测费率或获得它们的费率。在任一场景中,代理405的预测费率可与其它代理的费率相比较,以确定是否有任何其它代理满足代理405的预测费率。
图6阐述了系统600,其中代理405还具有可用时间组件610,它可用来为各个状态转变指定可用时间、延迟、和/或性能误差级别。代理405的指定可用时间可与其它代理的可用时间比较,以确定是否有任何其它代理满足代理405的可用时间。各种技术可被用来确定可用时间。在某一示例中,一个或多个错误状态可包含在(如通过π微积分)契约定义中,其中从每一状态的改变可额外引向该错误状态中的一个或多个。费率可与转向错误状态的转变相关联,且这些费率可用来确定每个转变的错误频率。应当理解,这一错误基本上可包括为代理经历的诸如在例外状态期间的任意故障时间,其中服务代理无法服务该请求。
图7阐述了系统700,其中代理405还具有容量组件710,它可用来确定服务方代理是否满足或超过代理405的指定容量需求。在本发明的一个方面中,至少契约的一部分可按照消息而不是端口来表示,且可为各个信道或特殊重要的信道来确定(如利用香农理论(Shannon′s theory))信道容量。在许多实例中,信道与一消息相关联,其中对该信道加以分析以确定它是否能运送某特殊尺寸的消息。在其它实例中,信道可与多个消息相关联。取决于单个消息是以串行方式传送还是利用了并行技术,来为这种信道容量确定容量,在后一情况中,消息尺寸的总和表示其容量。
图8-9阐述了根据本发明的契约模型。为便于解释,模型被描绘和描述成一系列状态。然而,可以理解和明白的是,本发明并不受这样的状态或状态顺序的限制。而且,不是所有的图示状态对描述模型而言是必需的。此外,本领域技术人员将理解和明白,模型可另外被表示为一系列相互关连的动作或事件。
图8阐述了可用于描述代理契约定义的示例性模型(或证明树)800。该模型800描绘了“初始化(Initialize)”状态810、“工作(DoWork)”状态820、和“结束(Finalize)”状态830。模型800还表示这些状态间的转变(或指示)。例如,从“初始化”状态到“工作”状态的转变(例如,″init″)在840示出,从“工作”状态到“结束”状态的第一转变(例如“工作A”(workA”))在850示出,从“工作”状态到“结束”状态的第二转变(例如“工作B”(“workB”))在860示出,而从“工作”状态到“结束”状态的第三转变(例如“fin”)在870示出。
模型800可用数学方式表示成方程式1(例如用π微积分)。
方程式1:init.rec.X.(workA.X+workB.X+fin)
其中“init”表示从“初始化”状态到“工作”状态的转变,“rec”表示方程式1是递归函数,“workA”代表或指示从“工作”状态到“结束”状态的第一转变,“workB”代表从“工作”状态到“结束”状态的第二转变,而“fin”代表从“工作”状态到“结束”状态的第三转变。
模型800和/或方程式1可用来定义在此所用的契约。另外,模型800和方程式1都可通过比较各个代理的模型/方程式用来确定两个契约的依从性及契约和其实现间的一致性。另外,模型800和/或方程式1可用来表示代理服务的质量,如下所述。
图9描绘了模型900,其中模型800的各个状态转变840-870已经被分别标示以可用来预测性能的成本函数910、920、930和940。成本函数可被称为同步上下文、或已证实的转变,并可通过过程代数(如π微积分)表示。分别与各转变相关联的成本,例如可从“结束”状态到“初始化”状态通过递归地采用成本函数来确定。每一成本可与一费率相互关连,以预测每一转变的费率。这样的预测减轻了编程者确定单个转换费率的负担。
如前所述,可用时间还可用于指定性能。模型800可通过将错误状态(未示出)填充其中来进行扩展。例如,一个或多个错误状态可包括其中,从“初始化”、“工作”、和/或“结束”状态的转变又可与一个或多个该错误状态相连接。相应的到错误状态的转变可如上所述标以可用来以确定错误频率的费率。有了这种信息,请求服务的代理可指定可接受频率级别(例如,非常少有)。应当理解,这一错误基本上可包括为代理所经历的所有故障时间,比如在例外状态期间,其时服务代理无法服务该请求。此外,模型800和/或方程式1引入了信道容量,如上所述。
在预测状态费率并可任选地确定了可用时间和信道容量后,模型800或其数学表示可被用来把代理所寻求的性能等级与服务代理所通告的性能等级进行比较。如前所述,通过提供经由过程代数如π微积分确定的客观度量,这有助于请求服务的代理和处理该种请求的代理间的代理谈判,并减轻了代理用户确定性能级别(如每个转变的费率)的需求。
图10-12阐述了根据本发明的方法论。为便于解释,方法论被描绘和描述成一系列动作。可以理解和明白的是,本发明并不限于所述动作和/或动作之顺序,例如动作能以各种顺序和/或同时发生,并与未在此显示和描述的其它动作一起发生。此外,要实现根据本发明的方法论,并不是所有的图示动作都是必需的。另外,本领域技术人员将理解和明白,这些方法论可另外通过状态图表示为一系列相互关连的状态或事件。
进入图10,图示的是表示服务性能的方法论1000。在附图标记1010处,一个代理被设置。该代理可以是可利用另一实体来服务一请求的一个实体、可服务一请求的一个实体、及既可请求服务又可服务请求的一个实体。例如,用户可创建一个为其它web服务需求而服务的web服务。在另一示例中,该代理可以是利用web服务来处理请求的客户机。此外,该代理基本上可通过任意通信介质与其它代理通信。
在1020,为代理指定性能级别(例如在此所述)。如果代理请求服务,性能级别可表示诸如信息内容描述、潜在服务代理位置、一种或多种通讯协议、和包括诸如费率、可用时间、和/或容量性能标准的各种性能相关表示之期望服务质量的信息。类似地,如果代理服务一请求,性能级别可表示诸如信息内容描述、潜在请求代理位置、一种或多种通讯协议、和包括所提供费率、可用时间、和/或容量的所送呈服务质量的信息。通常,代理的创建者可指定前述性能信息。然而,应当理解,任何具有适当特权的用户都可以指定这些参数中的一个或多个。
一般而言,数学可被用来确定和/或指定至少部分的性能信息。对数学的利用提供了解除代理创建者或用户确定诸如与状态转变相关联费率信息的压力的客观措施(object measure)。另外,所采用的数学减少了确定信息时的用户错误和主观影响。适当数学的示例包括诸如象π和ρ微积分的随机微积分的过程代数,它至少可被用来帮助确定费率、可用时间、和容量。费率可用来表示由请求发起者从供应者处请求的资源量和/或代理供应者服务这样一个请求愿意支出的资源量。可用时间(uptime)可用来表示请求者愿意接受的处理延迟(如,与错误相关联)或由供应者在服务请求中的估计延迟。容量通常表示在任何给定时间可处理的数据量。
在附图标记1030,代理可利用其指定性能级别与其它代理谈判。例如,请求服务的代理可广播其性能,其中当服务代理可满足所广播的性能级别时,服务方代理可做出响应以对请求提供服务。这可通过把指定的性能级别与服务供应者所提供的性能级别加以比较来确定。在另一示例中,代理可观察服务供应者所通告的性能级别,将它们需要的性能级别与通告服务性能级别相比较,并基于该比较选择某一服务。对于提供服务的代理,代理可广播它愿意提供用来处理请求的性能级别和/或分析各请求来确定它能处理的请求。服务供应者另外还可通告它们服务的成本以有助于请求服务的代理做决定。
应当理解,随机π技术可用来帮助指定性能级别或另一指定机制。另外,性能预测技术被用作要对照该指定机制进行量度的一种实现。这样,契约可在随机-π片断和按其所测量的实现中指定。随机-π微积分学可用来使费率明确与动作相关联,其中语义学容许Gillespie型随机基于代理的仿真。操作语义学被用来将证明树与对应于π-微积分过程的执行的标示转换系统中的转变相关联,其中一个成本函数可被用来综合地将证明树映射到代表费率的数字。
接下来是图11,图示的是定位处理请求的服务供应者的方法论1100。在1100,代理或者传送一个表示代理所寻求的性能级别的“询问”,或从代理供应者处接收“投标”,其中“投标”表示代理供应者所提供的性能。接踵“询问”而来的是来自一个或多个代理供应者的一个或多个要约(offer)。在标记1120,请求方代理可提取代理供应者的性能级别。如前所述,代理供应者的性能级别通常包括至少消息内容描述、请求代理的位置、一种或多种通讯协议、包括所提供费率、可用时间和/或容量的所提供服务的质量、和服务质量成本。如上所述,随机微积分可用来确定和表示性能级别。
在1130,请求方代理接着可将其性能等级与代理供应者所提供性能级别(例如指定、实现等等)相比较,以确定供应者是否能满足其性能级别。如果多个供应者能满足指定性能级别,其它诸如性能成本的标准可用来帮助选择代理供应者。另外,基于智能的决定可用来帮助选择服务供应者。例如,基于统计学、概率论、优先(priori)信息、累积历史数据、推断和分类器(如,显式和隐式训练的),包括Bayesian学习、Bayesian分类器和其它统计学分类器的基智能决定,比如决定树学习法、支持向量机器、线性或非线性衰退和/或中性网络,可根据本发明的一个方面被采用。推断可以是指根据一系列经事件和/或数据捕捉的观察结果推理或推断系统、环境、和/或用户状态的过程。在1140,请求方代理选择某一服务供应者来服务该请求。
图12阐述了服务请求的方法论1200。在1210,服务方代理可一如在此所述通告其性能级别,使得请求服务的代理能访问其性能级别。在部分实例中,该通告是主动提供和广播的,使得任何代理可得知其通告性能级别。在其它实例中,通告是响应于对服务的一个请求。在标记1220,提供服务的代理可确定它是否可满足该请求。该决定可包括比较服务该请求所需性能级别和服务供应者可用性能级别。在某一实例中,服务供应者可展露整个带宽来服务于一个请求,而在其它实例中服务供应者可限制它愿意为任一请求或请求群体提供的资源。在1230,能至少满足请求性能级别的服务供应者可将成本与其服务相关联。这一成本可提供给请求方代理,用来帮助请求方代理在诸多服务供应者中作出决定。
为了提供实现本发明的各种方面的附加上下文(additional context),图13-14和以下讨论意在提供对一个在其中本发明各方面可得以实现的适当计算环境的简要、一般描述。尽管本发明已经在运行于本地计算机和/或远程计算机的计算机程序的计算机可执行指令一般上下文中作了以上描述,本领域技术人员将明白,本发明也可结合其它程序模块得以实现。一般地,程序模块包括执行具体任务和/或实现具体抽象数据类型的例程、程序、组件、数据结构等。
此外,本领域技术人员将理解发明方法可用其它计算机系统配置实践,包括单处理器或多处理器计算机系统、迷你计算机、大型计算机、还有个人计算机、手持式计算设备、基于微处理器和/或可编程消费电器等等,其中每一种都可与一种或多种相关联设备进行操作性通讯。本发明所说明的诸方面也可在某些任务由经通讯网络连接的远程处理设备执行的分布式计算环境中实践。然而,本发明的某些方面(如果不是所有方面)可在单机计算机上实践。在分布式计算环境中,程序模块可位于本地和/或远程存储设备。
图13是本发明可与之相互作用的样本计算环境1300的示意块图。系统1300包括一台或多台客户机1310。客户机1310可以是硬件和/或软件(例如线程、过程、计算设备)。系统1300还具有一台或多台服务器1320。服务器1320可以是硬件和/或软件(例如线程、过程、计算设备)。例如,服务器1320可容纳线程以采用本发明执行变换。
客户机1310和服务器1320间的一种可能通信能以适合在两个或多个计算机过程间传送的数据包形式进行。系统1300具有可被用来帮助客户机1310和服务器1320间通信的通信框架1340。客户机1310可操作地与用来存储客户机1310本地信息的一个或多个客户机数据存储1350相连接。类似地,服务器1320可操作地与用来存储服务器1320本地信息的一个或多个服务器数据存储1330相连接。
参照图14,实现本发明各方面的示例性环境1400具有计算机1412。计算机1412具有处理单元1414、系统存储器1416、及系统总线1418。系统总线1418耦合系统组件包括,但不限于将系统存储器1416耦合到处理多元1414。处理单元1414可以是各种可用处理器的任一种。双微处理器和其它多处理器架构也可被用作处理单元1414。
系统总线1418可以是若干类总线结构的任一种,包括存储器总线或存储器控制器、外围总线或外部总线、和/或使用各种可用总线架构任一种的本地总线,这些总线架构包括,但不限于,工业标准架构(ISA)、微信道架构(MSA)、扩展ISA(EISA)、智能磁盘设备(IDE)、VESA局部总线(VLB)、外围部件互连(PCI)、卡总线、通用串行总线(USB)、加速图形接口(AGP)、个人计算机存储卡国际协会总线(PCMCIA)、火线(IEEE1394)、和小型计算机系统接口(SCSI)。
系统存储器1416具有易失存储器1420和非易失存储器1422。包含在计算机1412硬件间传送如起动时信息的基本例程的基本输入/输出系统(BIOS),存储在非易失存储器1422上。作为说明且无限制,非易失存储器1422可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除ROM(EEPROM)或闪存。易失存储器1420具有作为外部高速缓存的随机存取存储器(RAM)。作为说明且无限制,RAM有多种形式可用,如同步RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SRAM)、双数率SDRAM(DDR SDRAM)、增强DSRAM(ESDRAM)、同步链接DRAM(SLDRAM)、和直接Rambus RAM(DRRAM)。
计算机1412还具有可移动/不可移动、易失/非易失计算机存储介质。图14示出了例如磁盘存储器1424。磁盘存储器包括,但不限于,象磁盘、软盘、磁带、Jaz盘、Zip盘、LS-100盘、闪存卡、或存储棒。另外,磁盘存储器1424可具有单独存储介质或结合其它存储介质包括,但不限于,诸如光盘ROM设备(CD-ROM)、可记录光盘驱动器(CD-R盘)、可重写光盘驱动器(CD-RW盘)、或数字化视频ROM盘(DVD-ROM)的光盘。为便于磁盘存储器1424与系统总线1418的连接,通常可使用诸如接口1426的可移动或不可移动接口。
应当理解,图14描述了作为用户和在适当操作环境1400中描述的基本计算机资源间中间体的软件。这种软件具有操作系统1428。可存储在磁盘存储器1424中的操作系统1428,其作用是控制和分配计算机系统1412的资源。系统应用1430得益于操作系统1428通过存储在或系统存储器1416或磁盘存储器1424中的程序模块1432和程序数据1434对资源的管理。可以理解本发明可用各种操作系统或操作系统组合来实现。
用户通过输入设备(们)1436将命令或信息输入到计算机1412中。输入设备1436包括,但不限于,诸如鼠标、跟踪球、铁笔、触板、键盘、麦克风、操纵杆、游戏垫、卫星接收器、扫描仪、电视调谐器卡、数字相机、数字录像照相机、网络相机等定点设备。这些和其它输入设备经系统总线1418通过接口端口(们)1438与处理单元1414相连。接口端口1438包括例如串行端口、并行端口、游戏端口、和通用串行总线(USB)。输出设备1440使用象输入设备1436的某些相同类型端口。因此,例如USB端口可用来为计算机1412提供输入,并将信息从计算机1412输出到输出设备1440。输出适配器1442被提供用来说明某些输出设备象监视器、扬声器、和打印机,与其它输出设备1440之间,需要特殊适配器。输出适配器1442包括,作为说明且无限制,视频卡和声卡在输出设备1440和相同总线1418间提供了连接方法。应该注意的是诸如远程计算机1444的其它设备和/或设备系统提供输入和输出功能。
计算机1412使用与一台或多台远程计算机如远程计算机1444的逻辑连接在网络化环境中操作。远程计算机1444可以是个人计算机、服务器、路由器、网络PC、工作站、基于微处理器设备、同等设备或其它相同网络节点等等,而且通常包括所述与计算机1412相关的许多或全部元件。为简化起见,仅存储器存储装置1446与远程计算机1444一起图示。远程计算机1444经网络接口1448与计算机1412逻辑连接,然后通过网络连接1450进行物理连接。网络接口1448包括诸如局域网(LAN)和广域网(WAN)的有线和/或无线通信网络。LAN技术包括光纤分布式数据接口(FDDI)、铜线分布式数据接口(CDDI)、以太网、令牌环等等。WAN技术包括,但不限于,点对点链接、象综合服务数字网(ISDN)及其后变种的电路切换网络、报文分组交换网络、和数字用户线路(DSL)。
通信连接1450指向被用来将网络接口1448连接到总线1418的硬件/软件。尽管为了清晰地说明,通信连接1450被示为位于计算机1412内,但它也可在计算机1412之外。与网络接口1448连接所必需的硬件/软件具有,仅作为示例,诸如包括常用电话级调制解调器、电缆调制解调器和DSL调制解调器的调制解调器、ISDN适配器、和以太网卡等内部和外部技术。
以上所述包括本发明的诸多示例。当然,为描述本发明而对每一能想到的组件或方法论组合进行描述是不可能的,但本领域普通技术人员明白本发明的更多排列和组合是可能的。因此,本发明意欲包含所有这样的在所附权利要求书精神和范围内的变更、修改、和变化。特别是关于以上所述组件、设备、电路、系统等等执行的各种功能,除非另有注明,用于描述这些组件的术语(包括对“装置(means)”的指代)意在对应执行所述组件(如功能等效体)特定功能的任何组件,尽管它在结构上并非等同于在本发明在此所述示例性方面中执行所述功能的揭示结构。在这点上,也可明白本发明包括系统和具有计算机可执行指令的计算机可读介质,用来执行本发明各种方法的动作和/或事件。另外,尽管仅相对于若干实现之一已经对本发明的具体特征作出了揭示,当对任何给定或具体应用有利或需要时,这种特征可与其它实现的一个或多个其它特征组合。而且,就用于具体实施方式或权利要求书的术语“具有”、和“含有”及其变型而言,这些术语意在以类似于术语“包括”的方式作包含意义解。

Claims (36)

1.一种采用过程代数和性能预测技术来指定和核查契约的系统,其特征在于,它包括:
第一组件,其采用过程代数在过程代数的至少一个片断中指定契约的性能级别,以及
第二组件,其将指定的契约的性能级别与通过性能预测技术产生的实现进行比较,其中,比较的结果确定所述实现是否满足所述契约的性能级别。
2.如权利要求1所述的系统,其特征在于,该过程代数是随机π微积分。
3.如权利要求1所述的系统,其特征在于,该过程代数将费率与动作明确地相关联。
4.如权利要求1所述的系统,其特征在于,该过程代数与提供Gillespie型随机基于代理的仿真的语义学相关联。
5.如权利要求1所述的系统,其特征在于,该过程代数具有将证明树与对应于基于过程代数的过程的执行的标示转换系统中的变换相关联的操作语义学。
6.如权利要求5所述的系统,其特征在于,该基于过程代数的过程是π微积分过程。
7.如权利要求1所述的系统,其特征在于,还包括一组件,其采用成本函数来综合地将证明树映射成代表费率的数字。
8.一种采用过程代数和性能预测技术来指定和核查契约的方法,其特征在于,它包括:
在过程代数的至少一个片断中指定一契约的性能级别;
采用所述性能预测技术来预测一该契约的性能级别的实现;以及
对照指定的契约的性能级别衡量该契约的性能级别的实现,以确定指定的契约的性能级别和实现是否互相满足。
9.如权利要求8所述的方法,其特征在于,所述过程代数是带有提供Gillespie型随机基于代理的仿真的语义学的随机π微积分。
10.如权利要求8所述的方法,其特征在于,还包括利用所述过程代数将费率与动作明确的相关联。
11.如权利要求8所述的方法,其特征在于,还包括采用所述过程代数将证明树与对应于π微积分过程执行的标示转换系统中的变换相关联。
12.如权利要求8所述的方法,其特征在于,还包括利用一成本函数来综合地将证明树映射成代表费率的数字。
13.一种表达服务质量的系统,其特征在于,它包括:
一描述组件,其存储第一实体性能级别的定义;和
一服务管理器,其利用该定义确定第二实体是否满足所述第一实体的性能级别;
其中性能级别能通过使用过程代数而被预测。
14.如权利要求13所述的系统,其特征在于,所述性能级别包括费率、可用时间、和容量性能度量中的至少一种。
15.如权利要求14所述的系统,其特征在于,所述费率度量用过程代数预测。
16.如权利要求15所述的系统,其特征在于,所述过程代数是π微积分。
17.如权利要求14所述的系统,其特征在于,所述费率度量通过确定一个或多个性能成本并将该一个或多个成本与相应费率相互关联来预测。
18.如权利要求17所述的系统,其特征在于,该一个或多个成本是通过将相应成本函数递归地应用到定义中的状态转换来计算。
19.如权利要求14所述的系统,其特征在于,与第一实体相关联的费率度量与第二实体的费率度量相比较,以确定第二实体是否满足第一实体的性能级别。
20.如权利要求14所述的系统,其特征在于,所述可用时间度量指示与停机时间及例外状态之一相关联的错误频率。
21.如权利要求14所述的系统,其特征在于,所述可用时间度量是通过用费率来标记向错误状态的转换及确定与向错误状态的转换相关联的频率来计算。
22.如权利要求14所述的系统,其特征在于,与第一实体相关联的所述可用时间度量与第二实体的可用时间度量相比较,以确定第二实体是否满足第一实体的性能级别。
23.如权利要求14所述的系统,其特征在于,所述容量度量指示在给定时间处理的数据量。
24.如权利要求14所述的系统,其特征在于,所述容量度量通过在信道上应用Shannon定理来计算。
25.如权利要求13所述的系统,其特征在于,第一和第二实体为网络服务。
26.如权利要求13所述的系统,其特征在于,所述第一实体性能级别的定义与第二实体性能级别的定义通过一致性算法进行比较,以帮助确定第二实体是否满足该性能级别。
27.如权利要求13所述的系统,其特征在于,将与第一实体相关联的所述定义与第二实体性能级别的定义用依从算法进行比较,以确定该两定义是否为功能相当。
28.一种利用性能级别来帮助选择服务的方法,其特征在于,它包括:
采用过程代数来为代理预测性能费率;以及
比较预测的性能费率和提供服务的代理所通告的性能费率,以确定提供服务的代理是否能满足该预测费率。
29.如权利要求28所述的方法,其特征在于,还包括将所述预测的性能费率传送给多个互相竞争来为与所述预测的性能费率相关联的任务服务的提供服务的代理。
30.如权利要求28所述的方法,其特征在于,还包括从多个互相竞争来为与所述预测性能费率相关联的任务服务的提供服务的代理处接收一个或多个通告性能费率。
31.如权利要求28所述的方法,其特征在于,还包括采用过程代数为预测了性能费率的代理指定可用时间,其中该可用时间被用来帮助确定提供服务的代理是否能满足该预测了性能费率的代理的性能级别。
32.如权利要求28所述的方法,其特征在于,还包括采用过程代数为预测了性能费率的代理指定容量,其中该容量被用来帮助确定提供服务的代理是否能满足该预测了性能费率的代理的性能级别。
33.如权利要求28所述的方法,其特征在于,还包括在一包括消息内容描述、代理位置、和通讯协议中至少其一的契约中指定预测性能费率。
34.一种用于指定性能级别的方法,其特征在于,所述方法包括:
将网络服务表示为状态;
以成本函数标示相关联状态转换;
利用该成本函数以及一过程代数预测相应状态转换的费率;以及
比较该预测的费率与提供的费率,来确定提供的费率是否满足预测的费率。
35.一种采用性能质量作为代理间谈判工具的系统,其特征在于,它包括:
用于确定相应代理的性能质量的装置,其中性能质量通过使用一过程代数而被确定;
用于比较所述相应代理的性能质量的装置;以及
用于基于该比较来匹配至少两个代理的装置。
36.如权利要求35所述的系统,其特征在于:
其中性能质量包括第一代理的费率、可用时间和容量度量,其与第二代理的费率、可用时间和容量度量相比较,以确定第一代理是否满足第二代理的性能质量。
CN2004101022682A 2003-12-10 2004-12-10 过程代数指定契约及其性能预测实现度量指定系统和方法 Expired - Fee Related CN1658570B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US52875803P 2003-12-10 2003-12-10
US60/528,758 2003-12-10
US10/903,959 2004-07-30
US10/903,959 US20050131978A1 (en) 2003-12-10 2004-07-30 Systems and methods that employ process algebra to specify contracts and utilize performance prediction implementations thereof to measure the specifications

Publications (2)

Publication Number Publication Date
CN1658570A CN1658570A (zh) 2005-08-24
CN1658570B true CN1658570B (zh) 2011-03-23

Family

ID=34527132

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2004101022682A Expired - Fee Related CN1658570B (zh) 2003-12-10 2004-12-10 过程代数指定契约及其性能预测实现度量指定系统和方法

Country Status (5)

Country Link
US (1) US20050131978A1 (zh)
EP (1) EP1545066B1 (zh)
JP (1) JP2005182788A (zh)
KR (1) KR20050056899A (zh)
CN (1) CN1658570B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070143775A1 (en) * 2005-12-16 2007-06-21 Savoor Raghvendra G Methods and systems to determine pricing of Internet protocol television services
US20070157311A1 (en) * 2005-12-29 2007-07-05 Microsoft Corporation Security modeling and the application life cycle
US20070156420A1 (en) * 2005-12-29 2007-07-05 Microsoft Corporation Performance modeling and the application life cycle
US7890315B2 (en) * 2005-12-29 2011-02-15 Microsoft Corporation Performance engineering and the application life cycle
US7818788B2 (en) * 2006-02-14 2010-10-19 Microsoft Corporation Web application security frame
US7712137B2 (en) * 2006-02-27 2010-05-04 Microsoft Corporation Configuring and organizing server security information
WO2008034170A1 (en) * 2006-09-20 2008-03-27 National Ict Australia Limited Generating a transition system for use with model checking
US20120239456A1 (en) * 2007-12-14 2012-09-20 Bank Of America Corporation Category analysis model to facilitate procurement of goods and services
KR101036861B1 (ko) * 2008-05-29 2011-05-25 한국산업기술평가관리원 예상되는 사용 정보로 확장된 서비스 기술정보
US8407728B2 (en) * 2008-06-02 2013-03-26 Microsoft Corporation Data flow network
US20110106712A1 (en) * 2009-11-02 2011-05-05 Microsoft Corporation Cost-Aware Service Aggregation
US20140108072A1 (en) * 2012-10-17 2014-04-17 Bank Of America Vendor Contract Assessment Tool
US9336481B1 (en) * 2015-02-02 2016-05-10 James Albert Ionson Organically instinct-driven simulation system and method
US10037536B2 (en) 2016-02-13 2018-07-31 At&T Intellectual Property I, L.P. Method and apparatus for autonomous services composition

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0719491A1 (en) * 1994-06-15 1996-07-03 Qualcomm Incorporated Method of providing service and data rate negotiation in a mobile communication system
CN1320312A (zh) * 1998-09-25 2001-10-31 索马网络公司 电信资源协商的方法和系统
CN1344477A (zh) * 1999-01-04 2002-04-10 艾利森电话股份有限公司 承载业务协商

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2971580B2 (ja) * 1993-11-30 1999-11-08 ブリティッシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニー 通信ネットワーク管理
US5790677A (en) * 1995-06-29 1998-08-04 Microsoft Corporation System and method for secure electronic commerce transactions
US6192354B1 (en) * 1997-03-21 2001-02-20 International Business Machines Corporation Apparatus and method for optimizing the performance of computer tasks using multiple intelligent agents having varied degrees of domain knowledge
US6401080B1 (en) * 1997-03-21 2002-06-04 International Business Machines Corporation Intelligent agent with negotiation capability and method of negotiation therewith
US6148290A (en) * 1998-09-04 2000-11-14 International Business Machines Corporation Service contract for managing service systems
US6324172B1 (en) * 1999-03-08 2001-11-27 Qualcomm Incorporated Method of rate allocation in a data communications network
US6708155B1 (en) * 1999-07-07 2004-03-16 American Management Systems, Inc. Decision management system with automated strategy optimization
EP1249102A2 (en) * 2000-01-14 2002-10-16 Qariba Limited Resource allocation
US6516322B1 (en) * 2000-04-28 2003-02-04 Microsoft Corporation XML-based representation of mobile process calculi
JP3511620B2 (ja) * 2000-05-17 2004-03-29 日本電気株式会社 大規模ネットワーク監視系の性能解析方法およびそのシステム
WO2002003302A1 (en) * 2000-06-30 2002-01-10 Enron Net Works Llc Buying and selling goods and services using automated method and apparatus
US20020059132A1 (en) * 2000-08-18 2002-05-16 Quay Steven C. Online bidding for a contract to provide a good or service
AU2001269290A1 (en) * 2000-08-18 2002-03-04 International Business Machines Corporation Apparatus and method for use in a computer hosting services environment
JP3670206B2 (ja) * 2000-11-06 2005-07-13 アルプス電気株式会社 プラズマ処理装置又はプラズマ処理システムの性能評価方法、保守方法、性能管理システム、及び性能確認システム、並びにプラズマ処理装置
US20030195838A1 (en) * 2000-11-29 2003-10-16 Henley Julian L. Method and system for provision and acquisition of medical services and products
US8402129B2 (en) * 2001-03-21 2013-03-19 Alcatel Lucent Method and apparatus for efficient reactive monitoring
US20030050830A1 (en) * 2001-09-13 2003-03-13 William Troyer Method and apparatus for evaluating relative performance of a business in an association of the same or similar businesses
US20030083912A1 (en) * 2001-10-25 2003-05-01 Covington Roy B. Optimal resource allocation business process and tools
US7349872B2 (en) * 2001-12-18 2008-03-25 Rosemount, Inc. Method for comparing and selecting process control apparatus
EP1385094A1 (en) 2002-07-24 2004-01-28 Koninklijke KPN N.V. Apparatus and method predicting performance of distributed systems
WO2004031970A1 (en) 2002-09-30 2004-04-15 Microsoft Corporation Safe interoperability among web services
US6799143B1 (en) * 2002-12-10 2004-09-28 Abb Inc. Process and device for evaluating the performance of a process control system
US7460499B2 (en) * 2003-01-17 2008-12-02 Texas Instruments Incorporated Modulation noise estimation mechanism
US20040204868A1 (en) * 2003-04-09 2004-10-14 Maynard John D. Reduction of errors in non-invasive tissue sampling

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0719491A1 (en) * 1994-06-15 1996-07-03 Qualcomm Incorporated Method of providing service and data rate negotiation in a mobile communication system
CN1320312A (zh) * 1998-09-25 2001-10-31 索马网络公司 电信资源协商的方法和系统
CN1344477A (zh) * 1999-01-04 2002-04-10 艾利森电话股份有限公司 承载业务协商

Also Published As

Publication number Publication date
CN1658570A (zh) 2005-08-24
US20050131978A1 (en) 2005-06-16
EP1545066A3 (en) 2009-12-16
EP1545066B1 (en) 2013-10-02
KR20050056899A (ko) 2005-06-16
EP1545066A2 (en) 2005-06-22
JP2005182788A (ja) 2005-07-07

Similar Documents

Publication Publication Date Title
CN1658570B (zh) 过程代数指定契约及其性能预测实现度量指定系统和方法
Zhou The effect of initial trust on user adoption of mobile payment
Liu et al. QoS computation and policing in dynamic web service selection
CN110268717A (zh) 使用播放统计信息对多表示编码的比特率优化
US20150170271A1 (en) System and Method to Request and Collect Information to Determine Personalized Credit
Ding et al. QoS-aware resource matching and recommendation for cloud computing systems
EP4086770A1 (en) Method and apparatus for generating prediction information, electronic device, and computer-readable medium
CN110866040A (zh) 用户画像生成方法、装置和系统
CN110503520A (zh) 信息推荐方法、装置、电子设备及计算机可读介质
Hussain et al. A methodology to quantify failure for risk-based decision support system in digital business ecosystems
Xiong Resource optimization and security for cloud services
Chen Individual Mobile Communication Services and Tariffs
Farsi et al. QoS-aware framework for performance enhancement of SOA in enterprise IT environments
CN116109374A (zh) 资源位展示方法、装置、电子设备和计算机可读介质
CN109241476A (zh) 网络文章连载中的交互方法、设备、装置及电子设备
Perkis et al. Business perspectives on quality of experience
CN112950003A (zh) 用户资源配额调整方法、装置及电子设备
Karadimce et al. Towards improved model for user satisfaction assessment of multimedia cloud services
CN113590243A (zh) 能源企业项目创建方法、装置、计算机设备及介质
Malakani et al. Trading 4.0: An online peer-to-peer money lending platform
CN113780610A (zh) 一种客服画像构建方法和装置
JP2020027381A (ja) 仮想通貨管理装置、仮想通貨管理システム、仮想通貨管理方法およびコンピュータプログラム
US20240193610A1 (en) Electronic data management for an asset associated with a property identifier based on a distributed ledger
KR102493912B1 (ko) 인플루언서 미팅 중개 서비스 제공 시스템
US11475482B2 (en) Archive offer personalization

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150428

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

Effective date of registration: 20150428

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

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

Granted publication date: 20110323

Termination date: 20191210

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