CN101385280A - 对等内容分布云中的拓扑管理 - Google Patents

对等内容分布云中的拓扑管理 Download PDF

Info

Publication number
CN101385280A
CN101385280A CNA2007800060161A CN200780006016A CN101385280A CN 101385280 A CN101385280 A CN 101385280A CN A2007800060161 A CNA2007800060161 A CN A2007800060161A CN 200780006016 A CN200780006016 A CN 200780006016A CN 101385280 A CN101385280 A CN 101385280A
Authority
CN
China
Prior art keywords
node
information
peer node
peer
follower
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
CNA2007800060161A
Other languages
English (en)
Other versions
CN101385280B (zh
Inventor
A·希德瑞
A·E·克莱门茨
C·康特西迪斯
J·米勒
P·R·罗德里格斯
R·C·韦斯
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 CN101385280A publication Critical patent/CN101385280A/zh
Application granted granted Critical
Publication of CN101385280B publication Critical patent/CN101385280B/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
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area 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/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • 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/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • 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/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • 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/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/101Server selection for load balancing based on network conditions
    • 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/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1012Server selection for load balancing based on compliance of requirements or conditions with available server resources
    • 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/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1014Server selection for load balancing based on the content of a request
    • 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/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1021Server selection for load balancing based on client or server locations
    • 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/1042Peer-to-peer [P2P] networks using topology management 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/1044Group management 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/1061Peer-to-peer [P2P] networks using node-based peer discovery 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/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/1072Discovery involving ranked list compilation of candidate peers
    • 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/1068Discovery involving direct consultation or announcement among potential requesting and potential source peers
    • H04L67/107Discovery involving direct consultation or announcement among potential requesting and potential source peers with limitation or expansion of the discovery scope

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

在对等内容分布云中使用跟踪者节点实现拓扑管理过程。跟踪者节点具有关于可用对等节点的信息并辅助对等节点找到可用来连接的其它对等节点。描述可供在跟踪者节点处使用的用于选择哪些对等节点作为形成连接的潜在对等节点来返回的各种算法。此外,描述允许高效率扩增对等云中的跟踪者节点的架构和算法。

Description

对等内容分布云中的拓扑管理
技术领域
本描述一般地涉及对等内容分布,尤其涉及对等内容分布云中的拓扑管理。本描述尤其涉及在注册者节点处使用算法来管理对等云形状,但决不仅限于此。
背景
对等文件共享云中的拓扑管理是一个亟待针对性解决以增加云的全部或大多数成员能够接收正被共享的内容的速度和简易性的重大问题。
在过去,使用提供基于基础设施解决方案的专用服务器场实现了大规模的内容分布。在此类方法中,每个请求内容的客户机形成到服务器场处一服务器的专用高带宽连接并在需要时下载内容。此类解决方案对必须提供并维护服务器场的内容提供商而言是昂贵的。图1示出具有服务器1和客户机2的此类解决方案,其中每个客户机都具有至一个或多个服务器的直接连接。此类解决方案不仅对内容提供商而言是昂贵的,并且它不够健壮,因为服务器处的故障会导致内容无法向许多客户机提供。此外,该解决方案不能轻易扩容,因为每个服务器支持的客户机数目有限。
更近期一些时,基于使用在其中各节点共享其资源(存储、CPU、带宽)的协作网络的分布式体系结构出现了用于内容分布的新范例。
协作内容分布解决方案固有地可自扩容,因为系统的带宽容量随着更多节点的到来而增加:每个新节点请求来自其他节点的服务同时也向其他节点提供服务。因为每个新节点都贡献资源,所以系统容量按需增加,从而导致无限的系统扩容能力。通过协作,文件源或即服务器不再需要增加其资源来容适更大的用户总数;这也就提供了对“闪瞬拥挤”——通常会导致受影响的服务器崩溃的巨大且突然的话务浪涌——的顺应力。因此,终端-系统协作解决方案可用于在保持原始服务器成本很低的同时快速高效地将软件更新、关键补丁、视频、和其他的大型文件投递给非常大量的用户。
本发明涉及但决不仅限于能使用网络拓扑管理和/或云形状管理来影响对等内容分布的性能的方式。
概述
提供本概述以便以简化形式介绍将在以下详细描述中进一步描述的概念的选集。本概述并非旨在标识出要求保护的主题的关键特征或必要特征,亦非旨在用于限定要求保护的主题的范围。
在对等内容分布云中使用跟踪者节点来实现拓扑管理过程。跟踪者节点具有关于可用对等节点的信息并辅助对等节点找到可用来连接的其它对等节点。描述可供在跟踪者节点处使用的用于选择哪些对等节点作为形成连接的潜在对等节点来返回的各种算法。此外,描述允许高效率扩增对等云中跟踪者节点的架构和算法。
一个示例提供控制包括至少一个跟踪者节点和多个对等节点的对等内容分布云的形状的方法。该示例方法包括在跟踪者节点处的以下步骤:
·接收来自这些对等节点之一的请求关于可用来连接的一个或多个其它对等节点的信息的请求;
·访问关于与该跟踪者节点相关联的多个可用对等节点的信息;
·在一个或多个准则的基础上并且在所访问到的信息的基础上来选择这些可用对等节点中的一个或多个;
·向作出请求的对等节点发送关于所选择的可用对等节点的信息。
这提供跟踪者节点可用于以简单和有效的方式控制云的形状的优势。在跟踪者节点处纳入包括该准则以及将该准则与所访问到的信息联用来过滤可用对等节点的方式的智能。术语与跟踪者节点“相关联的对等节点”用于指为该跟踪者节点所知晓的任何对等节点,例如是作为已经向该跟踪者节点注册的结果、或作为任何其它合适过程的结果而被知晓。由此作出请求的对等节点未必要与该跟踪者节点相关联。作出此类请求的对等节点不需已向该跟踪者节点注册。术语“与跟踪者节点相关联的可用对等节点”用于指与该跟踪者节点相关联的对等节点中可被该跟踪者节点选择的任何对等节点。
在另一个示例中描述相应的跟踪者节点。该示例跟踪者节点用于控制包括多个对等节点的对等内容分布云的形状的方法。该跟踪者节点包括:
·输入,其被安排成接收来自这些对等节点之一的请求关于可用来连接的一个或多个其它对等节点的信息的请求;
·用于访问关于与该跟踪者节点相关联的多个可用对等节点的信息的装置;
·处理器,其被安排成在一个或多个准则的基础上并且在所访问到的信息的基础上选择这些可用对等节点中的一个或多个;
·输出,其被安排成向所述作出请求的对等节点发送关于所选择的可用对等节点的信息。
优选地,访问到的信息包括由对等节点在向跟踪者节点注册期间提供的信息。在另一个实施例中,访问到的信息还包括或仅包括由对等节点作为其对可用来连接对等节点的请求的一部分提供的的信息。
优选地,由对等节点作为其对可用来连接的对等节点的请求的一部分提供的的信息包括关于作出请求的对等节点目前不想连接的对等节点的详情。可被包括在该请求中的其它信息包括作出请求的对等节点的地理位置、其网际协议地址以及诸如再下一段中所提到的其它合适的信息。
优选地,所述一个或多个准则选自于以下各项中的任何项:定域、订阅级别、服务质量级别、相对上传能力、相对下载能力、伪随机选择、现存对等连接相对数目、可用对等内容相对量、历史对等节点行为信息、预报对等节点行为信息、相对本地资源、相对节点可访问性、预测成对连通性、以及不透明元数据。术语“不透明元数据”是指在语义上对于跟踪者是未知的信息。
优选地,访问到的信息包括以下之中的一者或多者:定域信息、订阅信息、服务质量信息、上传速度信息、下载速度信息、现存对等连接数目、可用对等内容量、历史对等节点行为信息、预报对等节点行为信息、本地资源信息、互联网地址类型、节点可访问性信息、预测成对连通性信息、以及不透明元数据。
例如,定域信息选自于以下之中的一者或多者:网际协议地址、网络坐标系统信息、网际协议地址到地理位置数据库结果、关于对等节点是在公网还是专网区域中的信息、邮政地址信息、全球定位系统信息、网络定域信息和地理信息。
在另一个示例中,定域信息包括网际协议地址前缀的比较。
另一个示例提供包括计算机程序代码装置的计算机程序,该计算机程序代码装置适用于在该程序在计算机上运行时执行上述任何方法中任何方法的所有步骤。该计算机程序可以在计算机可读介质上实施。
在另一个示例中,描述包括多个如上所述的跟踪者节点的对等内容分布云。在一个示例中,与每个跟踪者节点相关联的对等节点不相同并且每个跟踪者节点仅能够访问关于其关联对等节点的信息。在另一个示例中,每个对等节点与这些跟踪者节点中的一个以上相关联。例如,通过向一个以上跟踪者注册来实现此关联。
例如,对等内容分布云包括被安排成向这些跟踪者节点中不同的各个作出对可用来连接的其它对等节点的请求的对等节点。
那些对等节点例如被安排成基于以下准则中的任何一者或多者来选择要向哪个跟踪者节点请求其它对等节点的详情:随机选择、轮流选择每个跟踪者、选择除之前所使用的那一个跟踪者之外的任何跟踪者、仅从该对等节点与之相关联的跟踪者中选择。
另一个示例提供可供在包括多个如上所述的跟踪者节点的对等内容分布云中使用的对等节点,所述对等节点被安排成重复地改变向其请求可用来连接的其它对等节点的详情的跟踪者节点。在另一个示例中,该对等节点被安排成向这些跟踪者节点中的一个以上注册。
例如,该对等节点被安排成在作出每个对可用来连接的其它对等节点的详情的请求之前先改变跟踪者节点。
本文描述的各种方法可由存储介质上机器可读形式的软件执行。该软件可适合于在并行处理器或串行处理器上执行,以使得各方法步骤能以任何合适的次序或是同时执行。
这肯定了软件能够是有价值的、可以单独交易的商品。它旨在涵盖在“哑”或标准硬件上运行或控制其来执行期望的功能的软件,(且因此,软件本质上定义了寄存器的功能,并且因此可被称为寄存器——甚至是在它与其标准硬件结合之前)。出于类似的理由,其还旨在涵盖“描述”或者定义硬件配置的软件,诸如HDL(硬件描述语言)软件,其用于设计硅芯片,或用于配置通用可编程芯片以执行期望的功能。
通过参考下面结合附图考虑的详细描述更好地理解伴随特征,它们中的许多将更易于领会。
附图说明
在附图的启发下阅读以下详细描述将更好地理解本描述,附图中:
图1是使用服务器场的现有技术内容分布系统的示意图;
图2是对等文件共享云的示意图;
图3是选择对等节点的方法的流程图;
图4是有网络区域的对等云的示意图;
图5是拓扑管理过程的流程图;
图6是有进行数据镜像的多个跟踪者节点的对等云的示意图;
图7是有不进行数据镜像的多个跟踪者节点的对等云的示意图;
图8是在对等节点处的方法的流程图;
图9是跟踪者节点的示意图。
使用相同的附图标号指示附图中相似的部分。
详细描述
下面结合附图提供的详细描述旨在作为对本发明各示例的描述,而非旨在表示可构造或利用本发明示例的仅有形式。本描述阐述该示例的功能以及用于构造和操作该示例的步骤序列。然而,相同或等效的功能和序列可由不同的示例来完成。
本文中使用术语“云”来指在通信网络中可以访问对等文件共享协议并使用该协议来试图获得诸如正被分布的文件等的特定某件内容的副本的多个节点。云在某些文献中也被称为图。云中诸节点各自具有使用该协议的到其中其他节点的一个或多个当前连接。由此当节点丢掉或是形成到云中已有节点的连接时,该节点就能加入或离开云。各连接无需总是活跃地用于内容分布,虽然这些连接需要适合使用该特定协议来这样做,而这可能使用也可能不使用网络编码。连接或可以是单向或可以是双向连接。在本文描述的特定示例中,所有的连接都是单向的,从而使得这些云是非对称的,虽然本发明可适用于并涵盖在其中各连接是双向的且单个连接支持上传和下载两个方向上的话务的对称云。给定节点也可以同时是一个以上云的成员。例如,第一个云中的节点正试图获得正被共享的视频的副本而第二个云中的节点正试图获得数字静止图像文件夹的副本。云可以相互独立,也可以部分或完全重叠。
图2是包括经由互联网11或任何其他适合的通信网络连通的多个节点的对等文件分布云10的示意图。云本身可以包括多得多的节点,但为了清楚仅示出不到十个节点。其他节点尽管既非对等文件共享参与者也非云的成员但也可以连接在云成员之间或直接连接到云成员的方式出现,这些并未示出。
在云10中提供一个或多个种子节点12。种子节点是内容——也称为文件——起源于其中的节点。例如,假设某公司有想公开共享给云成员的产品演示视频。可将该文件放置在种子节点上。该种子节点通常是“一直在线”的,这就使得内容文件在相当长的时段(维护时段等除外)内可以从其上传。通常情况下,种子节点主动上传内容而不主动下载内容。云中仅有有限且相对少量的节点能够同时从种子节点下载内容。种子节点可以使用也可以不使用对等文件共享协议来将内容上传至云中的其他成员。然而,那些其他成员使用对等文件共享协议来继续与云成员共享该内容或内容的各部分。由此其他云成员在其间允许内容从它们自身被上传的时段内可有效地充当种子节点,但在此时段期间并不主动下载内容。在某些情形中,一旦种子节点12已将内容传送至云中,就可能是该种子节点12下线而云10仍起作用。
在云10中提供了一个或多个跟踪者节点14(也被成为注册者节点)。跟踪者节点14具有关于云成员的诸如某对等节点是否正参与在该云中等的信息并且具有任何可供共享的信息。这种跟踪者节点帮助云成员找到具有其所请求的内容的其他云成员。
在云中还存在多个对等节点16、19,其也被称为客户机。对等节点是请求云中正被共享的内容并且可以也共享或者不共享该内容中其已获得的部分的节点。对等节点可如上所提及地充当临时种子。在图1所示的示例中,对等节点16位于诸如互联网等公网中,而对等节点19位于防火墙和/或网络地址转译器(NAT)18后面的企业或家庭专网中。
术语“吸血鬼”用于指只下载但不上传内容的对等节点;吸血鬼是从系统获取但给予很少或不给予回报的寄生者。例如,吸血鬼可以是频繁下载内容但只提供很少或不提供对其他对等节点的上传能力的节点。
术语“孤独者”用于指寻求加入对等内容分布云但尚未形成到云中对等节点的最小数目个连接的个体节点。
正如在我们于2005年12月22日提交的较早欧洲专利申请no.0527099.4中所描述的,我们开发出了一种拓扑管理过程,其涉及在某些境况下移除或“拆掉”节点之间的连接以试图用更为优化的连接来取代这些连接。为了这样做,我们创建了要在对等节点处实现的多个条件或规则。这些规则中有许多优选是被周期性(诸如,经过一分钟)而非即时被评估,但非必须如此。这有助于防止网络中不必要的颠簸。现给出这些条件或规则中的一些的示例:
·对每个对等节点规定它能与其邻节点形成的连接的预先指定的最大数目以及那些连接的预先指定的最小数目。邻节点是在单个逻辑“跳跃”内与其形成直接连接的节点。出于本文的目的,亦即那些间接连接的节点不被认为是邻节点。例如,对等节点为了参与到云中所必须具有的连接的最小数目可约为4。对等节点为了留在云中所能够具有的最大连接数典型地可在数十的数量级上。
·如果任何节点已空闲了长于指定的阈值时段,或等待通知已超过指定的阈值时段,则断开连接。
·如果作为断开连接的结果或其它原因而使得连接数目低于最小值,则向跟踪者请求可用来连接的对等节点。
·如果任何连接正以低于指定下载速率的速率下载并且在同一节点处有同样快或者更快的活跃下载,则断开连接。
·如果任何连接正以低于指定上传阈值的速率上传,则断开连接。
·如果有下载连接空闲并且需要更多的下载,则请求在空闲连接上下载。
·如果活跃的上传或下载连接太少,则向跟踪者请求更多可用来连接的对等节点,随后用上传和下载连接请求两者与其连接。
·每个节点为上传和下载内容发起分别的连接(在云是非对称的情形中)。
·如果某节点在本地已有全部内容,则该节点将不发起或接受下载连接。
·如果某节点在本地已有全部内容,则该节点可以增大其上传连接限量。
·除空闲、下载和上传状态之外,我们还指定其中连接可被称为“通知”状态的新状态。通知状态在某对等节点请求某连接上的下载但远程对等节点无有用内容可供应的情况下发生。其还可在对等节点向跟踪者请求信息但该跟踪者没有新的对等节点信息可供应的情况下出现。
·如果在某连接的下载侧处的节点的下载连接中有大于指定数目个处于通知状态,则断开那些处于通知状态的连接中的一个或多个。
·如果在某连接的上传侧处的节点的上传连接中有大于指定数目个处于通知状态,则断开那些连接之一。
·允许连接在“通知”状态下等待长于其被允许保持在“空闲”状态下的时间。
并非必须使用所有这些规则或条件。即,可在对等节点处的方法中实现这些规则或条件中的一者或多者。
如在以上所引用的我们较早的欧洲专利申请中所提到的,作为网络异质性的结果而产生的一个问题涉及公网和专网以及节点是否可到达。例如,图2示出公网11(在本例中为因特网)以及两个路由器或网络地址转译器(NAT)18。公网11内的节点无法到达连接在NAT 18后面的节点19,除非NAT 18的所有者特别启用了这一点,而这是需要组网专长的动作。例如,连接在NAT18后面的企业专网中的节点通常具有在该企业网内唯一的唯一性地址。然而,这些地址在互联网上不是唯一的。如果NAT或防火墙19后面的节点具有公共节点16之一的网络地址,则能够使用该地址与该公共节点建立连接。但是反之则不尽然。也就是说,若没有关于NAT处的之前已在其处建立了必需绑定的端口的网络地址的详情,则公共互联网中的节点16就无法与该NAT后面的节点19形成连接。正因为如此,作为对等文件共享云的一部分的专用节点19会发现与公共节点相比,其要获得内容是相对困难的。如果云中专用节点的比例大于约50%,则对等内容分布会出现显著问题。在实践中,我们已经发现对等内容分布云中专用节点的比例趋于达到约70%。为了针对性解决这一问题,因此我们加权我们的网络“搅动”算法以偏向于丢掉公共而非专用连接。
在本发明的一个优选实施例中,我们使用‘弹性’最大连接数,其被设在几十数量级的数目但在某些情况下可被增大。例如,如果需要更多连接,则这些连接可以被建立达指定时段。类似地,我们在某些实施例中使用弹性最小连接数。例如,在某些情况下,作为网络搅动算法的一部分,要求当前容纳最小数目个连接的节点丢掉那些连接之一。弹性最小值允许该节点尽管具有过少的连接但仍留能在云中达指定时间。在一个优选实施例中,弹性最小值使得现存对等节点在其直至到达零连接之前皆被认为是云成员。
我们已经发现以下的‘清理’规则或拓扑管理过程尤为有效:
·安排每个对等节点每60秒或在任何其它合适的时间间隔之后执行一次‘清理’
·在该‘清理’期间拆掉任何已经空闲约5分钟或更久并且不处于通知状态的空闲连接;和/或
·在该‘清理’期间拆掉任何处于通知状态已长于约10分钟或者达约两倍于最大允许空闲时间的时间的连接。
我们已经发现以下的‘网络搅动’规则或拓扑管理过程尤为有效:
·在对等节点处获得关于每个连接上的相对内容分布的信息
·随机选择这些连接之一
·丢掉所选连接,除非该连接上的相对内容分布是最差的
·等待指定时间间隔并且随后重复此方法。
对等节点初始化
当对等节点初始化时,它必须知晓跟踪者的网络端点。为了在云中第一次初始化,它连接至跟踪者并请求该对等节点有兴趣下载或共享的特定文件的描述。如果客户机已经从先前的会话中得到了该数据,则它与跟踪者进行核对以确认该内容仍应被供应。在获得或确认文件描述之后,认为该对等节点已被初始化。
只要对等节点是活跃的并且至少有一个内容块可供共享,它就向跟踪者注册其自己。它必须周期性地刷新该注册,因为其会自动超时。对等节点还应该在其离开云时向跟踪者注销。
除获得文件信息和向跟踪者注册之外,对等节点还可周期性地询问跟踪者以找到其它对等节点。该询问包括对跟踪者的请求,接着跟踪者向该对等节点传送零个或多个端点。
每件跟踪者事务都能在分别建立和维护的连接上处置。连接寿命一般将为单件事务。
从云断开连接
当从云断开连接时,对等节点完成以下各项:
·向跟踪者发送消息,以将自己从云中的活跃参与者列表中删除。
·向每个邻节点发送关闭该连接的请求,以让邻节点知晓该节点正在关机。
·刷新每个连接(以确保断开通知被远程接收到)并且随后关闭该连接。
跟踪者节点
如以上所提及的,跟踪者节点14(也被称为注册者节点)帮助云成员找到具有内容的其它云成员。安排活跃的对等节点向跟踪者节点注册并周期性地刷新该注册。例如,一旦满足了特定准则——诸如有指定数目的内容块可供共享,就可要求对等节点注册。对等节点可周期性地询问其注册了的跟踪者以找到其它对等节点。本发明至少在某些实施例中涉及跟踪者节点能响应于此类请求智能地返回对等节点信息以对云进行塑形的方式。这样,无需向对等节点作任何修改,云“所有者”在跟踪者节点处就能够集中地选择和实现不同的云塑形机制。
现在参考图3来描述将在此类跟踪者节点处实现以塑形对等云的一般化方法。跟踪者节点首先接收来自对等节点之一的请求关于可用来连接的一个或多个其它对等节点的信息的请求(参见框30)。跟踪者节点访问关于与其自己相关联的多个可用对等节点的信息(参见框31)。例如,当前向该跟踪者节点注册了的所有对等节点都与其相关联。所访问的信息可以在注册过程期间提供、或与对可供连接的节点的请求一起提供、或以任何其它合适的方式提供。例如,其可存储在集中保存的拓扑信息数据库中或可通过主动探测各对等节点来获得。
跟踪者节点随后在一个或多个准则的基础上并且在所访问到的信息的基础上选择这些可用对等节点中的一个或多个(参见框32)。该准则可为任何合适类型,并且其示例在以下讨论。例如,该准则可为使用对等节点提供的邮政地址信息选择在地理上最接近作出请求的对等节点的那些对等节点。在对等节点于其注册时供给邮政地址信息的情形中,作出对信息的请求的对等节点也必须在该请求中提供其邮政地址。这是因为不能假定作出请求的对等节点已经注册。对等节点第一次请求关于其它对等节点的信息时,其通常尚未注册,因为其还没有任何数据块可供共享。
关于所选择的可用对等节点的信息随后被发送给作出请求的对等节点(参见框33)。作出请求的对等节点可使用该信息来建立到所选择的对等节点中的一个或多个的新连接。
图9是跟踪者节点(14)更详细的示意图。该跟踪者节点具有被安排成接收对等节点请求的输入90。其包括存储着的准则93、或从其它位置访问这些准则的装置。提供使得跟踪者节点14能够访问关于与该跟踪者节点相关联的可用对等节点的信息的对等节点信息接口94。此信息可被存储在跟踪者节点自身处或其它地方。提供处理器92用以如上所提及地选择这些可用对等节点中的一个或多个。输出91允许将关于所选对等节点的信息发送给作出请求的对等节点。
访问到的信息
跟踪者节点用于选择对等节点的访问到的信息优选地存储在跟踪者节点自身处的数据库中。替代地,其可从或在云内或在云外的连接到该跟踪者节点的其它实体访问。在某些实施例中,访问到的信息可由对等节点在向跟踪者节点注册期间提供。此类信息在此被称为元数据。例如,注册过程涉及使用消息协议向跟踪者节点发送信息分组。该分组具有预先指定的结构,其包括在其中可携带元数据的净荷或其它部分。在这种情形中,对等节点被安排成以预先指定的以使得至少在某些实施例中其能在跟踪者节点处被解释的方式将元数据插入到分组的净荷或其它合适的结构中。(在使用不透明元数据的情形中,其在跟踪者节点处并不被解释而仅是简单地被提取。)元数据可包括任何合适的关于在对等节点处的行为的信息或与对等节点相关联的其它信息。访问到的信息还可由对等节点作为它们对可用来连接的对等节点的请求的一部分来提供。例如,这样的请求优选地包括作出请求的对等节点的身份或地址信息以及关于不要求连接的对等节点的信息。例如,由于作出请求的对等节点已连接到那些节点,或由于作出请求的对等节点已知晓其不能(或不愿)连接到那些节点。在优选实施例中,我们使用两种不同的不相关的数据结构来表示元数据和不要求连接的节点的列表。然而,这并非是必须的,任何合适类型的数据结构都可使用。
在某些实施例中使用不透明元数据,即跟踪者不作解释并且跟踪者不知晓其含意的元数据。在这样的实施例中,跟踪者知晓这些元数据项将被用于对等节点选择但并未从这些元数据项获悉任何其它含意。不透明元数据的使用在以后更详细地解释。
现在列出用于选择对等节点的访问到的信息的示例。
·定域信息,
·订阅信息,
·服务质量信息,
·上传速度信息,
·下载速度信息,
·现存对等节点连接数目,
·可用对等节点内容量,
·历史对等节点行为信息,
·预报对等节点行为信息,
·本地资源信息,
·互联网地址类型,
·节点可访问性(例如,是否是在NAT或防火墙后面),
·预测成对连通性。
定域信息包括关于对等节点的相对网络位置或地理位置的任何信息。其还可包括关于该对等节点所在的网络区域的类型的信息,若其如以上参考图2所提及地是公网或专网。本文还使用术语“可到达的”和“不可到达的”来表示某对等节点是在公网中并且是其它公共节点“可到达的”还是在专网中并且从公网区域中的节点藉直接联系是“不可到达的”。
例如,定域信息可包括关于这些对等节点的网际协议地址的信息。可对网协议地址前缀作出比较以选择与作出请求的对等节点的网际协议(IP)地址具有最长前缀匹配的那些对等节点。在IPV6网络的情形中,地址前缀相似性给出具有这些地址的那些实体即便在地理位置上并不靠近至少在网络中相对靠近的良好指示。这至少适用于地址空间的顶级聚集器(TLA)/二级聚集器(SLA)/网络级聚集器(NLA)断点。然而,当使用IPv4地址时则不尽然。在后一种情形中,该同样的方法也可被使用并给出有作用的解决方案,虽然在某些情形中具有相似IPv4地址的实体在网络上和/或在地理位置上实际分开很远。
现给出可供在跟踪者节点处使用以实现IP地址比较方法的合适算法的示例。跟踪者节点将作出请求的对等节点的所有公共IP地址与已在跟踪者节点处注册的每个对等端点的所有公共地址进行比较。跟踪者节点返回其公共地址与请求者的地址具有最长前缀匹配的对等节点的对等端点。例如,如果Z具有地址1.2.3.4,A具有地址1.2.5.6,而B具有地址1.2.3.7,则跟踪者节点对于Z发出的对等节点请求将优先返回B。B匹配前缀的三个字节(1.2.3),而A仅匹配前缀的两个字节(1.2)。
定域信息还可包含来自网络坐标系统——诸如全球网络定位(GNP)、实际因特网坐标(PIC)、灯塔、以及包括虚拟地标和ICS等基于主分量分析(PCA)的技术——的信息。还可使用任何其它合适的网络坐标系统。概言之,所有这些网络坐标系统选择网络节点的子集作为参考点并为坐标系统创建原点。测量各参考点节点之间的往返时间并在这些往返时间结果的基础上计算用于每个参考点节点的坐标。为确定网络中的另一节点的坐标,计算其与参考点节点之间的往返时间并在此基础上确定其坐标。以上所提及的各种不同网络坐标系统使用不同的技术来选择参考点、创建原点、以及计算坐标。
另一个可选项是使用网际协议地址到地理位置数据库结果来提供定域信息。此类数据库当前市售可用且可用于评估具有网际协议地址的各实体的相对地理靠近程度。
也可使用邮政地址信息或全球定位系统信息。例如,作出请求的对等节点访问此信息并在其向跟踪者节点注册时将此信息作为元数据提供,或将其作为向跟踪者节点请求更多对等节点供其连接的请求的一部分来提供。
也可使用关于对等节点是在公网还是专网区域中的信息。为取得良好的网络性能,跟踪者节点优选地被安排成对于来自不可到达的对等节点的请求返回可到达的对等节点。应注意,可到达的对等节点是能接受来自全球互联网上的主机的连接的对等节点,而不可到达的对等节点是不能接受连接的对等节点,诸如在防火墙或网络地址转译器(NAT)后面的主机。如果跟踪者节点具有足够的信息,则其可确定可到达性并且甚至可对与作出请求的对等设备在同一防火墙或NAT后面的对等节点作出例外。
参考图4,对等内容分布云被表示为具有四个网络区域40、41、42、43,它们可以是例如在特定企业或其它组织处的内联网。其中两个网络区域打了交叉阴影线40、42,以指示这些是在防火墙或NAT后面或因其它原因从公共网络不可到达。在不可到达区域中的对等节点可发起出站连接,并且可发起到彼此的连接,但不能接收来自边界外的连接请求。在一个实施例中,跟踪者被安排成偏好边界内的对等节点被充分连通,并且每个区域具有相对较少的跨边界连接。在网络边界之内的节点通常到彼此的网络连通性比到跨过边界的节点的更好(在吞吐量意义上)。我们已发现此模式允许云中内容传播达到最大速率。
定域信息还可包括关于法定管辖或节点所在国家的信息。此信息随后可被跟踪者节点用于返回满足特定法定管辖要求或国家要求的潜在邻节点。跟踪者节点的另一可选项是拒绝来自不满足特定法定管辖、国家或其它要求的对等节点请求的注册。
还可能提供订阅信息和/或服务质量信息。例如,对等节点作为云成员可被要求为不同的服务级别付费,并且在这种情形中,具有较高服务级别的对等节点会被跟踪者节点给予优先待遇。
关于个体对等节点的上传速度和/或下载速度信息也可被跟踪者使用。例如,用来优先返回关于具有高上传速度的对等节点的信息。
关于现存对等节点连接数目的信息也可被跟踪者节点使用。例如,具有很少现存连接的对等节点可被优先返回给请求者以加快通过云进行的分布。
关于可用对等节点内容的量的信息可被跟踪者节点使用。在这种情形中,跟踪者节点会向请求者优先返回关于具有高量级可用内容的对等节点的信息。
此外,关于对等节点行为的历史和/或预报信息可被跟踪者节点以任何合适的方式使用。
准则
可使用任何合适的准则,诸如基于以下一项或多项的那些准则:
·定域、订阅级别、服务质量级别、相对上传能力、相对下载能力、伪随机选择、现存对等节点连接的相对数目、可用对等内容的相对量、历史对等节点行为信息、预报对等节点行为信息、相对本地资源、相对节点可访问性、预测成对连通性、以及不透明元数据。
通过使用伪随机选择,可促进云的随机塑形。这给予健壮性和相对可预测的平均性能。
在使用不透明元数据的情形中,跟踪者用于对等节点选择的准则之一是该请求中的不透明元数据项中有多少个与其它对等节点在注册期间提供的元数据项相匹配。匹配数目高的对等节点更可能被跟踪者选择。
图5是跟踪者节点与对等节点之间的互动的示例的流程图。对等节点查看其直接连接的邻对等节点有多少个(框50)并且如果少于某一阈值数目(诸如6或任何其它合适数目)(参见框51),则其向跟踪者请求足以允许其达到其被允许的最大邻节点数目的对等端点(参见框52)。例如,如果该对等节点具有四个邻节点且被允许具有最多12个邻节点,则其可向跟踪者请求8个对等端点。
在跟踪者处接收到该请求(参见框53)并且该请求优选包扩对等节点ID的“排除”列表,但非必须如此。该排除列表包括作出请求的对等节点的当前邻节点以及即便让跟踪者返回了也不会有用的任何其它对等节点——诸如作出请求的对等节点已将其列入黑名单或已经知晓其无法连接的对等节点的ID。
跟踪者核实来自对等节点的请求(参见框54)。如果该请求是有效的,则其选取确保该列表不包括在请求者的排除列表上的任何条目的一组对等端点以返回给请求者(参见框55)。跟踪者将对等端点的列表返回给请求者(参见框56)。作出请求的对等节点随后接收该信息(参见框57)并且尝试连接所接收到的这些对等端点中的每一个(参见框58)。在合适的间隔(诸如5分钟或任何其它合适的时间)后该方法重复。
对于特别大的对等内容分布云,要求扩增跟踪者节点。现在参考图6和7来论述扩增跟踪者节点的两种办法。
图6是包括多个对等节点107和多个跟踪者节点T(104、105和106)的对等内容分布云100的示意图。每个跟踪者节点T执行与如上所述的跟踪者节点相同的功能并且能够支持很大的但有限数目的对等节点P。为了支持更多对等节点,能够如图6中所示地添加更多跟踪者节点T。
在使用一个以上跟踪者节点的情形中,一种选择是在每个跟踪者节点之间共享对等节点信息以使得这些跟踪者节点彼此之间总是具有相同的对等节点信息。为了实现这一点,能够使用连接在各跟踪者节点之间的一个或多个服务器101、102、103以提供足够的处理能力来确保各跟踪者节点之间数据的镜像。该方法尽管是可工作的但同时也是昂贵的,因为需要设置和维护服务器节点101、102、103。该办法的一个优势是对等节点全然仅需要向这些跟踪者节点中的具体的一个请求关于可用来连接的其它对等节点的信息。如果跟踪者节点之间数据的镜像不可用,则由于对等节点全然仅连接到一个特定的跟踪者节点,性能就会降低。也就是说,一个特定的跟踪者节点只知晓可用对等节点的一个子集,且因此这可能阻碍内容以如否则本该有的那样快地被分布。我们认识到了此问题并且提供有效且不昂贵的解决方案。这是通过确保对等节点获得所有可用跟踪者节点的地址并且在它们每次作出对可用来连接的对等节点的请求时使用不同的跟踪者节点来实现的。在这种情形中,不需要更多的服务器节点S来在跟踪者节点104、105、106之间镜像数据。图7结合图8的流程图示出该情形。
假设对等节点P1希望加入云100。其首先获得关于其中至少一个跟踪者节点(以T1为例)的地址的信息以及还有需要在内容分布过程期间获得的内容的内容ID。P1可从具有带该信息的URL的网站或以任何其它合适的方式获得该信息。对等节点向跟踪者节点发送请求以待该请求被核实并且内容ID被认证(参见图8的框80)。该对等节点请求关于可用来连接的其它对等节点的信息并且从跟踪者节点接收该信息(例如,其得到关于P2和P3的通知)(参见图8的框81)。其与这些对等节点中的一个或多个形成连接并且开始访问正被分布的内容的数据块(参见图8的框82)。
一旦该对等节点有至少一个内容块可供共享,其就被安排成向其相关联的跟踪者节点注册(参见图8的框83)。在注册过程期间,其提供其地址、内容ID以及任何其它合适的元数据。该对等节点得到其应该通过重复注册来重复通知跟踪者节点其存在的频度的通知。例如,这可以是每5分钟或其它合适的时间一次。提供此过程是为了确保跟踪者节点的可用对等节点列表是最新的。
作为我们的拓扑管理过程的一部分,每个对等节点被安排成如上所述地在各种境况下丢掉到其它对等节点的一个或多个连接(参见图8的框84)。在这种情况下,该对等节点可能需要请求关于更多可用来连接的对等节点的详情。该对等节点被安排成选择可用跟踪者节点中不同的一个来做此事。该跟踪者节点将具有关于不同的可用对等节点的信息。该对等节点随后向例如T2发送其对新的可用来连接的节点的请求。此过程重复,从而当该对等节点需要作出对可用来连接的节点的新请求时其通过首先选择不同的跟踪者节点以发送此请求来这样做(参见图8的框85)。对等节点优选地贯穿整个会话期间保持向同一跟踪者注册,但通常在其每次需要请求新的可用来连接的对等节点时都形成到新的跟踪者的连接。
在另一个实施例中,如图6中那样提供多个跟踪者节点但不在这些跟踪者节点之间进行数据镜像。在该实施例中,对等节点被安排成向这些跟踪者节点中的一个以上注册。这提供了在跟踪者节点之间对等节点信息的某种共享,并且在这种情形中,对等节点能够仅向一个跟踪者、或仅向其注册了的任何跟踪者请求关于可用来连接的其它对等节点的信息。在所有对等节点都向所有跟踪者注册的情形中,由于所有的跟踪者都知晓所有的对等节点,因而不需要进行数据镜像。
在具有多个跟踪者的相对较小的云的情形中,可适用如现在描述的特殊的考虑。假定每个对等节点仅向一个跟踪者注册且该跟踪者是随机选取的,如果云很大,则每个跟踪者对可供从中选取的已注册对等节点将有同样好的随机分布的选择。这是因为大数法则。由此,当客户机发送对关于对等节点的信息的请求时,其将该请求发送到哪个跟踪者是没有关系的。然而,如果云很小,则这可能不再成立。对于给定的作出请求的对等节点,某些跟踪者可能具有比其它跟踪者好得多的信息。减轻此问题的一种方式(如已描述过的)是令对等节点将对于对等节点的每个新请求发送给不同的跟踪者。新请求将可大约每5分钟发送一次。随着时间流逝,作出请求的对等节点获取关于好的对等节点的信息的可能性就越来越大。
对此问题的替换解决方案是令跟踪者通知作出请求的对等节点其返回的对等节点列表是否是来自统计上显著的已注册对等节点集合。如果跟踪者告知作出请求的对等节点该信息来自很小的已注册对等节点集合,则作出请求的对等节点可将其视为其应该向一不同的跟踪者发出另一个对信息的请求的提示。这无需等待几分钟再发送另一个请求就能完成,并且这允许作出请求的对等节点能更快地找到好的一组对等节点。
在本发明的某些实施例中,对等内容分布算法使用网络编码,尽管这不是必须的。网络编码背后的原理是允许对等节点编码分组,这与其中只有服务器或种子节点编码分组的服务器编码相反。使用网络编码,每一次对等节点需要将分组上传到另一对等节点时,源对等节点就生成并发送其全部可用信息的线性组合。在对等节点接收了足够多的线性无关的分组组合之后,它就能重构原始信息。使用网络编码,云中的对等节点就很有可能具有其他邻节点处所不具有的至少一部分内容块。内容的各部分通过云‘蔓延’,从而使得新建立的连接有可能生成至少某些有用内容,这与不使用网络编码的分布算法相反。在本发明中,有在使用网络编码时尤为有利的某些方法。例如,网络搅动算法可被安排成丢掉连接——即便在此后最小连接数目将不再满足的情况下亦是如此。这是因为节点要找到新的有用连接是相对容易的,而这与不使用网络编码的情况相反。
本领域的技术人员将认识到用于存储程序指令的存储设备可分布在网络上。例如,远程计算机可存储描述为软件的过程的示例。本地或终端计算机可访问远程计算机并下载该软件的一部分或全部以运行该程序。替代地,本地计算机可按需下载软件的片断,或在本地终端上执行一些软件指令并且在远程计算机(或计算机网络)上执行一些软件指令。本领域的技术人员还将认识到,通过使用本领域技术人员已知的常规技术,软件指令的全部或部分可由诸如DSP、可编程逻辑阵列等专用电路来执行。
如对于本领域的技术人员而言将显而易见的是,可扩展或变更此处给出的任何范围或者设备值而不会失去所寻求的效果。
本文所描述的各方法步骤可按任何合适的次序执行或在适当场合同时执行。
应理解,以上对于优选实施例的描述仅是作为示例而给出的,并且本领域的技术人员可以做出各种修改。

Claims (19)

1.一种控制包括至少一个跟踪者节点和多个对等节点的对等内容分布云的形状的方法,所述方法包括在所述跟踪者节点处的以下步骤:
(i)接收来自所述对等节点之一的请求关于可用来连接的一个或多个其它对等节点的信息的请求;
(ii)访问关于与所述跟踪者节点相关联的多个可用对等节点的信息;
(iii)在一个或多个准则的基础上并且在所访问到的信息的基础上选择所述可用对等节点中的一个或多个;
(iv)向所述作出请求的对等节点发送关于所选择的可用对等节点的信息。
2.如权利要求1所述的方法,其特征在于,所述访问到的信息包括由对等节点在向所述跟踪者注册期间提供的信息和/或由所述作出请求的对等节点提供的信息。
3.如以上权利要求中任一项所述的方法,其特征在于,由对等节点作为其对可用来连接的对等节点的请求的一部分提供的的信息包括所述作出请求的对等节点不想要连接的对等节点的详情。
4.如以上权利要求中任一项所述的方法,其特征在于,所述一个或多个准则选自于以下中的任何项:定域、订阅级别、服务质量级别、相对上传能力、相对下载能力、伪随机选择、现存对等连接相对数目、可用对等内容相对量、历史对等节点行为信息、和预报对等节点行为信息、相对本地资源、相对节点可访问性、和预测成对连通性、以及不透明元数据。
5.如以上权利要求中任一项所述的方法,其特征在于,所述访问到的信息包括以下一者或多者:定域信息、订阅信息、服务质量信息、上传速度信息、下载速度信息、现存对等连接数目、可用对等内容量、历史对等节点行为信息、和预报对等节点行为信息、本地资源信息、互联网地址类型、节点可访问性信息、预测成对连通性信息、以及不透明元数据。
6.如权利要求5所述的方法,其特征在于,所述定域信息选自于以下一者或多者:网际协议地址、网络坐标系统信息、网际协议地址到地理位置数据库结果、关于对等节点是在公网还是专网区域中的信息、邮政地址信息、全球定位系统信息。
7.如权利要求6所述的方法,其特征在于,所述定域信息包括网际协议地址前缀的比较。
8.一种计算机程序,其包括适于在所述程序在计算机上运行时执行权利要求1至7中任一项的所有步骤的计算机程序代码装置。
9.如权利要求8所述的计算机程序,其特征在于是实现在计算机可读介质上。
10.一种用于控制包括多个对等节点(16)的对等内容分布云(10)的形状的跟踪者节点(14),所述跟踪者节点包括:
(i)输入(90),其被安排成接收来自所述对等节点之一的请求关于可用来连接的一个或多个其它对等节点的信息的请求;
(ii)用于访问关于与所述跟踪者节点相关联的多个可用对等节点的信息的装置(94);
(iii)处理器(92),其被安排成在一个或多个准则的基础上并且在所访问到的信息的基础上选择所述可用对等节点中的一个或多个;
(iv)输出(91),其被安排成向所述作出请求的对等节点发送关于所选择的可用对等节点的信息。
11.如权利要求10所述的跟踪者节点(14),其特征在于,所述访问到的信息包括由对等节点在向所述跟踪者注册期间提供的信息和/或由所述作出请求的对等节点提供的信息。
12.如权利要求10或权利要求11所述的跟踪者节点(14),其特征在于,所述一个或多个准则选自于以下中的任何项:定域、订阅级别、服务质量级别、相对上传能力、相对下载能力、伪随机选择、现存对等连接相对数目、可用对等内容相对量、历史对等节点行为信息、预报对等节点行为信息、相对本地资源、相对节点可访问性、预测成对连通性、以及不透明元数据。
13.如权利要求10、权利要求11、或权利要求12所述的跟踪者节点(14),其特征在于,所述访问到的信息包括以下一者或多者:定域信息、订阅信息、服务质量信息、上传速度信息、下载速度信息、现存对等连接数目、可用对等内容量、历史对等节点行为信息、预报对等节点行为信息、本地资源信息、互联网地址类型、节点可访问性信息、预测成对连通性信息、以及不透明元数据。
14.如权利要求13所述的跟踪者节点,其特征在于,所述定域信息选自于以下一者或多者:网际协议地址、网络坐标系统信息、网际协议地址到地理位置数据库结果、关于对等节点是在公网还是专网区域中的信息、邮政地址信息、全球定位系统信息。
15.一种对等内容分布云(10),其包括多个如权利要求10到14中任一项所述的跟踪者节点。
16.如权利要求15所述的对等内容分布云,其特征在于,与每个跟踪者节点相关联的对等节点不相同并且每个跟踪者节点仅能够访问关于其关联对等节点的信息。
17.如权利要求15所述的对等内容分布云,其特征在于,每个对等节点与所述跟踪者节点中的一个以上相关联。
18.如权利要求15到17中任一项所述的对等内容分布云,其特征在于,对等节点被安排成向所述跟踪者节点中不同的各个作出对于可用来连接的其它对等节点的请求。
19.如权利要求18所述的对等内容分布云,其特征在于,所述对等节点被安排成基于以下准则中的任何准则来选择要向哪个跟踪者节点请求其它对等节点详情:随机选择、轮流选择每个跟踪者、选择除之前所使用的一个之外的任何跟踪者、仅从所述对等节点与之相关联的跟踪者中选择。
CN2007800060161A 2006-02-21 2007-01-26 对等内容分布云中的拓扑管理 Expired - Fee Related CN101385280B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP06270019.0 2006-02-21
EP06270019A EP1821487B1 (en) 2006-02-21 2006-02-21 Topology management in peer-to-peer content distribution clouds
PCT/US2007/002184 WO2007097877A1 (en) 2006-02-21 2007-01-26 Topology management in peer-to peer content distribution clouds

Publications (2)

Publication Number Publication Date
CN101385280A true CN101385280A (zh) 2009-03-11
CN101385280B CN101385280B (zh) 2011-06-15

Family

ID=36274075

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007800060161A Expired - Fee Related CN101385280B (zh) 2006-02-21 2007-01-26 对等内容分布云中的拓扑管理

Country Status (7)

Country Link
US (1) US8364758B2 (zh)
EP (1) EP1821487B1 (zh)
KR (1) KR101344119B1 (zh)
CN (1) CN101385280B (zh)
AT (1) ATE463917T1 (zh)
DE (1) DE602006013405D1 (zh)
WO (1) WO2007097877A1 (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102316157A (zh) * 2010-07-09 2012-01-11 Sap股份公司 通过经纪进行的云计算结构
CN102934411A (zh) * 2010-06-17 2013-02-13 诺基亚西门子通信公司 改进的对等系统
CN103404109A (zh) * 2011-02-21 2013-11-20 黑莓有限公司 蜂窝网络中管理的对等共享
CN104937902A (zh) * 2012-12-14 2015-09-23 微软技术许可有限责任公司 P2p网络中的内容源选择
US10129334B2 (en) 2012-12-14 2018-11-13 Microsoft Technology Licensing, Llc Centralized management of a P2P network
US10284641B2 (en) 2012-12-14 2019-05-07 Microsoft Technology Licensing, Llc Content distribution storage management
US10391387B2 (en) 2012-12-14 2019-08-27 Microsoft Technology Licensing, Llc Presenting digital content item with tiered functionality
CN114450072A (zh) * 2020-03-13 2022-05-06 谷歌有限责任公司 对等多玩家云游戏架构

Families Citing this family (109)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8117320B2 (en) * 2006-06-30 2012-02-14 Intel Corporation Allocation of tracker resources in a computing system
CN100488146C (zh) * 2006-09-14 2009-05-13 华为技术有限公司 在p2p网络中建立点对点连接的方法及在p2p网络中的节点
CN101617518B (zh) * 2007-02-19 2012-09-05 艾利森电话股份有限公司 用于在通信网络中实现用户群服务的方法和装置
US8437280B2 (en) * 2007-03-22 2013-05-07 Tr Technologies Inc. Distributed synchronous batch reconfiguration of a network
US8606846B2 (en) 2007-10-15 2013-12-10 Nbcuniversal Media, Llc Accelerating peer-to-peer content distribution
US9167034B2 (en) 2007-11-12 2015-10-20 International Business Machines Corporation Optimized peer-to-peer file transfers on a multi-node computer system
CN101453368B (zh) * 2007-12-03 2012-02-29 华为技术有限公司 一种因特网ip地址分类和带宽预测的方法、系统及设备
WO2009076251A2 (en) * 2007-12-13 2009-06-18 General Electric Company Accelerating peer-to-peer content distribution
EP2086206A1 (en) * 2008-01-31 2009-08-05 Alcatel Lucent System for operating a peer-to-peer network taking into account access network subscriber information
US9002752B2 (en) * 2008-02-18 2015-04-07 Massachusetts Institute Of Technology Tangible social network
EP2139205B1 (en) * 2008-06-27 2012-10-31 Alcatel Lucent Method of redundant data storage
US8752100B2 (en) * 2008-08-29 2014-06-10 At&T Intellectual Property Ii, Lp Systems and methods for distributing video on demand
US7961741B2 (en) * 2008-10-23 2011-06-14 Silver Spring Networks, Inc. Rapid dissemination of bulk information to widely dispersed network nodes
WO2010063314A1 (en) * 2008-12-02 2010-06-10 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for influencing the selection of peer data sources in a p2p network
US8631072B2 (en) 2008-12-03 2014-01-14 Telefonaktiebolaget L M Ericsson (Publ) Method for selection of suitable peers in a peer-to-peer (P2P) network
EP2394409A4 (en) * 2009-02-06 2012-08-08 Ericsson Telefon Ab L M NETWORK-AWARE PEER-TO-PEER
KR101179554B1 (ko) * 2009-03-26 2012-09-05 한국전자통신연구원 모바일 클라우드 플랫폼을 구비한 모바일 단말 장치
CN101854374A (zh) * 2009-04-01 2010-10-06 日电(中国)有限公司 数据节点装置、对端信息获取方法和系统
CN101534309B (zh) 2009-04-14 2013-03-13 华为技术有限公司 节点注册方法、路由更新方法、通讯系统以及相关设备
US8769055B2 (en) * 2009-04-24 2014-07-01 Microsoft Corporation Distributed backup and versioning
US8769049B2 (en) * 2009-04-24 2014-07-01 Microsoft Corporation Intelligent tiers of backup data
US8935366B2 (en) * 2009-04-24 2015-01-13 Microsoft Corporation Hybrid distributed and cloud backup architecture
CA2763148C (en) * 2009-05-20 2016-11-22 Redcliff Investments, L.L.C. Secure workflow and data management facility
CN101997901B (zh) * 2009-08-28 2014-04-30 国际商业机器公司 P2p文件传输管理方法与系统
US20110055394A1 (en) * 2009-08-28 2011-03-03 Motorola, Inc. Network assisted mobile centric peer selection method
KR101418570B1 (ko) * 2009-10-12 2014-07-10 한국전자통신연구원 P2p 제어 장치 및 전송 오버레이 제어 방법
US20110087775A1 (en) * 2009-10-12 2011-04-14 Electronics And Telecommunications Research Peer-to-peer control device and transmission overlay management method
KR101581678B1 (ko) 2009-10-14 2016-01-04 삼성전자주식회사 전송 순서를 이용한 데이터 공유 시스템
KR20110040604A (ko) * 2009-10-14 2011-04-20 삼성전자주식회사 클라우드 서버, 클라이언트 단말, 디바이스, 클라우드 서버의 동작 방법 및 클라이언트 단말의 동작 방법
US10587683B1 (en) * 2012-11-05 2020-03-10 Early Warning Services, Llc Proximity in privacy and security enhanced internet geolocation
US10581834B2 (en) 2009-11-02 2020-03-03 Early Warning Services, Llc Enhancing transaction authentication with privacy and security enhanced internet geolocation and proximity
US9129052B2 (en) * 2009-12-03 2015-09-08 International Business Machines Corporation Metering resource usage in a cloud computing environment
US8504682B2 (en) * 2009-12-17 2013-08-06 Alcatel Lucent Localization of peer to peer traffic
US8843614B2 (en) 2009-12-21 2014-09-23 Electronics And Telecommunications Research Institute Apparatus and method for distributing cloud computing resources using mobile devices
KR101126217B1 (ko) * 2010-02-25 2012-03-22 유비벨록스(주) 클라우드서비스제공시스템 및 이를 이용한 클라우드서비스제공방법
US9417691B2 (en) 2010-03-26 2016-08-16 Nokia Technologies Oy Method and apparatus for ad-hoc peer-to-peer augmented reality environment
US8812657B2 (en) 2010-04-15 2014-08-19 Qualcomm Incorporated Network-assisted peer discovery
US8825731B2 (en) 2010-05-18 2014-09-02 International Business Machines Corporation Mobile device workload management for cloud computing using SIP and presence to control workload and method thereof
WO2012030259A1 (en) * 2010-08-31 2012-03-08 Telefonaktiebolaget Lm Ericsson (Publ) Method and arrangement in a peer-to-peer network
KR101210613B1 (ko) * 2010-11-30 2012-12-11 주식회사 케이티 모바일 p2p 서비스를 제공하는 시스템 및 그 방법
US8578028B2 (en) 2011-01-06 2013-11-05 International Business Machines Corporation Techniques for provisioning cloud computing environment resources based on social media analysis
US8589423B2 (en) 2011-01-18 2013-11-19 Red 5 Studios, Inc. Systems and methods for generating enhanced screenshots
WO2012153173A2 (en) * 2011-01-29 2012-11-15 Redthorne Media, Llc Feedback oriented private overlay network for content distribution
KR101868018B1 (ko) * 2011-02-09 2018-06-18 삼성전자주식회사 기기간 연결 제어 방법 및 그 장치
US9571571B2 (en) 2011-02-28 2017-02-14 Bittorrent, Inc. Peer-to-peer live streaming
CA2828489C (en) 2011-02-28 2019-09-24 Bittorrent, Inc. Sharing content according to a protocol for peer-to-peer live streaming
US8868709B2 (en) 2011-05-03 2014-10-21 International Business Machines Corporation Programmatically selecting a service provider based on assured quality of service attributes
ES2410654B1 (es) * 2011-05-12 2014-05-21 Telefónica, S.A. Sistema y método para gestionar la infraestructura de un servicio de red de distribución de contenido en una red isp
US20130007218A1 (en) * 2011-06-28 2013-01-03 Cisco Technology, Inc. Network Assisted Tracker for Better P2P Traffic Management
US9432454B2 (en) * 2011-08-29 2016-08-30 At&T Intellectual Property I, L.P. Cloud-to-cloud peering
US8793313B2 (en) * 2011-09-08 2014-07-29 Red 5 Studios, Inc. Systems, methods and media for distributing peer-to-peer communications
EP2812833A1 (en) * 2012-02-06 2014-12-17 Redigi Inc. Digital data commerce system and methods with digital media object to cloud redirection
US8805797B2 (en) * 2012-02-22 2014-08-12 International Business Machines Corporation Optimizing wide area network (WAN) traffic by providing home site deduplication information to a cache site
CN102647470A (zh) * 2012-04-01 2012-08-22 杭州格畅科技有限公司 在线应用平台内云下载的方法及在线应用平台系统
CN102724195B (zh) * 2012-06-20 2015-12-02 华为技术有限公司 访问请求跟踪方法和相关装置
US8628424B1 (en) 2012-06-28 2014-01-14 Red 5 Studios, Inc. Interactive spectator features for gaming environments
US8632411B1 (en) 2012-06-28 2014-01-21 Red 5 Studios, Inc. Exchanging virtual rewards for computing resources
KR101980129B1 (ko) * 2012-07-10 2019-05-20 한국전자통신연구원 관리 기능이 부여된 피투피 네트워크 시스템
US8834268B2 (en) 2012-07-13 2014-09-16 Red 5 Studios, Inc. Peripheral device control and usage in a broadcaster mode for gaming environments
US8795086B2 (en) 2012-07-20 2014-08-05 Red 5 Studios, Inc. Referee mode within gaming environments
MY170020A (en) * 2012-09-12 2019-06-20 Mimos Berhad A system and method for transmitting web content
US8917620B1 (en) * 2012-11-15 2014-12-23 Sprint Spectrum L.P. Systems and methods for sharing of performance-metric data among similarly configured wireless communication devices
CN103841155B (zh) * 2012-11-26 2015-12-23 腾讯科技(深圳)有限公司 一种软件下载方法和软件下载装置
US9219782B2 (en) * 2012-12-11 2015-12-22 Microsoft Technology Licensing, Llc Identifying seed computing devices using estimates in peer-to-peer networks
KR102017711B1 (ko) * 2012-12-12 2019-09-03 한국전자통신연구원 피투피 네트워크에서 피어의 상태 정보를 관리하거나 공유하는 방법 및 장치
US8959152B2 (en) 2012-12-13 2015-02-17 Microsoft Corporation Peer-to-peer communication to increase download throughput
US9143568B2 (en) 2012-12-18 2015-09-22 Microsoft Technology Licensing, Llc. Peer-to-peer sharing of cloud-based content
WO2014095275A1 (en) * 2012-12-19 2014-06-26 Peerialism AB Multiple requests for content download in a live streaming p2p network
WO2014095274A1 (en) * 2012-12-19 2014-06-26 Peerialism AB Nearest peer download request policy in a live streaming p2p network
US9591070B2 (en) 2012-12-19 2017-03-07 Hive Streaming Ab Multiple requests for content download in a live streaming P2P network
AU2013361959B2 (en) * 2012-12-19 2016-06-16 Hive Streaming Ab Highest bandwidth download request policy in a live streaming P2P network
US9680926B2 (en) 2012-12-19 2017-06-13 Hive Streaming Ab Nearest peer download request policy in a live streaming P2P network
US9544366B2 (en) 2012-12-19 2017-01-10 Hive Streaming Ab Highest bandwidth download request policy in a live streaming P2P network
US9727268B2 (en) * 2013-01-08 2017-08-08 Lyve Minds, Inc. Management of storage in a storage network
US9665380B2 (en) * 2013-02-26 2017-05-30 Vmware, Inc. Peer-to-peer network booting
TWI483122B (zh) * 2013-03-11 2015-05-01 Hon Hai Prec Ind Co Ltd 網路裝置探尋系統及方法
US20150032810A1 (en) * 2013-07-29 2015-01-29 Microsoft Corporation Content distribution using social relationships
US9800517B1 (en) * 2013-10-31 2017-10-24 Neil Anderson Secure distributed computing using containers
US9678678B2 (en) 2013-12-20 2017-06-13 Lyve Minds, Inc. Storage network data retrieval
US20160294940A1 (en) * 2013-12-26 2016-10-06 Le Cloud Computing Co., Ltd. Data download method and device
US10116740B2 (en) 2013-12-27 2018-10-30 Microsoft Technology Licensing, Llc Peer-to-peer network prioritizing propagation of objects through the network
GB2532832B (en) * 2014-08-01 2017-03-22 Kingston Digital Inc Private and secure communication architecture without utilizing a public cloud based routing server
US9912529B2 (en) 2014-08-20 2018-03-06 International Business Machines Corporation Tenant-specific log for events related to a cloud-based service
WO2016036289A1 (en) * 2014-09-02 2016-03-10 Telefonaktiebolaget L M Ericsson (Publ) Method and system for handling a traffic flow between local service clouds
US9952908B2 (en) * 2014-09-11 2018-04-24 Cisco Technology, Inc. Crowd sourced cloud computing
CN107005422B (zh) 2014-09-30 2021-06-01 微福斯有限责任公司 用于第二天操作的基于拓扑的管理的系统和方法
US9882906B2 (en) 2014-12-12 2018-01-30 International Business Machines Corporation Recommendation schema for storing data in a shared data storage network
US9906420B2 (en) 2014-12-22 2018-02-27 International Business Machines Corporation Dynamic boundary based monitoring and metering
US11277390B2 (en) 2015-01-26 2022-03-15 Listat Ltd. Decentralized cybersecure privacy network for cloud communication, computing and global e-commerce
US11627639B2 (en) 2015-01-26 2023-04-11 Ievgen Verzun Methods and apparatus for HyperSecure last mile communication
US9800659B2 (en) 2015-02-02 2017-10-24 International Business Machines Corporation Enterprise peer-to-peer storage and method of managing peer network storage
US10013682B2 (en) 2015-02-13 2018-07-03 International Business Machines Corporation Storage and recovery of digital data based on social network
US9906597B2 (en) 2015-04-07 2018-02-27 Microsoft Technology Licensing, Llc Collaboration data proxy system in cloud computing platforms
CN104935462B (zh) * 2015-06-02 2018-10-19 清华大学 一种端服务器部署方法及装置
US11108883B2 (en) * 2015-09-04 2021-08-31 Google Llc Systems and methods for remote network topology discovery
US10873540B2 (en) 2016-07-06 2020-12-22 Cisco Technology, Inc. Crowd-sourced cloud computing resource validation
US10360606B2 (en) 2016-07-19 2019-07-23 Cisco Technology, Inc. Crowd-sourced cloud computing in a multiple resource provider environment
US10162626B2 (en) 2017-04-10 2018-12-25 Microsoft Technology Licensing, Llc Ordered cache tiering for program build files
WO2020014399A1 (en) * 2018-07-10 2020-01-16 Listat Ltd. Decentralized cybersecure privacy network for cloud communication and global e-commerce
US11340894B2 (en) 2019-04-30 2022-05-24 JFrog, Ltd. Data file partition and replication
US11386233B2 (en) 2019-04-30 2022-07-12 JFrog, Ltd. Data bundle generation and deployment
US11886390B2 (en) 2019-04-30 2024-01-30 JFrog Ltd. Data file partition and replication
US10999314B2 (en) 2019-07-19 2021-05-04 JFrog Ltd. Software release tracking and logging
US10972289B2 (en) 2019-07-19 2021-04-06 JFrog, Ltd. Software release verification
US11695829B2 (en) 2020-01-09 2023-07-04 JFrog Ltd. Peer-to-peer (P2P) downloading
US11860680B2 (en) 2020-11-24 2024-01-02 JFrog Ltd. Software pipeline and release validation
US20220182444A1 (en) * 2020-12-04 2022-06-09 Kollective Technology, Inc. Peer-managed content distribution network
US12058528B2 (en) 2020-12-31 2024-08-06 Prove Identity, Inc. Identity network representation of communications device subscriber in a digital domain
US12061889B2 (en) 2021-10-29 2024-08-13 JFrog Ltd. Software release distribution across a hierarchical network

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6128660A (en) * 1996-03-21 2000-10-03 Hearme Network match maker
US6889254B1 (en) * 1999-03-30 2005-05-03 International Business Machines Corporation Scalable merge technique for information retrieval across a distributed network
US6678728B1 (en) * 1999-12-03 2004-01-13 3Com Corporation Method and apparatus for automatically loading device status information into a network device
US6950848B1 (en) * 2000-05-05 2005-09-27 Yousefi Zadeh Homayoun Database load balancing for multi-tier computer systems
US6973023B1 (en) * 2000-12-30 2005-12-06 Cisco Technology, Inc. Method for routing information over a network employing centralized control
US7165107B2 (en) * 2001-01-22 2007-01-16 Sun Microsystems, Inc. System and method for dynamic, transparent migration of services
AU2002234258A1 (en) * 2001-01-22 2002-07-30 Sun Microsystems, Inc. Peer-to-peer network computing platform
US20030101439A1 (en) * 2001-11-29 2003-05-29 Giuseppe Desoli System and method for supporting emulation of a computer system through dynamic code caching and transformation
US7213047B2 (en) * 2002-10-31 2007-05-01 Sun Microsystems, Inc. Peer trust evaluation using mobile agents in peer-to-peer networks
JP3990976B2 (ja) * 2002-12-19 2007-10-17 株式会社エヌ・ティ・ティ・ドコモ 移動ノード、モビリティ制御装置、通信制御方法及び通信システム
US7774495B2 (en) * 2003-02-13 2010-08-10 Oracle America, Inc, Infrastructure for accessing a peer-to-peer network environment
US7450524B2 (en) * 2003-06-30 2008-11-11 Kontiki, Inc. Method and apparatus for determining network topology in a peer-to-peer network
JP4265326B2 (ja) * 2003-08-12 2009-05-20 株式会社日立製作所 サービス処理方法及びシステム並びにその処理プログラム
US7558875B2 (en) * 2003-09-15 2009-07-07 Microsoft Corporation Measurement-based construction of locality-aware overlay networks
EP1531645A1 (en) * 2003-11-12 2005-05-18 Matsushita Electric Industrial Co., Ltd. Context transfer in a communication network comprising plural heterogeneous access networks
US7420954B2 (en) * 2004-01-13 2008-09-02 General Motors Corporation Efficient lightweight information dissemination algorithm for mobile wireless ad hoc networks
CA2496421A1 (en) * 2004-01-28 2005-07-28 Gridiron Software Inc. Zero configuration peer discovery in a grid computing environment
US7429936B2 (en) * 2004-08-26 2008-09-30 Massachusetts Institute Of Technology Parasitic mobility in dynamically distributed sensor networks
US7958250B2 (en) * 2004-11-09 2011-06-07 Sterling Commerce, Inc. System and method for multi-level guided node and topology discovery
US7639681B2 (en) * 2004-11-23 2009-12-29 Microsoft Corporation System and method for a distributed server for peer-to-peer networks
US7733822B2 (en) * 2004-11-30 2010-06-08 Sanjay M. Gidwani Distributed disparate wireless switching network
WO2006080083A1 (ja) * 2005-01-28 2006-08-03 Argo-Notes, Inc. BitTorrentプロトコルによるファイルのダウンロード方法
GB2423448B (en) * 2005-02-18 2007-01-10 Ericsson Telefon Ab L M Host identity protocol method and apparatus
US7899027B2 (en) * 2005-03-23 2011-03-01 Cisco Technology, Inc. Automatic route configuration in hierarchical wireless mesh networks
US8599822B2 (en) * 2005-03-23 2013-12-03 Cisco Technology, Inc. Slot-based transmission synchronization mechanism in wireless mesh networks
JP4681049B2 (ja) * 2005-06-14 2011-05-11 テレフオンアクチーボラゲット エル エム エリクソン(パブル) ネットワークにおける障害処理のための方法および装置
US7515544B2 (en) * 2005-07-14 2009-04-07 Tadaaki Chigusa Method and system for providing location-based addressing
WO2007032713A1 (en) * 2005-09-14 2007-03-22 Telefonaktiebolaget Lm Ericsson (Publ) Controlled temporary mobile network
EP1802079B1 (en) 2005-12-22 2010-03-31 Microsoft Corporation Connection management in peer-to-peer content distribution clouds
US7853271B2 (en) * 2006-02-01 2010-12-14 Qualcomm Incorporated Method and apparatus for interlocking communication and tracking applications in a wireless communication device
JP4950295B2 (ja) * 2006-08-21 2012-06-13 テレフオンアクチーボラゲット エル エム エリクソン(パブル) エンドユーザにトリプルプレイサービスを提供するための分散型サーバネットワーク
US7835286B2 (en) * 2008-01-11 2010-11-16 Alcatel Lucent Dynamic multi-objective grid resources access

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102934411A (zh) * 2010-06-17 2013-02-13 诺基亚西门子通信公司 改进的对等系统
CN102316157A (zh) * 2010-07-09 2012-01-11 Sap股份公司 通过经纪进行的云计算结构
CN102316157B (zh) * 2010-07-09 2016-08-03 Sap欧洲公司 通过经纪进行的云计算结构
CN103404109A (zh) * 2011-02-21 2013-11-20 黑莓有限公司 蜂窝网络中管理的对等共享
CN103404109B (zh) * 2011-02-21 2017-04-05 黑莓有限公司 蜂窝网络中管理的对等共享
CN104937902A (zh) * 2012-12-14 2015-09-23 微软技术许可有限责任公司 P2p网络中的内容源选择
US9781056B2 (en) 2012-12-14 2017-10-03 Microsoft Technology Licensing, Llc Content source selection in a P2P network
US10129334B2 (en) 2012-12-14 2018-11-13 Microsoft Technology Licensing, Llc Centralized management of a P2P network
US10284641B2 (en) 2012-12-14 2019-05-07 Microsoft Technology Licensing, Llc Content distribution storage management
US10391387B2 (en) 2012-12-14 2019-08-27 Microsoft Technology Licensing, Llc Presenting digital content item with tiered functionality
CN114450072A (zh) * 2020-03-13 2022-05-06 谷歌有限责任公司 对等多玩家云游戏架构

Also Published As

Publication number Publication date
US8364758B2 (en) 2013-01-29
WO2007097877A1 (en) 2007-08-30
DE602006013405D1 (de) 2010-05-20
US20090265473A1 (en) 2009-10-22
ATE463917T1 (de) 2010-04-15
KR101344119B1 (ko) 2013-12-20
CN101385280B (zh) 2011-06-15
EP1821487B1 (en) 2010-04-07
EP1821487A1 (en) 2007-08-22
KR20080103535A (ko) 2008-11-27

Similar Documents

Publication Publication Date Title
CN101385280B (zh) 对等内容分布云中的拓扑管理
CN101341688B (zh) 在对等内容分布云中的连接管理
Æg et al. BestPeer: Self-onfigurable Peer-to-Peer System
CN101356769B (zh) 一种在对等内容分布云中的一节点上形成分组的方法
Zhao et al. ETC-IoT: Edge-node-assisted transmitting for the cloud-centric internet of things
JP3956365B2 (ja) 分散コンピュータ・ネットワーク内の資源要求に応答するシステムおよび方法
CN101133622A (zh) 划分节点的工作负荷
KR20090114917A (ko) 피투피 네트워크 시스템 및 그의 지역 기반 운용 방법
US8959193B2 (en) Group management device
US20080072220A1 (en) Sharing Data Processing Resources
CN101616171B (zh) 一种维护引导节点状态的方法、装置和系统
Olteanu et al. Towards robust and scalable peer-to-peer social networks
CN102387062A (zh) 动态桥接点改善p2p节点在跨网络时的传输速度的方法
Niazi Self-organized customized content delivery architecture for ambient assisted environments
Çevikbaş et al. Phaneros: Visibility‐based framework for massive peer‐to‐peer virtual environments
Ragab et al. Autonomous decentralized community concept and architecture for a complex adaptive information system
Ragab et al. Scalable multilateral autonomous decentralized community communication technique for large-scale information systems
Li et al. rsearch: Ring-based semantic overlay for efficient recall-guaranteed search in p2p networks
Ponnusamy et al. Anycast group membership management protocol
Bovet et al. A scalable cloud storage for sensor networks
Kaarthiga et al. Effectual data dissemination and role switching in lieu of social network in disconnected MANET's
Matalas et al. A scalable framework for content replication in multicast-based content distribution networks
Gulhane et al. Video sharing in social networking systems
Yau et al. An efficient approach to situation-aware service discovery in pervasive service computing environments
Choudhury et al. A publish/subscribe system using distributed broker for SOA based MANET applications

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: 20150430

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

Effective date of registration: 20150430

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110615

Termination date: 20210126