专利名称:用于使用对等网络协议共享应用程序的方法和设备的制作方法
技术领域:
本发明涉及一种用于共享应用程序的方法,更具体地讲,涉及这样一种方法和设备,其用于允许各对等点通过使用P2P(对等网络)方案使用安装在其它对等点的应用程序而不会在应用程序许可中导致冲突,并有效的使用其间的空闲资源。
背景技术:
客户机/服务器模型是典型的用于在互联网上数据服务,通过其,数据由一些服务器产生,并且大量的客户机访问和使用该服务器。然而,随着互联网使用和用于互联网使用保证的匿名的激增,并随着来自用户对自由交换和复制数据需求的增长,已经开发了各种基于P2P的应用程序。代表性的应用程序包括文件共享应用程序如Gnutella和Napster。这些文件共享应用程序由对等点组成,其中每一个对等点可以是服务器或可以是代替特定服务器的客户机。这些对等点是指能够加入由P2P协议实现的网络的装置。各对等点可以独立并且异步操作,并由对等点IDs来区分(对等点识别)。为了使两个对等点共享服务,它们不需要直接连接,但是作为其替代可以通过使用其它中间对等点作为用于路由的媒介来与期望的对等点通信或平等交换服务。
如图1A所示,Gnutella是由纯P2P模型组成。对等点为了发现数据实时搜索节点(node),并当发现持有作为搜索的结果的数据的节点时建立连接和交换数据。关于Gnutella的更加详细的信息,请参考网站“http//www.gnutella.com”。在Napster的情况下,如图1B所示,对等点仍独立地提供和接收数据,但是通过独立的搜索服务器执行对这些对等点的搜索。
除了共享文件,还存在共享计算机的资源的项目,如“Grid computing”(见“http//www.ibm.com.grid”)和“SETI@home”(见“http//setiathome.ssl.berkeley.edu”)。然而,这些项目具有其中在如图1A和图1B所示的对等点之间不能共享资源的架构。另外,如图2所示,数学运算等所需的原始数据和用于处理原始数据所需的大量资源被分割并分配到对等点。分配的数据随后分别在各对等点被处理并且处理后的数据返回在主机中组合。
图3示出代表性的P2P协议的JXTA的软件架构。通过参考网页“http//www.jxta.org/”,可以获得关于JXTA的更多详细信息。JXTA是用于独立于其操作系统(OS)、网络和编程语言而执行P2P应用程序的多用途平台。典型的P2P文件共享系统如JXTA是基于存在的TCP/IP(传输控制协议/网际协议)系列的互联网,并将相应于核的P2P协议栈放置其上。通常,P2P协议栈大致包括发现部分,用于发现和监视对等点以在它们之间形成组或共同体;查询部分,用于发现期望的服务或数据;和连接部分,用于与提供该服务或数据的对等点建立连接。在这样P2P协议栈上,应用程序如文件共享应用程序使用该栈操作。
这种P2P共享模型在其操作方式上有点不同。图5示出通常使用P2P模型应用程序的文件共享应用程序Gnutella的操作方式。如图1A所示,Gnutella是由纯对等点集合组成的基于节点的系统。文件共享应用程序Gnutella的操作将被解释。第二对等点20新加入到第一对等点10和第三对等点30先前已经加入到其的现存网络。这时,如果从第二对等点20广播用于对等点发现的数据包“ping”数据包以发现哪些对等点在附近(S510),则外围对等点发送“pong”数据包至第二对等点20以响应该ping数据包(S520)。通过这个处理,第二对等点20识别第一对等点10和第三对等点30存在于附近。然后,如果从第二对等点20广播“query”数据包(S530)以搜索期望的文件,则在外围对等点中具有与搜索条件相应的文件的对等点将采用“query hit”数据包回应(S540)。其后,第二对等点20将选择并创建对采用“query hit”数据包来回应的对等点之一的连接(S550),并以GET或PUSH的方法接收期望文件(S560)。通常,GET指令用于接收文件,但是,通过其具有文件的第二对等点20执行PUSH的方法通常使用在特定的条件下,如当第二对等点在防火墙内时。作为一个完整的应用程序操作其,除了上述P2P协议栈之外,需要与组件如鉴证、会话和用户接口(GUI)连接。
除了P2P模型,一种远程显示系统可以涉及本发明。该系统的代表性技术包括“X视窗系统”、“VNC”(Virtual Network Computing,虚拟网络计算)等等。关于X视窗系统的详细信息可以从网页“http//www.o.org”上获得和关于VNC的详细信息可以从网页“http//www.uk.research.att.com/vnc/”上获得。如图4所示,这种技术使用通过其如果远程阅读器使用输入装置如键盘和鼠标而连接到服务器,并且发送各种命令,则服务器执行应用程序以响应指令并且然后将显示信息作为执行结果传回到远程阅读器的方案。服务作为远程阅读器的客户机不能下载和执行服务器的程序。相反,所有操作执行在服务器执行,并客户机只显示来自服务器的执行结果。因此,它可以称作瘦客户机端。
VNC可以在大多数的OS上执行。换句话说,它满足OS之间的互用性。例如,Linux系统连接到Windows系统然后在Windows服务器上执行程序,并可以在Linux系统上观看输出显示。同样,Windows系统连接到Linux服务器然后在Linux服务器上执行程序,并可以在Windows系统上观看输出显示。另外,移动装置,如PDA(个人数字助手),如果它具有遵循该服务器的协议的阅读器,则可以仅在服务器中执行程序。
关于VNC操作的解释将参照图4给出。VNC的操作采用其中服务器更新显示于服务器端阅读器上的帧缓冲原理。在本文,VNC被称作远程帧缓冲(RFB)。随着当视频数据传递时,此时关于显示的象素的信息以各种方式传递,但适应于当前情况。具体地讲,当VNC阅读器作为客户机使用输入装置如键盘和鼠标发送指令时,该VNC服务器执行其嵌入的应用程序以响应指令并传送结果至VNC阅读器。通过VNC协议VNC阅读器和VNC服务器之间的通信的质量根据网络的情况而变化。
该P2P共享模型和远程显示系统具有下面问题和不便。在P2P方案中,大量的对等点形成共同体并共享它们之间的信息和资源,但是多数传统P2P方案的应用程序仅集中在共享文件。因此,共享信息被限制到对其它不用遵守命令以共享应用程序自身的文件如音乐和运动图像。虽然存在一些用于共享资源的应用程序,但是它们不采用纯对等点的自控共享如文件共享,相反它们只应用于并行计算模式,如“Grid computing”和“SETI@home”。
同时,该远程显示系统和远程访问系统使用通过其客户机连接到已知的服务器以作为一个用户使用该服务器的方案。这仅仅是与该服务器建立连接并从该服务器下载文件,并为多个客户机在服务器上使用应用程序。因此,由于这不是在对等点之间的纯共享,所以它具有和客户机/服务器模型相同的问题。即,客户机被允许与该客户机持有帐户的服务器建立连接,并客户机期望使用的应用程序必须存在于该服务器中。因此,只有那些客户机经授权使用的应用程序(即,许可授权使用的应用程序)可以被执行。另外,还存在问题,即,由于经大量客户机的连接集中在少数服务器上,所以服务器需要越来越强大的计算能力,然而客户机的日益增加的计算能力不能有效使用。
因此,传统技术不可以提供允许在共同体内的所有客户机共享由各对等点持有的应用程序方法。另外,没有对等点可以为其它对等点提供其空闲资源的方法。
发明内容
虽然本发明的实施例并不需要解决上述任何问题,但是本发明的目的在于解决上述问题。本发明的示例性方面提供了一种使用在当前互联网环境下吸引公众注意的P2P方案在各对等点间有效地共享应用程序和资源的方法。
本发明的另一个示例性方面允许其它平台的应用程序通过应用程序共享来被使用,而不需要单独的安装程序。
本发明的另一个示例性方面通过共享在PC上的空闲资源允许在当前资源或环境下不能被执行的应用程序被使用。
根据用于完成目的的本发明一个示例性实施例,提供一种使用P2P协议共享应用程序的方法,该方法包括第一步,由具有服务器功能的第一对等点注册将被共享的应用程序;第二步,确定注册的应用程序文件是否满足包含于从具有客户机功能的第二对等点接收的应用程序搜索指令中的搜索条件并发送描述文件至该第二对等点以响应该确定结果;第三步,通过预定协议与第二个对等点建立连接以执行属于满足搜索条件的应用程序的服务;和第四步,执行用于为第二对等点提供属于应用程序的远程显示服务的会话。
根据本发明的另一个示例性实施例,提供一种使用P2P协议使用共享的应用程序的方法,该方法包括第一步,由具有客户机功能的对等点(a)的用户输入期望的应用程序的搜索条件;第二步,使用搜索条件形成搜索消息并然后发送搜索指令至外围对等点;第三步,从在外围对等点中具有注册的满足搜索条件的应用程序的对等点接收属于应用程序的描述文件;第四步,基于描述文件通过预定协议与由对等点(a)的用户在具有注册的应用程序的对等点中选择的对等点(b)建立连接;第五步执行从对等点(b)提供属于应用程序的远程显示服务的会话。
根据本发明的另一个示例性实施例,提供一种使用P2P协议共享应用程序的服务器,其包括注册模块,用于根据用户的输入注册将被共享的应用程序并设置所有应用程序或单独应用程序的服务策略;资源监视模块,用于测量服务器的空闲资源和监视注册的应用程序平均使用的资源量;描述模块,用于基于注册模块和资源监视模块产生描述文件,该描述文件包含属于当前可以被服务的应用程序的信息和属于服务应用程序的环境的信息;和会话模块,用于维持和终止提供给客户机远程显示服务的会话。
根据本发明的另外一个示例性的实施例,提供一个使用P2P协议共享应用程序的客户机,其包括搜索模块,用于从客户机的一个用户接收期望的应用程序的搜索条件以表达一个用于发现达到搜索条件的应用成学的搜索消息,并发送已表达的消息至外围对等点;和会话模块,用于维持或终止从在外围对等点中具备满足搜索条件的注册的应用程序的服务器提供属于应用程序远程显示服务的会话。
通过结合附图对示例性实施例进行下面的描述,本发明以上和其它示例性目的和特点将会变得清楚,其中图1A示出纯类型的传统P2P文件共享系统的结构;图1B示出混合型的传统P2P文件共享系统的结构;图2示出传统“Grid computing”和“SETI@home”系统的结构;图3是示出传统JXTA软件的结构的方块图;图4示出传统的虚拟网络计算的操作结构;图5示出传统Gnutella协议的操作处理的流程图;图6示出在根据本发明的示例性实施例的P2P共享系统中的服务器的结构;图7示出在根据本发明的另一个示例性实施例的P2P共享系统中的客户机的结构;图8示出根据本发明的另一个示例性实施例的方法的操作的流程图;和图9是示出根据本发明的另一个示例性实施例在图8的会话执行处理中由服务器终止的流程图。
具体实施例方式
以下,参照附图来详细说明本发明的示例性实施例。通过参照以下将结合附图详细地描述的示例性实施例,本发明的优势和特点及获得这些优势和特点的方法将会变得更加清楚。然而本发明不限于下面公开的示例性实施例,并且可以以多种不同形式实现。该示例性实施例提供仅为了对本领域的技术人员完成本发明公开和完全表示本发明的范围,并本发明只由所附权利要求限定。在详细的描述中,相同的标号始终表示相同的部件。
在本发明提出的应用程序共享系统中,特定服务器或客户机不单独存在,但是对等点可以作为客户机服务以使用在其它对等点中的应用程序并可以作为用于提供其自身的应用程序和资源至其它对等点的服务器服务。因此,服务器和客户机部分在一个程序中操作。然而,所有对等点不是必需同时配备服务器功能和客户机功能,并只作为服务器操作的对等点和只作为客户机操作的对等点可以包括于该系统中。因此,根据其功能需要将组件划分成服务器端组件和客户机端组件。本发明采用用于在对等点间形成共同体和用于期望的应用程序的搜索的传统P2P协议栈,并采用用于远程应用程序执行和控制的传统远程显示系统的服务器/阅读器架构。
图6示出根据本发明的一个示例性实施例应用程序共享系统的服务器端结构。当计算机与P2P网络连接时,服务器注册在对等点间共享的应用程序和监视当前可得到的系统资源。服务器还基于当前注册的应用程序和监视的系统资源表达服务器自身固有的描述,并基于该描述响应来自其它对等点的搜索消息。当形成的P2P共同体被保持时,服务器部分以后台形式操作,并支持来自其它对等点的搜索或应用程序使用需求。当应用程序的使用需求来自其它对等点时,连接建立并且发生恰当的协商。其后,服务器提供作为客户机的对等点远程显示服务的会话开始。如果该会话开始,则然后该远程显示系统被驱动从而相关的应用程序可以被另一个远程对等点控制。
将具体解释服务器端对等点的结构。用于驱动系统的操作系统(OS)660位于最低层并用户期望使用的应用程序610位于最高层。用于在根据本发明的P2P方案中共享计算机资源的中间件620位于操作系统660和应用程序610之间。另外,在中间件620中存在P2P协议栈640,用于发现大量对等点以形成对等点共同体并允许数据在对等点间发送和接收;远程显示系统650,用于根据远程阅读器传递的指令执行应用程序并传递执行的结果至该远程阅读器;和应用程序共享系统模块630,在加入本发明中的较高层。
应用程序共享系统模块630包括许多的低级模块,解释如下。由于不是计算机中所有应用程序需要与其它对等点共享,所以用户应该直接注册将被共享的应用程序。此时,用户可以对注册的应用程序设置服务策略(policies)。如果该系统的状态不能达到于此设置的标准,则相关应用程序的服务被迫停止。这样的服务策略为“当CPU的平均利用量在最近10分钟内变为50%或者更多时,不可以执行相关应用程序的服务。如上陈述,注册模块632负责根据从用户的输入注册将被共享的应用程序并根据从用户的输入或由资源监视模块633观察的资源统计值设置所有或单独应用程序的服务策略。
在注册过程中,关于服务作为服务器的对等点是否可以从客户机接收应用程序使用请求或者该对等点是否继续维持当前正服务的应用程序的确定由服务器当前资源状态和策略影响。即如果服务器的资源以超过设置的标准而正被使用,则由于在当前状态不能得到该服务,所以来自客户机的请求被拒绝或被阻挡。另外,还必需新形成对由其它对等点的搜索有影响的描述文件。因此,资源监视模块633每次测量计算机的空闲资源并管理在最近给定的一段时间期间的资源统计表。同样地,它还管理特定应用程序平均使用多少资源,即过去的统计值。由资源监视模块633监视的资源包括在执行程序中需要的项目如CPU、存储器和网络带宽。
描述模块634基于注册模块632和资源监视模块633服务产生包含关于可以当前服务的应用程序的信息和关于服务环境的信息的描述文件。具体地讲,描述文件包含服务的应用程序的名称、版本和任何其它信息;服务器的操作系统、存储器、CPU和虚拟存储器;可以根据当前相关应用程序而提供的资源信息;等等。描述文件根据各个的应用程序被表达。描述文件通过反映周期性变化的系统信息或在来自其它对等点的搜索请求时动态产生。产生的描述文件用于表达响应来自其它对等点的搜索请求的消息。描述文件还可以根据下层的P2P栈来被用于广告。
其间,连接模块637服务以通过预定的协议(例如,如HTTP协议)互相连接服务器和客户机,从而它们彼此通信以提供服务器的服务给客户机。
另外,协商模块636是可选组件并服务以对一些有关服务事件如数据传输质量(例如,服务质量,QoS)或服务策略与客户机协商。
会话模块635服务以维持提供给客户机远程显示服务的会话。该会话被需要来共同维持和管理相关处理。一个会话包括客户机端信息、质量信息如QoS、安全处理终止、相关服务策略、日志信息等等。最后,会话模块635服务以维持这样用于提供的应用程序的每一个服务的会话并随同服务终止来关闭会话。
GUI(图形用户接口)模块631提供用于允许服务器用户输入指令的图形接口,并接收来自该服务器用户输入的指令。即该GUI模块631参与注册过程、用于应用程序共享的环境设置、系统资源的监视、连接设置和取消连接的服务器端控制等等。
图7示出根据本发明的示例性实施例的应用程序共享系统的客户机端结构。客户机根据来自用户的需求完成搜索条件并在对等点中发现与搜索条件相应的应用程序。它还通过协商与用户在搜索的对等点中选择的对等点建立连接,并为应用程序平稳执行维持会话。如果该会话启动,用户可以通过远程显示系统的阅读器在对应对等点中执行应用程序。
将具体地描述客户机端对等点的结构。用于驱动系统的操作系统(OS)750位于最底层并且在根据本发明的P2P方案中用于共享计算机资源的中间件710位于其上。并在中间件710中,如同在服务器的中间件620,存在P2P协议栈730、远程显示系统740和被加在本发明中的较高层上的应用程序共享模块720。该应用程序共享系统模块720包括许多将在下面解释的下层模块。
在客户机操作后搜索模块712服务以经GUI模块711从用户接收期望的应用程序的搜索条件,表达搜索消息以发现满足搜索条件的服务并经下层P2P栈将表达的消息发送至其它对等点。
使用在服务器上的连接模块637,连接模块715服务以通过预定的协议使服务器和客户机互相连接,从而它们互相通信以允许客户机被提供服务器的服务。
协商模块714服务以经在服务器上的协商模块636对有关服务事件如数据传输质量或服务策略与服务器协商。
会话模块713服务以维持从服务器提供的远程显示服务的会话。一个会话包括服务器端信息、质量信息如QoS、安全处理结束、相关服务策略、日志等等。会话模块713维持提供的应用程序的每一个服务的这样会话并随同该服务的终止关闭该会话。
GUI(图形用户接口)模块711提供图形接口允许客户机用户输入指令并由来自服务器用户的指令来输入。因此,在客户机GUI模块711包括一部分,用于显示对外围对等点的搜索结果和对用户请求的服务的搜索结果;和一部分,用于用户输入用于期望的应用程序的搜索的选项。另外,GUI模块711可以包括用于显示服务器情况或与关于网络的信息的一部分。另外,GUI模块711通过远程显示系统740执行用于传送来自服务器的应用程序执行结果的功能,即,远程显示服务,和显示那个结果至客户机用户。
图8是完全地示出根据本发明的一个示例性实施例的操作的流程图。
首先,每一个具有服务器功能的对等点10、20和30注册每一个对等点期望共享的应用程序(S810、S811和S812)。在注册过程中,它们还将当服务应用程序时变成服务标准和应用程序的执行指令的各种策略一起注册。
其次,如果对等点10、20和30中的一个第二对等点20广播一个ping数据包来识别如果有,什么对等点存在附近(S820),外围对等点10和30响应ping数据包发送pong数据包至对等点20(S830)。通过这个pong数据包,对等点20将识别在附近存在第一对等点10和第三对等点30。
其次,客户机端(即,第二对等点)模块被来自用户的请求执行(S840)。当用户期望使用其它对等点的应用程序时,其通过GUI模块711输入期望的应用程序的搜索条件。然后,客户机搜索模块712使用从用户输入的搜索条件创建搜索消息,并其后通过连接模块715发送搜索消息至组成共同体的外围对等点10和30(S850)。接收搜索指令的外围对等点10和30通过参照它们各自的描述文件如果搜索条件满足则提供响应,否则不提供响应。如果第一对等点10具有满足该搜索条件的注册的应用程序,则它传送应用程序的描述文件至第二对等点20并且第二对等点20接收它(S860)。
现在,为了执行应用程序服务在第二对等点20和第一对等点10之间建立了连接(S870)。这种一个对等点传送描述文件作为响应的例子已经被描述过。然而,如果存在几个发送描述文件的对等点,则第二对等点20通过预定协议,基于描述文件与由在具有注册的应用程序的对等点中的第二对等点20的用户选择的对等点建立连接。
接下来连接处理,为服务在第二对等点20和第一对等点10之间的协商开始(S880),并当协商过程结束时,第一对等点10提供给第二对等点20的远程显示服务的会话启动,并执行应用程序(S890)。
使用传统的远程显示系统执行执行会话的处理。首先,如果用户的输入,即,控制从作为客户机的第二对等点20发送至作为服务器的第一对等点10(S891),则应用程序的输出值和显示信息从第一对等点10发送至第二对等点20(S892)。根据来自作为客户机的第二对等点20的需求该处理如S891和S82重复几次。其后,如果在第二对等点20应用程序使用结束,则作为该应用程序执行结果产生的文件和任何其它日志信息存储在本地计算机(S893),并结束指令被发送至第一对等点10(S894)。其后,接收结束指令的第一对等点10终止会话并完成正常的执行过程(S895)。
图9是示出在图8中已经执行后由服务器结束会话的过程的流程图。如果如在图8中连接的对等点的协商结束后,则由于服务器服务停止导致全部过程结束好于客户机终止服务使用,过程(S990)与下面通常的过程有些区别。
即当作为服务器的第一对等点10的用户停止服务时,同时用户的输入传送过程(S991)和显示过程(S992)重复,第一对等点10发送指示该服务停止的结束指令至服务的客户机端对等点,即第二对等点20(S993)。然后,在接收该消息的第二对等点20将数据文件和日志存储在本地计算机(S994)并安全停止应用程序使用后,第二对等点20发送指示正常停止的OK消息至第一对等点10(S995)。第一对等点10在确认OK消息后识别在第二对等点的操作安全结束,并终止会话(S996)。
根据使用P2P共享方案的应用程序共享的本发明,可以获得下面示例性的优点。首先,可以共享应用程序而不会在应用程序许可中导致冲突。在对等点间共享程序与未授权的该应用程序的复制和销售不同。应用程序可以在授权的计算机上执行并不能复制到其它未授权的计算机上。对通过其它匿名用户的远程连接是一样的。例如,即使没有游戏许可的用户可以在其它用户的计算机上玩游戏并当观察显示器时执行远程控制。
其次,可以使用应用程序而不是安装程序。尽管是不经常使用的程序,长时间安装程序是被需要用于极少的应用并当程序不需要时还需要删除程序。然而,像这样只使用一或两次的程序可以在另一个对等点的计算机上执行而不运行安装和删除程序。
再次,甚至具有其它操作系统或其它类型的平台的用户可以使用期望的应用程序。例如,Linux应用程序可以在Windows中执行并通常的PC应用程序也可以在PDA中执行。
最后,因为客户机对等点可以共享在服务器对等点中的闲置资源,所以它们可以使用采用它们当前资源或在它们当前环境下不可以被执行的应用程序。例如,在已经安装该应用程序的PC的空闲时间通过执行需要高级配置的计算机资源的应用程序如3D模拟和CAD,即使拥有不能直接执行相关应用程序的PC的用户可以使用该应用程序。
虽然参照附图对本发明的实施例进行了描述,但本领域的技术人员应该理解,在不改变其技术精髓和必备特点的情况下,本发明能够以其它详细的形式代替。因此,应该理解上述实施例是用于在全部方面的示出,但不是用于限定。
权利要求
1.一种使用对等网络协议共享应用程序的方法,包括由具有服务器功能的第一对等点注册一个或更多将被共享的应用程序;确定每一个应用程序是否满足包含于从具有客户机功能的第二对等点接收的应用程序搜索指令的搜索条件并发送描述文件至第二对等点以响应该确定结果;通过预定的协议在第一对等点和第二对等点之间建立连接以执行属于满足搜索条件的应用程序的远程显示服务;和执行用于为第二对等点提供属于应用程序的远程显示服务的会话。
2.根据权利要求1所述的方法,其中,注册将被共享的应用程序包括注册将被共享的应用程序的执行指令和当服务应用程序时变成标准的策略。
3.根据权利要求2所述的方法,其中,策略基于第一对等点的监视的资源的统计值被设置。
4.根据权利要求1所述的方法,还包括在建立连接后,在第一对等点和第二对等点之间协商远程显示服务的详情。
5.根据权利要求1所述的方法,其中,执行会话包括如果第二对等点发送用于执行应用程序的用户的输入至第一对等点,则第一对等点使用远程显示服务传送通过执行应用程序获得的输出至第二对等点;和终止会话以响应来自第一对等点的指令或第二对等点的指令。
6.根据权利要求5所述的方法,其中,当响应于来自第一对等点的指令终止会话时,会话的终止包括将指示服务停止的结束指令从第一对等点发送到第二对等点;在第一对等点接收第二对等点的指示正常终止的消息;和确认接收到的消息并终止会话。
7.一种使用对等网络协议使用共享的应用程序的方法,包括由具有客户机功能的第一对等点的用户输入期望的应用程序的搜索条件;使用搜索条件创建搜索消息并然后发送搜索指令至一个或更多外围对等点;从一个或更多具有满足搜索条件的注册的应用程序的外围对等点接收属于应用程序的描述文件;基于描述文件通过预定的协议与由第一对等点的用户从具有注册的应用程序的外围对等点中选择的第二对等点建立连接;和执行从第二对等点提供属于应用程序的远程显示服务的会话。
8.根据权利要求7所述的方法,还包括在与第二对等点建立连接后,与第二对等点协商远程显示服务的详情。
9.根据权利要求7所述的方法,其中,与第二对等点建立连接包括发送用于执行应用程序的用户输入至第二对等点并接收由第一对等点使用远程显示系统执行来自第二对等点的应用程序获得的输出;和终止会话响应来自第一对等点的指令或来自第二对等点的指令。
10.根据权利要求9所述的方法,其中,当会话终止以响应来自第一对等点的指令时,终止会话包括存储包括通过执行应用程序获得的输出结果的文件;和发送以请求会话终止的指令至第二对等点。
11.根据权利要求9所述的方法,其中,当会话终止响应来自第二对等点的指令时,终止会话包括从第二对等点接收指示服务停止的结束指令;存储包括通过执行应用程序获得的输出结果的文件;和由第一对等点发送指示正常终止的消息至第二对等点。
12.一种用于使用对等网络协议共享应用程序的服务器,包括注册模块,用于根据用户的输入注册一个或更多将被共享的应用程序并为作为一组或单独的应用程序的所有应用程序设置服务策略;资源监视模块,用于测量服务器的空闲资源并监视由注册的应用程序平均使用的资源量;描述模块,用于基于注册模块和资源监视模块产生描述文件,该描述文件包含属于当前可以被服务的应用程序的信息和属于服务应用程序的环境的信息;和会话模块,用于维持或终止提供给客户机的远程显示服务的会话。
13.根据权利要求12所述的服务器,还包括图形用户接口模块,用于提供图形接口以允许服务器用户输入指令并用于接收从服务器用户输入的指令;和连接模块,用于通过预定的协议从服务器至客户机建立连接以允许服务器与客户机通信以为客户机提供远程显示服务。
14.根据权利要求12所述的服务器,还包括协商模块,其负责为数据传输质量、服务策略和其它有关服务的事件之一或多个与客户机协商。
15.一种用于使用对等网络协议使用共享的应用程序的客户机,包括搜索模块,用于从客户机的用户接收期望的应用程序的搜索条件以表达搜索消息来发现满足搜索条件的应用程序并发送表达的消息至一个或更多的外围对等点;和会话模块,用于维持和终止从在外围对等点中具有满足搜索条件的注册的应用程序的服务器提供属于该应用程序的远程显示服务的会话。
16.根据权利要求15所述的客户机,还包括连接模块,用于通过预定的协议允许服务器和客户机彼此通信以从服务器提供给客户机远程显示服务;和图形用户接口模块,用于提供用户输入指令的图形接口,并用于从服务器接收远程显示服务以显示应用程序的执行结果至用户。
17.根据权利要求15所述的客户机,还包括协商模块,其负责与服务器协商数据传送质量、服务策略和其它有关服务的事件的一个或多个。
18.一种包括可由计算机执行以执行使用对等网络协议来共享应用程序的方法的程序代码的计算机可读介质,包括由具有服务器功能的第一对等点注册一个或更多将被共享的应用程序;确定每一个注册的应用程序是否满足包含于从具有客户机功能的第二对等点接收的应用程序搜索指令的搜索条件并发送描述文件至第二对等点以响应该确定结果。通过预定的协议在第一对等点和第二对等点之间建立连接以执行属于满足搜索条件的应用程序的远程显示服务;和执行用于为第二对等点提供属于应用程序的远程显示服务的会话。
全文摘要
一种使用对等网络协议共享应用程序的方法包括由第一对等点注册将被共享的应用程序;确定注册的应用程序文件是否满足包含于从具有客户机功能的第二对等点接收的应用程序搜索指令中的搜索条件并发送描述文件至第二对等点以响应该确定结果;通过预定的协议与第二对等点建立连接以执行属于满足搜索条件的应用程序的服务;和执行用于为第二对等点提供属于应用程序的远程显示服务的会话,从而客户机对等点可以共享在服务器对等点上的空闲资源,并可以使用其当前资源或在其当前环境中不可以被执行的应用程序。
文档编号G06F15/00GK1622549SQ200410091480
公开日2005年6月1日 申请日期2004年11月25日 优先权日2003年11月27日
发明者赵俊皓 申请人:三星电子株式会社