CN101352002A - 使用可缩放对等组来优化通信 - Google Patents

使用可缩放对等组来优化通信 Download PDF

Info

Publication number
CN101352002A
CN101352002A CN200680050333.9A CN200680050333A CN101352002A CN 101352002 A CN101352002 A CN 101352002A CN 200680050333 A CN200680050333 A CN 200680050333A CN 101352002 A CN101352002 A CN 101352002A
Authority
CN
China
Prior art keywords
equity
peer
message
communication mechanism
communication
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
Application number
CN200680050333.9A
Other languages
English (en)
Other versions
CN101352002B (zh
Inventor
C·G·凯勒
G·K·R·卡基法亚
H·O·威尔逊
R·L·哈萨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN101352002A publication Critical patent/CN101352002A/zh
Application granted granted Critical
Publication of CN101352002B publication Critical patent/CN101352002B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1044Group management mechanisms 
    • H04L67/1046Joining mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1059Inter-group management mechanisms, e.g. splitting, merging or interconnection of groups
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • H04L67/1063Discovery through centralising entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • H04L67/1065Discovery involving distributed pre-established resource-based relationships among peers, e.g. based on distributed hash tables [DHT] 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/54Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W36/00Hand-off or reselection arrangements
    • H04W36/0005Control or signalling for completing the hand-off
    • H04W36/0011Control or signalling for completing the hand-off for data sessions of end-to-end connection
    • H04W36/0033Control or signalling for completing the hand-off for data sessions of end-to-end connection with transfer of context information

Abstract

本发明的实现部分涉及对等通信系统的优化。例如,一个实现涉及使用在对等之间动态创建、高速缓存和管理通信信道的灵巧收发机。另一实现涉及使用可用于在各个对等之间高效注册和分发对等消息的中央跟踪对象。在一个实现中,中央跟踪对象在组中的对等之间共享。又一实现涉及将对等组与名空间相关联,以及用于将一个名空间的对等组包括在不同名空间的其他对等组内。本发明的这些和其他方面也可用于确保保存给定对等消息的传递意图,以及确保在任何给定时间向任何给定对等传输最佳数目的消息。

Description

使用可缩放对等组来优化通信
背景
背景和相关技术
随着计算机化的系统日益普及,与他人和与之相关联的应用程序进行通信的需求也日益增加。一般,计算机系统和相关设备出于各种原因在网络上传输信息,例如交换个人电子消息、销售商品、提供帐户信息、将消息从一个应用程序传输至另一应用程序等。然而,可以理解,随着计算机系统及其相关应用程序变得越来越复杂,与在网络上传输消息相关联的挑战也增加了。
一般,存在用于在网络上将消息从一个计算机系统传输到下一个计算机系统的多种不同的协议和拓扑。一种常规的拓扑,诸如用于电子邮件(“email”)和某些即时信使系统,使用一个或多个集中式消息收发服务器来管理和验证用户信息,还将从一个计算机系统发送的用户消息路由至下一计算机系统。在此示例中,一个计算机系统在集中式消息服务器中记日志,并发送定址到另一用户或计算机系统的消息。集中式服务器接收定址消息,验证用户信息,并发送定址到该计算机系统(或用户)的消息。
另一常规拓扑使用对等框架来将消息从一个计算机系统直接发送给下一计算机系统。即,一个计算机系统(即,一个“对等”或“对等计算机系统”)可直接连接至另一计算机系统(即,另一“对等”或“对等计算机系统”),然后将消息直接发送给该另一对等计算机系统。诸如此类的常规对等连接也可具有与多个不同的其他对等计算机系统的若干其他连接。具体地,一个对等也可被连接至通信网络中的多个其他对等,且还可被连接至所定义的多个对等的“组”。
然而,诸如此类的常规对等通信框架在众多方式中就它们如何便于通信而言比常规电子邮件或即时消息收发系统更受限制。例如,常规对等通信框架一般不允许组包括其他组。即,对等组一般包括一个或多个对等计算机系统的成员资格,但在其成员中一般不包括表示另一组的单个实体(例如,地址或对象),而不进行可能的对该另一组的所有成员分开定址。
常规对等通信框架一般也具有很少(如果有)的充分或智能地控制数目的服务和用于传输某些消息的装置。例如,一个对等可向定义的组中的数个其他对等发送消息。接收方对等还可将消息中继给组中的少数其他对等而不区分最初是谁发送了第一消息。这样,原始发送对等可从对等组的其他成员中接收原始消息的若干副本。
此外,常规对等框架不能高效(如果不是完全不能)区分用户如何、何时或是否接收了对查询的回答。例如,用户可能想要对对等组中的若干成员发送查询,但仅需要接收正确回答一次。然而,除非向对等组成员发送查询已得到满足之类的另一消息,否则每一对等组成员可能会认为尚未有对查询的响应,而因此继续响应。作为结果,用户可想像地得到仅对单个问题而从组中的多个对等获得同一回答的若干重复。就此,常规对等通信框架一般也不能很好地区分一对等组内的一对等成员与下一对等成员。例如,一对等可能仅需要向对等组中的一个成员发送某些信息一次,诸如加入对等组,但不想要(或需要)将该信息传输给对等组中的所有成员。不幸的是,常规对等框架不允许这类限制。
从而可理解,常规对等通信框架可能在各个阶段中在网络周围漂浮许多不必要的消息副本。即,可能有众多不必要的消息副本因不能在对等之间区分或不能区分对等是否发起或接收消息而在对等网络周围发送,诸如刚才描述的场景。在其他情况中,对等通信框架可能会被使用不适于给定上下文的某一通信机制发送的消息堵塞,其中最终用户可能甚至不能访问对等消息。
例如,对等通信框架可使用超文本传输协议(“HTTP”)机制来基于某个初始连接信息向用户发送消息。然而,如果用户离开本地计算机系统(即,走出建筑物),则使用短消息服务(“SMS”)通信机制将消息传输给用户的移动电话可能更加高效。然而,常规对等通信框架不会自动调节其所选通信机制以适应现实的变化。具体地,对等通信框架一般使用“孤注一掷”的方式,且仅留下初始选择的通信机制,而无论另一通信机制可能在稍后更适当。可以理解,不能适当调制发送多少消息和发送什么消息可导致对对等通信框架的负担。
常规对等通信框架的另一方面在于,它们在区分对等的“收听”和“发送”行为时通常不考虑可能的限制(例如,硬件、软件或其两者)。例如,发送对等可能仅想要广播信息,如在散布股票报价的情况中,而收听对等可能仅想要收听广播信息,如在仅观看股票报价流的情况中。发送和接收对等各自还可以使用具有不同能力的两个不同类型的通信信道。例如,一个通信信道可能具有快速上传速度而缓慢的下载速度,而另一通信信道可能具有相等但适度快速的上传和下载速度。然而,常规对等框架一般不会至少部分基于对等行为的类型来确定适当的通信信道(或其他硬件或软件确定),或在建立对等连接之后适当调节确定。
从而,可出于各种考虑而优化常规对等通信。
简要概述
本发明的实现用优化对等通信的系统、方法和计算机程序产品解决了本领域中的一个或多个问题。具体地,本发明的实现包括对等可订阅和发布的对等通信组,而其他对等组可以是其中的成员。本发明的实现也包括可为给定上下文智能或动态地选择众多不同的通信信道中合适的一个的组件。本发明的实现还包括确保对给定对等传输最佳数目的消息的组件。
例如,根据本发明的实现用于动态调节通信机制的一个方法涉及标识多个通信机制以便于将对等消息从对等计算机系统传输给接收方对等计算机系统。此外,该方法也涉及自动确定多个通信机制中优于多个通信机制中另一通信机制的初始通信机制。在作出此判断之后,该方法还涉及自动选择初始通信机制,以及使用所选初始通信机制将对等消息发送给接收方计算机系统。
根据本发明的实现用于管理网络名空间内对等组通信的另一替换方法涉及标识一个或多个对等的第一对等组,其中第一对等组与第一名空间相关联。此外,该方法也涉及向第一名空间发送组加入请求消息,以及从第一名空间接收第一对等组中的成员资格已被接受的确认消息。如此,该对等就被添加到第一对等组的成员列表,且该对等被订阅给第一名空间。
根据本发明的实现用于优化对等消息的通信的又一替换方法涉及在对等通信网络上从发起对等接收对等消息,其中对等消息包括一个或多个传递限制。对等然后可参考中央跟踪对象,该对象至少指示一个或多个对等已接收了对等消息且发起对等发送了对等消息。该方法还涉及对于对等消息评估该一个或多个传递限制,以及基于参考字中央跟踪对象的指示以及基于对该一个或多个传递限制的评估来发送对等响应消息。这样,该方法可随该消息保存发起对等的传递意图。
提供该概述以便以简化形式介绍将在以下详细描述中进一步描述的一些概念。该概述不旨在标识所要求保护的主题的关键特征或本质特征,也不旨在用于帮助确定所要求保护的主题的范围。
本发明的附加特征和优点将在以下描述中叙述,且其部分根据本描述将是显而易见的,或可通过对本发明的实践领会。本发明的特征和优点可通过在所附权利要求书中特别指出的工具和组合来实现和获得。本发明的这些和其他特征将通过以下描述和所附权利要求书变得更加完全明显,或可通过对下文中所述的本发明的实践来领会。
附图简述
为了描述可获取本发明的上述和其他优点和特征的方式,将通过引用附图中示出的本发明的特定实施例来呈现以上简要描述的本发明的更具体描述。可以理解这些附图仅描述本发明的典型实施例,从而不被认为是对其范围的限制,本发明将通过使用附图用附加特征和细节来描述和说明,附图中:
图1A示出了根据本发明的实现,其中一对等向一组对等发送定向消息的对等通信系统的概观示意图;
图1B示出了如图1A所示的其中一对等向一组对等发送定向消息的另一示意图;
图2示出了其中一对等使用灵巧收发机和中央跟踪对象来发送消息的对等通信系统的概观示意图;
图3示出了图2中所示的示意图,其中灵巧收发机区分发送和收听功能;
图4示出了包括根据本发明的实现用于使用所选通信机制发送消息的动作序列的方法的流程图;
图5示出了包括根据本发明的实现用于将消息发送给与名空间相关联的组的动作序列的方法的流程图;以及
图6示出了包括根据本发明的实现用于在一个或多个传递限制下传递对等消息的动作序列的方法的流程图。
详细描述
本发明延及优化对等通信的系统、方法和计算机程序产品。具体地,本发明的实现包括对等可订阅和发布的对等通信组,而其他对等组可以是其中的成员。本发明的实现也包括可为给定上下文智能或动态地选择众多不同的通信信道中合适的一个的组件。本发明的实现还包括确保对任何给定对等传输最佳数目的消息的组件。
例如,本发明的至少一个方面涉及使用对等组,它一般是不必需要集中式管理员的订阅点。具体地,给定对等组的每一成员(即“对等”)可被认为是组成员对等可各自订阅和发布的名空间的成员。对等组可属于另一组,且也可使不同的对等组作为其组成员。给定对等的计算机系统处的应用程序然后可根据订阅/发布模型来查看每一对等组。
此外,本发明的各方面涉及使用在任何时刻为任何给定通信场景动态选择适当的通信机制的灵巧收发机组件。例如,且如此处将更充分讨论地,灵巧收发机组件可在对等计算机系统的应用程序组件与诸如传统的HTTP、SMS或TCP机制的一个或多个通信机制以及诸如射频(“RF”)、红外、共享存储器和/或串行端口组件之间等其它通信机制进行接口。本领域的技术人员可以理解可使用众多不同种类的通信。在与一个或多个对等通信期间的任何时刻,发送通信系统处的灵巧收发机组件可选择(和/或调节至)通信协议中的任何一个。如果根据任何数目的因素,在稍后发现另一通信协议是适当的,则智能收发机组件也可动态变为(或包括)该另一通信协议,以帮助使通信尽可能得有效。此外,灵巧收发机组件可高速缓存和重用通信信道,使得计算机化的系统不需要打开多个不同的通信信道来与同一对等通信。本发明的各方面还可基于给定对等的行为来优化发送和接收通信信道。例如,灵巧收发机组件可标识何时对等被配置为主要用于“收听”或主要用于“发送”对等消息。如果对等被配置为主要用于收听,则灵巧收发机组件可选择较高下载吞吐量和速度的通信协议和硬件端口。类似地,如果对等被配置为主要用于发送,则灵巧收发机组件可选择较高上传吞吐量和速度的其他通信协议和硬件端口。
本发明的其他方面包括可帮助确保适当数目的给定消息或副本在对等通信组织中传输的多个优化。例如,且如将在后文中更充分详细描述地,每一对等的计算机系统处的中央跟踪对象可用于跟踪在用户之间发送且在不同通信信道上发送的消息。具体地,中央跟踪对象可帮助确保例如发送对等不会接收它们自己的消息的副本,或者其他对等不会接收同一消息的重复副本。
本发明的这些和其他方面还可用于向对等通信框架提供多个附加特征。例如,本发明的各方面可用于在带有限制的情况下向组发送一个消息,该限制是消息仅被发送给组中的“任何一个”对等。本发明的各方面也可用于确保在例如向给定组中的所有对等发送查询之后仅接收一个响应消息,从而避免不必要的重复。
现在参考附图,图1A示出了对等通信系统,它包括与对等105通信的对等100,对等105还与对等110、对等115和对等120通信(例如,具有通信信道)。对等115也与对等120通信,而对等110也与分开的名空间中的对等125通信。因此,所示通信系统示出,一个或多个对等(例如,105、110)也可以是“节点”对等。这些节点对等可起到类似于用于路由对等消息的集中式服务器的混合功能,或可用作仅与另一对等往返交换消息的典型的最终对等。
例如,节点对等105和110都存储组A的组列表的至少一部分。具体地,对等105存储组列表130a,它包括对等100、110、115和120;而对等110(节点对等)存储列表130b,它在其成员中包括对等105和组B(经由对等125)。在一个实现中,组列表的每一部分被存储为散列表。
在任何情况中,组列表所有权/管理可允许对等105和110也路由(转发,或“链接”)定址到其相关组列表中的对等的对等消息。例如,如果对等105接收到定向到组B(经由对等125)的消息,则对等105可检查其组列表成员并确定它没有组B的记录,但该记录可在组列表的另一部分(即,130b)上找到,并因此将请求转发给对等110,对等105知道对等110主存组列表的其余部分。或者,由对等105主存的列表部分130a可保存指示在对等110处主存的列表部分130b包括组B的记录的信息。如将在后文中更全面讨论地,对等110然后可接收消息,并将消息发送给主存组B的组列表的相应的对等125。这样做的一种方式是通过将消息发送或发布到某一“名空间”。
例如,图1A示出所示对等可与某些名空间160、163分支相关联。一般,名空间以分层格式标识一组名字来避免不同来源但相同名字的对象混在一起时的歧义性。由于名空间可由统一资源标识符(“URI”)标识,且由于对等也可由URI标识,因此对等组也可与由URI定址的唯一名空间相关联。从而,图1A示出对等100、105、110、115和120是名空间160中同一组A的部分,而对等125是名空间163的一部分。即,每一对等100、105、110、115和120可由同一名空间160中的URI定址,而对等125可由不同的名空间163中的URI定址。每一对等又可通过发布到相关联的名空间来将消息发送给组。类似地,对等可通过向相关联的名空间发送组加入请求来加入组。
此外,图1A示出来自一个名空间(例如,163)的对等组也可以是来自一不同的名空间(例如,160)的一不同对等组的成员。例如,图1A示出组列表130a-b与名空间160相关联。然而,组列表130b在其成员中具有“组B”。组列表130b还示出组B可通过名空间163中的对等125定址。从而发送给名空间160的一般组A成员的消息也将被转发或链接给名空间163的组B成员。
一般,存在一个名空间的一个对等组可被添加给不同名空间的另一对等组的众多方式。在一个实现中,向一个组(例如,名空间163的组)查询对等成员(例如,通过名空间中的对等URI),且所发现的对等被添加给进行请求的组(例如,名空间160的组)的成员。每一对等然后可发送和链接所接收的消息,如同它们在被添加到新组之前在其先前组中的那样。在另一实现中,可通过在两个相关联的名空间(即,名空间160和163)之间创建名空间桥来将一个组添加到另一个组。在又一实现中,上下文可与特定对等对话相关联,允许对话在对等组上混合并仍由接收方组织。例如,消息属性可能表明“对话23”或可以甚至更具体,表明“组A对话Y”。
此外,图1A提供一个对等在关于消息如何发送或从何处接收响应的特定限制的情况下可如何向一组对等发送消息的概观。例如,图1A示出对等100在接收“仅一个响应”的限制下发送消息103。即,对等100计算机系统处的应用程序可能仅需要一个普通信息,诸如日期和时间,而不关心对等100从何处接收响应消息。然而,对等100想要将消息按需发送给众多组成员,直到接收到适当的响应。
从而,图1A示出对等100将消息103发送给对等105,后者是节点对等。对等105检查其组成员来为对等100验证成员记录,并标识用于中继消息的对等。对等105也标识它是否可以回答消息103。例如,对等105可能不具有用于回答消息103的适当资源或可用带宽,或可仅仅不知道适当的回答。从而,图1A示出对等105将消息转发给对等110和对等115。因为对等115也具有与对等120的对等连接,且因为对等115会将组消息中继给对等120,所以对等105不需要向对等120发送消息103的另一副本。出于类似的原因,因为对等105知道对等110是用于“组A”的组列表的其余部分的节点,所以对等105可仅发送定址到对等110的消息103,还注意消息要被发送给“组A”的任何其他成员。
在此示例中,对等120在对等115和对等110之前经由对等105向对等100发回响应107。在某些情况中,这可能在对等105向对等110发送消息103之前发生(这将不必要地向对等110呈现消息103)。然而,在从对等120接收响应107时,对等105能够注意到响应,诸如通过登记将在以下附图(图2)中更全面讨论的“中央跟踪对象”。而且,由于对等100仅需要一个响应,对等105标识该限制,且仅将来自对等120的响应107转发给对等100,而丢弃分别来自对等110和115的响应107。这样,对等105可确保对等100仅接收一个响应,如原始所请求的那样。
图1B示出类似于图1A中所示的场景,虽然示出对等100对消息传递施加的另一限制。具体地,图1B示出对等100限制消息113被发送给组A的“任何一个”。例如,对等100计算机系统处的应用程序可能想要向对等组的任何普通成员发送“存在性”消息,但不必将这个发送给组的所有成员。存在性消息可能可由组中的其他对等无需各自从对等100接收消息113而访问。从而,对等1B示出对等100向对等105,即“目标”对等发送消息113,对等105在该情况中碰巧是节点对等。
可能存在一个对等自动选择向其发送消息113的目标对等的众多方式。例如,对等100可考虑接近性信息,且可确定组A中其他对等的最近和/或最远网络位置。该信息也可用于生成潜在的一类或一组接收方,诸如与另一网络位置处的接收方相比的一个网络位置处的接收方。在一个实现中,信息包括选择准则,诸如最低id、最高id、固定标识符、随机标识符、最低带宽或处理负荷、或某个其他的动态可访问准则。
除任何这样的可接受接收方列表以外,对等100也可创建相应的排除列表。具体地,对等100可限制消息113,使之定址到“X域内组A中的任何一个,但不是Y域内组B中的任何一个”。从而,本发明的各方面可允许诸如高速缓存复制的更大规模的场景,其中数据可能为另一对等(例如,115、120)所需,但其中对于对等的“类”的选择是重要的,且消息(例如,113)从而不需要被复制给所有的对等成员。
在任何情况中,且如上所述,图1B示出消息113被定址到组A中的任何一个(经由130a),这将消息的分发限于对等115或对等120的任何一个,对等115和对等120在组列表130a上找到。因此,当对等105接收消息113时,对等105不会具有适当的响应,因此标识是否将消息113传递给另一对等。这种判断可基于以上标识的参数中的任何一个,以及基于带宽或资源考虑。因此,例如,图1B示出对等105在新消息111(它包含来自消息113的内容)中询问对等115它是否可用于响应,对此对等115以否定响应109。对等105然后将同样的查询111发送给对等120,并接收响应117,对等105然后将该响应链接(或转发)回对等100。因此,图1B示出对等105如何可帮助确保满足由对等100作出的发送给“任一个”的限制。具体地,图1A到1B示出了组和组内的对等可被组织且可在多个优化和/或限制下管理消息传递的众多方式。
图2示出了根据本发明的实现可用于帮助启用这些组织优化的组件中的一个或多个的更详细的示意图。例如,图2示出了中央跟踪对象145,它可用于在选择组中的多个对等之间共享发送和接收注释。在一个实现中,中央跟踪对象145可被至少部分存储在指定的共享分区中的对等节点(例如,对等节点105、110)上。如对等用户所需或配置,对中央跟踪对象145的注册更新然后可被推到(或取自)对等通信系统中的任何其他对等。
例如,图2示出由对等100处的中央跟踪对象145管理的信息也可在与对等115和对等120相关联的跟踪对象中共享。在一个实现中,中央跟踪对象145是每一对等在各个对等的不同传输输入和输出处理器上共享的单个对象,而在替换实现(未明确示出)中,每一对等可具有对独立、基本上不同的跟踪对象的所有权。然而,为描述简单起见,图2示出每一对等100、115和120共享中央跟踪对象145的至少一部分。当对等100向对等115和对等120发送消息140时,图2的对等100处的中央跟踪对象145以及对等115和120处的对象145可记录对等100发送了消息140的事实。以这种方式共享和/或分发消息可允许任何数目的消息收发优化,诸如通过注册发送和接收的消息。
例如,如在图1A中,当对等105接收多个响应107时,对等105可根据中央跟踪对象(例如,145)标识响应107已经从对等120接收并被发送给对等100,且因此使用该信息来丢弃来自对等110和115的重复响应107。类似地,如图1B中所示,对等105可查阅中央跟踪对象(例如,145)来确定组A对等105中的哪个对等已经在限制“发送给仅一个”下试图转交消息113等。从而,通过中央跟踪对象145的注册可提供配置用于过滤重复以及使用黑列表、白列表和/或失败信息的标识等的至少一种机制,该机制然后可由在通信信道的高层处的灵巧收发机150a-c使用。
例如,图2示出对等100可包括灵巧收发机组件150a。灵巧收发机150a是也在对等通信系统中的其他对等中找到的分别处理的组件,诸如所示的对等115上的收发机150b和对等120上的收发机150c。一般,灵巧收发机150a可用于在应用程序组件155和一个或多个通信机制133、135和137之间进行接口,然后基于各种系统限制和性质(例如,硬件、软件、网络问题等)作出某些消息发送和接收判断。
具体地,智能收发机(即,150a-c)可在通信过程中的任何时间基于任何数目的动态确定的因素来动态确定更有效的通信机制可能是什么。例如,在一个实现中,灵巧收发机150a可高速缓存应用程序信道(例如,经由通信机制133、135、137等),使得所建立的安全和其他应用层逻辑不需要被重新建立(在时间窗口内)。灵巧收发机150a-c也可使用各种身份和其他网络吞吐量或处理考虑,并选择已建立或优选的通信机制。就此,灵巧收发机150a-c也可监控网络故障活动,以及任何其他网络改变,包括网络策略改变或更新。由灵巧收发机150a-c动态确定的这样的信息可允许给定收发机动态调节使用哪些通信机制或信道。
作为示例,假定对等分发系统(或任何通信机制)经由通信机制133、135或137中的任何一个建立至特定端点对等(例如,对等115)的通信信道。对等100处的灵巧收发机150a基于最适合的因素启动与给定端点对等(例如,对等115处的收发机150b)处的另一灵巧收发机的连接,然后高速缓存连接状态(即,“通信信道”)。由于连接仍通过通信信道的应用程序组件进行,在稍后基于更适当的连接机制切换至另一通信机制(较低层的通信信道)时可保留重要的应用连接语义。
因此,可基于任何现有的网络策略和/或正在发送的消息(例如,140)中的限制来使用(或重用)通信信道。例如,诸如适当的计算机系统(例如,个人计算机、蜂窝式电话等)处的对等100的用户可初始连接至另一对等115来发送消息。对等100可初始通过灵巧收发机150a检测某些“存在性”信息,这建议对等115处的用户通过陆线连接至网络。从而,灵巧收发机150a可通过使用HTTP通信机制133经由灵巧收发机150b连接至对等115来启动通信信道。然而,对等115处的用户可在稍后退出陆线通信系统,从而随后仅可经由无线通信手段使用。从而,灵巧收发机150b可将用户存在性信息中的这一改变发送给对等100处的收发机150a。
灵巧收发机150a然后可自动确定用户(对等115)可通过不同的通信机制,诸如SMS通信机制137来更好地到达。从而,灵巧收发机150a使用原始在HTTP机制133上设置的经高速缓存的通信信道,并在当前优选的SMS通信机制137上复制该通信信道。结果,通过应用程序155发送给对等115的新消息现在经由SMS传输。
在一个或多个替换实现(未示出)中,灵巧收发机150a也可创建用于传递适当的特定消息的多个通信信道。例如,灵巧收发机150a可确定,给定特定消息的紧急本质,创建多个通信信道可能是高效的,从而确保用户接收给定消息。在这样的情况中,例如灵巧收发机150可经由多个通信路径检测用户的存在性,然后启动相应的多个通信信道。
图3示出了根据本发明的各方面其中灵巧收发机150a可用于动态管理传入和传出对等消息的另一实现。具体地,图3示出了其中对等100正使用应用程序156和157传输消息的实现,应用程序156和157分别用于主要收听或发送行为。例如,应用程序156被配置成接收和显示来自对等115的连续流传送的股票报价,而应用程序157被配置成将视频数据流传送给一个或多个其他对等105和110。然而,通信信道170和175具有不同的能力。具体地,通信信道170具有大致上相等的上传和下载配置,而通信信道175具有较快的下载但较慢的上传配置。
从而,在应用程序156和157与通信信道170和175之间接口的灵巧收发机150a可在任何给定时间确定应用程序的通用行为,然后作出要使用哪一通信信道的适当判断。例如,图3示出灵巧收发机150a选择通信信道170来用于应用程序157(发送方),因为通信信道170与信道175相比具有相对快速的上传速度。类似地,图3示出灵巧收发机150a选择通信信道175来用于应用程序156(收听方),因为通信信道175与信道170相比具有相对快速的下载速度。然而,可以理解,如有需要,或如果通信信道170-175个各方面因某个其他原因而改变,则灵巧收发机150a可在稍后切换这些通信信道确定。
从而,图1A到3和相应的描述示出了用于优化和缩放对等通信系统的多个组件和机制。本发明的实现也可根据用于执行特定功能的方法中的动作来描述。具体地,图4和5分别示出了用于使用动态选择的通信机制来发送消息和用于将消息发送给与名空间相关联的组的方法中的动作的流程图。
例如,图4示出了动态调节由对等使用的通信机制的方法包括标识多个通信机制的动作200。动作200包括标识可用于将消息从一对等传输给接收方对等的多个通信机制。例如,图2示出对等100处的灵巧收发机150a在其部署中具有用于创建通信信道来与另一对等(例如,对等115)通信的通信机制133、135和137。
此外,图4示出该方法包括确定至少一个初始通信机制优于另一通信机制的动作210。动作210包括自动确定多个通信机制中的至少一个初始通信机制优于多个通信机制中的另一通信机制。例如,灵巧收发机150a标识关于对等115处的用户的存在性信息,使得用户在陆线连接的计算机系统处存在。从而,并基于任何其它相关因素(例如,接近性、网络位置、相关应用程序、一天中的时间等),灵巧收发机150a确定HTTP通信机制133将比例如SMS通信机制133更适合。
图4也示出方法包括选择至少一个初始通信机制的动作220。动作220包括自动选择至少一个初始通信机制。例如,在确定HTTP通信机制133更适合之后,灵巧收发机150a使用HTTP通信机制133在对等100和115处的应用程序之间创建通信信道。或者,如果稍后SMS通信机制137更适合,则灵巧收发机150a可取得初始为HTTP通信机制133创建的通信信道的高速缓存,并将其应用于SMS通信机制137。
而且,图4示出方法包括使用所选通信信道的至少其中之一来发送消息的动作230。动作230包括使用所选初始通信机制的至少其中之一向接收方对等的计算机系统发送消息。例如,对等100处的应用程序155通过使用HTTP通信机制133创建的通信信道向对等115处的相应的应用程序(未示出)发送消息140。然而,通信信道的细节从应用层本身抽离,且由灵巧收发机组件150a处理。因此,如果底层通信机制改变,应用程序实际上没有意识到该改变,并简单地通过由灵巧收发机150a建立的通信信道发送消息。
图5示出了根据本发明的各方面用于网络名空间内对等组通信的替换方法。具体地,图5示出方法包括标识与第一名空间相关联的第一对等组的动作300。动作300包括标识一个或多个对等的第一对等组,第一对等组与第一名空间相关联。例如,对等100标识对等的“组A”,这包括对等105、110、115和120,且标识组A与名空间160相关联。因此,可以理解,加入组A将涉及加入名空间160。
此外,图5的方法包括向第一名空间将发送组加入消息的动作310。动作310包括向第一名空间发送组加入请求消息。例如,对等100向名空间160发送组加入请求消息(未示出。)该消息然后可由名空间中最适合处理请求的对等节点处理,诸如对等节点105或对等节点110,这些节点存储组列表的至少一部分的散列(即130a或130b)。
而且,图5示出该方法包括从第一名空间接收成员资格确认的动作320。动作320包括从第一名空间接收第一对等组中的成员资格已被接受的确认,使得对等已被添加至第一对等组的成员列表。例如,存储“组A”成员散列表的至少一部分(103a)的对等节点105代表名空间160向对等100作出成员资格已被接受的响应。就此,对等节点110代表名空间160向名空间163发送组加入请求消息以便添加“组B”。作为“组B”(且因此是名空间163)中的节点的对等125然后用确认向对等节点110响应,且因此允许在组A和B之间构造名空间桥。或者,对组加入请求的接受可提供对等110节点查询组B成员资格的工具,且在组A的散列表130b列表中包括每一组B的对等成员的URL。
图6示出根据本发明的实现用于基于一个或多个传递限制来优化对等组中一个或多个对等之间的对等消息的传输的另一替换方法。具体地,图6示出该方法可包括接收指示一个或多个传递限制的对等消息的动作400。动作400包括在至少一个对等通信信道上从发起对等接收对等消息,对等消息指示一个或多个传递限制。例如,对等100发送消息103,它包括需要“仅一个响应”的限制。类似地,对等100发送消息113,它将消息限于仅被发送给组A的“任何一个”。
图6也示出方法包括参考中央跟踪对象的动作410。动作410包括参考中央跟踪对象,中央跟踪对象指示至少一个或多个对等已经接收了对等消息以及发起对等发送了对等消息。例如,对等105接收消息103(图1A)并查阅中央跟踪对象145(图2)来确定消息103仅由对等100发送且还未由除对等105以外的任何对等接收。中央跟踪对象145也可指示消息103仅经由HTTP通信机制133发送。
此外,该方法包括评估一个或多个传递限制的动作420。动作420包括为对等消息评估一个或多个传递限制。例如,对等105在消息103中标识了消息仅需要一个响应的限制。而且,对等105根据中央跟踪对象145标识没有其他对等已经向消息103提供响应。类似地,对等105根据中央跟踪对象145标识没有其他应接收消息113的对等已经接收到消息113。或者,对等105标识没有其他可响应于消息113的对等已经接收到消息113。
因此,图6还示出方法包括发送对等响应消息的动作430。动作430包括基于根据中央跟踪对象参考的指示以及基于对一个或多个传递限制的评估发送对等响应消息,使得发起对等的传递意图得以保存。例如,对等105将响应107发送给对等100,并在中央跟踪对象145中注册该动作(例如,图2)。这样,由对等105接收的对消息103的任何其他响应107将至少被对等节点105以及能访问中央跟踪对象145的任何其他对等丢弃。类似地,对等105向中央跟踪对象145注册对等105已经接收消息113的指示,该消息被定址到组A的“任何一个”。从而,组A中非故意接收消息113的副本的任何其他对等可丢弃该消息或仅避免响应。
从而,本发明的实现提供用于对等通信系统的多个优点和优化。本发明的范围内的实施例和/或实现也包括用于携带或其上存储有计算机可执行指令或数据结构的计算机可读介质。这样的机器可读介质可以是可由通用或专用计算机访问的任何可用介质。
作为示例而非限制,这样的计算机可读介质可包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储或其他磁存储设备、或可用于携带或存储计算机可执行指令或数据结构形式的所需程序代码装置且可由通用或专用计算机访问的任何其他介质。当信息在网络或另一通信连接(硬连线、无线或硬连线或无线的组合)上传输或提供给计算机时,计算机将连接完全视为计算机可读介质。因此,任何这样的连接被适当地称为计算机可读介质。以上的组合也应包括在计算机可读介质的范围之内。
计算机可执行指令例如包括,使通用计算机、专用计算机、或专用处理设备执行某一功能或某组功能的指令和数据。尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述特定特征或动作。相反,上述特定特征和动作作为实现权利要求的示例形式公开。
本发明可具体化为其他具体形式而不背离其精神或本质特征。所述实施例在所有方面都应被认为仅是说明性而非限制性的。从而,本发明的范围由所附权利要求书而非前述描述指示。落入权利要求书的等效方式的含义和范围内的所有改变应被权利要求书的范围涵盖。

Claims (20)

1.一种在被配置成通过网络与一个或多个接收方对等中的另一对等通信的对等上,一种动态调节用于传输对等消息的通信机制的方法,包括以下动作:
标识用于将对等消息从一对等传输给接收方对等的多个通信机制;
自动确定所述多个通信机制中的至少一个初始通信机制优于所述多个通信机制中的另一通信机制;
自动选择所述至少一个初始通信机制;以及
使用所选的至少一个初始通信机制将所述对等消息发送给所述接收方对等。
2.如权利要求1所述的方法,其特征在于,所述使用所选的至少一个初始通信机制将所述对等消息发送给所述接收方对等的动作包括从所述多个通信机制中随机选择一通信机制的动作。
3.如权利要求1所述的方法,其特征在于,还包括高速缓存包括所选的至少一个初始通信机制的通信信道的动作。
4.如权利要求3所述的方法,其特征在于,还包括接收关于所述接收方对等的状态信息的动作,所述状态信息指示至少一个其他通信机制优于所述至少一个初始通信机制。
5.如权利要求4所述的方法,其特征在于,还包括用一个或多个特征扩充所选的至少一个初始通信机制或所述多个通信机制中的任何其他的动作,使得所述经扩充的通信机制与所标识的其他通信机制一致。
6.如权利要求4所述的方法,其特征在于,还包括以下动作:
自动选择所述至少一个其他通信机制;以及
用所选至少一个其他通信机制来自动替换所述通信信道中所述至少一个初始通信机制。
7.如权利要求6所述的方法,其特征在于,还包括使用所选的至少一个其他通信机制在所述通信信道上向所述接收方对等计算机系统发送新对等消息的动作。
8.如权利要求7所述的方法,其特征在于,还包括向中央跟踪对象注册指示所述对等使用所选的至少一个初始通信机制、或所选的至少一个初始通信机制和所述多个通信机制中的任何其他通信来向所述接收方对等发送所述对等消息的条目的动作。
9.如权利要求7所述的方法,其特征在于,还包括向中央跟踪对象注册指示所述对等使用所选的至少一个其他通信机制向所述接收方对等发送所述对等消息的条目的动作。
10.如权利要求1所述的方法,其特征在于,还包括向中央跟踪对象注册指示所述对等使用所选的至少一个初始通信机制、或所选的至少一个初始通信机制和所述多个通信机制中的任何其他通信来向所述接收方对等发送所述对等消息的条目的动作。
11.如权利要求10所述的方法,其特征在于,所述中央跟踪对象是在所述对等计算机系统和所述接收方对等计算机系统之间共享的单个对象。
12.如权利要求10所述的方法,其特征在于,还包括从所述对等组中的所述一个或多个对等之一接收不同的对等消息的动作,所述不同的对等消息指示所述不同的对等消息被发送共给所述一个或多个对等中的任何一个。
13.如权利要求12所述的方法,其特征在于,还包括以下动作:
根据所述中央跟踪对象或由所述一个或多个对等中的另一个所有的不同的中央跟踪对象标识,不存在指示所述不同的对等消息已由所述一个或多个对等中的任何一个接收的注册条目;以及
处理所述不同的对等消息。
14.如权利要求12所述的方法,其特征在于,还包括以下动作:
标识所述中央跟踪对象或由所述一个或多个对等中的另一个所有的不同的中央跟踪对象的注册条目,所述注册条目指示所述不同的对等消息已由所述一个或多个对等中的至少一个接收;以及
处理所述不同的对等消息。
15.如权利要求1所述的方法,其特征在于,还包括从所述对等组中的所述一个或多个对等之一接收不同的对等消息的动作,所述不同的对等消息指示它近需要来自所述对等组中的所述一个或多个对等的一个响应。
16.如权利要求1所述的,其特征在于,还包括创建第一通信信道和第二通信信道的动作,所述第一通信信道和第二通信信道具有不同的运行特征。
17.如权利要求16所述的方法,其特征在于,所述不同的运行特征影响应用程序如何分别在第一和第二通信信道上发送或接收数据,使得所述上传速度和下载速度在所述第一和所述第二通信信道之间有所不同。
18.如权利要求16所述的方法,其特征在于,还包括以下动作:
标识所述应用程序与所述对等的计算机系统相关的行为;以及
确定所述第一或第二通信信道中的哪一个对所述应用程序的所标识行为更高效;以及
将所确定的第一或第二通信信道与所述应用程序相关联。
19.如权利要求16所述的方法,其特征在于,标识所述应用程序与所述对等计算机系统相关的行为的动作包括标识所述应用程序在所述对等计算机系统处的行为的动作。
20.一种在其中对等计算机系统被配置成通过网络与一个或多个接收方对等计算机系统中的另一对等通信的系统中使用的计算机可读介质,所述计算机可读介质在其上存储计算机可执行指令,当所述指令被执行时,使一个或多个处理器执行动态调节由所述对等计算机系统使用来发送消息的通信机制的方法,所述方法包括以下:
标识用于将对等消息从一对等传输给接收方对等的多个通信机制;
自动确定所述多个通信机制中的至少一个初始通信机制优于所述多个通信机制中的另一通信机制;
自动选择所述至少一个初始通信机制;以及
使用所选的至少一个初始通信机制将所述对等消息发送给所述接收方对等。
CN200680050333.9A 2006-01-04 2006-12-19 使用可缩放对等组来优化通信 Expired - Fee Related CN101352002B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/325,693 US8250230B2 (en) 2004-09-30 2006-01-04 Optimizing communication using scalable peer groups
US11/325,693 2006-01-04
PCT/US2006/048737 WO2007081523A2 (en) 2006-01-04 2006-12-19 Optimizing communication using scaleable peer groups

Publications (2)

Publication Number Publication Date
CN101352002A true CN101352002A (zh) 2009-01-21
CN101352002B CN101352002B (zh) 2011-05-18

Family

ID=38256791

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200680050333.9A Expired - Fee Related CN101352002B (zh) 2006-01-04 2006-12-19 使用可缩放对等组来优化通信

Country Status (13)

Country Link
US (2) US8250230B2 (zh)
EP (1) EP1974500A2 (zh)
JP (3) JP5327852B2 (zh)
KR (1) KR20080089382A (zh)
CN (1) CN101352002B (zh)
AU (1) AU2006335155B2 (zh)
BR (1) BRPI0619106A2 (zh)
CA (1) CA2629230A1 (zh)
IL (1) IL191877A (zh)
NO (1) NO20082600L (zh)
RU (1) RU2420898C2 (zh)
TW (1) TW200733679A (zh)
WO (1) WO2007081523A2 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105960791A (zh) * 2013-12-20 2016-09-21 罗威欧娱乐有限公司 无状态消息传输路由
CN107925630A (zh) * 2015-06-29 2018-04-17 瑞典爱立信有限公司 机器对机器通信系统中的通信策略控制

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002096103A1 (en) * 2001-05-23 2002-11-28 Sony Corporation Broadcast program display method, broadcast program display apparatus, and broadcast receiver
US8250230B2 (en) * 2004-09-30 2012-08-21 Microsoft Corporation Optimizing communication using scalable peer groups
US20070133520A1 (en) * 2005-12-12 2007-06-14 Microsoft Corporation Dynamically adapting peer groups
US7613703B2 (en) 2004-09-30 2009-11-03 Microsoft Corporation Organizing resources into collections to facilitate more efficient and reliable resource access
US8549180B2 (en) * 2004-10-22 2013-10-01 Microsoft Corporation Optimizing access to federation infrastructure-based resources
US20080288659A1 (en) 2006-11-09 2008-11-20 Microsoft Corporation Maintaining consistency within a federation infrastructure
US20110082928A1 (en) 2004-10-22 2011-04-07 Microsoft Corporation Maintaining consistency within a federation infrastructure
EP1881676B1 (en) * 2006-07-20 2008-12-17 Alcatel Lucent Distributed presence management in peer-to-peer networks
US7617322B2 (en) * 2006-09-29 2009-11-10 Microsoft Corporation Secure peer-to-peer cache sharing
US8027342B2 (en) * 2006-12-21 2011-09-27 Motorola Mobility, Inc. Method and apparatus for establishing peer-to-peer communications
US20080209053A1 (en) * 2007-02-28 2008-08-28 Microsoft Corporation HTTP-Based Peer-to-Peer Framework
US20100030841A1 (en) * 2008-07-30 2010-02-04 Albert Busoms Pujols Method and system for sharing information between user groups
US20100094938A1 (en) * 2008-10-10 2010-04-15 Nicolas Le Scouarnec Method of transmitting data between peerss by selecting a network according to at least one criterion and associated management device and communication equipment
CN102204174A (zh) * 2008-11-04 2011-09-28 株式会社自动网络技术研究所 通信装置、中继装置、通信系统及通信方法
US20100185714A1 (en) * 2009-01-15 2010-07-22 Microsoft Corporation Distributed communications between database instances
US20110153737A1 (en) * 2009-12-17 2011-06-23 Chu Thomas P Method and apparatus for decomposing a peer-to-peer network and using a decomposed peer-to-peer network
US9680745B2 (en) * 2014-01-20 2017-06-13 Huawei Technologies Co., Ltd. Multi-domain source routed forwarding based on collaborating network controllers
JP6131907B2 (ja) 2014-04-24 2017-05-24 カシオ計算機株式会社 分散データベース、データ共有方法、プログラム、装置
US10430120B2 (en) 2014-07-30 2019-10-01 Industrial Technology Research Institute Data object management method and data object management system
US10194275B2 (en) * 2015-03-06 2019-01-29 Omnitracs, Llc Inter-network messaging for mobile computing platforms
US10650325B2 (en) * 2015-07-31 2020-05-12 Microsoft Technology Licensing, Llc Deterministic message distribution
CN105574667A (zh) * 2015-12-15 2016-05-11 中广核工程有限公司 核电设计数据集成方法及系统
US10798147B2 (en) * 2016-06-30 2020-10-06 Microsoft Technology Licensing, Llc Constraint based controlled seeding
US11003693B2 (en) * 2018-04-05 2021-05-11 Sap Se Grouping tables with existing tables in a distributed database
US11010363B2 (en) 2018-04-05 2021-05-18 Sap Se Complementing existing tables while grouping tables in a distributed database
US11544294B2 (en) 2020-12-10 2023-01-03 Sap Se Distributing tables in a distributed database using consolidated grouping sources

Family Cites Families (87)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5483652A (en) * 1994-01-24 1996-01-09 Digital Equipment Corporation Mechanism for locating without search discrete application resources known by common name only in a distributed network computing environment
US5692180A (en) * 1995-01-31 1997-11-25 International Business Machines Corporation Object-oriented cell directory database for a distributed computing environment
US5831975A (en) * 1996-04-04 1998-11-03 Lucent Technologies Inc. System and method for hierarchical multicast routing in ATM networks
US5893116A (en) * 1996-09-30 1999-04-06 Novell, Inc. Accessing network resources using network resource replicator and captured login script for use when the computer is disconnected from the network
AT1751U1 (de) * 1996-09-30 1997-10-27 Kuehn Eva Koordinations-system
US6353929B1 (en) 1997-06-23 2002-03-05 One River Worldtrek, Inc. Cooperative system for measuring electronic media
US6061743A (en) * 1998-02-19 2000-05-09 Novell, Inc. Method and apparatus for aggregating disparate namespaces
US6665702B1 (en) * 1998-07-15 2003-12-16 Radware Ltd. Load balancing
US6381627B1 (en) * 1998-09-21 2002-04-30 Microsoft Corporation Method and computer readable medium for discovering master DNS server computers for a given domain name in multiple master and multiple namespace configurations
US6411966B1 (en) * 1998-09-21 2002-06-25 Microsoft Corporation Method and computer readable medium for DNS dynamic update to minimize client-server and incremental zone transfer traffic
US6701415B1 (en) * 1999-03-31 2004-03-02 America Online, Inc. Selecting a cache for a request for information
US6546415B1 (en) 1999-05-14 2003-04-08 Lucent Technologies Inc. Network management system using a distributed namespace
US6553423B1 (en) * 1999-05-27 2003-04-22 Cisco Technology, Inc. Method and apparatus for dynamic exchange of capabilities between adjacent/neighboring networks nodes
US6505244B1 (en) 1999-06-29 2003-01-07 Cisco Technology Inc. Policy engine which supports application specific plug-ins for enforcing policies in a feedback-based, adaptive data network
US7065784B2 (en) * 1999-07-26 2006-06-20 Microsoft Corporation Systems and methods for integrating access control with a namespace
US7463648B1 (en) * 1999-08-23 2008-12-09 Sun Microsystems, Inc. Approach for allocating resources to an apparatus based on optional resource requirements
JP3391316B2 (ja) * 1999-10-22 2003-03-31 日本電気株式会社 ネットワークシステム
US6826182B1 (en) * 1999-12-10 2004-11-30 Nortel Networks Limited And-or multi-cast message routing method for high performance fault-tolerant message replication
US6807423B1 (en) * 1999-12-14 2004-10-19 Nortel Networks Limited Communication and presence spanning multiple access networks
CN1197297C (zh) * 2000-03-10 2005-04-13 黎明网络有限公司 一种信息交换平台
JP3732745B2 (ja) * 2000-06-07 2006-01-11 日本電信電話株式会社 通信コネクション確立方法
US7379994B2 (en) * 2000-10-26 2008-05-27 Metilinx Aggregate system resource analysis including correlation matrix and metric-based analysis
US7072982B2 (en) * 2000-11-22 2006-07-04 Microsoft Corporation Universal naming scheme for peer to peer resources
US6965575B2 (en) 2000-12-29 2005-11-15 Tropos Networks Selection of routing paths based upon path quality of a wireless mesh network
WO2002056182A2 (en) 2001-01-12 2002-07-18 Epicrealm Operating Inc Method and system for community data caching
US7188145B2 (en) * 2001-01-12 2007-03-06 Epicrealm Licensing Llc Method and system for dynamic distributed data caching
AU2002234258A1 (en) * 2001-01-22 2002-07-30 Sun Microsystems, Inc. Peer-to-peer network computing platform
US6956821B2 (en) 2001-01-30 2005-10-18 Telefonaktiebolaget L M Ericsson (Publ) Path determination in a data network
US20020184368A1 (en) * 2001-04-06 2002-12-05 Yunsen Wang Network system, method and protocols for hierarchical service and content distribution via directory enabled network
US7209973B2 (en) * 2001-04-09 2007-04-24 Swsoft Holdings, Ltd. Distributed network data storage system and method
US20030018701A1 (en) * 2001-05-04 2003-01-23 Gregory Kaestle Peer to peer collaboration for supply chain execution and management
US7016085B2 (en) * 2001-08-31 2006-03-21 Hewlett-Packard Development Company, L.P. Remote proofing service adaptively isolated from the internet
DE10143754A1 (de) * 2001-09-06 2003-04-03 Siemens Ag Skalierbares Peer-to-Peer-Netzwerk mit einem Verzeichnisdienst
US8001189B2 (en) * 2001-10-16 2011-08-16 Microsoft Corporation Routing of network messages
TWI261468B (en) * 2001-11-02 2006-09-01 Benq Corp Rake reception device and method
US20030088620A1 (en) 2001-11-05 2003-05-08 Microsoft Corporation Scaleable message dissemination system and method
US20030126304A1 (en) * 2001-12-31 2003-07-03 Wyatt David A. Method for attaching a resource to a parent within a global resource namespace
CN102547405B (zh) 2002-01-08 2016-08-24 提维股份有限公司 电子内容分发与交换系统
US7085848B2 (en) * 2002-03-15 2006-08-01 Microsoft Corporation Time-window-constrained multicast using connection scheduling
US6938042B2 (en) * 2002-04-03 2005-08-30 Laplink Software Inc. Peer-to-peer file sharing
US7058639B1 (en) * 2002-04-08 2006-06-06 Oracle International Corporation Use of dynamic multi-level hash table for managing hierarchically structured information
JP2003316636A (ja) 2002-04-23 2003-11-07 Fuji Xerox Co Ltd 計算機リソース管理装置および方法
US7310314B1 (en) * 2002-06-10 2007-12-18 Juniper Networks, Inc. Managing periodic communications
US20030233455A1 (en) * 2002-06-14 2003-12-18 Mike Leber Distributed file sharing system
US7200113B2 (en) 2002-06-17 2007-04-03 Siemens Communications, Inc. Apparatus and method for isochronous network delay compensation
GB2390954B (en) * 2002-07-13 2005-12-21 Motorola Inc A method and apparatus for transmission scheme selection
US7613796B2 (en) * 2002-09-11 2009-11-03 Microsoft Corporation System and method for creating improved overlay network with an efficient distributed data structure
JP2004110624A (ja) 2002-09-20 2004-04-08 Fuji Xerox Co Ltd 計算機リソース管理装置および方法
US7206934B2 (en) 2002-09-26 2007-04-17 Sun Microsystems, Inc. Distributed indexing of identity information in a peer-to-peer network
WO2004030273A1 (ja) * 2002-09-27 2004-04-08 Fujitsu Limited データ配信方法、システム、伝送方法及びプログラム
US7200657B2 (en) * 2002-10-01 2007-04-03 International Business Machines Corporation Autonomic provisioning of network-accessible service behaviors within a federated grid infrastructure
EP1414211A1 (en) 2002-10-23 2004-04-28 Sony International (Europe) GmbH Software architecture for capability and quality-of-service negotiations and session establishment for distributed multimedia applications
US8037202B2 (en) * 2002-10-31 2011-10-11 Oracle America, Inc. Presence detection using mobile agents in peer-to-peer networks
US20040098455A1 (en) * 2002-11-14 2004-05-20 Motorola, Inc. Method and apparatus for controlling communications between subscriber units
US7010534B2 (en) * 2002-11-16 2006-03-07 International Business Machines Corporation System and method for conducting adaptive search using a peer-to-peer network
US7152180B2 (en) * 2002-12-06 2006-12-19 Ntt Docomo, Inc. Configurable reliable messaging system
US7899932B2 (en) * 2003-01-15 2011-03-01 Panasonic Corporation Relayed network address translator (NAT) traversal
US7533141B2 (en) * 2003-01-24 2009-05-12 Sun Microsystems, Inc. System and method for unique naming of resources in networked environments
US7774495B2 (en) * 2003-02-13 2010-08-10 Oracle America, Inc, Infrastructure for accessing a peer-to-peer network environment
US7293286B2 (en) * 2003-02-20 2007-11-06 Bea Systems, Inc. Federated management of content repositories
JP4517578B2 (ja) * 2003-03-11 2010-08-04 株式会社日立製作所 ピアツーピア通信装置および通信方法
US7200675B2 (en) * 2003-03-13 2007-04-03 Microsoft Corporation Summary-based routing for content-based event distribution networks
US7693952B2 (en) * 2003-03-27 2010-04-06 Microsoft Corporation Availability and scalability in a messaging system in a manner transparent to the application
US20040249953A1 (en) * 2003-05-14 2004-12-09 Microsoft Corporation Peer-to-peer instant messaging
WO2004112302A2 (en) * 2003-06-12 2004-12-23 Camiant, Inc. Dynamic service delivery with topology discovery for communication networks
US7602725B2 (en) 2003-07-11 2009-10-13 Computer Associates Think, Inc. System and method for aggregating real-time and historical data
US7415711B2 (en) * 2003-08-01 2008-08-19 Microsoft Corporation System and method for a transport independent gaming API for mobile devices
US20050044301A1 (en) 2003-08-20 2005-02-24 Vasilevsky Alexander David Method and apparatus for providing virtual computing services
JP2005092784A (ja) 2003-09-19 2005-04-07 Nippon Telegraph & Telephone West Corp 検索方式の動的切替方法、検索方式を動的に切り替える装置、及び検索方式を動的に切り替える切替プログラム
JP4399226B2 (ja) * 2003-09-30 2010-01-13 古野電気株式会社 通信端末装置
US7392422B2 (en) * 2003-10-20 2008-06-24 Sony Computer Entertainment America Inc., Violations in a peer-to-peer relay network
JP2005142959A (ja) * 2003-11-07 2005-06-02 Toshiba Solutions Corp アドホック通信システムおよびその通信装置、ならびに送信先決定方法
JP2005148956A (ja) * 2003-11-12 2005-06-09 Denso It Laboratory Inc 情報配布方法及び情報配布処理用プログラム
US7340169B2 (en) * 2003-11-13 2008-03-04 Intel Corporation Dynamic route discovery for optical switched networks using peer routing
US8104043B2 (en) * 2003-11-24 2012-01-24 Microsoft Corporation System and method for dynamic cooperative distributed execution of computer tasks without a centralized controller
JP2005223722A (ja) 2004-02-06 2005-08-18 Matsushita Electric Ind Co Ltd 携帯端末及び車載端末
JP2005252755A (ja) * 2004-03-05 2005-09-15 Mitsubishi Electric Corp 情報配信システム及び情報配信装置及び通信装置及び情報配信方法及び通信方法及びプログラム
CN1926835B (zh) * 2004-04-05 2012-02-22 艾利森电话股份有限公司 在无线多跳自组织网络中用于地址解析映射的方法、通信装置和系统
US8250230B2 (en) 2004-09-30 2012-08-21 Microsoft Corporation Optimizing communication using scalable peer groups
US20070133520A1 (en) * 2005-12-12 2007-06-14 Microsoft Corporation Dynamically adapting peer groups
US7613703B2 (en) 2004-09-30 2009-11-03 Microsoft Corporation Organizing resources into collections to facilitate more efficient and reliable resource access
US8549180B2 (en) * 2004-10-22 2013-10-01 Microsoft Corporation Optimizing access to federation infrastructure-based resources
US8014321B2 (en) 2004-10-22 2011-09-06 Microsoft Corporation Rendezvousing resource requests with corresponding resources
US20060167841A1 (en) * 2004-11-18 2006-07-27 International Business Machines Corporation Method and system for a unique naming scheme for content management systems
JP2006155488A (ja) * 2004-12-01 2006-06-15 Sony Corp データ処理装置およびデータ処理方法
WO2008036777A2 (en) * 2006-09-19 2008-03-27 Bea Systems, Inc. System and method for supporting service networks in a service-oriented architecture environment
TWI390869B (zh) * 2008-04-24 2013-03-21 Univ Nat Taiwan 網路資源分配系統及方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105960791A (zh) * 2013-12-20 2016-09-21 罗威欧娱乐有限公司 无状态消息传输路由
CN105960791B (zh) * 2013-12-20 2019-05-07 罗威欧娱乐有限公司 无状态消息传输路由
CN107925630A (zh) * 2015-06-29 2018-04-17 瑞典爱立信有限公司 机器对机器通信系统中的通信策略控制
CN107925630B (zh) * 2015-06-29 2022-06-03 瑞典爱立信有限公司 机器对机器通信系统中的通信策略控制

Also Published As

Publication number Publication date
JP5715223B2 (ja) 2015-05-07
EP1974500A2 (en) 2008-10-01
IL191877A (en) 2012-02-29
WO2007081523A2 (en) 2007-07-19
US20060117026A1 (en) 2006-06-01
IL191877A0 (en) 2009-08-03
KR20080089382A (ko) 2008-10-06
RU2420898C2 (ru) 2011-06-10
WO2007081523A3 (en) 2007-09-07
AU2006335155B2 (en) 2010-12-23
CN101352002B (zh) 2011-05-18
US20060117025A1 (en) 2006-06-01
TW200733679A (en) 2007-09-01
RU2008127075A (ru) 2010-01-10
AU2006335155A1 (en) 2007-07-19
JP2014078250A (ja) 2014-05-01
JP5327852B2 (ja) 2013-10-30
US8250230B2 (en) 2012-08-21
JP2009522690A (ja) 2009-06-11
NO20082600L (no) 2008-07-09
JP5536120B2 (ja) 2014-07-02
US7640299B2 (en) 2009-12-29
CA2629230A1 (en) 2007-07-19
BRPI0619106A2 (pt) 2011-09-13
JP2012146312A (ja) 2012-08-02

Similar Documents

Publication Publication Date Title
CN101352002B (zh) 使用可缩放对等组来优化通信
US7496602B2 (en) Optimizing communication using scalable peer groups
EP1386471B1 (en) Scalable resource discovery and reconfiguration for distributed computer networks
CN101617518B (zh) 用于在通信网络中实现用户群服务的方法和装置
US8849917B2 (en) Use of information channels to provide communications in a virtual environment
KR100953594B1 (ko) 피어 투 피어 기반의 소셜 네트워킹 서비스 방법 및 시스템
WO2002091705A2 (en) System and method for responding to resource requests in distributed computer networks
US20060221859A1 (en) Method and apparatus for managing a multicast tree
CN101651708B (zh) P2p流媒体网络的拓扑构建方法
US20160021043A1 (en) Communicating messages between publishers and subscribers in a mesh routing network
WO2014014909A1 (en) Control system for conferencing applications in named-data networks
Helgason et al. A middleware for opportunistic content distribution
CN101873542B (zh) 基于条件的统一资源标识的选择方法、服务器及通信系统
US9577837B2 (en) Method and apparatus for discovering communication entity
Zhang Design and Implementation of D2D System Based on Android and JXTA
Sànchez-Artigas et al. p2pWeb: An open, decentralized infrastructure of Web servers for sharing ephemeral Web content
CN113923226A (zh) 区块链下的邻居节点管理方法、设备及存储介质
JP2003076659A (ja) イベントパスの波及方法、アドバタイズメント方法、シェアードリンク設定方法、通信システム、エンティティ装置、およびそのコンピュータプログラム
Hong et al. An efficient live stream community management scheme for the mobile
CN101997899A (zh) 一种基于cbus的用户选择方法及装置

Legal Events

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

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150507

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

Effective date of registration: 20150507

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

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

Granted publication date: 20110518

Termination date: 20171219

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