用于对等合作和基于ip的语音传送的基于元搜索万维网服务的体系结构的制作方法

文档序号:6479527阅读:129来源:国知局
专利名称:用于对等合作和基于ip的语音传送的基于元搜索万维网服务的体系结构的制作方法
背景技术
1.发明领域本发明涉及联网领域,更具体地说,涉及发现终端用户装置和在终端用户装置之间/之中建立合作应用会话。
2.相关技术描述P2P是一种通信模型,其中两个或两个以上参与者(或“对等方”)具有相同的通信能力并且任一参与者能发起通信会话。这种模型不同于其它通信模型,例如,“客户机/服务器”模型和“主/从”模型,其中不同的节点可能具有不同的通信能力。通过使每个通信节点具有服务器和客户机的双重能力,可以实现P2P通信。近年来,术语“P2P”通常用于描述一组用户能够使用网络(例如,因特网)通过至少一台中间服务器直接交换文件的应用。在大多数P2P模型中,有效地使终端用户无法察觉中间服务器,因此导致终端用户认为实现了与其它终端用户的“直接”连接。
P2P网络通常是一种暂用网络,它允许一组计算机用户相互连接并直接发现和/或传送存储在每个其他人的计算机(例如,存储在硬盘驱动器)中的文件。通常通过使用诸如Kazaa(现在通常称为FastTrack)、Napster和Gnutella的P2P联网软件来建立P2P网络。
P2P网络的最初发展主要是由于它的直接共享多媒体(例如,音乐、电影)的能力。然而,未解决的与受保护作品的共享相关联的法律问题会减少用于该目的的P2P网络的使用。因此,在其他方面使用P2P网络是有优势的,例如,在游戏和商业应用方面。
发明概述在本发明的一个方面,提供了用于在对等网络(P2P)上发现潜在装置的系统。该系统包括搜索装置以及在操作上连接到P2P网络的多个潜在装置。多个潜在装置中的每一个与一个或多个身份文件相关联。每个身份文件包括多个可搜索元素。多个潜在终端用户装置中的一个或多个在P2P网络上公布它们的一个或多个身份文件。搜索装置基于多个潜在装置的一个或多个身份文件来搜索P2P网络以发现多个潜在装置中的一个或多个。搜索装置发起与一个或多个潜在装置的合作会话。
在本发明的另一方面,提供了用于搜索装置在对等(P2P)网络上发现潜在合作者的方法。该方法包括以下步骤发现到P2P网络的一个或多个入口点节点、在P2P网络上登记搜索装置、在P2P网络上执行身份供应、在P2P网络上执行一个或多个搜索、获得关于P2P网络上的潜在合作者的一个或多个搜索结果、发起应用和服务中的至少一个以形成与搜索结果中的一个或多个潜在合作者的合作会话。
在本发明的另一方面,提供了用于搜索装置在对等(P2P)网络上发现潜在合作者的方法。该方法包括以下步骤向P2P网络登记、向万维网服务提供者发起万维网服务、使用万维网服务从万维网服务提供者处请求P2P网络上可用的P2P服务器、使用万维网服务在万维网服务群集中登记可用的P2P服务器、在P2P网络上执行身份自供应、获得搜索P2P网络上的潜在合作者的一个或多个搜索结果、对每个搜索结果获取服务和身份可用性、缩减搜索结果的数量以产生缩减的结果列表、发起与缩减的结果列表中的一个或多个潜在合作者的合作会话。
附图简述通过参考下面结合附图的详细描述会理解本发明,图中相同的参考标号标识相同的元件,其中

