CN101542461A - 用于内容共享系统的虚拟对等 - Google Patents
用于内容共享系统的虚拟对等 Download PDFInfo
- Publication number
- CN101542461A CN101542461A CNA2007800434757A CN200780043475A CN101542461A CN 101542461 A CN101542461 A CN 101542461A CN A2007800434757 A CNA2007800434757 A CN A2007800434757A CN 200780043475 A CN200780043475 A CN 200780043475A CN 101542461 A CN101542461 A CN 101542461A
- Authority
- CN
- China
- Prior art keywords
- virtual peer
- digital asset
- metadata
- agency
- peer
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4541—Directories for service discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
- H04L67/1053—Group management mechanisms with pre-configuration of logical or physical connections with a determined number of other peers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1087—Peer-to-peer [P2P] networks using cross-functional networking aspects
- H04L67/1093—Some peer nodes performing special functions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及到用于对等式(P2P)内容共享系统的虚拟对等。一般而言,虚拟对等是一种逻辑构造,其使得一定数目的虚拟对等成员能够视作P2P内容共享系统中的单一对等节点。在操作中,发起代理创建虚拟对等并且向P2P网络注册虚拟对等。一旦被注册,虚拟对等作为P2P网络中的新的对等节点出现。为提供有效的内容共享,发起代理运行以获取对由虚拟对等成员所共享的一定数目的数字资产的一部分或全部进行说明的元数据、并且将元数据汇集到用于虚拟对等的单一的元数据集合内而且可以缓存由虚拟对等成员共享的全部或一部分数字资产,该单一的元数据集合在本文中被称为元数据目录。
Description
技术领域
本发明涉及对等式(peer-to-peer)(P2P)内容共享系统,且更具体地涉及用于P2P内容共享系统的虚拟对等(virtual peer)。
背景技术
用于共享数字内容和资源的对等式(P2P)网络已获得极大的普及。然而,由于P2P网络中的每个对等节点(peer node)是可以唯一地寻址的,所以当前不可能以对客户端透明的方式用单一请求来对多于一个的设备进行寻址(address)。例如,如果特定用户是多个对等设备的拥有者,所述对等设备诸如个人计算机、移动电话、和个人录像机(PVR),则当前无法通过使用对客户端透明的单一请求来对所有的用户对等设备进行寻址。可使用多址联播(Multi-casting),但其对客户端是不透明的。因而,需要这样的P2P网络体系结构,其使客户端能够以对客户端透明的方式对于与P2P网络相关联的多于一个的设备进行寻址。
发明内容
本发明涉及到用于对等式(P2P)内容共享系统的虚拟对等。一般而言,虚拟对等是一种逻辑构造(logical construct),其使得一定数目的虚拟对等成员能够视作P2P内容共享系统中的单一对等节点。在操作中,通过辨识用于虚拟对等的虚拟对等成员,发起代理(sponsoring agent)创建出虚拟对等,其中虚拟对等成员可以是P2P网络中的其它对等节点、其它虚拟对等、用户设备,等等。该发起代理随后向P2P网络注册该虚拟对等。一旦被注册,虚拟对等视为P2P网络中的新对等节点,其中发起代理作为用于P2P网络中的虚拟对等的通信端点(end-point)而运行。
为提供有效的内容共享,发起代理运行以获取对由虚拟对等成员所共享的一定数目的数字资产(digital asset)的一部分或全部进行说明的元数据、并且将元数据汇集(aggregate)到用于虚拟对等的单一的元数据集合(collection)内,其在本文中被称为元数据目录(metadata catalog)。其后,发起代理可通过使用元数据目录而服务于内容发现(content discovery)请求。发起代理也可缓存(cache)由虚拟对等成员所共享的数字资产的一部分或全部,以便有效地服务于内容请求。
本领域技术人员在结合附图阅读优选实施例的下列详细说明之后将领会到本发明的范畴并且认识到其另外的方面。
附图说明
被合并在本说明书中并且形成说明书的一部分的附图,图解了本发明的若干方面,并且与说明一起用来解释本发明的原理。
图1图解了根据本发明一个实施例,一种形成了包括虚拟对等的对等式(P2P)网络的系统;
图2图解了根据本发明一个实施例,图1的发起代理创建并注册虚拟对等的操作;
图3A至3D图解了根据本发明的各个实施例,在P2P通信期间图1的发起代理的操作;
图4图解了根据本发明一个实施例,图1的虚拟对等的示例性实施例;
图5图解了根据本发明一个实施例,一种托管(host)多个虚拟对等的发起代理的示例性实施例;
图6图解了根据本发明一个实施例,包括虚拟对等的P2P内容共享系统;
图7图解了根据本发明一个实施例的一种P2P网络,在其中基于元数据而形成虚拟对等;
图8图解了根据本发明一个实施例的一种示例性本体(ontology),其可以被用来形成虚拟对等;
图9图解了根据本发明一个实施例,图7的发起代理基于元数据形成虚拟对等的操作;
图10A至10B图解了根据本发明一个实施例的示例性元数据;
图11图解了根据本发明另一个实施例,图7的发起代理基于元数据形成虚拟对等的操作;
图12图解了根据本发明一个实施例的一种系统,其包括虚拟对等目录服务(virtual peer directory service;VPDS)用于基于元数据形成虚拟对等;
图13图解了根据本发明一个实施例,图12的VPDS的操作;
图14图解了根据本发明另一个实施例,图12的VPDS的操作;
图15图解了根据本发明一个实施例的一种系统,其包括虚拟对等管理服务(virtual peer management service;VPMS)用于基于元数据形成和管理虚拟对等;
图16图解了根据本发明一个实施例的图15的VPMS的操作;
图17图解了发起节点的示例性实施例;
图18图解了根据本发明一个实施例的托管图12至图14的VPDS的中央服务器的示例性实施例;
图19图解了根据本发明一个实施例的托管图15至图16的VPMS的中央服务器的示例性实施例。。
具体实施方式
下面提出的实施例代表了用以使本领域技术人员能实践本发明的必要信息并且例解了实践本发明的最佳模式。当考虑附图而阅读下列说明时,本领域技术人员将理解到本发明的构思并且将认识到在本文中没有得到具体阐明的这些构思的应用。应理解到,这些构思和应用属于本公开和所附权利要求书的范畴内。
图1图解了根据本发明一个实施例的形成了包括虚拟对等12的对等式(P2P)网络的系统10。一般而言,系统10包括虚拟对等12和一定数目的对等节点14至18,它们通过网络20形成了P2P网络。在此实施例中,虚拟对等12包括发起节点22和一定数目的虚拟对等(VP)成员24至28。发起节点22可以是例如能够访问网络20的服务器、个人计算机、移动电话、个人数字助理(PDA)、与个人录像机类似的个人录像机(PVR),等等。发起节点22可以是或可以不是P2P网络中的对等节点。另外,发起节点22可以是或可以不是虚拟对等12的成员。发起节点22包括发起代理30。发起代理30优选地以软件实现。然而,本发明不限于此。在操作中,发起代理30创建虚拟对等12,向P2P网络注册虚拟对等12,并且发起代理作为用于P2P网络中的虚拟对等12的通信端点而运行,如下面更详细说明的。
VP成员24至28可以是P2P网络中的其它对等节点;其它虚拟对等;独立的用户设备,诸如,举例而言,个人计算机、移动电话、PDA、PVR;网路服务器;代理服务器;等等。应注意到,如果例如VP成员24是P2P网络中的对等节点或其它虚拟对等,则VP成员24可以是虚拟对等12的成员并且可经由P2P网络独立地寻址。与之形成对比的是,VP成员24可以可替代地是独立的用户设备,其在P2P网络中是不可发现的。也应注意到VP成员24至28也可以在本文中被称为潜在的VP成员24至28。特别是在已经向虚拟对等12注册了VP成员24至28之前并且它们因而尚不是实际的VP成员24至28的情况下尤其如此。
发起代理30维持着与VP成员24至28的通信会话。任选地,为了提供可靠的通信,可以对发起代理30与VP成员24至28之间的、和/或发起代理30与P2P网络之间的通信会话进行加密(encrypt)。尽管为清楚起见VP成员24至28被图解为具有与发起节点22的直接连接,本发明不限于此。一般而言,VP成员24至28可经由任何类型的本地或网络连接而被连接到发起节点22和由此的发起代理30。例如,VP成员24至28可经由诸如有线连接或本地无线连接之类的直接通信链路而被连接到发起节点22。例如,本地无线连接可以是根据IEEE 802.11标准、蓝牙标准等的组中之一的连接。可替代地,VP成员24至28可以经由在网络20上所形成P2P网络或者另一P2P网络中的一个或多个节点直接地、或者间接地被连接到发起节点22。正如另一可替代方案,VP成员24至28可以通过使用了面向连接的协议(connection oriented protocol)或无连接协议(connectionless protocol)的因特网、广域网(WAN)、局域网(LAN)、蜂窝式网络(cellular network)、或它们的任何组合连接到发起节点22,该面向连接的协议诸如传输控制协议(TCP)且该无连接协议诸如用户数据报协议(UDP)。此外,可以在VP成员24至28中的每一个与发起节点22之间使用多个连接。
作为实例,如果VP成员24是P2P网络中的另一对等节点或另一虚拟对等,则发起代理30可通过使用面向连接的协议或者无连接协议而维持与使用P2P网络(即形成在网络20、因特网等等上的单独P2P网络)的VP成员24的通信会话。可替代地,即便VP成员24是P2P网络中的另一对等节点或另一虚拟对等,发起代理30可通过使用诸如有线连接之类的直接通信链路或本地无线连接而维持与VP成员24的通信会话。作为另一实例,如果VP成员24是独立的用户设备,发起代理30例如可通过使用有线连接、本地无线连接或因特网上的连接而维持与发起代理30的通信会话。
对等节点14至18可以例如是能够访问网络20的个人计算机、移动电话、PDA、PVR等等,正如本领域普通技术人员阅读此说明书时显而易见的那些。网络20可以是诸如因特网之类的公共分布式网络(public distributed network)。然而,本发明不限于此。网络20可以是任何类型的广域网(WAN)、局域网(LAN)、个人局域网(PAN)、蜂窝式网络等等或它们的任何组合并且可包括有线和/或无线的部件。
图2是图解了发起代理30创建虚拟对等12并且向P2P网络注册虚拟对等12的操作的流程图。发起代理30首先创建了虚拟对等12(步骤100)。更具体地,在一个实施例中,当有来自一个或多个潜在的VP成员24至28的请求时发起代理30创建虚拟对等。在一个实施例中,为特定拥有者或拥有者的群组(group of owner)创建虚拟对等12。因而,例如,潜在的VP成员24可向发起代理30注册并且可靠地辨识出潜在VP成员24的拥有者。基于VP成员24的拥有者的身份(identity),发起代理30可以要么将潜在的VP成员24与现有的虚拟对等相关联,要么创建新的虚拟对等。在此实例中,发起代理30创建新的虚拟对等,即虚拟对等12。随后向虚拟对等12注册潜在的VP成员24并且该潜在的VP成员24因此是虚拟对等的VP成员。随后将其它潜在的VP成员26至28向发起代理30进行注册。在此实例中,虚拟对等成员24的拥有者也是潜在的VP成员26至28的拥有者。因而,发起代理30将潜在的VP成员26至28添加为虚拟对等12的VP成员。此时,完成了虚拟对等12的创建,从而使得VP成员24至28是虚拟对等12的成员。
在另一实施例中,通过询问(query)诸如P2P网络中的对等节点14至18之类的对等节点、询问被直接耦合到发起节点22或者处于发起节点22的本地无线覆盖区域内的用户设备、或者询问这两者,发起代理30可主动地创建虚拟对等12,以便辨识出VP成员24至28。作为实例,以类似于上面所讨论的方式,询问可包括:辨识出虚拟对等12的拥有者、或者与虚拟对等12相关联的拥有者群组的信息。同样还被虚拟对等12的拥有者、或者与虚拟对等12相关联的用户群组之一所拥有的对等节点、虚拟对等节点、或独立用户设备可响应于该询问,由此表示它们希望加入虚拟对等12。基于对询问的响应,VP成员24至28被辨识出并且向虚拟对等12进行注册。此时,创建了虚拟对等12。
应注意到,在创建过程期间,发起代理30可操作以验证VP成员24至28的拥有者的身份,用以防止恶意用户(malicious user)的对等节点、虚拟对等节点、或独立用户设备以欺诈方式成为虚拟对等12的成员。发起代理30可通过使用例如口令而执行验证过程。可替代地,正如本领域普通技术人员在阅读此说明书时显而易见的,发起代理30可使用第三方验证服务。
虚拟对等12的成员可以是动态的,从而可以将新的VP成员添加到虚拟对等12和/或可以移除现有的VP成员。例如,如果VP成员24至28是经由本地无线通信与发起代理30建立连接的移动设备,虚拟对等12的成员资格(membership)可随着VP成员24至28进入和离开发起节点22的本地无线覆盖区域而动态地改变。以类似的方式,虚拟对等12的成员资格可随着VP成员24至28连接至发起代理30或者与发起代理30断开连接而改变。
一旦创建了虚拟对等12,发起代理30向P2P网络注册虚拟对等12(步骤102)。在注册期间,发起代理30接收或生成用于P2P网络中的虚拟对等12的对等标识符(ID)。应注意的是,对于某些类型的P2P网络,发起代理30例如通过使用发起节点22的媒体存取控制(MAC)地址可生成用于虚拟对等12的全局性唯一的对等ID。一旦被生成,则发起代理30向P2P网络中的一个或多个节点通告对等ID。
一旦向P2P网络进行了注册,虚拟对等12成为P2P网络中的新对等。应注意的是,如果发起节点22也是P2P网络中的对等节点,则发起节点22和虚拟对等12具有不同的对等ID。因而,可通过使用发起节点22的对等ID而在P2P网络中寻址发起节点22,而可经由被发起节点22托管的发起代理30通过使用虚拟对等12的对等ID而在P2P网络中寻址虚拟对等12。通过使用虚拟对等ID,发起代理30作为用于P2P网络中的虚拟对等12的端点而操作。
发起代理30向P2P网络注册虚拟对等12的方式取决于P2P网络的特定实施方式。例如,在一个实施例中,发起代理30向用于P2P网络的集中式或分布式注册代理(registration agent)注册虚拟对等12。可能仅需要发起代理30仅在虚拟对等12变为激活态(active)时向P2P网络注册虚拟对等12一次,或者在虚拟对等12变为激活态时每次均进行此注册。虚拟对等12可以在下述情况是激活态的:当VP成员24至28中的一个或多个被连接到发起代理30时,这在本文中被称为在线(online);当所有VP成员24至28在线时;或者当满足一个或多个预定规则时,其中这些规则可考虑在线的VP成员24至28的百分比、吞吐量(throughput)、等待时间(latency)等等。可替代地,在发起节点22被连接到网络20的任何时候,即便当没有VP成员24至28在线时,虚拟对等12可以是激活态的。这在如下情况中可以是有益的:发起节点22缓存了由VP成员24至28托管的内容、或数字资产,并且从而因此即便在VP成员离线时其能够服务于对于由VP成员24至28所托管内容的请求。
另外,发起代理30可能需要向P2P网络提供定期的状况或存在状态(presence)更新,并且提供各种信息,诸如描述由虚拟对等12所托管的内容或数字资产的元数据、虚拟对等12的性能(capability)、用户信息等。由虚拟对等12托管的内容是由VP成员24至28托管的内容。因而,发起代理30可与VP成员24至28通信以获取所需元数据并且向P2P网络提供元数据。同样地,发起代理30可从VP成员24至28中的一个或多个获取用户信息。对于虚拟对等12的性能,P2P网络可基于包括了P2P网络中的虚拟对等12的对等节点的性能而调节其网络拓扑结构(topology)。因而,在一个实施例中,发起代理30可将发起节点22的性能作为虚拟节点12的性能提供给P2P网络。然而,如果例如发起节点22是高速服务器,则将发起节点22的性能作为虚拟对等12的性能向P2P网络报告,可引起将虚拟对等12选择为FastTrack或类似P2P网络中的特级(super)或超级(ultra)对等节点。这可能是合意的或不合意的。这样,发起代理30可以对发起节点22的被认知的性能和/或被报告的性能进行调节,以避免被选定为P2P网络中的特级或超级对等。
发起代理30也可通过建立与由其它发起节点所托管的其它发起代理的通信而提供故障转移(failover)和负载均衡(load balancing)。因而,如果例如发起节点22因任何原因而失效,则其它发起代理之一可作为虚拟对等12的发起代理而进行接管。如果发起节点22返回到正常操作,发起代理30可恢复作为虚拟对等12的发起代理的操作。
应注意到,在一定情况下,虚拟对等12不具有VP成员。例如,发起代理30可在VP成员24至28之前向P2P网络注册虚拟对等12,而不是在辨识出VP成员24至28之后向P2P网络注册虚拟对等12。作为另一实例,因为在创建之后的某时,虚拟对等12中的成员资格可变动并且VP成员24至28可离线,则可能在虚拟对等12中没有激活态的成员。在此情况下,基于所缓存的信息或者通过提供“不可用的”响应,发起代理30可继续代表虚拟对等12响应请求。
图3A至3D图解了根据本发明的各种实施例的发起代理30实现与虚拟对等的P2P通信的操作。在图3A中,对等节点(在此实例中为对等节点14)向虚拟对等12的发起代理30提出请求(步骤200)。当接收到该请求时,发起代理30处理此请求(步骤202)。更具体地,如果对P2P网络上的通信进行了加密,则发起代理30可对该请求进行解密(decrypt)。另外,发起代理30可应用一个或多个安全规则以执行过滤过程。例如,发起代理30可维持白名单(whitelist)、黑名单或它们二者,该白名单辨识出一定数目的来自其的请求受允许的对等节点,该黑名单辨识出一定数目的来自其的请求不受允许的对等节点。其它类型的安全规则在本领域的普通技术人员阅读此说明书时是显而易见的。
在此实施例中,发起代理30也可处理请求以便辨识出用以服务于请求的VP成员24至28之一,其在此实例中是VP成员24。例如,如果请求是对于诸如特定的视频之类的特定的数字资产的,则发起代理30可通过例如询问VP成员24至28而辨识出托管该视频的VP成员24至28中的一个或多个,并且随后基于例如VP成员24至28的连接速度、负载状况等等而选择VP成员24至28之一以服务于该请求。发起代理30也可在将请求传送到VP成员24至28中的一个或多个以前对请求进行加密。
发起代理30随后将经过处理的请求传递到VP成员24(步骤204)。VP成员24发送响应至包括所请求数字资产的发起代理30(步骤206)。发起代理30随后生成将要被传递到对等节点14的响应(步骤208)。更具体地,发起代理30可执行加密和/或解密功能。另外,发起代理30可处理响应从而使得其由虚拟对等12进行数字签名(digitally sign)。发起代理30随后将该响应传递到对等节点14(步骤210)。
在可替代实施例中,发起代理30将请求广播给所有VP成员24至28,而不是辨识出用于服务于该请求的VP成员24至28之一。托管着所请求内容的VP成员24至28可随后作出响应。
作为另一可替代方案,如果例如请求是对于特定的数字资产的并且VP成员24至28中的多于一个成员托管着特定数字资产,则发起代理30可请求来自于托管着特定数字资产的VP成员24至28中的每一个的特定数字资产的不同部分(different segment),从而使得数字资产的不同部分被同时地传递到发起节点22。通过这样,数字资产可以被迅速地传递到发起节点22而同时减少了在VP成员24至28处的负载状况。此外,如果从多个VP成员24至28接收到所请求数字资产的部分,发起代理30可在将所请求数字资产传递到对等节点14之前组合各部分以提供所请求的数字资产。可替代地,可以顺序地或同时地向对等节点14提供部分,其中对等节点14此后将部分组合起来以提供所请求的数字资产。
尽管图3A注重于向虚拟对等12提供的请求以及来自虚拟对等12的响应,任何引入的或引出的讯息可以被类似地处理。更具体地,来自VP成员24的引出讯息可首先被提供给发起代理30。发起代理30随后可对引出讯息进行打包(package)以及进行数字签名,并且将该引出讯息转发(forward)到P2P网络中的适当的对等节点。
图3B图解了根据本发明的第二实施例的发起代理30的操作。通常,在此实施例中,发起节点30操作以在对等节点14与VP成员24之间实现旁路连接(by-pass connection)。首先,发起代理30代表虚拟对等12接收来自对等节点14的请求(步骤300)。发起代理30随后处理该请求(步骤302)。在一个实施例中,发起代理30被配置成或实现成使得为所有请求建立旁路连接。然而,在另一实施例中,发起代理30使用一个或多个规则以确定是否将要建立旁路连接。规则可以是可适用于所有VP成员24至28的一般规则或可以是成员特有规则(member specific rule)。作为实例,发起代理30可具有一般规则,也就是将要通过实现旁路连接而处理对于具有大于预定阈值的文件尺寸的数字资产的请求。补充地或可替代地,规则可能考虑判别标准(criteria),诸如VP成员24至28的性能、所请求数字资产的类型、对等节点14的对等ID、对等节点14的拥有者,等等。众多额外的或可替代的判别标准是本领域的普通技术人员阅读此说明书时显而易见的。
在此实例中,将要建立一种旁路连接。这样,发起代理30辨识出服务于请求的VP成员。例如通过询问VP成员24至28以辨识出能够服务于请求的VP成员24至28中的一个或多个,发起代理30可辨识出服务于请求的VP成员。发起代理30随后基于例如负载状况、等待时间等等而选择VP成员24至28之一以服务于请求。在此实例中,所选择的VP成员是VP成员24。
接下来,发起代理30发送重定向(redirect)的讯息至对等节点14(步骤304)。一般地,重定向讯息包括使得对等节点14能建立到VP成员24的直接P2P连接的充分信息。例如,重定向讯息可包括VP成员24的对等ID或统一资源定位符(URL),并且可选地包括认证证书(credential),诸如:使得对等节点14能连接到VP成员24的口令或令牌(token)。基于重定位讯息,对等节点14发送请求到VP成员24(步骤306)。作为响应,VP成员24将所请求的数字资产经由直接P2P连接传递到对等节点14,由此对发起代理30进行旁路(by-pass)(步骤308)。
在前进之前,应注意到,在可替代实施例中,如果超过一个VP成员24至28能够服务于请求,则发起代理30可选择它们中的超过一个或所有以同时服务于请求。更具体地,如果VP成员24至28中的两个能够服务于请求,则发起代理30可选择两个VP成员之一以服务于所请求数字资产的第一部分并且选择两个VP成员中的另一个以服务于所请求数字资产的其余部分。对等节点14随后可被重定向到该两个VP成员从而使得数字资产的两个部分同时从该两个VP成员得到服务。
作为另一可替代方案,发起代理30可将对等节点14重定向到所有VP成员24至28,而不是辨识出该请求所重定向到的VP成员24至28中的一个或多个。作为响应,对等节点14可将请求多址联播到VP成员24至28,或逐步跟踪(step through)VP成员24至28直至托管着所请求内容的VP成员被辨识出来。
尽管图3B注重于向虚拟对等12提供的请求以及来自虚拟对等12的响应,任何引入的或引出的讯息可以被类似地处理。更具体地,来自VP成员24的引出讯息可首先被提供给发起代理30。发起代理30可随后发送重定向讯息,其引导VP成员24以形成与对等节点14的直接P2P连接。
图3C图解了根据本发明的第三实施例的发起代理30的操作。通常,在此实施例中,发起节点30操作以引导VP成员24来直接地响应于对等节点14,由此实现在对等节点14与VP成员24之间的旁路连接。首先,发起代理30代表虚拟对等12接收来自对等节点14的请求(步骤400)。发起代理30随后处理该请求(步骤402)。在一个实施例中,发起代理30被配置成或实现成使得为所有请求建立旁路连接。然而,在另一实施例中,发起代理30使用一个或多个规则以确定是否将要建立旁路连接。如上面所讨论的,规则可以是可适用于所有VP成员24至28的一般规则或可以是成员特有规则。规则可以考虑判别标准,诸如所请求数字资产的文件尺寸、VP成员24至28的性能、所请求数字资产的类型、对等节点14的对等ID、对等节点14的拥有者,等等。众多额外的或可替代的判别标准是本领域的普通技术人员阅读此说明书时显而易见的。
在此实例中,将要建立旁路连接。这样,发起代理30辨识出服务于请求的VP成员。例如通过询问VP成员24至28以辨识出能够服务于请求的VP成员24至28中的一个或多个,发起代理30可辨识出服务于请求的VP成员,并且随后选择VP成员24至28之一以服务于请求。在此实例中,所选择的VP成员是VP成员24。
接下来,发起代理30发送包括重定向信息的请求到对等节点24(步骤404)。通常,重定向信息包括使得VP成员24能建立到对等节点14的直接P2P连接的充分信息。例如,重定向讯息可包括对等节点14的对等ID或URL,并且可选地包括认证证书,诸如:使得VP成员24能连接到对等节点14的口令或令牌。基于该请求,VP成员24随后建立与对等节点14的连接并且发送响应到对等节点14(步骤406)。
可替代地,如果超过一个VP成员24至28能够服务于请求,随后发起代理30可选择它们中的超过一个或所有以同时服务于请求。更具体地,如果VP成员24至28中的两个能够服务于请求,则发起代理30可选择两个VP成员之一以服务于所请求数字资产的第一部分并且选择两个VP成员中的另一个以服务于所请求数字资产的其余部分。发起代30随后可指令该两个VP成员建立与对等节点14的直接P2P连接,从而使得数字资产的两个部分同时用于对等节点14。作为可替代方案,发起代理30可将请求广播到所有VP成员24至28。托管着所请求内容的VP成员24至28中的一个或多个随后可响应于对等节点14。应注意到,托管着所请求内容的VP成员24至28可协同进行所请求内容的传递,从而使得VP成员24至28中的仅一个将所请求的内容传递到发起节点22、或者多个VP成员24至28各自将所请求内容的一个部分传递到发起节点22。
此外,尽管图3C注重于向虚拟对等12提供的请求以及来自虚拟对等12的响应,任何引入的或引出的讯息可以被类似地处理。更具体地,来自VP成员24的引出讯息可首先被提供给发起代理30。发起代理30可随后指令VP成员24以形成与对等节点14的直接P2P连接。
图3D图解了根据本发明的第四实施例的发起代理30的操作。通常,此实施例类似于图3C中的实施例。然而,在此实施例中,VP成员24在直接响应于对等节点14时使用虚拟对等12的认证证书,从而使得没有向对等节点12揭示出VP成员24的身份。对于该对等节点14,就像是通过虚拟对等12而非VP成员24提供响应。
更具体地,在此实例中,例如在向虚拟对等12注册VP成员24至28期间,发起代理30给VP成员24至28提供虚拟对等12的认证证书(步骤500)。可替代地,虚拟对等认证证书可按需被提供给VP成员24。虚拟对等12的认证证书可包括VP成员24代表虚拟对等12发送不拒绝(non-repudiated)讯息到P2P网络所需的所有信息。认证证书可包括虚拟对等12的对等ID,诸如公用和私用密钥信息之类的加密/解密信息,代表虚拟对等12对讯息进行数字签名所需的信息,等等。
在某些时间点处,发起代理30代表虚拟对等12接收来自对等节点14的请求(步骤502)。发起代理30随后处理该请求(步骤504)。在一个实施例中,发起代理30被配置成或实现成使得为所有请求建立旁路连接。然而,在另一实施例中,发起代理30使用一个或多个规则以确定是否将要建立旁路连接。如上面所讨论的,规则可以是可适用于所有VP成员24至28的一般规则或可以是成员特有规则。规则可以考虑判别标准,诸如所请求数字资产的文件尺寸、VP成员24至28的性能、所请求数字资产的类型、对等节点14的对等ID、对等节点14的拥有者,等等。应注意到,可完全地通过发起代理30、或者由发起代理30与VP成员24至28合作地执行规则。此外,发起代理30可执行第一套规则并且VP成员24至28可执行另外若干套规则,其中发起代理30的规则优先于VP成员24至28的规则。众多额外的或可替代的判别标准是本领域的普通技术人员阅读此说明书时显而易见的。
在此实例中,将要建立旁路连接。这样,发起代理30辨识出服务于请求的VP成员。例如通过询问VP成员24至28以辨识出能够服务于请求的VP成员24至28中的一个或多个,发起代理30可辨识出服务于请求的VP成员。发起代理30随后选择VP成员24至28之一来服务于请求。在此实例中,所选择的VP成员是VP成员24。
接下来,发起代理30发送包括重定向信息的请求到对等节点24(步骤506)。通常,重定向信息包括使得VP成员24能建立到对等节点14的直接P2P连接的充分信息。例如,重定向讯息可包括VP成员24的对等ID或URL,并且可选地包括认证证书,诸如:使得VP成员24能连接到对等节点14的口令或令牌。另外,作为一种可替代方案,VP认证证书可与请求和重定向信息一起被提供给VP成员24。随后,使用虚拟对等12的认证证书,VP成员24建立与对等节点14的连接并且发送响应到对等节点14(步骤508)。此外,通过使用虚拟对等12的认证证书,VP成员24的身份不被揭示。对于该对等节点14,就像是通过虚拟对等12而非VP成员24提供响应。
作为可替代方案,发起代理30可将请求和重定向信息广播到所有VP成员24至28。托管着所请求内容的VP成员24至28之一随后可通过使用VP认证证书响应于对等节点14。
此外,尽管图3D注重于向虚拟对等12提供的请求以及来自虚拟对等12的响应,任何引入的或引出的讯息可以被类似地处理。更具体地,使用虚拟对等12的认证证书,VP成员24可能以用于保护VP成员24身份的这样一种方式发送引出讯息至对等节点14。
图4是虚拟对等12的示例性实施例。在此实例中,虚拟对等12包括嵌套式(nested)虚拟对等。更具体地,发起代理30创建并且维持虚拟对等12,其在此实例中是“Doe家族(Doe Family)”虚拟对等。该“Doe家族”虚拟对等12包括发起代理30和VP成员24至28。在此实例中,VP成员24是“John Doe”虚拟对等,VP成员26是“Jane Doe”虚拟对等,并且VP成员28是PVR。转到VP成员24,发起代理32创建并维持“John Doe”虚拟对等,其包括发起代理32和VP成员34与36。在此实例中,VP成员34和36是“JohnDoe”所拥有的膝上型计算机和移动电话。关于VP成员26,发起代理38创建并维持“Jane Doe”虚拟对等,其包括发起代理38和VP成员40。在此实例中,VP成员40是“Jane Doe”所拥有的个人计算机(PC)。使用“Doe家族”虚拟对等12的对等ID,“Doe家族”虚拟对等12的VP成员24至28作为单一对等节点出现。这样,由被限定为“Doe家族”的人员群组所拥有的众多的设备28、34、36和40是可在P2P网络中作为单一对等节点而寻址的。应注意的是,尽管例解了单独的发起代理30、32和38,可使用单一发起代理创建并维持该三个虚拟对等。
图5例解了与本发明相关的附加构思。更具体地,图5例解了这样的事实即:发起代理30可创建并维持多于一个虚拟对等,并且VP成员可以是多于一个虚拟对等的成员。正如所例解的,发起代理30操作以创建并维持虚拟对等12,其在此实例中被称为“John Doe”虚拟对等,以及“Jane Doe”虚拟对等42。“John Doe”虚拟对等12包括VP成员24至28,而“Jane Doe”虚拟对等42包括VP成员28和VP成员44以及46。因而,VP成员28是“John Doe”虚拟对等12以及“Jane Doe”虚拟对等42二者的成员。
至于多虚拟对等中的成员资格,成员资格可基于位置和/或时间而被动态地加以配置。例如,移动设备可以配备有全球定位系统(GPS)接收器等。移动设备可被配置成使得当该移动设备处于或临近第一位置时加入第一虚拟对等,并且当该移动设备处于或临近第二位置时加入第二虚拟对等。作为实例,当移动设备处于或临近用户的家时可加入“家”虚拟对等并且当移动设备处于或临近用户的办公室时可加入“办公室”虚拟对等。
以类似的方式,虚拟对等中的成员资格可以取决于当日时间(time of day)。例如,设备可在上午8:00与下午5:00的钟点之间加入“工作”虚拟对等并且可在下午5:00与晚上10:00的钟点之间加入“家”虚拟对等。
图6根据本发明的另一实施例例解了系统10,其中系统10形成包括虚拟对等12的P2P内容共享系统。系统10基本上是与相对于图1的上述内容相同的。然而,观察虚拟对等12,VP成员24包括共享代理48、数字资产50、和元数据52。共享代理48优选地是以软件实现,但是本发明不限于此。一般而言,共享代理48操作以使得能将由VP成员24所托管的数字资产50的一部分或全部与P2P网络中的对等节点14至18进行共享并且可选地与连接到P2P网络的来客节点(guest node)进行共享。
数字资产50可包括例如图像、视频、超文本传输标记语言(hypertext transfer markup language;HTML)代码、文档、演示文稿(presentation)、电子数据表、图形、音频,等等。元数据52通常包括说明了数字资产50并且可选地说明了VP成员24的信息。应注意的是,尽管元数据52被例解为与数字资产50相分离,某些数字资产文件类型使得元数据能被储存在数字资产文件中。例如,联合图像专家组规范(Joint Photographic Experts Group;JPEG)文件格式使得元数据能被储存在图像文件中,元数据诸如关键字、注释、分辨率、尺寸、相机设置、对采集图像的相机进行说明的信息、采集的日期和时间、诸如全球定位系统(GPS)坐标之类的位置等等。元数据52也包括说明VP成员24的信息。例如,如果VP成员24是移动电话,则元数据52可以可选地包括移动电话的品牌和型号(makeand model);移动电话的硬件和软件性能,诸如处理器、储存设备、和存储器性能;等等。
以类似的方式,VP成员26包括共享代理54、数字资产56、和元数据58;并且VP成员28包括共享代理60、数字资产62、和元数据64。
发起节点22操作以代表虚拟对等12储存元数据目录66以及所缓存的数字资产68。正如下面所讨论的,元数据目录66是VP成员24至28的元数据52、58和64中的全部或者选定的一部分。同样地,所缓存的数字资产68是VP成员24至28的数字资产50、56和62中的全部或者选定的一部分。元数据目录66和所缓存的数字资产68被优选地储存在缓存中并且用来服务于来自P2P网络内的对等节点14至18的内容共享请求而不涉及VP成员24至28。然而,元数据目录66和所缓存的数字资产68可补充地或可替代地被储存或存留(persist)在一个或多个数字储存设备中,诸如一个或多个硬盘驱动器、一个或多个光学储存设备,等等。
在操作中,在一个实施例中,元数据52、58和64或它们中的选定部分被主动地提供到发起节点22或由发起节点22获取。更具体地,观察作为实例的VP成员24,该VP成员24的拥有者或用户可选择将要经由P2P网络共享数字资产50中的哪个。用户可选择将要共享的数字资产50、56和62中的特定者,选择将要共享的数字资产50、56、62的特定目录(directory)或文件夹,选择将要共享的特定文件类型,选择用来标记(tag)的或者与将要共享的数字资产相关联的一个或多个关键字,等等。另外,用户可定义基于时间的或者基于位置的规则,用于辨识数字资产50、56和62之一以进行共享。关于用户可如何选择数字资产来进行共享的许多变型将会在本领域普通技术人员阅读此说明书之时显而易见。另外,例如,如果VP成员24是多于一个虚拟对等的成员,用户可选择将要经由每个虚拟对等共享数字资产50中的哪个。
在向虚拟对等12进行注册期间,可随后将用于待共享的数字资产50的元数据52部分以及可选地将用于VP成员24的元数据提供给发起代理30。同样地,在向虚拟对等12注册VP成员26、28期间,可将用于待共享的数字资产56、62的元数据58、64提供给发起代理30。可替代地,发起代理30可能仅需要预定类型的元数据。例如,对于图像,发起代理30可能仅需要文件尺寸、分辨率、用于标记图像的关键字、以及注释。这样,发起代理30在注册期间可仅请求来自VP成员24至28的所需类型的元数据或者向VP成员24至28告知所需类型的元数据。VP成员24至28随后可过滤(filter)用于待共享的数字资产50、56和62的元数据52、58和64,并且发送经过滤的元数据到发起代理30。可替代地,发起代理30可过滤来自VP成员24至28的元数据。
作为另一可替代方案,发起代理30可辨识出流行数字资产或流行题材(popular topic),并且仅需要用于流行数字资产的、或者涉及到流行题材的数字资产的元数据。通过例如监控代表虚拟对等12接收到的请求、监控由包括发起代理30所托管的虚拟对等12在内的一定数目的虚拟对等接收到的请求、或询问远程服务,发起代理30可辨识出流行数字资产或流行题材。这样,发起代理30可仅请求来自VP成员24至28的所需元数据。VP成员24至28随后可过滤用于待共享的数字资产50、56和62的元数据52、58和64,并且发送经过滤的元数据到发起代理30。可替代地,发起代理30可过滤来自VP成员24至28的元数据。
一旦发起代理30接收到来自VP成员24至28的元数据,该元数据被汇集以提供元数据目录66,其被储存在缓存器(cache)中和/或存留在数字储存设备中。当汇集来自VP成员24至28的元数据时,发起代理30可应用一般安全规则来过滤、或者移除敏感元数据或者用于敏感内容的元数据。例如,发起代理30可过滤来自VP成员24至28的元数据以移除用于C:/WINDOWS目录的元数据。当汇集来自VP成员24至28的元数据时,发起代理30可另外地将元数据重新构造(restructure)到所需目录结构内。更具体地,发起代理30不受到VP成员24至28的目录结构约束。因而,尽管来自VP成员24至28的元数据可表示数字资产50、56和62的特定目录结构,发起代理30可执行重新构造过程以创建其自己所需的目录结构。一般而言,基于任何元数据,诸如举例而言,创建的日期、题材、文件尺寸范围等等,发起代理30可重新构造VP成员24至28的目录结构。
发起代理30可实现怠散型检索策略(1azy retrieval scheme),而非在注册期间主动地获取来自VP成员24至28的元数据。使用VP成员24作为实例,发起代理30可代表虚拟对等12接收对由VP成员24所托管的数字资产的请求。根据怠散型检索策略,发起代理30随后请求用于来自VP成员24的所请求数字资产的元数据。另外,发起代理30可请求用于由VP成员26所托管的所有共享数字资产的元数据,这些数字资产例如是被储存在与来自VP成员24的所请求数字资产相同的目录下。怠散型检索策略的其它变型是本领域的普通技术人员阅读此说明书时显而易见的。
一旦元数据52、58和64被初始地提供给发起节点22并且被储存在元数据目录66中,发起代理30可与VP成员24至28相互作用以更新元数据目录66。更具体地,在第一实施例中,VP成员24至28将更新推送给发起代理30。例如,如果在VP成员24处添加新数字资产,则VP成员24可推送用于新数字资产的元数据到发起代理30。以类似方式,如果从VP成员24移除数字资产,则VP成员24可推送更新到发起代理30,其向发起代理30告知数字资产的移除。在第二实施例中,VP成员24至28可告知发起代理30何时有对元数据的更新。发起代理30随后可在需要时请求更新。在第三实施例中,如果有更新的话,发起代理30可定期地请求来自VP成员24至28的更新。在第四实施例中,发起代理30可根据怠散型更新(lazyupdating)策略而操作,其中发起代理30响应于对于相关联的被缓存数字资产68的请求、或者响应于P2P内容发现请求而获得对元数据的更新。
应注意到发起代理30可控制被分配用于储存元数据以及对于每个VP成员24至28的数字资产的储存或缓存器空间的量。在一个实施例中,基于VP成员24至28的拥有者是否已经支付或者尚未支付作为加入虚拟对等12的部分的费用,VP成员24至28可各自被分配优先权。其拥有者已支付过费用的VP成员24至28可被给予较高优先权。发起代理30可随后基于分配给VP成员24至28的优先权而分配储存空间。此外,如果发起代理30托管着多于一个虚拟对等,发起代理30可基于例如分配给虚拟对等的优先权而在各虚拟对等之中分配储存和缓存器空间。
除了从VP成员24至28获取元数据和元数据更新,发起代理30可操作以预缓存(pre-cache)或储存VP成员24至28的所有数字资产50、56和62或者它们中的选定部分,用以在发起节点22处提供被缓存的数字资产68中的全部或一部分。在一个实施例中,发起代理30可操作以辨识出通过使用元数据目录66而被储存在VP成员24至28中的多个成员上的数字资产。应注意的是,元数据目录66可维持用于相同内容的多参考(multiple reference),其中为了诸如负载均衡等目的而由多个VP成员24至28托管该内容。例如,发起代理30可辨识出被储存在VP成员24至28中的两个上的特定数字资产。这样,发起代理30可从VP成员24至28中的一个获取特定数字资产并且将该特定数字资产作为被缓存的数字资产68之一而储存。其后,从被缓存的数字资产68服务于对于特定数字资产的所有请求。
在另一实施例中,基于由发起代理30代表着虚拟对等12而接收到的早先请求和/或由发起代理30代表着被发起代理30托管的一个或多个额外的虚拟对等而接收到的请求,发起代理30可辨识出流行的、或者频繁地被请求的数字资产或题材。可替代地,发起代理30可通过询问远程服务而辨识出流行的或者频繁地被请求的数字资产。例如,远程服务可以是监控P2P网络中的虚拟对等或者在P2P网络中所作出用以以辨识出流行数字资产或流行题材的请求的服务。作为另一实例,远程服务可以是诸如基于搜索请求而辨识出流行数字资产或流行题材的因特网搜索引擎之类的远程服务。发起代理30随后可从VP成员24至28获取流行数字资产或与流行题材有关的数字资产,并且将该数字资产作为被缓存的数字资产68中的部分而储存。
以类似方式,基于由发起代理30代表着虚拟对等12而接收到的早先请求和/或由发起代理30代表着被发起代理30托管的一个或多个额外的虚拟对等而接收到的请求,发起代理30可辨识出流行关键字。可替代地,发起代理30可通过询问远程服务而辨识出流行关键字。例如,远程服务可以是监控P2P网络中的虚拟对等或者在P2P网络中所作出以辨识出流行数字资产或流行题材的请求的服务。作为另一实例,远程服务可以是诸如基于搜索请求而辨识出关键字的因特网搜索引擎之类的远程服务。发起代理30随后可从VP成员24至28获取用流行关键字标记的或者与流行关键字相关联的数字资产,并且将该数字资产作为被缓存的数字资产68中的部分而储存。
应注意到,上述预缓存策略是示例性的并且不是旨在限制本发明的范畴。其它的预缓存策略是本领域的普通技术人员阅读此说明书时显而易见的。
通过使用元数据目录66,使得发起代理30能够有效地服务于内容发现请求。更具体地,发起代理30可从P2P网络中的节点,诸如举例而言,对等节点14,接收内容发现请求。内容发现请求可以是对于由虚拟对等12托管的特定数字资产、对于由虚拟对等12托管的特定群组或类型的数字资产、对于由虚拟对等12托管的所有数字资产,等等。例如,发起代理30可代表虚拟对等12接收对于由虚拟对等12托管的、用特定关键字或题材加以标记的或者以其它方法与特定关键字或题材相关联的所有数字资产的内容发现请求。作为另一实例,内容发现请求可以是对于由虚拟对等12托管的所有内容。
响应于该内容发现请求,发起代理30搜索元数据目录66以辨识出由虚拟对等12托管的满足内容发现请求的数字资产50、56及62中的数字资产。发起代理30随后生成并且发送响应到进行请求的节点,该响应包括对于每个所辨识出的数字资产的内容参考。内容参考包括说明了对应数字资产的所有或一部分元数据,诸如举例而言,文件名、文件尺寸、最后修改日期、和创建日期。另外,内容参考可包括对于对应数字资产的内容读取参考(content fetch reference)。该内容读取参考可被虚拟对等12分辨出来(resolve to)。可替代地,如果需要发起代理30的旁路,则内容读取参考可被托管着数字资产的VP成员24至28之一分辨出来。
如果元数据目录66仅包括用于由VP成员24至28共享的数字资产50、56和62的元数据52、58和64中的部分,并且不能够服务于内容发现请求,发起代理30可将内容发现请求转发到VP成员24至28。VP成员24至28可随后经过发起代理响应于内容发现请求或者直接响应于该作出请求的节点。更具体地,在一个实施例中,VP成员24至28响应于发起代理30,并且发起代理30汇集各响应并且提供该汇集的响应到作出请求的节点。在另一实施例中,VP成员24至28可各自对发起代理30进行旁路以提供响应给作出请求的节点。正如上述讨论,VP成员24至28可使用虚拟对等12的认证证书以代表虚拟对等12提供响应。
通过使用被缓存的数字资产68,也使得发起代理30能够有效地服务于内容请求。更具体地,假定对等节点14发送对特定数字资产请求到虚拟对等12,发起代理30代表虚拟对等12接收请求。如果所请求的数字资产是被缓存或储存在发起节点22处的被缓存的数字资产68之一,则发起代理30获取所请求的数字资产并且将所请求的数字资产传递到对等节点14,由此服务于请求。在发送数字资产到对等节点14之前,发起代理30可询问托管着数字资产的VP成员24以确定出是否已对数字资产进行了修改。如果已经对数字资产进行了修改,发起代理30可将请求转发到VP成员24。如果数字资产尚未被修改,则发起代理30服务于请求。
如果所请求的数字资产不是被缓存的数字资产68之一,则发起代理30将请求转发到VP成员24至28中的一个或多个。然后,如上所述,托管着所请求数字资产的VP成员24至28中的一个或多个可将所请求的数字资产传递到发起节点22,并且发起代理30可随后将所请求的数字资产传递到对等节点14并且可选地将所请求的数字资产作为被缓存的数字资产68之一而进行缓存。可替代地,如上所述,发起代理30可操作以在托管着所请求数字资产的VP成员24至28中的一个或多个与对等节点14之间实现旁路连接。
当数字资产被请求并且经过发起代理30被传递时该数字资产被缓存,这时发起代理30还可操作以监控被缓存的数字资产68和/或用于所缓存的数字资产68的元数据以辨识出复制的(duplicate)数字资产。复制的数字资产是两个或多个数字资产的群组,这两个或多个数字资产是相同的或者基本上是相同的数字资产,而不论复制的数字资产是否被缓存用于由发起代理30所托管的不同虚拟对等。如果辨识出复制的数字资产,则可从所缓存的数字资产68移除除一个外的所有复制的数字资产。其后,可通过使用被保持在所缓存数字资产68中的复制的数字资产之一,来服务于对于任何一个复制的数字资产的请求。
当服务于内容发现请求以及内容请求二者时,发起代理30可应用对于虚拟对等12的一般共享规则,或者应用对于每个VP成员24至28的共享规则。共享规则一般定义允许谁访问由虚拟对等12共享的数字资产、或者可替代地访问由VP成员24至28共享的数字资产。此外,VP成员24至28可具有用于数字资产群组的不同共享规则,该数字资产群组诸如目录或文件夹、标记着特定关键字的数字资产群组、文件类型,等等。附加地或可替代地,可以定义基于客户端性能的共享规则并且由发起代理30使用该共享规则。诸如对等节点14的性能之类的客户端性能可例如作为对于内容的请求的一部分而被提供给发起代理30。作为实例,共享规则可陈述出:当请求具有大于1MB的文件尺寸的数字资产时,客户端连接速度必须大于20kbps以便客户端可以访问所请求数字资产。基于各客户端性能的其它共享规则是本领域的普通技术人员阅读此说明书时显而易见的。
除了处理内容发现请求和内容请求,发起代理30可使用元数据目录66和对元数据目录66更新以自动地发送出邀请来客观看或以其它方式消费(consume)由虚拟对等12共享的数字资产50、56和62的邀请。更具体地,VP成员24至20的各个拥有者和/或虚拟对等12的拥有者辨识出一定数目的来客,并且定义将要邀请每个来客来消费的数字资产。来客可以是或者不是P2P网络中的对等。可以通过一个或多个目录名、一个或多个用来标记数字资产的关键字、文件名、文件类型等等,来辨识出特定来客将要被邀请来观看的数字资产。这些用于辨识出允许来客观看的数字资产的判别标准是示例性的并且不是旨在限制本发明的范畴。
在操作中,虚拟对等12的拥有者可创建出将要自动向其提供邀请的来客的列表。对于每个来客,虚拟对等12的拥有者辨识出将要邀请来客观看或以其它方法消费的数字资产或数字资产的类型。其后,发起代理30分析元数据目录66以及对元数据目录66更新,以辨识出将邀请来客观看的由VP成员24至28托管的数字资产。发起代理30随后发送邀请给来客,其例如包括:一个或多个通往将要邀请客户消费的数字资产的链路。在一个实施例中,经由电子邮件提供邀请给来客。然而,本发明不限于此。例如,可替代地通过使用即时传讯(Instant Messaging;IM)而发送邀请。
同样地,VP成员24至28的拥有者可各自辨识出来客的列表以及允许每个来客消费的数字资产或者数字资产类型。例如,VP成员24的拥有者或用户可定义来客的列表并且辨识出要邀请每个来客消费的数字资产或者数字资产类型。VP成员24的拥有者的来客可被限于由VP成员24托管的数字资产50。可替代地,受到对于来客的邀请规则的支配,例如可允许VP成员24的来客消费由虚拟对等12中的VP成员24至28托管的数字资产50、56和62。向发起代理30提供用于辨识将要邀请来客来消费的数字资产的来客列表和规则。发起代理30分析元数据目录66以及对元数据目录66更新,以辨识出将邀请VP成员24的拥有者的来客来进行消费的、由VP成员24托管的或者可替代地由VP成员24至28托管的数字资产。发起代理30随后发送邀请到来客,邀请它们来消费所辨识出的数字资产。
发起代理30也可经由例如P2P网络或因特网向对等节点14至18或者其它潜在的来客提供真正简易聚合(Really SimpleSyndication;RSS)馈源、Atom馈源(Atom feed)等。一般而言,RSS馈源、Atom馈源等在本文中被称为网络馈源。更具体地,作为实例,对等节点14的拥有者可向发起代理30或某些中央服务进行注册以接收用于虚拟对等12的RSS馈源。其后,发起代理30基于元数据目录66以及对元数据目录66的更新而生成RSS馈源。使用RSS馈源,对等节点14的拥有者可容易地得到说明下列数字资产的信息:由虚拟对等12托管的数字资产,以及新近添加到虚拟对等12的数字资产、从虚拟对等12移除的数字资产、或已经修改过的数字资产、或者由具有新近被修改过的元数据的虚拟对等12所托管的数字资产。
发起代理30也可使得诸如对等节点14至18的用户之类的用户能够修改或增加元数据目录66中所储存的元数据,例如,对等节点14的用户可观看由虚拟对等12共享的视频并且希望将注释、关键字、或评级(rating)添加到视频的元数据。假设用于视频的元数据被储存在元数据目录66中,发起代理30可使得对等节点14的用户能够修改用于元数据目录66中所储存视频的元数据以添加注释、关键字、或评级。其后,发起代理30可以发送或可以不发送对于元数据的更新到托管着视频的VP成员24至28。
虚拟对等12的拥有者和/或VP成员24至28的拥有者可定义用于控制为修改目的而对元数据目录66的访问的安全规则。安全规则可以是能够修改元数据目录66中的元数据的用户列表,在允许用户修改元数据目录66中的元数据之前必须由用户录入的口令,等等。此外,安全规则可以是一般的或对于特定数字资产或数字资产群组的元数据所特有的。例如,VP成员24的拥有者可定义单独的安全规则,用于在VP成员24处储存的数字资产50的一定数目目录中的每个,或者用于其中基于用来标记数字资产50的关键字而形成群组的一定数目数字资产50群组中的每个。应注意的是,可以在发起代理30以及VP成员24上执行安全规则。此外,在安全规则的等级(hierarchy)方面,发起代理30的规则可优先于(precedent over)VP成员24的规则。
在一个实施例中,发起代理30没有将对元数据目录中的元数据的修改发送到VP成员24至28。在另一实施例中,发起代理30可将元数据或某些修改转发到VP成员24至28。更具体地,作为第一实例,在将更新提供给VP成员24至28之前,发起代理30可过滤修改以移除被添加到元数据的露骨的(explicit)或庸俗的(vulgar)注释或关键字。作为另一实例,发起代理30可仅提供由选定用户作出的那些修改给VP成员24至28。选定用户可以是允许对元数据目录66中所储存元数据进行修改的用户的限定子集。以类似的方式,发起代理30可将对元数据的更新告知VP成员24至28,而不是自动地向VP成员24至28提供更新。VP成员24至28随后可在如果有需要时请求更新。
应注意的是如果没有向VP成员24至28提供对元数据的修改,并且发起节点22没有储存VP成员24至28中的所有元数据52、58和64,则发起代理30可考虑是否已经在用于元数据目录66的缓存策略中修改了元数据。
上述讨论注重于基于所有权形成虚拟对等。更具体地,正如上面所讨论的,虚拟对等可以是与拥有者或拥有者群组相关联的。这样,由相同的拥有者或者虚拟对等的拥有者群组之一所拥有的虚拟对等成员被辨识出来并用来形成虚拟对等。图7至13例解了其中基于说明虚拟对等成员的拥有者或用户的元数据、说明由虚拟对等成员托管的内容或数字资产的元数据、说明虚拟对等成员的元数据、或它们的组合而形成虚拟对等的实施例。
图7例解了根据本发明的另一实施例的系统10,其中发起代理30基于元数据形成了一定数目的虚拟对等70-1至70-N。应注意的是,在此例解中并且对于所有随后的例解,通过发起代理30内的圆圈例解了虚拟对等70-1至70-N。然而,应领会到,虚拟对等70-1至70-N是由发起代理30以及通信地耦合到发起节点22的对应VP成员72-1至72-M形成的。VP成员72-1至72-M可以是在P2P网络中的虚拟对等、其它虚拟对等、独立用户设备、网路服务器、代理服务器等等,并且可以被通信地经由P2P网络、网络20、直接有线连接、本地无线连接等等而耦合到发起节点22
正如上面所讨论的,系统10包括各自通信地耦合到网络20的对等节点14至18以及发起节点22。在此实施例中,发起节点22托管发起代理30,其中发起代理30操作以创建并且维持、或托管虚拟对等70-1至70-N。正如下面所讨论的,虚拟对等70-1至70-N可以是系统定义的或用户定义的。发起节点22也包括元数据数据库74和VP简档(profile)数据库76。元数据数据库74包括来自VP成员72-1至72-M的元数据。元数据可包括说明VP成员72-1至72-M的用户或拥有者和/或VP成员72-1至72-M的用户或拥有者的爱好和兴趣的用户元数据、说明由VP成员72-1至72-M托管的内容或数字资产的内容元数据、说明VP成员72-1至72-M的VP成员元数据、以及它们的组合。VP简档数据库76包括对于虚拟对等70-1至70-N中的每个的简档。对于虚拟对等70-1至70-N中的每个,对应的简档包括用于选择虚拟对等成员的一个或多个选择标准。另外,简档例如可包括说明虚拟对等的信息。
正如下面所讨论的,基于对虚拟对等70-1至70-N的选择标准与用于潜在的VP成员72-1至72-M的元数据的比较,发起代理30辨识出或选择虚拟对等70-1至70-N中的一个或多个用于潜在的VP成员72-1至72-M中的每个,其中潜在的VP成员72-1至72-M随后被注册为虚拟对等70-1至70-N中所选定的VP成员。一旦辨识出用于虚拟对等70-1至70-N的成员,发起代理30向P2P网络注册虚拟对等70-1至70-N。应注意的是,在辨识出用于虚拟对等70-1至70-N中的每个的VP成员之前,可以可替代地向P2P网络注册虚拟对等70-1至70-N。
虚拟对等70-1至70-N可以是系统定义的或用户定义的。在一个实施例中,虚拟对等70-1至70-N被预先定义并且将用于虚拟对等70-1至70-N的简档储存在VP简档数据库76中。因而,换句话说,发起代理30托管预先定义的虚拟对等的的组或列表。在另一实施例中,发起代理30储存或访问本体(ontology)。示例性本体的一部分被例解在图8中。正如所例解的,本体包括一定数目的相关节点,诸如“科幻(Science Fiction)”和“星际旅行(Star Trek)”。应注意的是,本体可以被本地地储存在VP简档数据库76中的发起节点22处或者从远程服务获取。另外,本体可以基于第三方内容预先定义或自动生成。例如,发起代理30或远程服务可监控并且分析第三方内容,诸如由http://en.wikipedia.org/提供的内容,以提供本体。例如使用关键字密度或自然语言分析,可以为本体或题材中的每个节点或标题创建一列关键字。关键字随后可用作对于本体中的节点的选择标准。
返回图7,本体中的每个节点具有相关联的选择标准并且对应于虚拟对等70-1至70-N之一。通过使用本体中的关系,使得发起代理30能控制对于虚拟对等70-1至70-N的成员资格密度(membershipdensity)。例如,虚拟对等70-1至70-3可以分别是“科幻”虚拟对等、“银翼杀手(Blade Runner)”虚拟对等、以及“英雄之血(Bloodof Heroes)”虚拟对等。首先,当成员资格很低时,仅有“科幻”虚拟对等70-1可以是激活态的。然而,如果“科幻”虚拟对等70-1的成员资格超过阈值,则发起代理30可激活(activate)虚拟对等70-2至70-3,重新分配“科幻”虚拟对等70-1的成员到虚拟对等70-2至70-3,并且随后使得“科幻”虚拟对等70-1无效(deactivate)。以此方式,发起代理30可控制用于虚拟对等70-1至70-N的成员资格密度。
在另一实施例中,虚拟对等70-1至70-N是用户定义的。更具体地,诸如VP成员72-1的用户之类的用户可与发起代理30相互作用以定义用于用户定义虚拟对等的简档。用于用户定义虚拟对等的简档可包括对于虚拟对等的选择标准、对虚拟对等的说明、管理规则、限定允许哪个用户访问虚拟对等的访问控制规则,等等。管理规则可包括限定用户中谁能更改对于虚拟对等的选择标准、谁能更改访问控制规则等的方针(policy)。应注意的是用户定义的虚拟对等可以被配置成使其受多用户管理。另外,发起代理30可强制执行超越控制(overriding)方针。例如,由可以是不为服务支付费用的用户的非付费(non-premium)用户所拥有的用户定的虚拟对等可被限于10GB的数字资产或1000个总成员。总成员包括嵌套式虚拟对等的成员。就像安全规则那样,可通过发起代理30、或者由发起代理30与VP成员72-1二者执行管理规则。
在图7的系统10中,潜在的VP成员72-1至72-M与发起代理30共享元数据。可替代地,为安全目的,VP成员72-1至72-M可提供说明VP成员72-1至72-M的元数据的本体评分,而不是与发起代理30共享实际元数据。更具体地,对于内容或数字资产,内容本体可被提供给潜在的VP成员72-1至72-M。通过使用对于本体中每个节点的预先定义的判定(predicate),潜在的VP成员72-1至72-M可随后将它们的内容元数据与内容本体相比较,由此对内容本体的节点进行评分。随后可将评分提供回到发起代理30,其中内容本体和评分是对潜在的VP成员72-1至72-M的内容元数据的说明。以类似的方式,可对用户本体进行评分,用于对潜在的VP成员72-1至72-M的用户或拥有者进行说明的元数据;并且可对设备性能本体进行评分,用于对潜在VP成员72-1至72-M进行说明的元数据。对于给本体中的节点进行评分的另外的细节,感兴趣的阅读者可参看2006年2月22日提交的题为“Methods,Systems,and Products forCharacterizing Target Systems”的美国专利申请序列号11/359,632,其完全并入此处作为参考。基于元数据或本体的评分,发起代理30将潜在的VP成员72-1至72-M中的每一个注册为虚拟对等70-1至70-N中的选定的VP成员。
图9图解了根据本发明一个实施例的图7的发起代理30的操作。此实例注重于VP成员72-1。然而,此讨论可同样适用于其它VP成员72-2至72-M。应注意的是,如上讨论的,VP成员72-1被称为潜在的VP成员直至完成向经授权的虚拟对等的注册。首先,将潜在的VP成员72-1向发起代理30进行注册(步骤600)。在注册期间,潜在的VP成员72-1向发起代理30提供元数据。例如,可将元数据作为可扩展置标语言(XML)文件提供。图10A和10B例解了一种示例性元数据。如上面所讨论的,元数据可包括对潜在的VP成员72-1的用户或拥有者进行说明的元数据,其包括例如:潜在的VP成员72-1的用户或拥有者的爱好和兴趣;说明由潜在的VP成员72-1托管的数字资产或内容的元数据;说明诸如潜在的VP成员72-1的性能之类的潜在VP成员72-1的元数据;或它们的任何组合。
返回图9,潜在的VP成员72-1可能可替代地提供对于内容本体、用户本体、以及设备性能本体中的一个或多个的本体评分,而不是向发起代30提供元数据,其中本体评分和本体是对潜在的VP成员72-1的元数据的说明。
接下来,基于对用于虚拟对等70-1至70-N的选择标准与用于潜在的VP成员72-1的元数据或本体评分的比较,发起代理30选定可向其添加潜在的VP成员72-1的虚拟对等70-1至70-N中的一个或多个(步骤602)。示例性选择标准可包括:潜在的VP成员72-1应当是“闪点(Flashpoint)”网络的一部分并且托管着具有包含词语“StarTrek”或“Trek”的元数据的五个或更多的共享数字资产;VP成员72-1托管的数字资产的5%应当具有包含词语“Star Trek”或“Trek”的元数据;潜在的VP成员72-1应当托管着具有包含词语“Star Trek”或“Trek”的元数据的、并且是独特的或者尚未被虚拟对等所托管的数字资产;潜在的VP成员72-1应当托管着具有包含词语“Star Trek”或“Trek”的元数据的数字资产,并且由虚拟对等所托管的具有包含词语“Star Trek”或“Trek”的元数据的所有数字资产的文件尺寸的总和小于诸如100GB之类的阈值;潜在的VP成员72-1应当托管着具有包含“Warcraft”的元数据的数字资产并且应当不是“Runescape”虚拟对等的成员;或者潜在的VP成员72-1应当托管着具有包含“Warcraft”的元数据的数字资产并且潜在的VP成员72-1的拥有者或用户是付费用户而且潜在的VP成员72-1的吞吐量历史大于50kbps。此外,这些选择标准是示例性的并且不是旨在限制本发明的范畴。此外,选择标准可包括各种统计标准(statistical criteria),诸如平均值或均值;订阅标准,诸如付费的、定期的(regular)或免费的;或者历史信息,诸如潜在的VP成员72-1的可靠性,潜在的VP成员72-1的用法,或者潜在的VP成员72-1的贡献。选择标准也可包括关于任何内容元数据的内容特有标准,诸如举例而言,编码率、品质、评级、提交内容的用户、分辨率、音频品质,等等。
一旦发起代理30已选定用于潜在的VP成员72-1的虚拟对等,发起代理30随后发送请求到潜在的VP成员72-1用于授权添加潜在的VP成员72-1到所选定的虚拟对等(步骤604)。然而,应注意授权是可选的。潜在的VP成员72-1随后将授权返回以将其添加到所选定的虚拟对等中的一个或多个(步骤606)。作为响应,发起代理30将潜在的VP成员72-1添加到经授权的虚拟对等(步骤608)。此时,潜在的VP成员72-1是经授权的虚拟对等的VP成员72-1。
关于授权,潜在的VP成员72-1的用户或拥有者可手动地选择是否对潜在的VP成员72-1进行授权以加入每个所选定的虚拟对等。为了减少用户或拥有者的负担,潜在的VP成员72-1或者发起代理30可维持对于潜在的VP成员72-1的授权历史,其中授权历史是对潜在的VP成员72-1先前已经被授权加入的虚拟对等的记录,以及对潜在的VP成员72-1尚未被授权加入的虚拟对等的记录。作为注解,可使用用于虚拟对等70-1至70-N的授权历史来为虚拟对等70-1至70-N分配优先权。基于授权历史,潜在的VP成员72-1或者发起代理30可建议是否应当授权潜在的VP成员72-1加入特定虚拟对等或者自动地授权将潜在的VP成员72-1添加到虚拟对等。补充地或可替代地,潜在的VP成员72-1的用户或拥有者可定义将要由潜在的VP成员72-1或者发起代理30使用的一个或多个规则,以确定是否授权潜在的VP成员72-1加入所选定的虚拟对等。例如,可定义授权规则使得对排他地或主要地共享视频内容的虚拟对等中的成员资格进行自动授权,对排他地或主要地共享爵士乐(Jazz)或摇滚(Rock)音乐的虚拟对等中的成员资格进行自动授权,对不共享特定数字资产的虚拟对等中的成员资格加以自动拒绝,以及对具有包括词“Manilow”的内容元数据的虚拟对等中的成员资格进行自动授权。
图11图解了根据本发明第二实施例的图7的发起代理30的操作。此实例注重于VP成员72-1。然而,此讨论可同样适用于其它VP成员72-2至72-M。此外,应注意的是,如上讨论的,VP成员72-1被称为潜在的VP成员直至完成向经授权的虚拟对等的注册。首先,发起代理30询问潜在的VP成员72-1(步骤700)。应注意的是,发起代理30可通过例如询问P2P网络中的全部或至少一部分对等节点而提供询问。作为响应,潜在的VP成员72-1提供元数据或本体评分。如上面所讨论的,元数据可包括对潜在的VP成员72-1的用户或拥有者进行说明的元数据,其包括例如:潜在的VP成员72-1的用户或拥有者的爱好和兴趣;说明由潜在的VP成员72-1托管的数字资产或内容的元数据;说明诸如潜在的VP成员72-1的性能之类的潜在的VP成员72-1的元数据;或它们的任何组合。可替代地,潜在的VP成员72-1可提供对于内容本体、用户本体、以及设备性能本体中的一个或多个的本体评分,其中本体评分和本体是对潜在的VP成员72-1的元数据的说明。
接下来,基于对用于虚拟对等70-1至70-N的选择标准与用于潜在的VP成员72-1的元数据或本体评分的比较,发起代理30选定可向其添加潜在的VP成员72-1的虚拟对等70-1至70-N中的一个或多个(步骤704)。在此实例中,发起代理30随后发送请求到潜在的VP成员72-1用于授权将潜在的VP成员72-1添加到所选定的虚拟对等(步骤706)。然而,应注意授权是可选的。潜在的VP成员72-1于是将授权返回以加入所选定的虚拟对等中的一个或多个(步骤708)。作为响应,发起代理30将潜在的VP成员72-1添加到经授权的虚拟对等(步骤710)。此时,潜在的VP成员72-1是经授权的虚拟对等的VP成员72-1。
尽管分别讨论了图9的注册模型和图11的询问模型,发起代理30可使用这两种模型二者。更具体地,对于具有对发起代理30的了解的、潜在的VP成员72-1至72-M中的某些成员,可使用注册模型。对于其它潜在的VP成员72-1至72-M,可使用询问模型。
在一种可替代实施例中,发起代理30可通过例如使用P2P网络中的内容发现请求来辨识出用于虚拟对等的VP成员,内容发现请求可包括对应于虚拟对等的选择标准的关键字。基于对来自P2P网络中的节点的内容发现请求的响应,发起代理30可辨识出节点中的若干节点作为用于虚拟对等的成员。应注意的是在此可替代实施例中,发起代理30可自动地将这若干节点添加为VP成员。此外,这若干节点可能不知道它们是虚拟对等的VP成员。
图12类似于图7。然而,在此实施例中,虚拟对等目录服务(VPDS)78操作以辨识出或选择用于潜在的VP成员的虚拟对等。VPDS 78可以被中央服务器托管。可替代地,VPDS 78可以被分布在一定数目的分布式系统上或被分布在P2P网络上。更具体地,在此实施例中,系统10包括托管着发起代理30的发起节点22。发起代理30托管虚拟对等70-1和70-2。在此实例中,虚拟对等70-1包括VP成员72-1和72-2,并且虚拟对等70-2包括VP成员72-2和72-3。另外,系统10包括托管着发起代理82的发起节点80。发起代理82托管虚拟对等84-1和84-2。在此实例中,虚拟对等84-1包括VP成员72-3和86-1,并且虚拟对等84-2包括VP成员86-1,86-2和86-3。应注意的是尽管为清楚和易于讨论起见而例解两个发起代理30和82,本发明不限于此。系统10可包括任何数目的发起节点和发起代理。同样,尽管每个发起代理30、82托管两个虚拟对等70-1、70-2和84-1、84-2,发起代理30、82中的每一个可托管任何数目的虚拟对等。VP成员72-1至72-3以及86-1至86-3可以是P2P网络中的对等节点,独立用户设备,其它虚拟对等,等等。
一般而言,VPDS 78维持VP简档数据库88,该VP简档数据库包括用于发起代理30和82所托管的虚拟对等70-1、70-2、84-1和84-2中的每个的选择标准。另外,VP简档数据库88可包括对虚拟对等70-1、70-2、84-1和84-2进行说明的信息;虚拟对等70-1、70-2、84-1和84-2的当前负载状况;以及发起节点22和88的性能,诸如处理器速度、存储器数量、储存容量、网络连接速度,等等。正如下面所讨论的,在操作中,VPDS 78操作以选择用于潜在的VP成员72-1至72-3以及86-1至86-3的虚拟对等。另外,随着诸如对虚拟对等的选择标准之类的条件的改变,VPDS 78可将VP成员72-1至72-3以及86-1至86-3重新分配给虚拟对等。
应注意到,尽管在图12中没有例解,VP成员72-1至72-3以及86-1至86-3在向虚拟对等70-1、70-2、84-1和84-2中的若干虚拟对等进行注册之前和之后都可经由网络20访问VPDS 88。因而,在此实施例中,VP成员72-1至72-3以及86-1至86-3包括例如有线网络接口、本地网络接口、蜂窝式接口等等用于连接到网络20。
图13图解了根据本发明一个实施例的图12的系统10的操作。首先,发起代理30和82向VPDS 78进行了注册(步骤800和802)。在注册期间,发起代理30和82将用于发起代理30和82所托管的虚拟对等70-1、70-2、84-1和84-2的VP简档提供给VPDS 78,其中VP简档被储存在VP简档数据库88中。尽管注册被例解为对于每个发起代理30和82的单一步骤,发起代理30和82其后可操作以更新VP简档,如果创建出新的虚拟对等则添加新的VP简档,或者如果现有虚拟对等为无效的或被终止时则删除VP简档。可替代地,VPDS78可使用询问过程来发现发起代理30和82以及由发起代理30和82所托管的虚拟对等70-1、70-2、84-1和84-2。
在此实例中,潜在的VP成员72-1随后询问用于潜在的VP成员72-1有资格加入的虚拟对等的VPDS 78(步骤804)。应注意的是,此讨论同样地可适用于任何潜在的VP成员72-1至72-3以及86-1至86-3。询问包括用于潜在VP成员72-1的元数据、或者对用于潜在的VP成员72-1的元数据进行说明的本体评分。正如上面所讨论的,用于潜在的VP成员72-1的元数据可包括用户元数据、内容元数据、VP成员元数据,等等。应注意到VP成员元数据可包括用于潜在的VP成员72-1的设备元数据。另外,如果潜在的VP成员72-1是另一虚拟对等,则VP成员元数据可包括用于发起节点的设备元数据和关于相关联VP成员的元数据。作为响应,通过将用于潜在的VP成员72-1的元数据或本体评分与用于VP简档数据库88中所储存虚拟对等70-1、70-2、84-1和84-2的选择标准进行比较,VPDS 78选择出由潜在的VP成员72-1有资格加入的发起代理30和82所托管的虚拟对等70-1、70-2、84-1和84-2中的一个或多个(步骤806)。
在此实施例中,VPDS 78随后将辨识所选择虚拟对等的请求发送到潜在的VP成员72-1,该虚拟对等在本实例中是虚拟对等70-1(步骤808)。一般而言,响应包括使得潜在的VP成员72-1能接触发起代理30并且加入虚拟对等70-1的信息。例如,响应可包括发起节点30的URL、虚拟对等70-1的对等ID、以及认证证书,诸如表明已经通过VPDS 78将潜在的VP成员72-1指向虚拟对等70-1的令牌。另外,响应可包括对虚拟对等70-1进行说明的信息,其可以被潜在的VP成员72-1的用户或拥有者观看以决定是否加入虚拟对等70-1。潜在的VP成员72-1随后连接到发起代理30并且向虚拟对等70-1进行注册(步骤810)。此时,潜在的VP成员72-1被注册为虚拟对等70-1的VP成员。
以类似方式,潜在的VP成员72-2、72-3以及86-1至86-3可使用VPDS 78来辨识和向虚拟对等70-1、70-2、84-1和84-2中的对应者进行注册。
图14图解了根据本发明另一个实施例的图12的系统10的操作。此实施例基本上与关于图13所描述的相同。然而,VPDS 78操作以自动地将潜在的VP成员72-1向选定的虚拟对等进行注册。
更具体地,发起代理30和82向VPDS 78进行了注册(步骤900和902)。在注册期间,发起代理30和82将用于由发起代理30和82所托管的虚拟对等70-1、70-2、84-1和84-2的VP简档提供给VPDS78,其中VP简档被储存在VP简档数据库88中。尽管注册被例解为对于每个发起代理30和82的单一步骤,发起代理30和82其后可操作以更新VP简档,如果创建出新的虚拟对等则添加新的VP简档,或者如果现有虚拟对等为无效的或被终止时则删除VP简档。在一种可替代实施例中,VPDS 78可通过使用询问过程辨识出发起代理30和82。
在此实例中,潜在的VP成员72-1随后询问用于潜在的VP成员72-1有资格加入的虚拟对等的VPDS 78(步骤904)。应注意的是,此讨论同样地可适用于任何潜在的VP成员72-1至72-3以及86-1至86-3。询问包括用于潜在VP成员72-1的元数据、或者对用于潜在的VP成员72-1的元数据进行说明的本体评分。正如上面所讨论的,用于潜在的VP成员72-1的元数据可包括用户元数据、内容元数据、VP成员元数据,等等。作为响应,通过将用于潜在的VP成员72-1的元数据或本体评分与用于VP简档数据库88中所储存的虚拟对等70-1、70-2、84-1和84-2的选择标准进行比较,VPDS 78选择出由潜在的VP成员72-1有资格加入的发起代理30和82所托管的虚拟对等70-1、70-2、84-1和84-2中的一个或多个(步骤906)。在此实例中,所选择的虚拟对等是虚拟对等70-1。
在此实施例中,VPDS 78随后与发起代理30通信以向虚拟对等70-1注册潜在的VP成员72-1(步骤908)。此时,VP成员72-1被注册为虚拟对等70-1的VP成员。一旦完成了注册,VPDS 78发送响应到辨识出虚拟对等70-1的VP成员72-1,向该虚拟对等70-1注册VP成员72-1以及诸如URL之类的使得VP成员72-1能建立与发起代理30的连接的信息(步骤910)。可替代地,发起代理30可向VP成员72-1提供响应。以类似方式,潜在的VP成员72-2、72-3以及86-1至86-3可使用VPDS 78来辨识和向虚拟对等70-1、70-2、84-1和84-2中的对应者进行注册。应注意的是,在向虚拟对等70-1注册潜在的VP成员72-1之前,可查找来自潜在的VP成员72-1的用户的授权。
图15例解了系统10的另一实施例,其中虚拟对等管理服务(VPMS)90操作以提供目录服务和管理功能,该目录服务就像上面相对于图12至14所讨论的那样。VPDS 90可以被中央服务器托管。应注意到VPMS 90,尽管被图示为单一服务,可以可替代地被实现为目录服务以及管理服务。
VPMS 90包括管理功能92、VP简档数据库94,以及发起代理(SA)简档数据库96。一般而言,VP简档数据库94储存诸如虚拟对等70-1、70-2、84-1和84-2之类的一定数目的虚拟对等的简档,如上面所讨论的,它们可以是系统定义的或用户定义的。虚拟对等的简档可包括诸如对虚拟对等的选择标准之类的信息、虚拟对等的说明、对虚拟对等的管理规则、对虚拟对等的访问控制规则,等等。SA简档数据库96储存用于系统10中的发起代理30和82的简档。SA简档可包括辨识出诸如处理器、存储器、储存设备和网络连接速度之类的性能的信息,以及辨识出发起代理的当前负载状况的信息、发起代理的平均或历史吞吐量等的信息。
可以以软件实现的管理功能92,进行操作以分配虚拟对等给发起代理30和82。其后,管理功能92监控发起代理30和82以及虚拟对等70-1、70-2、84-1和84-2,并且可在发起代理30和82之中重新分配虚拟对等70-1、70-2、84-1、84-2以提供有效的操作。管理功能92可管理发起代理30和82以及虚拟对等70-1、70-2、84-1和84-2以提供服务,诸如负载均衡、冗余以及故障转移。另外,管理功能92可使用本体来动态地控制对虚拟对等的激活和无效掉(deactivation),以便以类似于上述的方式实现所需的成员资格密度。更进一步地,管理功能92可将现有的虚拟对等分割(partition)为由多节点托管的一定数目的嵌套虚拟对等,以分割与虚拟对等相关联的工作负荷。例如,如果发起节点22是高性能(high-powered)节点而发起代理80是低性能(low-powered)节点并且虚拟对等84-1的成员资格显著地增加或增加超过预定阈值,则管理功能92可操作以将虚拟对等84-1重新分配到发起代理30。作为另一实例,如果发起代理82因虚拟对等84-2而过载,则管理功能92可将虚拟对等84-2分割为由两个或更多个发起代理托管的两个或更多嵌套虚拟对等。此外,虚拟对等84-2的VP成员86-1至86-3中的一个或多个可被转换为发起代理用于一个或多个嵌套的虚拟对等。
图16图解了根据本发明一个实施例的图15的系统10的操作。首先,发起代理30和82向VPMS 90进行了注册(步骤1000和1002)。在注册期间,发起代理30和82提供在SA简档数据库96中所储存的发起代理22和80的性能。另外,发起代理30和82可提供辨识发起代理30和82处的当前负载状况、发起代理30和82的平均或历史吞吐量等的信息。尽管没有加以例解,随着发起代理30和82的状况或状态的改变,发起代理30和82其后可向VPMS 90提供更新。在可替代实施例中,VPMS 90可通过使用询问过程发现发起代理30和82。
VPMS 90随后向发起代理30和82分配虚拟对等(步骤1004和1006)。在此实例中,VPMS 90向发起代理30分配虚拟对等70-1和70-2并且向发起代理82分配虚拟对等84-1和84-2。
其后,VPMS 90可接受来自例如潜在的VP成员72-1的询问以辨识用于潜在的VP成员72-1的虚拟对等(步骤1008)。询问可包括对用于潜在的VP成员72-1的元数据进行说明的本体评分或元数据。作为响应,通过将用于潜在的VP成员72-1的元数据或本体评分与VP简档数据库94中定义的虚拟对等的选择标准进行比较,VPMS90选择一个或多个虚拟对等用于潜在的VP成员72-1(步骤1010)。在此实例中,虚拟对等70-1被选择用于潜在的VP成员72-1。VPMS90随后将辨识出虚拟对等70-1和发起代理30的响应发送到潜在的VP成员72-1(步骤1012)。潜在的VP成员72-1随后连接到发起代理30并且向虚拟对等70-1进行注册(步骤1014)。可替代地,VPMS90可自动地向虚拟对等70-1注册VP成员72-1。作为另一可替代方案,VPMS 90可向发起代理30告知潜在的VP成员72-1,并且发起代理30可与潜在的VP成员72-1通信以向虚拟对等70-1注册潜在的VP成员72-1。一旦完成了注册,潜在的VP成员72-1就是虚拟对等70-1的VP成员。
除了提供步骤1008至1012的目录服务以外,VPMS 90操作以监控发起代理30和82以及由发起代理30和82托管的虚拟对等70-1、70-2、84-1和84-2(步骤1016)。尽管被例解为单一步骤,监控过程可以是连续过程。基于虚拟对等70-1、70-2、84-1和84-2以及发起代理30和82的状态,VPMS 90可执行各种管理功能。应注意到虚拟对等70-1、70-2、84-1和84-2的状态可以是例如用于每个虚拟对等70-1、70-2、84-1和84-2的虚拟对等成员的数目。发起代理30和82的状态可以是例如:发起节点22和80的性能和状况、由发起代理节点22和80托管的虚拟对等所托管的内容的数量、流量状况(traffic condition)、待决请求的数目、当前负载状况、存储器使用率、CPU占用率(CPU utilization)、所使用的带宽,等等。作为VPMS 90的监控和管理过程的实例,VPMS 90可在发起代理30和82之中重新分配虚拟对等70-1、70-2、84-1和84-2,将新虚拟对等分配到发起代理30和82;基于例如本体而将虚拟对等分割为嵌套的虚拟对等;基于例如本体而将嵌套的虚拟对等组合为单一的虚拟对等;等等。
图17是关于发起节点22的示例性实施例的框图。一般而言,发起节点22包括具有相关联存储器100的控制系统98。在此实例中,发起代理30以软件实现并且被储存在存储器100中。发起代理22也可包括一个或多个数字储存设备102。发起节点22也包括通信地将发起节点22耦合到网络20的通信接口104。此外,如果VP成员24至28或72-1至72-M中的一个或多个经由直接有线连接或本地无线连接而被连接到发起节点22,则通信接口104可包括有线通信接口和/或本地无线通信接口。发起代理22也包括用户接口106,其可包括部件:诸如举例而言,显示器、扬声器、诸如键盘和鼠标之类的用户输入设备,等等。
图18例解了托管着图12至14的VPDS 78的服务器108的示例性实施例。服务器108包括具有相关联存储器112的控制系统110。在一个实施例中,VPDS 78可以软件实现并且被储存在存储器112中。服务器108也包括一个或多个数字储存设备114,其可用于储存VP简档数据库88。服务器108也包括通信地将服务器108耦合到网络20的通信接口116。服务器108也包括用户接口118,其可包括部件:诸如举例而言,显示器、扬声器、诸如键盘和鼠标之类的用户输入设备,等等。
图19例解了托管着图15至16的VPMS 90的服务器120的示例性实施例。服务器120包括具有相关联存储器124的控制系统122。在一个实施例中,VPMS 90可以软件实现并且被储存在存储器124中。服务器120也包括一个或多个数字储存设备126,其可用于储存VP简档数据库94和SA简档数据库96。服务器120也包括通信地将服务器120耦合到网络20的通信接口128。服务器104也包括用户接口130,其可包括部件:诸如举例而言,显示器、扬声器、诸如键盘和鼠标之类的用户输入设备,等等。
在不背离本发明的宗旨或范畴的情况下,本发明提供用于改变的基本机会。例如,尽管上面将发起代理30例解和说明为由发起节点22托管的,本发明不限于此。更具体地,在可替代实施例中,发起代理30可以在虚拟对等12的全部或一定数目的VP成员24至28上实现,其中VP成员24至28之一在任何给定时间点处被选为VP先导(VP leader)。VP先导可随后以几乎与上面说明中的发起节点22相同的方式作为虚拟对等12的通信端点而操作。作为另一实例,发起代理30可使得能够在其它通信网络中对虚拟对等12进行寻址。例如,发起代理30可向因特网域名服务器(DNS)注册虚拟对等12并且在其后担当因特网与VP成员24至28之间的桥。
关于移动设备,诸如VP成员24之类的VP成员响应于在其本地无线覆盖区域内对需要加入现有虚拟对等的移动设备进行的检测而可动态地创建并且维持新的虚拟对等。例如,如果VP成员24是具有本地无线通信接口的个人计算机,则VP成员24可检测在其本地无线覆盖区域内的一个或多个移动设备。如果移动设备需要加入虚拟对等12并且被授权这样做,则VP成员24可创建新的虚拟对等并将其维持作为虚拟对等12的成员,其中移动设备是新的虚拟对等的成员。
本领域的技术人员将认识到对本发明的优选实施例的改进和修改。所有这样的改进和修改被认为是在本文中以及随后的权利要求中所披露的构思的范畴内。
Claims (32)
1.一种方法,其包括:
形成包括多个各自托管着数字资产的虚拟对等成员的虚拟对等,其中虚拟对等在对等式(P2P)网络中被注册为对等节点并且发起代理作为在P2P网络中的虚拟对等的通信端点而操作;
从多个虚拟对等成员获取对多个虚拟对等成员所托管的至少一部分数字资产进行说明的元数据;以及
汇集元数据以提供用于虚拟对等的元数据目录。
2.如权利要求1的方法,其中发起代理被发起节点托管,并且还包括在发起节点处储存元数据目录。
3.如权利要求1的方法,其中获取元数据包括从多个虚拟对等成员获取对多个虚拟对等成员所托管的所有数字资产进行说明的元数据。
4.如权利要求1的方法,其中获取元数据包括从多个虚拟对等成员获取对多个虚拟对等成员所托管的选定部分的数字资产进行说明的对应于至少一个所需元数据类型的元数据。
5.如权利要求1的方法,其中获取元数据包括从多个虚拟对等成员获取用于多个虚拟对等成员所托管的数字资产的选定子集的元数据。
6.如权利要求1的方法,其还包括从多个虚拟对等成员获取用于元数据的更新。
7.如权利要求1的方法,其中汇集元数据还包括基于至少一个安全规则过滤元数据。
8.如权利要求1的方法,其中汇集元数据还包括重新构造元数据以提供用于虚拟对等的所需目录结构。
9.如权利要求1的方法,其还包括:
根据预缓存策略从多个虚拟成员之一获取由该多个虚拟对等成员之一所托管的数字资产中的至少一个;以及
将至少一个数字资产储存在与发起代理相关联的数字资产缓存器中。
10.如权利要求1的方法,其还包括:
辨识出多个流行数字资产,该数字资产包括由多个虚拟对等成员之一所托管的数字资产中的至少一个;
从多个虚拟对等成员之一获取由虚拟对等成员之一所托管的数字资产中的至少一个;以及
将至少一个数字资产储存在与发起代理相关联的数字资产缓存器中。
11.如权利要求1的方法,其还包括:
辨识出流行题材;
从多个虚拟对等成员之一获取由该多个虚拟对等成员之一所托管的并且与该流行题材有关的数字资产中的至少一个;和
将至少一个数字资产储存在与发起代理相关联的数字资产缓存器中。
12.如权利要求1的方法,其还包括:
辨识出流行关键字;
从多个虚拟对等成员之一获取由该多个虚拟对等成员之一所托管的并且与该流行关键字相关联的数字资产中的至少一个;以及
将至少一个数字资产储存在与发起代理相关联的数字资产缓存器中。
13.如权利要求1的方法,其中由多个虚拟对等成员托管的多个数字资产被储存在与发起代理相关联的数字资产缓存器中,并且还包括:
从多个数字资产检测出复制的数字资产的群组;以及
从数字资产缓存器移除该数字资产的群组中除一个外的所有数字资产。
14.如权利要求1的方法,其中发起代理维持至少一个用于虚拟对等的共享安全规则,该方法还包括:
接收对于由多个虚拟对等成员托管的数字资产之一的请求;和
基于至少一个共享安全规则确定是否授权提供请求的请求节点的拥有者访问虚拟对等。
15.如权利要求1的方法,其中发起代理维持至少一个用于多个虚拟对等成员中的每个的共享安全规则,该方法还包括:
接收对于由多个虚拟对等成员之一托管的数字资产之一的请求;以及
基于至少一个用于多个虚拟对等成员之一的共享安全规则确定是否授权提供请求的请求节点的拥有者访问数字资产之一。
16.如权利要求1的方法,其还包括:
接收对于由多个虚拟对等成员之一托管的数字资产之一的请求以及来自客户端的性能信息;以及
基于来自客户端的性能信息确定是否授权该客户端访问该数字资产之一。
17.如权利要求1的方法,其还包括:
基于元数据目录生成用于虚拟对等的网路馈源;以及
向至少一个客户端提供网路馈源。
18.如权利要求1的方法,其还包括:
基于至少一个邀请规则与元数据目录的比较而辨识出将要邀请来客来消费的数字资产;
生成邀请来客来消费所辨识出的数字资产的邀请;以及
向来客提供邀请。
19.如权利要求1的方法,还包括使得客户端的用户能够修改用于选定的数字资产之一的元数据目录中的元数据。
20.如权利要求1的方法,其还包括:
接收请求以修改用于选定的数字资产之一的元数据目录中的元数据;
确定是否授权提供请求的客户端的拥有者修改用于选定的数字资产之一的元数据目录中的元数据;以及
如果授权客户端的拥有者修改元数据,则使得客户端的拥有者能够修改用于选定的数字资产之一的元数据目录中的元数据。
21.如权利要求1的方法,还包括服务于来自元数据目录的内容发现请求。
22.如权利要求1的方法,其还包括:
将由多个虚拟对等成员所托管的至少一部分数字资产缓存在与发起代理相关联的数字资产缓存器中;以及
服务于来自数字资产缓存器的请求。
23.一种用于在对等式(P2P)网络中托管虚拟对等的发起节点,包括:
通信接口;以及
控制系统,与通信接口相关联并且适合于:
形成包括多个各自托管数字资产的虚拟对等成员的虚拟对等;
将该虚拟对等注册为对等式(P2P)网络中的对等节点,发起节点作为用于P2P网络中的虚拟对等的通信端点而操作;
从多个虚拟对等成员获取对由多个虚拟对等成员所托管的至少一部分数字资产进行说明的元数据;以及
汇集元数据以提供用于虚拟对等的元数据目录。
24.如权利要求23的发起节点,其中来自多个虚拟对等成员的元数据包括对多个虚拟对等成员所托管的所有数字资产进行说明的元数据。
25.如权利要求23的发起节点,其中控制系统还适合于:
将由多个虚拟对等成员托管的多个数字资产缓存在数字资产缓存器中;
从多个数字资产检测出复制的数字资产的群组;以及
从数字资产缓存器移除该数字资产的群组中的除一个外的所有数字资产。
26.如权利要求23的发起节点,其中控制系统还适合于:
接收对于由多个虚拟对等成员托管的数字资产之一的请求;以及
基于用于虚拟对等的至少一个共享安全规则确定是否授权提供请求的请求节点的拥有者访问虚拟对等。
27.如权利要求23的发起节点,其中控制系统还适合于:
接收对于由多个虚拟对等成员之一托管的数字资产之一的请求;以及
基于至少一个用于多个虚拟对等成员之一的共享安全规则而确定是否授权提供请求的请求节点的拥有者访问数字资产之一。
28.如权利要求23的发起节点,其中控制系统还适合于:
接收对于由多个虚拟对等成员之一托管的数字资产之一的请求以及来自客户端的性能信息;以及
基于对来自客户端的性能信息和至少一个内容共享规则的比较而确定是否授权该客户端访问该数字资产之一。
29.如权利要求23的发起节点,其中控制系统还适合于:
基于元数据目录生成用于虚拟对等的网路馈源;以及
向至少一个客户端提供网路馈源。
30.如权利要求23的发起节点,其中控制系统还适合于使得客户端的用户能够修改用于选定的数字资产之一的元数据目录中的元数据。
31.如权利要求23的发起节点,其中控制系统还适合于服务于来自元数据目录的内容发现请求。
32.如权利要求23的发起节点,其中控制系统还适合于:
将由多个虚拟对等成员托管的数字资产中的至少一部分缓存在数字资产缓存器中;以及
服务于来自数字资产缓存器的请求。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/536,888 | 2006-09-29 | ||
US11/536,888 US8554827B2 (en) | 2006-09-29 | 2006-09-29 | Virtual peer for a content sharing system |
PCT/US2007/077047 WO2008042534A2 (en) | 2006-09-29 | 2007-08-29 | Virtual peer for a content sharing system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101542461A true CN101542461A (zh) | 2009-09-23 |
CN101542461B CN101542461B (zh) | 2012-09-26 |
Family
ID=39261063
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007800434757A Expired - Fee Related CN101542461B (zh) | 2006-09-29 | 2007-08-29 | 用于内容共享系统的虚拟对等 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8554827B2 (zh) |
EP (1) | EP2069952A2 (zh) |
KR (1) | KR20090080051A (zh) |
CN (1) | CN101542461B (zh) |
WO (1) | WO2008042534A2 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104272773A (zh) * | 2012-05-10 | 2015-01-07 | 高通股份有限公司 | 选择性地将媒体馈送定向到目标用户装备集 |
CN105306228A (zh) * | 2014-06-30 | 2016-02-03 | 广达电脑股份有限公司 | 虚拟内容分享方法 |
CN106664328A (zh) * | 2015-04-30 | 2017-05-10 | 华为技术有限公司 | 一种p2p组的发现方法、相关设备及p2p组 |
Families Citing this family (94)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8050272B2 (en) | 2004-06-29 | 2011-11-01 | Damaka, Inc. | System and method for concurrent sessions in a peer-to-peer hybrid communications network |
US7933260B2 (en) | 2004-06-29 | 2011-04-26 | Damaka, Inc. | System and method for routing and communicating in a heterogeneous network environment |
US8009586B2 (en) | 2004-06-29 | 2011-08-30 | Damaka, Inc. | System and method for data transfer in a peer-to peer hybrid communication network |
US7570636B2 (en) | 2004-06-29 | 2009-08-04 | Damaka, Inc. | System and method for traversing a NAT device for peer-to-peer hybrid communications |
WO2007063483A1 (en) * | 2005-11-29 | 2007-06-07 | Koninklijke Philips Electronics N.V. | Method of managing a distributed storage system |
WO2008118183A1 (en) * | 2007-03-28 | 2008-10-02 | Motionbox, Inc. | System and method for autogeneration of long term media data from networked time-based media |
US8443276B2 (en) * | 2006-03-28 | 2013-05-14 | Hewlett-Packard Development Company, L.P. | System and data model for shared viewing and editing of time-based media |
US20110107369A1 (en) * | 2006-03-28 | 2011-05-05 | O'brien Christopher J | System and method for enabling social browsing of networked time-based media |
US20090129740A1 (en) * | 2006-03-28 | 2009-05-21 | O'brien Christopher J | System for individual and group editing of networked time-based media |
US9812169B2 (en) * | 2006-03-28 | 2017-11-07 | Hewlett-Packard Development Company, L.P. | Operational system and architectural model for improved manipulation of video and time media data from networked time-based media |
US20100169786A1 (en) * | 2006-03-29 | 2010-07-01 | O'brien Christopher J | system, method, and apparatus for visual browsing, deep tagging, and synchronized commenting |
US20080089299A1 (en) * | 2006-10-13 | 2008-04-17 | Motorola, Inc. | Method and system for distributing content in Ad-hoc networks using super peers |
US20080208963A1 (en) * | 2006-10-19 | 2008-08-28 | Aviv Eyal | Online File Sharing |
US9123048B2 (en) * | 2006-10-20 | 2015-09-01 | Yahoo! Inc. | Systems and methods for receiving and sponsoring media content |
KR101105850B1 (ko) * | 2007-02-28 | 2012-01-13 | 삼성전자주식회사 | P2p 네트워킹을 통한 고품질 콘텐츠 제공 시스템 및 방법 |
US8028019B2 (en) * | 2007-02-28 | 2011-09-27 | Solid State Networks, Inc. | Methods and apparatus for data transfer in networks using distributed file location indices |
US8112501B2 (en) | 2007-03-30 | 2012-02-07 | Yahoo! Inc. | Centralized registration for distributed social content services |
US8286086B2 (en) * | 2007-03-30 | 2012-10-09 | Yahoo! Inc. | On-widget data control |
US8312108B2 (en) | 2007-05-22 | 2012-11-13 | Yahoo! Inc. | Hot within my communities |
US8713608B2 (en) * | 2007-07-12 | 2014-04-29 | At&T Intellectual Property I, Lp | System for presenting media services |
WO2009032854A2 (en) | 2007-09-03 | 2009-03-12 | Damaka, Inc. | Device and method for maintaining a communication session during a network transition |
KR20230156158A (ko) | 2007-09-26 | 2023-11-13 | 에이큐 미디어 인크 | 오디오-비주얼 내비게이션 및 통신 |
US8862164B2 (en) | 2007-09-28 | 2014-10-14 | Damaka, Inc. | System and method for transitioning a communication session between networks that are not commonly controlled |
US9009603B2 (en) * | 2007-10-24 | 2015-04-14 | Social Communications Company | Web browser interface for spatial communication environments |
US9357025B2 (en) | 2007-10-24 | 2016-05-31 | Social Communications Company | Virtual area based telephony communications |
WO2009070718A1 (en) | 2007-11-28 | 2009-06-04 | Damaka, Inc. | System and method for endpoint handoff in a hybrid peer-to-peer networking environment |
US8167724B2 (en) * | 2007-12-10 | 2012-05-01 | Gary Stephen Shuster | Guest management in an online multi-player virtual reality game |
US8326796B2 (en) * | 2008-04-15 | 2012-12-04 | International Business Machines Corporation | Data retrieval and data feed generation from data sources |
US8285811B2 (en) * | 2008-04-17 | 2012-10-09 | Eloy Technology, Llc | Aggregating media collections to provide a primary list and sorted sub-lists |
US8285810B2 (en) * | 2008-04-17 | 2012-10-09 | Eloy Technology, Llc | Aggregating media collections between participants of a sharing network utilizing bridging |
US8224899B2 (en) | 2008-04-17 | 2012-07-17 | Eloy Technology, Llc | Method and system for aggregating media collections between participants of a sharing network |
US8484311B2 (en) * | 2008-04-17 | 2013-07-09 | Eloy Technology, Llc | Pruning an aggregate media collection |
US20110208616A1 (en) * | 2008-06-13 | 2011-08-25 | Christopher Simon Gorman | Content system |
US8589993B2 (en) * | 2008-08-29 | 2013-11-19 | At&T Intellectual Property I, L.P. | Distributing on-demand multimedia content |
US20100070490A1 (en) * | 2008-09-17 | 2010-03-18 | Eloy Technology, Llc | System and method for enhanced smart playlists with aggregated media collections |
US7853712B2 (en) * | 2008-09-29 | 2010-12-14 | Eloy Technology, Llc | Activity indicators in a media sharing system |
US8880599B2 (en) | 2008-10-15 | 2014-11-04 | Eloy Technology, Llc | Collection digest for a media sharing system |
US8484227B2 (en) * | 2008-10-15 | 2013-07-09 | Eloy Technology, Llc | Caching and synching process for a media sharing system |
US20100094834A1 (en) * | 2008-10-15 | 2010-04-15 | Concert Technology Corporation | Bridging in a media sharing system |
US20100114979A1 (en) * | 2008-10-28 | 2010-05-06 | Concert Technology Corporation | System and method for correlating similar playlists in a media sharing network |
US8555322B2 (en) * | 2009-01-23 | 2013-10-08 | Microsoft Corporation | Shared television sessions |
US9014832B2 (en) | 2009-02-02 | 2015-04-21 | Eloy Technology, Llc | Augmenting media content in a media sharing group |
US20100211637A1 (en) * | 2009-02-17 | 2010-08-19 | Nokia Corporation | Method and apparatus for providing shared services |
US8321900B2 (en) | 2009-12-12 | 2012-11-27 | At&T Intellectual Property I, L.P. | Limited chain relay with virtual peer for multimedia distribution |
US20110173337A1 (en) * | 2010-01-13 | 2011-07-14 | Oto Technologies, Llc | Proactive pre-provisioning for a content sharing session |
US8725895B2 (en) | 2010-02-15 | 2014-05-13 | Damaka, Inc. | NAT traversal by concurrently probing multiple candidates |
US8874785B2 (en) | 2010-02-15 | 2014-10-28 | Damaka, Inc. | System and method for signaling and data tunneling in a peer-to-peer environment |
US8892646B2 (en) | 2010-08-25 | 2014-11-18 | Damaka, Inc. | System and method for shared session appearance in a hybrid peer-to-peer environment |
US8689307B2 (en) * | 2010-03-19 | 2014-04-01 | Damaka, Inc. | System and method for providing a virtual peer-to-peer environment |
US9043488B2 (en) | 2010-03-29 | 2015-05-26 | Damaka, Inc. | System and method for session sweeping between devices |
US9191416B2 (en) | 2010-04-16 | 2015-11-17 | Damaka, Inc. | System and method for providing enterprise voice call continuity |
US8352563B2 (en) | 2010-04-29 | 2013-01-08 | Damaka, Inc. | System and method for peer-to-peer media routing using a third party instant messaging system for signaling |
US8446900B2 (en) | 2010-06-18 | 2013-05-21 | Damaka, Inc. | System and method for transferring a call between endpoints in a hybrid peer-to-peer network |
US8611540B2 (en) | 2010-06-23 | 2013-12-17 | Damaka, Inc. | System and method for secure messaging in a hybrid peer-to-peer network |
US10423577B2 (en) * | 2010-06-29 | 2019-09-24 | International Business Machines Corporation | Collections for storage artifacts of a tree structured repository established via artifact metadata |
KR101631618B1 (ko) * | 2010-07-06 | 2016-06-27 | 삼성전자주식회사 | 가상 개인화 그룹 생성 방법 및 가상 개인화 그룹을 이용하는 통신 기기와 허브를 포함하는 네트워크 |
EP2612288A4 (en) | 2010-09-03 | 2014-03-19 | Andrew James Darbyshire | CONTENT DISTRIBUTION SYSTEM AND INCENTIVE POST-TO-POST FEES |
US8468010B2 (en) | 2010-09-24 | 2013-06-18 | Damaka, Inc. | System and method for language translation in a hybrid peer-to-peer environment |
US20120117110A1 (en) | 2010-09-29 | 2012-05-10 | Eloy Technology, Llc | Dynamic location-based media collection aggregation |
US8743781B2 (en) | 2010-10-11 | 2014-06-03 | Damaka, Inc. | System and method for a reverse invitation in a hybrid peer-to-peer environment |
US9100377B2 (en) * | 2010-12-09 | 2015-08-04 | Fujifilm North America Corporation | System and method for providing caching and pre-fetch of assets/media |
US8407314B2 (en) | 2011-04-04 | 2013-03-26 | Damaka, Inc. | System and method for sharing unsupported document types between communication devices |
CN102137165B (zh) * | 2011-04-22 | 2013-04-10 | 南京邮电大学 | 一种基于对等网络的阿瑞斯索引系统的实现方法 |
US8775431B2 (en) * | 2011-04-25 | 2014-07-08 | Disney Enterprises, Inc. | Systems and methods for hot topic identification and metadata |
US8694587B2 (en) | 2011-05-17 | 2014-04-08 | Damaka, Inc. | System and method for transferring a call bridge between communication devices |
TWI645299B (zh) * | 2011-06-30 | 2018-12-21 | 萬國商業機器公司 | 資訊裝置與用以協同複數個資訊裝置資源之資訊設備 |
US8478890B2 (en) | 2011-07-15 | 2013-07-02 | Damaka, Inc. | System and method for reliable virtual bi-directional data stream communications with single socket point-to-multipoint capability |
KR101352630B1 (ko) * | 2011-08-02 | 2014-01-17 | 광주과학기술원 | 가상화 노드, 가상화 노드를 설치하여 콘텐츠를 공유하는 사용자 노드, 그리고 가상화 노드를 이용한 콘텐츠 공유 방법 |
US8903893B2 (en) | 2011-11-15 | 2014-12-02 | International Business Machines Corporation | Diagnostic heartbeating in a distributed data processing environment |
US8756453B2 (en) | 2011-11-15 | 2014-06-17 | International Business Machines Corporation | Communication system with diagnostic capabilities |
US8874974B2 (en) | 2011-11-15 | 2014-10-28 | International Business Machines Corporation | Synchronizing a distributed communication system using diagnostic heartbeating |
US9244796B2 (en) | 2011-11-15 | 2016-01-26 | International Business Machines Corporation | Diagnostic heartbeat throttling |
US8769089B2 (en) | 2011-11-15 | 2014-07-01 | International Business Machines Corporation | Distributed application using diagnostic heartbeating |
WO2013085517A1 (en) * | 2011-12-08 | 2013-06-13 | Intel Corporation | Method and apparatus for policy-based content sharing in a peer to peer manner using a hardware based root of trust |
EP2798567A4 (en) * | 2011-12-29 | 2015-08-12 | Intel Corp | METHOD FOR RESTRICTING DIGITAL ENTERPRISE INFORMATION WITHIN THE LIMITS OF THE COMPANY |
KR101969583B1 (ko) * | 2012-01-10 | 2019-08-20 | 삼성전자주식회사 | 컨텐츠 관리 방법과 장치 및 기록 매체 |
JP6019676B2 (ja) | 2012-03-30 | 2016-11-02 | ブラザー工業株式会社 | 通信装置 |
JP6019675B2 (ja) | 2012-03-30 | 2016-11-02 | ブラザー工業株式会社 | 機能実行装置 |
US9277013B2 (en) | 2012-05-10 | 2016-03-01 | Qualcomm Incorporated | Storing local session data at a user equipment and selectively transmitting group session data to group session targets based on dynamic playback relevance information |
JP5867319B2 (ja) | 2012-07-03 | 2016-02-24 | ブラザー工業株式会社 | 通信装置 |
JP5900228B2 (ja) * | 2012-08-06 | 2016-04-06 | ブラザー工業株式会社 | 通信装置 |
CN103716340B (zh) * | 2012-09-28 | 2017-08-25 | 联想(北京)有限公司 | 终端设备以及信息处理方法 |
US10631134B2 (en) * | 2012-11-29 | 2020-04-21 | Red Hat, Inc. | Distributing data between mobile services |
US10133754B2 (en) | 2013-02-10 | 2018-11-20 | Qualcomm Incorporated | Peer-to-peer picture sharing using custom based rules for minimal power consumption and better user experience |
US9027032B2 (en) | 2013-07-16 | 2015-05-05 | Damaka, Inc. | System and method for providing additional functionality to existing software in an integrated manner |
JP6264815B2 (ja) | 2013-09-30 | 2018-01-24 | ブラザー工業株式会社 | 通信装置 |
US9357016B2 (en) | 2013-10-18 | 2016-05-31 | Damaka, Inc. | System and method for virtual parallel resource management |
JP6402494B2 (ja) | 2014-05-30 | 2018-10-10 | ブラザー工業株式会社 | 機能実行システム、機能実行装置、及び、通信端末 |
WO2016022574A1 (en) | 2014-08-05 | 2016-02-11 | Damaka, Inc. | System and method for providing unified communications and collaboration (ucc) connectivity between incompatible systems |
US10091025B2 (en) | 2016-03-31 | 2018-10-02 | Damaka, Inc. | System and method for enabling use of a single user identifier across incompatible networks for UCC functionality |
US10176623B2 (en) * | 2016-05-02 | 2019-01-08 | Tic Talking Holdings Inc. | Facilitation of depiction of geographic relationships via a user interface |
US10382355B2 (en) | 2016-06-02 | 2019-08-13 | Electronics And Telecommunications Research Institute | Overlay management server and operating method thereof |
CN106455128B (zh) * | 2016-11-14 | 2020-07-28 | 上海龙旗科技股份有限公司 | 一种wifi点对点数据传输的方法及设备 |
US10902119B1 (en) * | 2017-03-30 | 2021-01-26 | Fireeye, Inc. | Data extraction system for malware analysis |
Family Cites Families (327)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5220657A (en) | 1987-12-02 | 1993-06-15 | Xerox Corporation | Updating local copy of shared data in a collaborative system |
US5537586A (en) * | 1992-04-30 | 1996-07-16 | Individual, Inc. | Enhanced apparatus and methods for retrieving and selecting profiled textural information records from a database of defined category structures |
US5517617A (en) * | 1994-06-29 | 1996-05-14 | Digital Equipment Corporation | Automatic assignment of addresses in a computer communications network |
US5629980A (en) | 1994-11-23 | 1997-05-13 | Xerox Corporation | System for controlling the distribution and use of digital works |
JPH08263438A (ja) | 1994-11-23 | 1996-10-11 | Xerox Corp | ディジタルワークの配給及び使用制御システム並びにディジタルワークへのアクセス制御方法 |
US5758257A (en) | 1994-11-29 | 1998-05-26 | Herz; Frederick | System and method for scheduling broadcast of and access to video programs and other data using customer profiles |
US5892900A (en) | 1996-08-30 | 1999-04-06 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
CN100365535C (zh) | 1995-02-13 | 2008-01-30 | 英特特拉斯特技术公司 | 用于安全交易管理和电子权利保护的系统和方法 |
US6807534B1 (en) | 1995-10-13 | 2004-10-19 | Trustees Of Dartmouth College | System and method for managing copyrighted electronic media |
JP2000503154A (ja) | 1996-01-11 | 2000-03-14 | エムアールジェイ インコーポレイテッド | デジタル所有権のアクセスと分配を制御するためのシステム |
US6308175B1 (en) | 1996-04-04 | 2001-10-23 | Lycos, Inc. | Integrated collaborative/content-based filter structure employing selectively shared, content-based profile data to evaluate information entities in a massive information network |
FI103162B (fi) * | 1996-12-20 | 1999-04-30 | Nokia Mobile Phones Ltd | Verkkorakenne langattoman ATM-järjestelmän osan toteuttamiseen ja mene telmä kytkinten välisen tukiasemanvaihdon suorittamiseksi tällaisessa verkkorakenteessa |
US5884035A (en) | 1997-03-24 | 1999-03-16 | Pfn, Inc. | Dynamic distributed group registry apparatus and method for collaboration and selective sharing of information |
IL121181A0 (en) | 1997-06-27 | 1997-11-20 | Agentics Ltd | A method and system for unifying multiple information resources into hierarchial integrated information resource accessible by means of user interface |
JPH11110324A (ja) | 1997-10-07 | 1999-04-23 | Hitachi Ltd | 代理サーバ選択装置および代理サーバ |
US6151624A (en) | 1998-02-03 | 2000-11-21 | Realnames Corporation | Navigating network resources based on metadata |
US6594693B1 (en) | 1998-02-10 | 2003-07-15 | Nitin A. Borwankar | Method and apparatus for a structured, synchronized conversation using electronic messages over a computer network |
US6260069B1 (en) * | 1998-02-10 | 2001-07-10 | International Business Machines Corporation | Direct data retrieval in a distributed computing system |
US6088702A (en) | 1998-02-25 | 2000-07-11 | Plantz; Scott H. | Group publishing system |
US7051003B1 (en) | 1998-02-26 | 2006-05-23 | Atabok Japan, Inc. | Method and apparatus for delivering electronic data through a proxy server |
US6567122B1 (en) | 1998-03-18 | 2003-05-20 | Ipac Acquisition Subsidiary I | Method and system for hosting an internet web site on a digital camera |
US7756892B2 (en) | 2000-05-02 | 2010-07-13 | Digimarc Corporation | Using embedded data with file sharing |
US6389541B1 (en) | 1998-05-15 | 2002-05-14 | First Union National Bank | Regulating access to digital content |
US6138159A (en) | 1998-06-11 | 2000-10-24 | Phaal; Peter | Load direction mechanism |
US6338086B1 (en) | 1998-06-11 | 2002-01-08 | Placeware, Inc. | Collaborative object architecture |
NL1009376C1 (nl) | 1998-06-11 | 1998-07-06 | Boardwalk Ag | Datasysteem voor het verschaffen van relatiepatronen tussen personen. |
EP1025518A2 (en) | 1998-07-24 | 2000-08-09 | Jarg Corporation | Distributed computer database system and method for performing object search |
US6983371B1 (en) | 1998-10-22 | 2006-01-03 | International Business Machines Corporation | Super-distribution of protected digital content |
WO2000016209A1 (en) | 1998-09-15 | 2000-03-23 | Local2Me.Com, Inc. | Dynamic matchingtm of users for group communication |
US6487583B1 (en) | 1998-09-15 | 2002-11-26 | Ikimbo, Inc. | System and method for information and application distribution |
US7051275B2 (en) | 1998-09-15 | 2006-05-23 | Microsoft Corporation | Annotations for multiple versions of media content |
US6687732B1 (en) | 1998-09-28 | 2004-02-03 | Inktomi Corporation | Adaptive traffic bypassing in an intercepting network driver |
US6574239B1 (en) * | 1998-10-07 | 2003-06-03 | Eric Morgan Dowling | Virtual connection of a remote unit to a server |
US6149441A (en) | 1998-11-06 | 2000-11-21 | Technology For Connecticut, Inc. | Computer-based educational system |
JP3991178B2 (ja) | 1998-11-11 | 2007-10-17 | ソニー株式会社 | 複製世代管理方法、情報信号記録装置、情報信号出力装置および情報信号再生装置 |
US6498795B1 (en) | 1998-11-18 | 2002-12-24 | Nec Usa Inc. | Method and apparatus for active information discovery and retrieval |
US6560578B2 (en) | 1999-03-12 | 2003-05-06 | Expanse Networks, Inc. | Advertisement selection system supporting discretionary target market characteristics |
US7150030B1 (en) | 1998-12-03 | 2006-12-12 | Prime Research Alliance, Inc. | Subscriber characterization system |
US6963884B1 (en) | 1999-03-10 | 2005-11-08 | Digimarc Corporation | Recoverable digital content degradation: method and apparatus |
US6275819B1 (en) | 1999-03-16 | 2001-08-14 | Novell, Inc. | Method and apparatus for characterizing and retrieving query results |
JP3644580B2 (ja) | 1999-03-19 | 2005-04-27 | 富士通株式会社 | 表示制御方法及び装置 |
US6421439B1 (en) | 1999-03-24 | 2002-07-16 | Microsoft Corporation | System and method for user affiliation in a telephone network |
US7302429B1 (en) | 1999-04-11 | 2007-11-27 | William Paul Wanker | Customizable electronic commerce comparison system and method |
US6349336B1 (en) | 1999-04-26 | 2002-02-19 | Hewlett-Packard Company | Agent/proxy connection control across a firewall |
US7006999B1 (en) | 1999-05-13 | 2006-02-28 | Xerox Corporation | Method for enabling privacy and trust in electronic communities |
GB9913165D0 (en) | 1999-06-08 | 1999-08-04 | Secr Defence | Access control in a web environment |
US6301609B1 (en) | 1999-07-07 | 2001-10-09 | Lucent Technologies Inc. | Assignable associate priorities for user-definable instant messaging buddy groups |
US6525747B1 (en) | 1999-08-02 | 2003-02-25 | Amazon.Com, Inc. | Method and system for conducting a discussion relating to an item |
US6785704B1 (en) | 1999-12-20 | 2004-08-31 | Fastforward Networks | Content distribution system for operation over an internetwork including content peering arrangements |
US6763343B1 (en) * | 1999-09-20 | 2004-07-13 | David M. Brooke | Preventing duplication of the data in reference resource for XML page generation |
US6748420B1 (en) | 1999-11-23 | 2004-06-08 | Cisco Technology, Inc. | Methods and apparatus for providing shared access to an application |
US6832245B1 (en) | 1999-12-01 | 2004-12-14 | At&T Corp. | System and method for analyzing communications of user messages to rank users and contacts based on message content |
WO2001042942A1 (en) | 1999-12-10 | 2001-06-14 | Myteam.Com, Inc. | Tools for administering leagues and accessing and populating a community website structure |
US20010007099A1 (en) | 1999-12-30 | 2001-07-05 | Diogo Rau | Automated single-point shopping cart system and method |
US6651086B1 (en) | 2000-02-22 | 2003-11-18 | Yahoo! Inc. | Systems and methods for matching participants to a conversation |
US6701362B1 (en) | 2000-02-23 | 2004-03-02 | Purpleyogi.Com Inc. | Method for creating user profiles |
US6311194B1 (en) | 2000-03-15 | 2001-10-30 | Taalee, Inc. | System and method for creating a semantic web and its applications in browsing, searching, profiling, personalization and advertising |
US6442693B1 (en) | 2000-03-31 | 2002-08-27 | Ge Financial Assurance Holdings, Inc. | Method and system for providing secure online communications between registered participants |
US20020032905A1 (en) | 2000-04-07 | 2002-03-14 | Sherr Scott Jeffrey | Online digital video signal transfer apparatus and method |
US7814208B2 (en) | 2000-04-11 | 2010-10-12 | Science Applications International Corporation | System and method for projecting content beyond firewalls |
WO2001084313A2 (en) | 2000-05-02 | 2001-11-08 | Sun Microsystems, Inc. | Method and system for achieving high availability in a networked computer system |
US6816906B1 (en) | 2000-05-08 | 2004-11-09 | International Business Machines Corporation | Mechanism for building access control structures for authoring systems |
US6581072B1 (en) | 2000-05-18 | 2003-06-17 | Rakesh Mathur | Techniques for identifying and accessing information of interest to a user in a network environment without compromising the user's privacy |
EP1285317A1 (en) | 2000-05-19 | 2003-02-26 | Netscape Communications | Adaptive multi-tier authentication system |
US6772160B2 (en) | 2000-06-08 | 2004-08-03 | Ingenuity Systems, Inc. | Techniques for facilitating information acquisition and storage |
US20020057284A1 (en) | 2000-06-29 | 2002-05-16 | Dalby Richard Sean | Methods and systems for delivering announcements to users of an information system |
US7047202B2 (en) | 2000-07-13 | 2006-05-16 | Amit Jaipuria | Method and apparatus for optimizing networking potential using a secured system for an online community |
AU7593601A (en) | 2000-07-14 | 2002-01-30 | Atabok Inc | Controlling and managing digital assets |
AU2001286397A1 (en) | 2000-07-18 | 2002-01-30 | Learningsoft Corporation | Adaptive content delivery system and method |
JP2002055935A (ja) | 2000-08-07 | 2002-02-20 | Sony Corp | 情報処理装置および情報処理方法、サービス提供システム、並びに記録媒体 |
US7054900B1 (en) | 2000-08-18 | 2006-05-30 | Netzero, Inc. | Automatic, profile-free web page recommendation |
US20020032634A1 (en) | 2000-09-11 | 2002-03-14 | Abrams Howard Allan | Method and system for online live auctions |
US20040064416A1 (en) | 2000-10-03 | 2004-04-01 | Ariel Peled | Secure distribution of digital content |
US6970840B1 (en) | 2000-10-06 | 2005-11-29 | Martsoft Corporation | Method and system for providing virtual access to information distributed across heterogeneous catalog servers |
US7197470B1 (en) | 2000-10-11 | 2007-03-27 | Buzzmetrics, Ltd. | System and method for collection analysis of electronic discussion methods |
US7370015B2 (en) | 2000-10-12 | 2008-05-06 | Sap Portals Israel Ltd. | User impersonation by a proxy server |
JP4433600B2 (ja) | 2000-10-31 | 2010-03-17 | ソニー株式会社 | 情報処理装置および方法、並びに記録媒体 |
CA2361022A1 (en) | 2000-11-03 | 2002-05-03 | Charles Allan Armstrong | Knowledge management system |
US7140044B2 (en) | 2000-11-13 | 2006-11-21 | Digital Doors, Inc. | Data security system and method for separation of user communities |
US7103634B1 (en) | 2000-11-16 | 2006-09-05 | International Business Machines Corporation | Method and system for e-mail chain group |
US7072982B2 (en) | 2000-11-22 | 2006-07-04 | Microsoft Corporation | Universal naming scheme for peer to peer resources |
US7024391B2 (en) | 2000-12-04 | 2006-04-04 | Kraft Foods Holdings, Inc. | System, method and program product for sharing information |
US6941370B2 (en) | 2000-12-20 | 2005-09-06 | International Business Machines Corporation | Dynamic proxy reconfiguration system and method to support sharing of extra capacity |
US6993564B2 (en) | 2000-12-22 | 2006-01-31 | At&T Corp. | Method of authorizing receipt of instant messages by a recipient user |
US7467212B2 (en) | 2000-12-28 | 2008-12-16 | Intel Corporation | Control of access control lists based on social networks |
US20020091556A1 (en) | 2001-01-08 | 2002-07-11 | Onepub.Com.Inc. | Systems and methods for travel networking |
US7685224B2 (en) * | 2001-01-11 | 2010-03-23 | Truelocal Inc. | Method for providing an attribute bounded network of computers |
US7774279B2 (en) | 2001-05-31 | 2010-08-10 | Contentguard Holdings, Inc. | Rights offering and granting |
AU2002234258A1 (en) | 2001-01-22 | 2002-07-30 | Sun Microsystems, Inc. | Peer-to-peer network computing platform |
US7165107B2 (en) * | 2001-01-22 | 2007-01-16 | Sun Microsystems, Inc. | System and method for dynamic, transparent migration of services |
US20040148503A1 (en) | 2002-01-25 | 2004-07-29 | David Sidman | Apparatus, method, and system for accessing digital rights management information |
US7120681B2 (en) * | 2001-01-30 | 2006-10-10 | International Business Machines Corporation | Cluster control in network systems |
US7043644B2 (en) | 2001-01-31 | 2006-05-09 | Qurio Holdings, Inc. | Facilitating file access from firewall-protected nodes in a peer-to-peer network |
US20030018968A1 (en) | 2001-02-01 | 2003-01-23 | Mark Avnet | Method and apparatus for inserting data into video stream to enhance television applications |
US7366759B2 (en) | 2001-02-22 | 2008-04-29 | Parity Communications, Inc. | Method and system for characterizing relationships in social networks |
US7237200B2 (en) | 2001-03-16 | 2007-06-26 | Netomat, Inc. | Sharing, managing and communicating information over a computer network |
US7047406B2 (en) | 2001-03-21 | 2006-05-16 | Qurlo Holdings, Inc. | Method and system for providing a secure peer-to-peer file delivery network |
US6871347B2 (en) | 2001-04-13 | 2005-03-22 | Interland, Inc. | Method and apparatus for facilitating load balancing across name servers |
US7272636B2 (en) * | 2001-04-24 | 2007-09-18 | Sun Microsystems, Inc. | Peer group name server |
ATE354224T1 (de) | 2001-05-02 | 2007-03-15 | Symbian Ltd | Gruppenkommunikationsverfahren für ein funkkommunikationsgerät |
US6757517B2 (en) | 2001-05-10 | 2004-06-29 | Chin-Chi Chang | Apparatus and method for coordinated music playback in wireless ad-hoc networks |
JP4098490B2 (ja) | 2001-05-15 | 2008-06-11 | 株式会社東芝 | 知識蓄積支援システムおよび同システムにおけるユーザ操作制限方法 |
US20040024892A1 (en) | 2001-05-21 | 2004-02-05 | Creswell Carroll W. | System for providing sequenced communications within a group |
US7099885B2 (en) | 2001-05-25 | 2006-08-29 | Unicorn Solutions | Method and system for collaborative ontology modeling |
US7509685B2 (en) | 2001-06-26 | 2009-03-24 | Sealedmedia Limited | Digital rights management |
US6631098B2 (en) | 2001-07-02 | 2003-10-07 | Prolific Technology Inc. | Dual-mode MP3 player |
US7421411B2 (en) | 2001-07-06 | 2008-09-02 | Nokia Corporation | Digital rights management in a mobile communications environment |
JP4040849B2 (ja) | 2001-07-16 | 2008-01-30 | 株式会社東芝 | 知識蓄積支援システムおよび同システムにおけるメッセージ移動方法 |
US7249107B2 (en) | 2001-07-20 | 2007-07-24 | Microsoft Corporation | Redistribution of rights-managed content |
GB2378274A (en) * | 2001-07-31 | 2003-02-05 | Hewlett Packard Co | Distributing electronic content |
US7383433B2 (en) | 2001-07-31 | 2008-06-03 | Sun Microsystems, Inc. | Trust spectrum for certificate distribution in distributed peer-to-peer networks |
EP1413116A1 (en) | 2001-08-03 | 2004-04-28 | Matsushita Electric Industrial Co., Ltd. | Access control system |
DE60211524T2 (de) * | 2001-08-04 | 2006-12-14 | Kontiki, Inc., Sunnyvale | Verfahren und vorrichtung zur verteilten lieferung von inhalten innerhalb eines computernetzwerkes |
EP1423796A1 (en) | 2001-08-09 | 2004-06-02 | Gigamedia Access Corporation | Hybrid system architecture for secure peer-to-peer-communication |
US6917944B1 (en) | 2001-08-30 | 2005-07-12 | Cisco Technology, Inc. | Method and apparatus for configuring access to a plurality of data repositories |
GB2379297B (en) | 2001-09-03 | 2005-02-23 | Intercede Ltd | Server with file verification |
US20030046587A1 (en) * | 2001-09-05 | 2003-03-06 | Satyam Bheemarasetti | Secure remote access using enterprise peer networks |
US7454464B2 (en) | 2001-09-10 | 2008-11-18 | Intel Corporation | Peer discovery and connection management based on context sensitive social networks |
US8041803B2 (en) | 2001-09-26 | 2011-10-18 | Qurio Holdings, Inc. | Method and system for delivering files in digital file marketplace |
EP1442411A4 (en) | 2001-09-30 | 2006-02-01 | Realcontacts Ltd | CONNECTING SERVICE |
US6629100B2 (en) | 2001-10-01 | 2003-09-30 | Ipac Acquisition Subsidiary I, Llc | Network-based photosharing architecture for search and delivery of private images and metadata |
GB2381424B (en) | 2001-10-26 | 2005-01-05 | Roke Manor Research | A method of controlling the amount of data transferred between a terminal and a server |
US20030084162A1 (en) | 2001-10-31 | 2003-05-01 | Johnson Bruce L. | Managing peer-to-peer access to a device behind a firewall |
US20030120680A1 (en) | 2001-11-16 | 2003-06-26 | Rakesh Agrawal | Method for directly providing content and services via a computer network |
US7092952B1 (en) | 2001-11-20 | 2006-08-15 | Peter Wilens | Method for grouping computer subscribers by common preferences to establish non-intimate relationships |
US20050021398A1 (en) | 2001-11-21 | 2005-01-27 | Webhound Corporation | Method and system for downloading digital content over a network |
US7227864B2 (en) | 2001-12-17 | 2007-06-05 | Microsoft Corporation | Methods and systems for establishing communications through firewalls and network address translators |
US20030120928A1 (en) | 2001-12-21 | 2003-06-26 | Miles Cato | Methods for rights enabled peer-to-peer networking |
US7162480B2 (en) | 2001-12-26 | 2007-01-09 | Sbc Technology Resources, Inc. | Usage-based adaptable taxonomy |
US7088823B2 (en) | 2002-01-09 | 2006-08-08 | International Business Machines Corporation | System and method for secure distribution and evaluation of compressed digital information |
US7287053B2 (en) | 2002-01-15 | 2007-10-23 | International Business Machines Corporation | Ad hoc data sharing in virtual team rooms |
US7308449B2 (en) | 2002-02-01 | 2007-12-11 | John Fairweather | System and method for managing collections of data on a network |
US20030154306A1 (en) | 2002-02-11 | 2003-08-14 | Perry Stephen Hastings | System and method to proxy inbound connections to privately addressed hosts |
US7424701B2 (en) | 2002-02-12 | 2008-09-09 | Sandpiper Software, Inc. | Method and apparatus for frame-based knowledge representation in the unified modeling language (UML) |
US7167910B2 (en) | 2002-02-20 | 2007-01-23 | Microsoft Corporation | Social mapping of contacts from computer communication information |
US20030171941A1 (en) | 2002-03-07 | 2003-09-11 | Kraenzel Carl Joseph | System and method for identifying synergistic opportunities within and between organizations |
US7512649B2 (en) * | 2002-03-22 | 2009-03-31 | Sun Microsytems, Inc. | Distributed identities |
KR20040097211A (ko) | 2002-03-28 | 2004-11-17 | 산메데카루 가부시카가이샤 | 페이스트상 중합개시제 조성물, 치과용 또는 외과용접착제 및 접착제 키트 |
US6938042B2 (en) | 2002-04-03 | 2005-08-30 | Laplink Software Inc. | Peer-to-peer file sharing |
US20030191814A1 (en) | 2002-04-03 | 2003-10-09 | Luu Tran | Personalization in a wireless portal server |
US20030195851A1 (en) | 2002-04-11 | 2003-10-16 | Ong Lance D. | System for managing distribution of digital audio content |
US7668901B2 (en) | 2002-04-15 | 2010-02-23 | Avid Technology, Inc. | Methods and system using a local proxy server to process media data for local area users |
AU2003225052A1 (en) | 2002-04-16 | 2003-11-03 | Sky Kruse | Method and system for watermarking digital content and for introducing failure points into digital content |
US20030204602A1 (en) | 2002-04-26 | 2003-10-30 | Hudson Michael D. | Mediated multi-source peer content delivery network architecture |
US6970444B2 (en) | 2002-05-13 | 2005-11-29 | Meshnetworks, Inc. | System and method for self propagating information in ad-hoc peer-to-peer networks |
US20030216824A1 (en) | 2002-05-14 | 2003-11-20 | Docomo Communications Laboratories Usa, Inc. | Method and apparatus for self-degrading digital data |
US7346696B2 (en) | 2002-05-21 | 2008-03-18 | At&T Deleware Intellectual Property, Inc. | Group access management system |
US20030220980A1 (en) | 2002-05-24 | 2003-11-27 | Crane Jeffrey Robert | Method and system for providing a computer network-based community-building function through user-to-user ally association |
US7568004B2 (en) | 2002-06-20 | 2009-07-28 | Linda Gottfried | Method and system for sharing brand information |
US7107317B2 (en) | 2002-06-24 | 2006-09-12 | International Business Machines Corporation | Targeted information delivery to multiple users |
US8150922B2 (en) | 2002-07-17 | 2012-04-03 | Research In Motion Limited | Voice and text group chat display management techniques for wireless mobile terminals |
JP4076071B2 (ja) * | 2002-08-19 | 2008-04-16 | アルパイン株式会社 | 移動体間の通信方法及び車両通信装置 |
US7627633B2 (en) | 2002-08-30 | 2009-12-01 | The Go Daddy Group, Inc. | Proxy email method and system |
US7263560B2 (en) * | 2002-08-30 | 2007-08-28 | Sun Microsystems, Inc. | Decentralized peer-to-peer advertisement |
US20040044774A1 (en) | 2002-09-04 | 2004-03-04 | Ruchi Mangalik | System for providing content sharing and method therefor |
US7822810B2 (en) | 2002-09-17 | 2010-10-26 | Hewlett-Packard Development Company, L.P. | Method and system for peer to peer common channel collaboration |
US8204992B2 (en) * | 2002-09-26 | 2012-06-19 | Oracle America, Inc. | Presence detection using distributed indexes in peer-to-peer networks |
US7206934B2 (en) * | 2002-09-26 | 2007-04-17 | Sun Microsystems, Inc. | Distributed indexing of identity information in a peer-to-peer network |
CN100459534C (zh) | 2002-10-07 | 2009-02-04 | 日本电信电话株式会社 | 分层网络节点及通过该节点构成的网络、节点和分层网络 |
US20040073659A1 (en) * | 2002-10-15 | 2004-04-15 | Carl Rajsic | Method and apparatus for managing nodes in a network |
US7249123B2 (en) | 2002-10-31 | 2007-07-24 | International Business Machines Corporation | System and method for building social networks based on activity around shared virtual objects |
US7398261B2 (en) | 2002-11-20 | 2008-07-08 | Radar Networks, Inc. | Method and system for managing and tracking semantic objects |
US20040103044A1 (en) | 2002-11-26 | 2004-05-27 | Vandewater Eric J. | System and method of protecting and promoting digital content |
EP1576447A1 (en) | 2002-12-17 | 2005-09-21 | Koninklijke Philips Electronics N.V. | System to allow content sharing |
US7451217B2 (en) * | 2002-12-19 | 2008-11-11 | International Business Machines Corporation | Method and system for peer-to-peer authorization |
US7177880B2 (en) | 2002-12-19 | 2007-02-13 | International Business Machines Corporation | Method of creating and displaying relationship chains between users of a computerized network |
US7636719B2 (en) | 2002-12-19 | 2009-12-22 | Microsoft Corporation | Contact schema |
US7899932B2 (en) | 2003-01-15 | 2011-03-01 | Panasonic Corporation | Relayed network address translator (NAT) traversal |
US7769881B2 (en) * | 2003-01-24 | 2010-08-03 | Hitachi, Ltd. | Method and apparatus for peer-to peer access |
US7472110B2 (en) | 2003-01-29 | 2008-12-30 | Microsoft Corporation | System and method for employing social networks for information discovery |
US7774495B2 (en) | 2003-02-13 | 2010-08-10 | Oracle America, Inc, | Infrastructure for accessing a peer-to-peer network environment |
US20040205219A1 (en) * | 2003-02-19 | 2004-10-14 | Wen-Syan Li | Virtual active network for live streaming media |
US20060146765A1 (en) | 2003-02-19 | 2006-07-06 | Koninklijke Philips Electronics, N.V. | System for ad hoc sharing of content items between portable devices and interaction methods therefor |
US20060167804A1 (en) | 2003-02-25 | 2006-07-27 | Ali Aydar | Track listening and playing service for digital media files |
US20040181487A1 (en) | 2003-03-10 | 2004-09-16 | Microsoft Corporation | Digital media clearing house platform |
US20040181517A1 (en) * | 2003-03-13 | 2004-09-16 | Younghee Jung | System and method for social interaction |
US7136945B2 (en) | 2003-03-31 | 2006-11-14 | Sony Corporation | Method and apparatus for extending protected content access with peer to peer applications |
WO2004092901A2 (en) | 2003-04-11 | 2004-10-28 | Richard Postrel | Command synchronization method and system |
US20050015357A1 (en) | 2003-05-21 | 2005-01-20 | Active Path Solutions, Inc. | System and method for content development |
US20040237045A1 (en) | 2003-05-21 | 2004-11-25 | Eintelligence, Inc. | Method for asynchronous sharing of integrated spreadsheets using a network |
US7760729B2 (en) | 2003-05-28 | 2010-07-20 | Citrix Systems, Inc. | Policy based network address translation |
EP1484693A1 (en) * | 2003-06-04 | 2004-12-08 | Sony NetServices GmbH | Content recommendation device with an arrangement engine |
JP4331203B2 (ja) * | 2003-06-04 | 2009-09-16 | 株式会社ソニー・コンピュータエンタテインメント | ピアツーピアネットワークのためのコンテンツ分散型オーバーレイネットワーク |
WO2004109966A2 (en) * | 2003-06-05 | 2004-12-16 | Millennial Net | Protocol for configuring a wireless network |
US7069308B2 (en) | 2003-06-16 | 2006-06-27 | Friendster, Inc. | System, method and apparatus for connecting users in an online computer system based on their relationships within social networks |
US7739602B2 (en) | 2003-06-24 | 2010-06-15 | Aol Inc. | System and method for community centric resource sharing based on a publishing subscription model |
US7769866B2 (en) * | 2003-07-14 | 2010-08-03 | Microsoft Corporation | Virtual connectivity with subscribe-notify service |
US7231249B2 (en) | 2003-07-24 | 2007-06-12 | Mirowski Family Ventures, L.L.C. | Methods, apparatus, and systems for multiple stimulation from a single stimulator |
US8200775B2 (en) | 2005-02-01 | 2012-06-12 | Newsilike Media Group, Inc | Enhanced syndication |
US7188254B2 (en) | 2003-08-20 | 2007-03-06 | Microsoft Corporation | Peer-to-peer authorization method |
KR100493900B1 (ko) | 2003-08-21 | 2005-06-10 | 삼성전자주식회사 | 사용자간 콘텐츠에 대한 권한정보의 공유방법 |
US20050047573A1 (en) | 2003-08-28 | 2005-03-03 | Cameron Jeffrey M. | Controlling access to features of call processing software |
JP4778899B2 (ja) | 2003-09-12 | 2011-09-21 | イーエムシー コーポレイション | リスクベース認証のためのシステムおよび方法 |
US7316027B2 (en) | 2004-02-03 | 2008-01-01 | Novell, Inc. | Techniques for dynamically establishing and managing trust relationships |
US20050091316A1 (en) | 2003-10-03 | 2005-04-28 | Oscar Ponce | System and method for creating and selectively sharing data elements in a peer-to-peer network |
US7281274B2 (en) | 2003-10-16 | 2007-10-09 | Lmp Media Llc | Electronic media distribution system |
US7567987B2 (en) | 2003-10-24 | 2009-07-28 | Microsoft Corporation | File sharing in P2P group shared spaces |
US20050165726A1 (en) | 2003-10-30 | 2005-07-28 | Pepper Computer, Inc. | Packaged, organized collections of digital information, and mechanisms and methods for navigating and sharing the collection |
US7181498B2 (en) | 2003-10-31 | 2007-02-20 | Yahoo! Inc. | Community-based green list for antispam |
KR100539245B1 (ko) | 2003-11-05 | 2005-12-27 | 삼성전자주식회사 | 공기 가이드를 구비한 하드 디스크 드라이브 |
JP4653757B2 (ja) * | 2003-11-12 | 2011-03-16 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 番組推薦システム |
US20050114672A1 (en) | 2003-11-20 | 2005-05-26 | Encryptx Corporation | Data rights management of digital information in a portable software permission wrapper |
US7451190B2 (en) | 2003-11-26 | 2008-11-11 | Yahoo! Inc. | Associating multiple visibility profiles with a user of a real-time communication system |
US20050203801A1 (en) | 2003-11-26 | 2005-09-15 | Jared Morgenstern | Method and system for collecting, sharing and tracking user or group associates content via a communications network |
US7606772B2 (en) | 2003-11-28 | 2009-10-20 | Manyworlds, Inc. | Adaptive social computing methods |
US7526459B2 (en) | 2003-11-28 | 2009-04-28 | Manyworlds, Inc. | Adaptive social and process network systems |
US7526458B2 (en) * | 2003-11-28 | 2009-04-28 | Manyworlds, Inc. | Adaptive recommendations systems |
US20050154701A1 (en) | 2003-12-01 | 2005-07-14 | Parunak H. Van D. | Dynamic information extraction with self-organizing evidence construction |
WO2005062843A2 (en) | 2003-12-19 | 2005-07-14 | America On Line, Inc | Community messaging lists for authorization to deliver electronic messages |
US7475110B2 (en) | 2004-01-07 | 2009-01-06 | International Business Machines Corporation | Method and interface for multi-threaded conversations in instant messaging |
US8015119B2 (en) | 2004-01-21 | 2011-09-06 | Google Inc. | Methods and systems for the display and navigation of a social network |
US8010459B2 (en) | 2004-01-21 | 2011-08-30 | Google Inc. | Methods and systems for rating associated members in a social network |
US7761569B2 (en) | 2004-01-23 | 2010-07-20 | Tiversa, Inc. | Method for monitoring and providing information over a peer to peer network |
US20050171954A1 (en) | 2004-01-29 | 2005-08-04 | Yahoo! Inc. | Selective electronic messaging within an online social network for SPAM detection |
US7707122B2 (en) | 2004-01-29 | 2010-04-27 | Yahoo ! Inc. | System and method of information filtering using measures of affinity of a relationship |
US7269590B2 (en) | 2004-01-29 | 2007-09-11 | Yahoo! Inc. | Method and system for customizing views of information associated with a social network user |
US8612359B2 (en) | 2004-01-29 | 2013-12-17 | Yahoo! Inc. | Method and system for sharing portal subscriber information in an online social network |
US7885901B2 (en) | 2004-01-29 | 2011-02-08 | Yahoo! Inc. | Method and system for seeding online social network contacts |
US7702728B2 (en) | 2004-01-30 | 2010-04-20 | Microsoft Corporation | Mobile shared group interaction |
US7310676B2 (en) | 2004-02-09 | 2007-12-18 | Proxpro, Inc. | Method and computer system for matching mobile device users for business and social networking |
US20050198031A1 (en) | 2004-03-04 | 2005-09-08 | Peter Pezaris | Method and system for controlling access to user information in a social networking environment |
US20050198305A1 (en) | 2004-03-04 | 2005-09-08 | Peter Pezaris | Method and system for associating a thread with content in a social networking environment |
US20050195978A1 (en) | 2004-03-04 | 2005-09-08 | Miodrag Babic | Method and apparatus for encoding and selective distribution of licensed digital content |
US20050197846A1 (en) | 2004-03-04 | 2005-09-08 | Peter Pezaris | Method and system for generating a proximity index in a social networking environment |
US8898239B2 (en) | 2004-03-05 | 2014-11-25 | Aol Inc. | Passively populating a participant list with known contacts |
US20050204038A1 (en) | 2004-03-11 | 2005-09-15 | Alexander Medvinsky | Method and system for distributing data within a network |
US7016307B2 (en) | 2004-03-11 | 2006-03-21 | Yahoo! Inc. | Method and system for finding related nodes in a social network |
WO2005089286A2 (en) | 2004-03-15 | 2005-09-29 | America Online, Inc. | Sharing social network information |
US8788492B2 (en) | 2004-03-15 | 2014-07-22 | Yahoo!, Inc. | Search system and methods with integration of user annotations from a trust network |
US20050210409A1 (en) | 2004-03-19 | 2005-09-22 | Kenny Jou | Systems and methods for class designation in a computerized social network application |
US20050210104A1 (en) | 2004-03-19 | 2005-09-22 | Marko Torvinen | Method and system for presence enhanced group management and communication |
US20060020960A1 (en) | 2004-03-24 | 2006-01-26 | Sandeep Relan | System, method, and apparatus for secure sharing of multimedia content across several electronic devices |
US20050216550A1 (en) | 2004-03-26 | 2005-09-29 | Paseman William G | Communication mode and group integration for social networks |
US20050229243A1 (en) | 2004-03-31 | 2005-10-13 | Svendsen Hugh B | Method and system for providing Web browsing through a firewall in a peer to peer network |
US8234414B2 (en) | 2004-03-31 | 2012-07-31 | Qurio Holdings, Inc. | Proxy caching in a photosharing peer-to-peer network to improve guest image viewing performance |
US7849135B2 (en) | 2004-04-09 | 2010-12-07 | At&T Mobility Ii Llc | Sharing content on mobile devices |
US20050243736A1 (en) | 2004-04-19 | 2005-11-03 | International Business Machines Corporation | System, method, and service for finding an optimal collection of paths among a plurality of paths between two nodes in a complex network |
US20050262246A1 (en) | 2004-04-19 | 2005-11-24 | Satish Menon | Systems and methods for load balancing storage and streaming media requests in a scalable, cluster-based architecture for real-time streaming |
US7908663B2 (en) | 2004-04-20 | 2011-03-15 | Microsoft Corporation | Abstractions and automation for enhanced sharing and collaboration |
US20050234864A1 (en) | 2004-04-20 | 2005-10-20 | Shapiro Aaron M | Systems and methods for improved data sharing and content transformation |
US7620685B2 (en) | 2004-04-21 | 2009-11-17 | Microsoft Corporation | Smart shares and transports |
US20050240773A1 (en) | 2004-04-21 | 2005-10-27 | Fuji Xerox Co., Ltd. | Secure file sharing |
US8234374B2 (en) | 2004-04-26 | 2012-07-31 | Microsoft Corporation | Privacy model that grants access rights and provides security to shared content |
US20050268151A1 (en) * | 2004-04-28 | 2005-12-01 | Nokia, Inc. | System and method for maximizing connectivity during network failures in a cluster system |
US7673003B2 (en) | 2004-04-28 | 2010-03-02 | Microsoft Corporation | Social network email filtering |
US7716324B2 (en) | 2004-05-12 | 2010-05-11 | Baytsp.Com, Inc. | Identification and tracking of digital content distributors on wide area networks |
EP1751646B1 (en) | 2004-05-17 | 2016-03-09 | Koninklijke Philips N.V. | Processing rights in drm systems |
US8554794B2 (en) | 2004-05-17 | 2013-10-08 | Hoover's Inc. | System and method for enforcing privacy in social networks |
US8190999B2 (en) | 2004-05-20 | 2012-05-29 | International Business Machines Corporation | System and method for in-context, topic-oriented instant messaging |
US20050262530A1 (en) | 2004-05-24 | 2005-11-24 | Siemens Information And Communication Networks, Inc. | Systems and methods for multimedia communication |
US8010458B2 (en) | 2004-05-26 | 2011-08-30 | Facebook, Inc. | System and method for managing information flow between members of an online social network |
US8572221B2 (en) | 2004-05-26 | 2013-10-29 | Facebook, Inc. | System and method for managing an online social network |
US7512984B2 (en) | 2004-06-01 | 2009-03-31 | Imera Systems, Inc. | Distributed and scalable instant multimedia communication system |
KR100995333B1 (ko) | 2004-06-07 | 2010-11-19 | 슬링 미디어 인코퍼레이티드 | 퍼스널 미디어 브로드캐스팅 시스템 |
US20050273511A1 (en) * | 2004-06-08 | 2005-12-08 | Hewlett-Packard Development Company, L.P. | Equitable resource sharing in grid-based computing environments |
US7788260B2 (en) | 2004-06-14 | 2010-08-31 | Facebook, Inc. | Ranking search results based on the frequency of clicks on the search results by members of a social network who are within a predetermined degree of separation |
US7478078B2 (en) | 2004-06-14 | 2009-01-13 | Friendster, Inc. | Method for sharing relationship information stored in a social network database with third party databases |
US8832138B2 (en) | 2004-06-17 | 2014-09-09 | Nokia Corporation | System and method for social network search operations |
US7788713B2 (en) | 2004-06-23 | 2010-08-31 | Intel Corporation | Method, apparatus and system for virtualized peer-to-peer proxy services |
US7668957B2 (en) | 2004-06-30 | 2010-02-23 | Microsoft Corporation | Partitioning social networks |
US7359894B1 (en) | 2004-06-30 | 2008-04-15 | Google Inc. | Methods and systems for requesting and providing information in a social network |
FR2873526A1 (fr) | 2004-07-21 | 2006-01-27 | France Telecom | Procede et systeme de gestion de la surcharge d'identite et de la disponibilite privee/publique d'une adresse de messagerie instantanee |
US8302164B2 (en) | 2004-07-22 | 2012-10-30 | Facebook, Inc. | Authorization and authentication based on an individual's social network |
US20060036641A1 (en) | 2004-07-28 | 2006-02-16 | Antony Brydon | System and method for using social networks for the distribution of communications |
US7634539B2 (en) | 2004-08-02 | 2009-12-15 | Sap Ag | Relations between collaboration workspaces |
US7444588B2 (en) | 2004-08-05 | 2008-10-28 | At&T Intellectual Property, I.L.P. | Methods, systems, and storage mediums for providing multi-media content storage and management services |
US7387595B2 (en) | 2004-08-16 | 2008-06-17 | Intellex, Inc. | Exercise machine using lever mounted selectorized dumbbells as exercise mass |
US8224966B2 (en) | 2004-08-24 | 2012-07-17 | Cisco Technology, Inc. | Reproxying an unproxied connection |
US7890871B2 (en) | 2004-08-26 | 2011-02-15 | Redlands Technology, Llc | System and method for dynamically generating, maintaining, and growing an online social network |
US7849329B2 (en) | 2004-09-01 | 2010-12-07 | Microsoft Corporation | Licensing the use of a particular feature of software |
US7702730B2 (en) | 2004-09-03 | 2010-04-20 | Open Text Corporation | Systems and methods for collaboration |
US7756540B2 (en) | 2004-09-17 | 2010-07-13 | Nextel Communications Inc. | Public dispatch chatroom |
US7707167B2 (en) | 2004-09-20 | 2010-04-27 | Microsoft Corporation | Method, system, and apparatus for creating a knowledge interchange profile |
US7730129B2 (en) | 2004-10-20 | 2010-06-01 | Inbit, Inc. | Collaborative communication platforms |
US8683351B2 (en) | 2004-10-26 | 2014-03-25 | International Business Machines Corporation | Chat user interface for threaded text chat systems |
US7620996B2 (en) | 2004-11-01 | 2009-11-17 | Microsoft Corporation | Dynamic summary module |
AU2005301055A1 (en) | 2004-11-04 | 2006-05-11 | Topeer Corporation | System and method for creating a secure trusted social network |
JP4703657B2 (ja) * | 2004-11-05 | 2011-06-15 | 株式会社東芝 | ネットワーク探索方法 |
US7860019B2 (en) * | 2004-11-05 | 2010-12-28 | Toshiba America Research, Inc. | Peer-to-peer network and user information discovery and sharing for mobile users and devices |
US8413198B2 (en) | 2004-11-12 | 2013-04-02 | Intel Corporation | System and method for the controlled on-demand distribution of content via a centralized server and a peer-to-peer network |
US7698386B2 (en) | 2004-11-16 | 2010-04-13 | Qurio Holdings, Inc. | Serving content from an off-line peer server in a photosharing peer-to-peer network in response to a guest request |
US20060184464A1 (en) | 2004-11-22 | 2006-08-17 | Nec Laboratories America, Inc. | System and methods for data analysis and trend prediction |
US7749084B2 (en) | 2004-12-07 | 2010-07-06 | Microsoft Corporation | Tool for real-time graphical exploration of interconnected friends and groups |
US8876606B2 (en) | 2004-12-07 | 2014-11-04 | Microsoft Corporation | User-centric method of aggregating information sources to reinforce digital identity |
US20060123127A1 (en) | 2004-12-08 | 2006-06-08 | Evil Twin Studios, Inc. | System and method for organizing online communities and virtual dwellings within a virtual environment |
US7519818B2 (en) | 2004-12-09 | 2009-04-14 | Microsoft Corporation | Method and system for processing a communication based on trust that the communication is not unwanted as assigned by a sending domain |
US7657458B2 (en) | 2004-12-23 | 2010-02-02 | Diamond Review, Inc. | Vendor-driven, social-network enabled review collection system and method |
US20060143183A1 (en) | 2004-12-23 | 2006-06-29 | Goldberg Adam J | System and method for providing collection sub-groups |
US7607164B2 (en) | 2004-12-23 | 2009-10-20 | Microsoft Corporation | Systems and processes for managing policy change in a distributed enterprise |
US20060140134A1 (en) * | 2004-12-28 | 2006-06-29 | Boloto, Inc. | Advertising business method and system for secure and high speed transmission of media files across an internet, intranet or cable network, and method to avoid digital file sharing or copying |
US20060143084A1 (en) * | 2004-12-28 | 2006-06-29 | Boloto, Inc. | Software and method for advertisor sponsored events within a private centrally managed local or distributed network of users and an optional associated private network card for specialty marketing identification or banking |
US20060143236A1 (en) | 2004-12-29 | 2006-06-29 | Bandwidth Productions Inc. | Interactive music playlist sharing system and methods |
US20060155813A1 (en) | 2005-01-12 | 2006-07-13 | International Business Machines Corporation | Instant messaging communications network with selectable responses to active status queries, made to individual user display stations by other user stations, personalized to such other querying user stations |
US7606168B2 (en) | 2005-01-28 | 2009-10-20 | Attenex Corporation | Apparatus and method for message-centric analysis and multi-aspect viewing using social networks |
US7689556B2 (en) | 2005-01-31 | 2010-03-30 | France Telecom | Content navigation service |
US8200700B2 (en) | 2005-02-01 | 2012-06-12 | Newsilike Media Group, Inc | Systems and methods for use of structured and unstructured distributed data |
US20060173963A1 (en) | 2005-02-03 | 2006-08-03 | Microsoft Corporation | Propagating and responding to announcements in an environment having pre-established social groups |
US7852831B2 (en) * | 2005-02-22 | 2010-12-14 | Akbar Imran M | Method and system for providing private virtual secure Voice over Internet Protocol communications |
US20060190536A1 (en) | 2005-02-23 | 2006-08-24 | International Business Machines Corporation | Method, system and program product for building social networks |
US7675874B2 (en) | 2005-02-24 | 2010-03-09 | International Business Machines Corporation | Peer-to-peer instant messaging and chat system |
US7818350B2 (en) | 2005-02-28 | 2010-10-19 | Yahoo! Inc. | System and method for creating a collaborative playlist |
US7665107B2 (en) | 2005-03-11 | 2010-02-16 | Microsoft Corporation | Viral advertising for interactive services |
US20060218225A1 (en) | 2005-03-28 | 2006-09-28 | Hee Voon George H | Device for sharing social network information among users over a network |
US8117277B2 (en) | 2005-04-27 | 2012-02-14 | Microsoft Corporation | Component based infrastructure for sharing files |
US20060248573A1 (en) | 2005-04-28 | 2006-11-02 | Content Guard Holdings, Inc. | System and method for developing and using trusted policy based on a social model |
US7770229B2 (en) | 2005-05-11 | 2010-08-03 | Yahoo! Inc. | System and method for the propagation of DRM protected content |
US20060259733A1 (en) | 2005-05-13 | 2006-11-16 | Sony Computer Entertainment Inc. | Methods and apparatus for resource management in a logically partitioned processing environment |
US7796118B2 (en) | 2005-05-24 | 2010-09-14 | Microsoft Corporation | Integration of navigation device functionality into handheld devices |
US7620981B2 (en) | 2005-05-26 | 2009-11-17 | Charles William Frank | Virtual devices and virtual bus tunnels, modules and methods |
EP1737180B1 (en) * | 2005-06-06 | 2018-12-26 | Comptel Corporation | System and method for processing data records in a mediation system |
US7890513B2 (en) | 2005-06-20 | 2011-02-15 | Microsoft Corporation | Providing community-based media item ratings to users |
US7849199B2 (en) * | 2005-07-14 | 2010-12-07 | Yahoo ! Inc. | Content router |
US9076175B2 (en) * | 2005-09-14 | 2015-07-07 | Millennial Media, Inc. | Mobile comparison shopping |
US20070106551A1 (en) | 2005-09-20 | 2007-05-10 | Mcgucken Elliot | 22nets: method, system, and apparatus for building content and talent marketplaces and archives based on a social network |
AU2006326015A1 (en) | 2005-12-14 | 2007-06-21 | Facebook, Inc. | Systems and methods for social mapping |
US20070143228A1 (en) | 2005-12-15 | 2007-06-21 | Microsoft Corporation | Licensing matrix |
US20070150603A1 (en) | 2005-12-22 | 2007-06-28 | Catalog. Com, Inc. | System and method for cross-domain social networking |
US20070173325A1 (en) | 2006-01-20 | 2007-07-26 | Microsoft Corporation | Join in-progress on-line game session |
US8037506B2 (en) | 2006-03-03 | 2011-10-11 | Verimatrix, Inc. | Movie studio-based network distribution system and method |
US20070233828A1 (en) * | 2006-03-31 | 2007-10-04 | Jeremy Gilbert | Methods and systems for providing data storage and retrieval |
US8046411B2 (en) | 2006-04-28 | 2011-10-25 | Yahoo! Inc. | Multimedia sharing in social networks for mobile devices |
US20080016081A1 (en) * | 2006-07-14 | 2008-01-17 | Anthology Solutions, Inc. | System and method for automatic digital library creation |
US7992171B2 (en) * | 2006-09-06 | 2011-08-02 | Qurio Holdings, Inc. | System and method for controlled viral distribution of digital content in a social network |
US20080062945A1 (en) * | 2006-09-11 | 2008-03-13 | Motorola, Inc. | Selecting a leader node for an ad hoc network based on services |
US8239677B2 (en) | 2006-10-10 | 2012-08-07 | Equifax Inc. | Verification and authentication systems and methods |
US7886334B1 (en) | 2006-12-11 | 2011-02-08 | Qurio Holdings, Inc. | System and method for social network trust assessment |
US8825577B2 (en) | 2010-09-13 | 2014-09-02 | International Business Machines Corporation | Using penalty and reward to aggregate data to assess trust |
-
2006
- 2006-09-29 US US11/536,888 patent/US8554827B2/en not_active Expired - Fee Related
-
2007
- 2007-08-29 WO PCT/US2007/077047 patent/WO2008042534A2/en active Application Filing
- 2007-08-29 CN CN2007800434757A patent/CN101542461B/zh not_active Expired - Fee Related
- 2007-08-29 EP EP07814516A patent/EP2069952A2/en not_active Withdrawn
- 2007-08-29 KR KR1020097008465A patent/KR20090080051A/ko not_active Application Discontinuation
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104272773A (zh) * | 2012-05-10 | 2015-01-07 | 高通股份有限公司 | 选择性地将媒体馈送定向到目标用户装备集 |
CN104272773B (zh) * | 2012-05-10 | 2018-04-20 | 高通股份有限公司 | 选择性地将媒体馈送定向到目标用户装备集 |
CN105306228A (zh) * | 2014-06-30 | 2016-02-03 | 广达电脑股份有限公司 | 虚拟内容分享方法 |
CN106664328A (zh) * | 2015-04-30 | 2017-05-10 | 华为技术有限公司 | 一种p2p组的发现方法、相关设备及p2p组 |
CN106664328B (zh) * | 2015-04-30 | 2019-11-29 | 华为技术有限公司 | 一种p2p组的发现方法、相关设备及p2p组 |
Also Published As
Publication number | Publication date |
---|---|
WO2008042534A2 (en) | 2008-04-10 |
CN101542461B (zh) | 2012-09-26 |
US8554827B2 (en) | 2013-10-08 |
EP2069952A2 (en) | 2009-06-17 |
WO2008042534A3 (en) | 2008-11-06 |
KR20090080051A (ko) | 2009-07-23 |
US20080080392A1 (en) | 2008-04-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101542461B (zh) | 用于内容共享系统的虚拟对等 | |
US7782866B1 (en) | Virtual peer in a peer-to-peer network | |
US20220407933A1 (en) | Locality based content distribution | |
US10237368B2 (en) | Semantic information processing | |
US9065835B2 (en) | Redirecting web content | |
CN105247529B (zh) | 在目录服务之间同步凭证散列 | |
JP4363520B2 (ja) | ピアツーピア・ネットワークにおけるリソース検索方法 | |
CN102100032B (zh) | 形成对等网络的信誉系统 | |
US7614081B2 (en) | Managing and sharing identities on a network | |
CN100583874C (zh) | 利用公共组标签组建对等家庭网络的方法 | |
US20050049886A1 (en) | System and method for managing digital rights and content assets | |
CN101379794A (zh) | 基于个人网络存储器的对等视频内容分发网络 | |
US20080189351A1 (en) | Network system which performs peer-to-peer communication | |
EP3729769B1 (en) | Proxy for avoiding on-line tracking of user | |
CN101167333A (zh) | 在设备之间传递信息的方法和装置 | |
Susarla et al. | Peer-to-peer enterprise knowledge management | |
Van Vroonhoven | Peer to peer security | |
Lee | From Cloud to Crowds: Restoring Points of the Peer-to-Peer and Decentralized Internet | |
Venkatraman et al. | Reputation Management in P2P File Sharing Networks | |
Siebes | Peer-to-Peer solutions in the Semantic Web context: an overview | |
Hong et al. | A profile-based multimedia sharing scheme with virtual community, based on personal space in a ubiquitous computing environment | |
JP2008084030A (ja) | 識別情報割当装置及びその情報処理方法並びにそのプログラム | |
Issarny | AdHocFS: A Serverless File System for Mobile Users | |
Muhammad | A Gateway Solution for Accessing Networking Appliances | |
KR20090002334A (ko) | 임베디드 리눅스 모듈을 탑재한 피투피기기 및 이를 이용한컨텐츠 제공방법 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120926 Termination date: 20150829 |
|
EXPY | Termination of patent right or utility model |