图1描绘依照本发明的一个实施例、用于搜索装置在对等(P2P)网络上发现潜在合作者的方法的流程图;图2(a)和2(b)描绘依照本发明的一个说明性实施例、用于示范性登记过程的XML代码;图3描绘依照本发明的一个说明性实施例、用于示范性响应请求动作的XML代码;图4描绘依照本发明的一个说明性实施例的自供应过程;图5(a)描绘依照本发明的一个说明性实施例、基于万维网服务的P2P装置的远程查询的示范过程;图5(b)描绘依照本发明的一个说明性实施例、基于万维网服务的P2P装置的远程查询的备选示范过程;图5(c)描绘依照本发明的一个说明性实施例、基于万维网服务的呼叫中心代理的远程查询的示范过程;图6(a)描绘依照本发明的一个说明性实施例的示范搜索表格的XML代码;图6(b)描绘依照本发明的一个说明性实施例的另一个示范搜索表格的XML代码;图6(c)描绘依照本发明的一个说明性实施例的又一个示范搜索表格的XML代码;图7描绘依照本发明的一个说明性实施例、具有搜索标准的示范身份和示范搜索表格;以及图8描绘了一个说明依照本发明的一个说明性实施例、在超级对等P2P网络和/或P2P入口点之间的连接性的示意图。
优选实施例的详细描述下面描述本发明的说明性实施例。为了清楚,在本说明书中没有描述实际实现的全部特征。当然会意识到,在任何这种实际实施例的开发中,必须作出许多实现特定的决定以达到开发者的特定目标,例如,符合系统相关和业务相关的约束,这随不同的实现会是不同的。而且,会意识到,这种开发工作可能是复杂并耗时的,但是,对于得到本公开的益处的本领域普通技术人员来说,这不过是常规任务。
虽然本发明容许各种修改和备选形式,但是通过图中的实例示出了其中的特定实施例并且本文详细描述了这些特定实施例。然而,应当理解,本文描述的特定实施例不是要将本发明限制在公开的特定形式,而是相反地,目的是涵盖落入如所附权利要求定义的本发明的精神和范围内的所有修改、等效物和替代物。
可以理解,可采用各种形式的硬件、软件、固件、专用处理器或它们的组合来实现本文描述的系统和方法。特别是,最好将本发明的至少一部分实现为包括程序指令的应用,程序指令具体包含在一个或多个程序存储装置(例如,硬盘、磁软盘、RAM、ROM、CD ROM等)中并且可由包括适合体系结构的任何装置或机器(例如,具有处理器、存储器和输入/输出接口的通用数字计算机)执行。还可以理解的是,因为最好是采用软件来实现附图中描述的某些组成系统组件和过程步骤,所以系统模块(或方法步骤的逻辑流)之间的连接可能随本发明的编程方式而有所不同。根据本发明原理,相关领域的普通技术人员将能设想本发明的这些和类似的实现。
本发明允许合作搜索者在公共场所(例如,机场休息室、咖啡店)或私人/固定有线线路或无线家庭环境(例如,使用固定宽带ADSL或无线LAN DSL接入路由器)中定位并查询潜在合作者。
本发明影响由多种已知的P2P联网应用/软件(例如,Kazaa、OpenNAP、Gnutella、FastTrack、LimeWire等)之一建立的对等(“P2P”)网络,使得合作搜索者可从合作池中搜索潜在合作者。合作搜索者可使用用户定义的搜索标准来搜索潜在合作者。如本文所用的术语“合作组合”指的是参与P2P网络的一组人、机器或装置。如本文所用的术语“潜在合作者”指的是使用用户定义的搜索标准所提炼的合作组合。因此,潜在合作者的数量不会比合作组合的数量多。一旦一个或多个潜在合作者已被识别,合作搜索者可建立与一个或多个潜在合作者的合作会话。合作会话包括但不限于应用和/服务,如基于IP的语音传送(VoIP)电话、多玩家游戏、多人商业应用以及机器对机器的应用。通常使用合作应用发起合作会话。合作会话通常涉及在相同应用或等效应用(例如,VoIP软件电话)的两个或两个以上实例之间的交互。
合作组合中的每一个合作者可使用一个或多个终端用户装置连接到P2P网络。终端用户装置可包括但不限于个人数字助理(“PDA”)、具有无线联网能力的膝上型计算机以及移动电话(例如,智能电话)。可以理解的是,本发明中的P2P网络的主要目的是提供识别终端用户装置以及由此识别潜在合作者的方法。一旦用户从合作组合中识别了一个或多个潜在合作者,合作搜索者就能获得一个或多个潜在合作者的IP地址并开始合作会话。
应当理解,由于知道了IP地址,从而允许用户使用或不使用P2P联网软件直接与潜在合作者联系。例如,通过因特网或局域网(“LAN”)在两个或两个以上合作者之间可进行合作会话。
本发明能够通过查询潜在合作者的装置来提炼和减少从合作组合返回的合作者数量。合作搜索者发起基于搜索标准的搜索。这可以在例如以定制的搜索表格提出搜索标准的P2P合作应用上实现。如果以前没有高速缓存,合作搜索者能够从例如万维网服务提供者(“WSP”)处下载搜索表格。WSP可以是基于付费的并且与因特网服务提供者(“ISP”)分离。P2P合作应用可以自动搜索P2P网络并返回潜在合作者的结果集。
大多数普及的现有P2P网络已经证明了它们的全局缩放和支持重要用户群的能力。另外,这些P2P网络的一部分是使用普遍可得的诸如OpenNAP的开放源代码软件创建的。通过利用现有的P2P网络技术,自动继承了许多优点。其中之一是网络是“自供应的”,这消除了ISP的大量负担。如本文所用的术语“自供应”指的是终端用户装置作为客户机-服务器(即,具有“服务者”能力)的能力。
可以理解的是本发明并不限于任何特定类型的P2P网络或P2P联网软件。在一个实施例中,可以使用专用P2P网络(例如,使用开放源代码实现)。在备选实施例中,一个或多个现有公共P2P网络可以是“背负式”。在另一个实施例中,利用专用和公共P2P网络这两者可使用混合方式。而且,已经有各种为P2P网络提出的模型,例如,无服务器、超级节点服务器和分级服务器体系结构,每个均具有其各自的优点。
本发明基于P2P网络的优点,通过提供与各种已知的诸如万维网联盟定义的万维网服务和万维网服务体系结构(“WSA”)中任一种密切相关的独立于应用/服务的框架来构建。万维网服务提供了运行在各种平台和/或框架上的不同软件应用之间的互通的方法。这种通用方法使框架能够用作提供和部署多个应用和服务的手段,而不是如同大多数已知的P2P应用那样只提供单一专用的服务。
本发明可使用基于元搜索网络服务的体系结构。在一个元搜索引擎中,例如,用户在搜索框中提交关键字。引擎将搜索发送给若干个单独的搜索引擎。从被查询的所有搜索引擎获得结果。元搜索引擎通常不具有网页数据库。而是,引擎将搜索项发送到搜索引擎公司维护的数据库。
现在参照图1,依照本发明的一个实施例示出了说明方法的流程图100,该方法用于发现潜在合作者以便在P2P网络上进行合作会话。终端用户(合作搜索者的)装置进入(在105)热点区(即,无线网络覆盖的地理区域,例如因特网)或者使用任何其它方式连接到任何IP网络。终端用户装置可以是各种能够连接到热点的便携式电子装置中任一种,例如,PDA、膝上型计算机或移动电话。
终端用户装置向P2P网络登记(在110),从而允许终端用户装置利用P2P网络。这可以由合作搜索者手工完成或自动完成,只要终端用户装置进入(在105)热点或使用任何其它方式连接到任何IP网络。可使用IP(网际协议)网络上的HTTP(超文本传输协议)、FTP(文件传输协议)等之上的万维网服务和SOAP(简单对象访问协议)协议执行这种登记过程。为了简明性,我们的说明性实施例主要利用用于HTTP之上的SOAP协议。但是,应当理解,如本领域的技术人员会设想的,可利用各种协议中任一种。图2(a)和图2(b)示出了示范性登记过程。图2(a)表示终端用户装置使用P2P网络的万维网服务请求。图2(b)表示P2P确认收到万维网服务请求的响应。
再参照图1,终端用户装置使用HTTP/XML(可扩展标记语言)/SOAP协议向已知的万维网服务提供者(“WSP”)发起(在115)万维网服务。这个发起步骤可包括发现WSP。可使用UDDI(通用描述、发现和集成)万维网服务登记和业务实体发现WSP。可以理解的是,WSP的发现可以是可选的(即,如果知道特定的WSP信息硬编码在终端用户装置中)。
终端用户装置请求(在120)可用的P2P服务器。在一个实施例中,终端用户装置使用万维网服务向WSP发送“请求动作”。万维网服务能够执行任何数量的请求动作,或者接收任何数量的响应、动作或方法。请求动作和响应可在WSDL服务描述符文件中定义。通常由WSP将WSDL服务描述符文件公布到公共UDDI商业服务登记服务器中。请求动作的实例包括如图2和图3分别表示的“requestServerReport”和“getServerReportResult”。图3说明WSP的响应,表示报告可用的P2P服务器、要使用的端口以及连接到该端口的用户数量的SOAP服务协议要素的列表。使用XML/SOAP协议要素可将该信息发送到终端用户装置。如图3所示,命令“getServerReportResult”返回一个或多个可用P2P网络服务器的列表。在备选实施例中,命令“getServerReportResult”也可以返回特定的P2P网络类型(例如,OpenNap、Kazaa、Gnutella、eMule、Kademlia或Limewire),包括“入口服务器”和要使用的P2P访问端口。“入口服务器”主要用于在特定P2P网络上首次登记。如图3所示,终端用户装置只支持一个P2P网络(即,使用端口8888的OpenNap)。然而,可以理解的是,终端用户装置可支持任何数量的P2P网络协议。也可以理解的是,示出请求动作“requestServerReport”和“getServerReport”仅仅是用于说明性目的,如本领域技术人员设想的其它命令方法和功能可以实现。
再参照图1,终端用户装置将P2P服务器登记(在125)到万维网服务群集中(即,实现万维网服务的两台或两台以上计算机组)。如本领域的技术人员熟知的,使用被要求提供万维网服务的标准中间件体系结构平台可执行将一个或多个P2P服务器与万维网服务群集进行连接和断开连接的登记过程。通过使用任何专业的J2EE(Java2平台,企业版)万维网服务体系结构(例如,IBM的WebSphere、BEA的WebLogic、JBOSS),可用P2P协议将统计信息和其它P2P协议要素发送到J2EE万维网服务适配器(“J2EE适配器”)。根据J2EE连接器体系结构规范,JSR112V1.5,J2EE适配器是“连接”和“资源适配器”的组合。J2EE适配器可在万维网服务群集中将P2P“入口”服务器自动登记为传统企业信息系统(“EIS”)(例如IBMCICS交易系统、SAP/R3应用)。这种体系结构允许关键服务特征,例如(a)P2P服务器之间的负载平衡,(b)冗余,(c)数据库同步,(d)XML万维网服务消息中的专有EIS消息转化,以及(e)用于每个附加支持的P2P协议的多个EIS适配器。
终端用户装置执行(在130)身份自供应。如上所述,术语“自供应”指的是终端用户装置作为客户机-服务器的能力。“身份自供应”过程通过终端用户装置提供终端用户的身份。身份可以是如用户或WSP所要求的简单的或增强的(即,复杂的)形式。WSP可提供简单的或增强的模板/表格用于输入身份数据。在一个实施例中,简单表格可作为默认表格嵌入或自动下载到终端用户装置中,如果终端用户需要,他可查询并下载增强表格。图4(a)说明身份表格作为终端用户装置的一部分被嵌入的情况。合作搜索者在身份表格中输入数据。将身份公布到P2P网络并且返回公布应答。图4(b)说明终端用户装置查询WSP以寻找身份表格的备选实例。将万维网服务请求发送到WSP并且WSP将身份表格返回给终端用户装置。终端用户将数据输入到身份表格。终端用户装置将身份公布到P2P网络并返回公布应答。
出于安全考虑,对照例如WSP拥有的参考模板检查终端用户完成的表格。这避免了错误格式文件并提供更简化和更安全的搜索过程,这些将在下面更详细地描述。另外,可以理解的是,在P2P网络中公布的信息的类型和内容完全取决于终端用户。因此,终端用户可选择不填充身份表格中所有可能的字段。
现在参照图5(a),示出了结合本发明的一个实施例的第一示范搜索过程。服务提供者505负责应请求将“服务描述符”递交到要求特定搜索的装置。用户装置510期望从服务提供者505处获得访问搜索信息和相关搜索过程的方法。因此,用户装置510请求所谓的“万维网服务描述符文件”(下文称“WSDL文件”)。
如果服务提供者505具有符合用户装置510请求的WSDL文件515,则将WSDL文件515传送到用户装置510。基于所传送的WSDL文件515,第一SOAP客户机520通过在查询525中发送协议要素<GetCity>能发起搜索过程。查询525可以不包含任何城市名。在被查询的装置535A中的第一SOAP服务器530接收协议要素<GetCity>。第二SOAP客户机540利用协议要素<CityResponse>响应,这包括在被查询的装置535A中登记的城市名。前面所述的查询525可以在诸如535B和535C的其它装置上执行。
现在参照图5(b),示出了依照本发明的一个实施例的第二示范搜索过程。图5(b)的过程类似于图5(a)的过程,不同之处在于查询525中的请求信息不是城市而是实时信息,例如特定装置的“业务可用性”或“空闲可用性”。
根据不可预测/非确定性方法,被查询的装置535A能够以实时方式改变发送的协议要素。可通过任何方式确定“装置可用性”确定,例如本地用户操作或实时并自动决定。
现在参照图5(c),示出了依照本发明的一个实施例的第三示范搜索过程。图5(c)的过程类似于图5(b)的过程,不同之处在于图5(c)适用于未知终端用户(例如,这里是呼叫中心代理)535A。在这种情况下,所传送的协议要素实时地查询“值班”的呼叫代理535A是否能响应呼叫请求。在该实例中,呼叫代理535A可响应它在“值班”并且具有登记在其上的某种“技能”。但是,可能不是终端用户本身发送的所传送的协议要素可由其它系统或过程重复。
图6(a)说明使用XML的示范性简单个人身份表格。表格存储(a)名,(b)姓,(c)电子邮件,(d)国籍,以及(e)性别。文件存储在(a)终端用户装置的P2P共享目录中或(b)“存储”在P2P网络本身上的分布散列表中,使得其他用户能基于身份表格中提出的标准来搜索终端用户“John Smith”。
图6(b)说明用于相同用户John Smith的示范性业务身份表格,如图6(b)中所示。业务身份表格包含用于业务类型(即,汽车修理店)、业务的位置以及登记或执照号码的条目。业务身份表格可存储在与个人身份表格相同的P2P目录中。
图6(c)说明示范性增强身份表格。如图所示,增强身份提供了比图5(a)的简单身份表格更多的信息。可以理解的是,示出图5(a)-5(c)的身份表格仅仅用于说明性目的,可使用如本领域的技术人员设想的其它表格类型和要素。
现在再参照图1,终端用户装置从合作组合中搜索(在135)潜在合作者。现在描述简单搜索过程。可以意识到,示出简单搜索过程仅仅用于说明性目的,本领域的技术人员可设想其它搜索过程。
简单“搜索过程”可包括下面两个基本阶段中的至少一个(1)P2P文件名搜索;(2)P2P文件分析。在一个实施例中,可使用开放式协议和国际IT标准执行搜索过程,通过以下步骤a)从UDDI商业服务提供者处得到万维网服务(WSDL文件/服务描述符);b)根据WSDL描述符在装置上实现万维网服务;以及c)使用从上面步骤b可得到的万维网服务描述符来分析(使用SOAP协议和XML语法)每一个返回的文件。
P2P文件搜索阶段涉及使用文件名来缩减身份文件。身份文件也可被称为“用户简档”。如图5(a)所示,简单个人身份表格的文件名包括终端用户的名和姓。因此,通过搜索文件<John.Smith.xml>可执行对特定的名为“John.Smith”的终端用户的搜索。如本领域的技术人员设想的,可搜索文件名中的其它信息(例如,<Car.Mechanics.Repair.xml>)。
现在参照图7,假设合作搜索者John想在P2P网络中搜索名为“Marie Joe”的人。装置可在适当的P2P网络中发起搜索以查找所有以<Marie.Joe.xml>发布和定义的文件。
每个被查询的P2P服务器可用一个或多个登记的<Marie.Joe.xml>文件进行响应,包括每个文件各自的IP地址。可以理解,来自终端用户装置用文件的响应指示P2P网络中的终端用户装置在线。
如果返回不止一个文件,则终端用户必须手动检查每个潜在搭档,这会变成冗长和耗时的过程。因此,进一步执行P2P文件分析可能是有利的。在上面的实例中,合作搜索者可输入附加搜索标准,使得<Marie.Joe.xml>文件的数量能缩减到一个。附加搜索标准(即,“屏蔽”)的类型可被限制在WSP或第三方提供给合作搜索者的搜索表格。可使用任何数量的屏蔽,包括但不限于,电子邮件地址、城市、国籍、性别、街道、业务、专长、生日、办公地址等。
上文列举的只是说明性的而非穷举性的。屏蔽的数量和类型主要取决于WSP。身份表格中提供的输入字段通常适合特定的WSP搜索操作。例如,如果身份表格中提供了搜索字段“Business”,则可提供作为可能分析标准的查询SOAP动作<GetBusiness>。输入屏蔽可以是标准XML结构文件并且可使用万维网服务协议和SOAP附件标准将其下载(或分发)到终端用户装置。
再参照图1,终端用户装置使用在HTTP传输协议之上的SOAP/XML标准协议获得(在140)关于每个搜索结果(在上文实例中是“Marie.Joe.xml”文件)的服务或身份可用性。这通常允许终端用户装置穿过网络地址转换器(“NAT”)和公司的防火墙来查询文件,因为HTTP大多用在因特网端口80上并且只要因特网访问不被完全中断就不会中断。可以理解,如本领域的技术人员熟知的,可使用许多其它协议(或使用与HTTP结合的其它协议的机制,例如UDP)。这些中的许多是公众可得到的,并且一些允许通过防火墙交换信息的优选方式的定义。为避免下载P2P网络上的每一个<Marie.Joe.xml>文件并执行文件的离线分析,终端用户装置可使用在线远程查询,在线远程查询使用SOAP协议。
终端用户装置使用一个或多个搜索标准缩减(在145)搜索结果的数量。在上面实例中,通过查询/搜索能提炼搜索,例如,<city>列举了潜在合作者。
搜索代理(称为例如NapGear)使用<city>名向在P2P网络中发布<Marie.Joe.xml>文件的所有终端装置执行SOAP动作<GetCity>。假设它们都启动,每个对等装置会使用SOAP响应进行响应,例如<CityResponse>(例如,“New York”)。如果对等装置关闭,在分配的时间过去后会发生超时。
作为SOAP响应的结果(或在没有响应的情况下超时),从每个装置中丢弃具有不合适响应的装置和/或文件,例如,因为“New York”不符合搜索表格中提供的请求的位置(即,“Los Angeles”)。如果附加搜索提炼是必需的,则使用附加搜索标准利用附加万维网服务请求来进一步缩减搜索结果。
一旦终端用户发现一个或多个潜在合作者,可以意识到,终端用户可把这一个或多个潜在合作者添加到该终端用户装置上的目录中。可采用各种方式中任一种实现目录,例如,伙伴列表、聊天列表、用户组等。尽管是可选择的,但是这个步骤允许终端用户搜索已知的潜在合作者而不用执行搜索步骤,如上面更详细描述的。可由P2P网络通知目录关于潜在合作者的可用性以及目录可自动更新潜在合作者的IP地址。
终端用户装置使用各种合作应用中任一种(例如,VoIP、在线游戏应用)发起(在150)合作会话。终端用户装置通常选择并发起特定合作应用并且一个或多个潜在合作者跟着做。在一个实施例中,使用已知的IP地址在直接P2P连接上发起合作应用。例如,终端用户装置可使用IP地址(对于H.323)或电子邮件地址(对于SIP)发起VoIP软件(例如,SJPhone)。可由P2P网络或XML分析过程直接提供潜在合作者的IP地址。当在终端用户装置上开始合作应用时,这个IP地址被用作命令行参数。在备选实施例中,在终端用户装置和潜在合作者之间使用万维网服务可远程发起合作应用。
在游戏应用的情况下,类似的过程适用。搜索标准可以是不同的并且可以不要求了解潜在合作者。用于游戏应用的搜索标准可包含但不限于“优选游戏应用”和“最高得分”。这种标准对于在两个或两个以上已知或未知用户之间参加在线游戏或虚拟竞赛来说是足够的。
终端用户装置离开(在155)热点区或任何其它IP接入点或网络接入,并且从P2P网络中移除公布的文件。如果终端用户装置不能从P2P网络中删除它的身份,则P2P节点在确定的时间周期(即,超时)之后能丢弃用户和他的身份文件。
移动装置本身能成为P2P服务器体系结构的一部分。例如,简单P2P服务器可向“超级对等”P2P服务器报告。这种P2P体系结构提高了网络健壮性并允许更快的搜索。超级对等对本领域的技术人员来说是熟知的并且广泛用于当前P2P网络中。
图8说明依照本发明的一个实施例,简单移动装置如何连接到移动P2P服务器,该服务器又能连接到超级对等P2P服务器和/或P2P网络入口点。在这个实例中,即使两个简单终端用户装置不连接在一起,它们也能够使用发给超级对等体的简单请求来互相发现。通过让简单终端用户装置连接到两个或两个以上的P2P嵌入式服务器,大大提高了网络的冗余性。如图7所示,如果服务器A失效(例如,释放它的无线连接,可通过仍然与超级对等服务器连接的服务器B来到达所连接的全部装置。
应当理解,本发明的前面描述不应局限于“终端用户”或个人装置。例如,也可利用连接到P2P网络的任何各种机器,使得机器能够执行自动搜索。机器能通过(a)手动收集来自操作员的信息,或(b)实时自动收集信息(例如,所捕获的类似温度或压力的测量单位)来执行搜索。
上文公开的特定实施例仅仅是说明性的,对于得到本文论述的益处的本领域技术人员来说,显而易见的是,可以采用不同但等效的方式来修改并实践本发明。而且,除了下面权利要求中描述的之外,没有限制要用于本文所示的结构或设计的细节。因此,显而易见的是,可对上面公开的特定实施例进行改变或修改,所有这些变化都认为在本发明的范围和精神之内。相应地,在以下的权利要求中阐述了本文的保护范围。
权利要求
1.一种用于在对等(P2P)网络中发现潜在装置的系统,包括搜索装置;以及在操作上连接到所述P2P网络的多个潜在装置;其中所述多个潜在装置中的每一个与一个或多个身份文件相关联,所述身份文件中的每一个包括多个可搜索元素;其中所述多个潜在终端用户装置中的一个或多个在所述P2P网络上公布它们的一个或多个身份文件;其中所述搜索装置基于所述多个潜在装置的一个或多个身份文件来搜索所述P2P网络以发现所述多个潜在装置中的一个或多个;以及其中所述搜索装置发起与所述一个或多个潜在装置的合作会话。
2.如权利要求1所述的系统,其特征在于,所述搜索装置是搜索者终端用户装置以及所述多个潜在装置是多个潜在终端用户装置。
3.如权利要求2所述的系统,其特征在于,搜索者终端用户装置和所述多个潜在终端用户装置中的每一个包括个人数字助理、膝上型计算机和蜂窝电话中的至少一种。
4.如权利要求1所述的系统,其特征在于,所述多个潜在装置的一个或多个身份文件中的每一个是响应所述搜索装置向万维网服务提供者发送万维网服务请求而从所述万维网服务提供者处下载的。
5.如权利要求1所述的系统,其特征在于,所述搜索者终端用户装置登录万维网服务提供者,以便在超文本传输协议(HTTP)和网际协议(IP)网络上使用万维网服务和简单对象访问协议(SOAP)获得对所述P2P网络的访问。
6.如权利要求1所述的系统,其特征在于,所述搜索装置是连接到IP网络的机器。
7.如权利要求1所述的系统,其特征在于,所述P2P网络包括Kazaa、OpenNAP、Gnutella、FastTrack、LimeWire、eMule/Kademlia和Napster中的至少一种。
8.如权利要求1所述的系统,其特征在于,所述多个潜在装置的一个或多个身份文件中的每一个包括可扩展标记语言(XML)文件。
9.如权利要求1所述的系统,其特征在于,所述合作会话独立于所述P2P网络。
10.一种用于搜索装置在对等(P2P)网络中发现潜在合作者的方法,包括发现到所述P2P网络的一个或多个入口点节点;在所述P2P网络中登记搜索装置;在P2P网络中执行身份供应;在所述P2P网络中执行一个或多个搜索;在所述P2P网络中获取关于潜在合作者的一个或多个搜索结果;以及发起应用和服务中的至少一个,以便形成与所述搜索结果中的一个或多个潜在合作者的合作会话。
11.如权利要求10所述的方法,其特征在于,执行身份供应包括执行自供应。
12.如权利要求11所述的方法,其特征在于,执行自供应包括使用源自简档信息的明文xml文件名和散列关键字中的至少一个来自动地自供应。
13.如权利要求10所述的方法,其特征在于,还包括获得用于所述一个或多个搜索结果中的每一个的服务和身份可用性。
14.如权利要求10所述的方法,其特征在于,还包括缩减所述搜索结果。
15.如权利要求14所述的方法,其特征在于,缩减所述搜索结果包括响应万维网服务请求从万维网服务提供者处下载搜索表格,所述搜索表格包括多个搜索字段;填充所述多个搜索字段中的一个或多个;以及基于所述多个搜索字段中的一个或多个来缩减所述一个或多个搜索结果。
16.如权利要求10所述的方法,其特征在于,发现到所述P2P网络的一个或多个入口点节点包括查询运行在万维网服务群集中的万维网服务;响应万维网服务请求,接收来自万维网服务提供者的身份表格,所述身份表格包括多个信息字段;填充所述多个信息字段中的一个或多个;以及在所述P2P网络中公布所述身份表格。
17.一种用于搜索装置在对等(P2P)网络中发现潜在合作者的方法,包括向P2P网络登记;向万维网服务提供者发起万维网服务;使用所述万维网服务从万维网服务提供者处请求在所述P2P网络中可用的P2P服务器;使用所述万维网服务在万维网服务群集中登记所述可用P2P服务器;在所述P2P网络中执行身份自供应;获得搜索所述P2P网络中的潜在合作者的一个或多个搜索结果;获得关于每个搜索结果的服务和身份可用性;缩减搜索结果的数量以产生缩减的结果列表;以及发起与所述缩减的结果列表中的一个或多个潜在合作者的合作会话。
18.如权利要求17所述的方法,其特征在于,向P2P网络登记包括当所述搜索者终端用户装置连接到IP网络时,自动向P2P网络登记。
19.如权利要求17所述的方法,其特征在于,向万维网服务提供者发起万维网服务包括使用HTTP/XML/SOAP协议向万维网服务提供者发起万维网服务。
20.如权利要求17所述的方法,其特征在于,还包括使用UDDI万维网服务登记和业务实体发现所述万维网服务提供者。
21.如权利要求17所述的方法,其特征在于,使用所述万维网服务从所述万维网服务提供者处请求所述P2P网络中可用的P2P服务器包括使用万维网服务将万维网服务请求发送到所述万维网服务提供者,所述万维网服务请求请求可用的P2P服务器的列表。
22.如权利要求21所述的方法,其特征在于,使用万维网服务将万维网服务请求发送到所述万维网服务提供者包括使用万维网服务将WSDL服务描述符文件中定义的万维网服务请求发送到所述万维网服务提供者。
23.如权利要求17所述的方法,其特征在于,在所述P2P网络中执行身份自供应包括响应万维网服务请求,接收来自所述万维网服务提供者的身份表格,所述身份表格包括多个信息字段;填充所述多个信息字段中的一个或多个;以及在所述P2P网络中公布所述身份表格。
24.如权利要求17所述的方法,其特征在于,获得搜索所述P2P网络中的潜在合作者的一个或多个搜索结果包括执行P2P文件名搜索。
25.如权利要求17所述的方法,其特征在于,缩减搜索结果的数量以产生缩减的结果列表包括从所述万维网服务提供者处下载搜索表格以响应万维网服务请求,所述搜索表格包括多个搜索字段;填充所述多个搜索字段中的一个或多个;基于所述多个搜索字段中的一个或多个来缩减所述一个或多个搜索结果;将所述缩减步骤的结果存储到缩减的结果列表中。
26.如权利要求17所述的方法,其特征在于,发起与所述缩减的结果列表中的一个或多个潜在合作者的合作会话包括独立于所述P2P网络发起与所述缩减的结果列表中的一个或多个潜在合作者的合作会话。
27.一种机器可读介质,具有存储在其上的指令,这些指令由处理器执行以执行用于搜索装置发现对等(P2P)网络上的潜在合作者的方法,包括发现到所述P2P网络的一个或多个入口点节点;在所述P2P网络中登记搜索装置;在P2P网络中执行身份供应;在所述P2P网络中执行一个或多个搜索;获得关于所述P2P网络中的潜在合作者的一个或多个搜索结果;以及发起应用和服务中的至少一个,以便形成与所述搜索结果中的一个或多个潜在合作者的合作会话。
28.一种机器可读介质,具有存储在其上的指令,这些指令由处理器执行以执行用于搜索装置发现对等(P2P)网络上的潜在合作者的方法,包括向P2P网络登记;向万维网服务提供者发起万维网服务;使用所述万维网服务从所述万维网服务提供者处请求在所述P2P网络中可用的P2P服务器;使用所述万维网服务在万维网服务群集中登记所述可用的P2P服务器;在所述P2P网络中执行身份自供应;获得搜索所述P2P网络中的潜在合作者的一个或多个搜索结果;获得关于每个搜索结果的服务和身份可用性;缩减搜索结果的数量以产生缩减的结果列表;以及发起与所述缩减的结果列表中的一个或多个潜在合作者的合作会话。
全文摘要
提供了用于在对等(P2P)网络中发现移动合作者的系统和方法。通过唯一的ID在P2P网络中标识每个合作者。通过在P2P网络中公布的身份文件也可标识每个合作者。合作应用可包括涉及在两个或两个以上合作者之间交换信息的各种应用中任一种,例如基于IP的语音传送(VoIP)。可执行动态文件查询以过滤大多与特定对等搭档有关的身份文件。在P2P移动装置之间以及装置和第三方服务提供者之间端到端地使用万维网服务。搜索引擎使用自供应概念用于搜索以及万维网服务查询。终端用户装置使用身份自供应和用于各种用途(例如,个人、游戏或业务)的万维网服务模板在P2P网络中登记他们的个人信息。
文档编号G06F17/30GK1761960SQ200480007406
公开日2006年4月19日 申请日期2004年3月16日 优先权日2003年3月18日
发明者Y·勒奥特, S·古斯 申请人:西门子共同研究公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1