冗余数据存储方法

文档序号:7709351阅读:473来源:国知局
专利名称:冗余数据存储方法
技术领域
本发明涉及一种在对等覆盖网络中进行冗余数据存储的方法,以及一 种网络节点和一种执行所述方法的计算机程序产品。
背景技术
对等(=P2P)覆盖网络被用于大量的应用,诸如VoIP (例如Skype) 或文件共享(例如eMule) (VoIP-基于因特网协议的语音)。基于共同 提供和使用的资源,诸如可扩缩性、自组织、以及容错性的特征由分布式 体系结构和数据存储来实现。P2P网络由作为对等体(peer)(即,既作 为网络的客户端,也作为服务器)的节点组成。在以下描述中,术语"节 点"和"对等体"可被交替地使用。网络的每个节点维护到其它节点的一 个或多个逻辑链路,所述链路参照覆盖算法建立,并被用于消息传送。
现有^t支术的P2P网络基于特定算法构建了逻辑拓朴结构,所述算法对 于底层网络J^出设施是不可知的。每个节点维护到其它节点的一个或多个 链路,所述链路用于以广播方式(无结构的覆盖,例如Gnutella)或者以 基于ID的方式(使用分布式哈希表(-DHT )的结构化的覆盖,例如Chord ) (ID—示识/标识符)进行消息路由。某些系统使用具有无结构的对等体组 的混合体系结构,并且这些组在较大拓朴中是结构化的(例如Skype)。 高级的P2P网络实现了分布式数据库(DHT),其需要复制机制来确保在 一个节点意外地脱离网络的情况下也可以使所存储的数据得到保存。
P2P网络是完全M化的。参与到覆盖中的对等体可能在随机的时间 以及意外地脱离网络。通过在一些节点上的数据复制进行的冗余存储保证 了即使在对数据负责的对等体已经退出覆盖之后,所述数据仍旧在网络中可用。冗余机制是基于覆盖细节的,例如,在对等体标识符空间中接近 的对等体之间的邻居关系。通过在负责数据条目的一个节点上以及在保有 备份条目的一个或多个节点上公布数据,实现了数据的高度可用性。通过
在多个邻居节点上存储多个复制品,实现了更高的可用性。在基于Chord 算法的对等网络中,每个对等体节点根据对等体ID将其负责的资源集合 复制到邻居对等体节点上。
DHT通常存储数据的衛值对,而所述键映射到节点的ID空间。在 Chord中,每个节点负责存储这些键,其小于等于其自身的ID并且大于 其前导的ID。
图la示出了现有技术的结构化的P2P覆盖网络N,其包括多个节点0、 20、 50、 87、 112、 140、 179、 200、 211、 223、 240。具体而言,图la示 出了 Chord环N。节点的参考标记0、 20、 50、 87、 112、 140、 179、 200、 211、 223、 240意思是同样表示节点0、 20、 50、 87、 112、 140、 179、 200、 211、 223、 240的节点ID。在Chord中,节点维持到它们前导和后继节点 的直接连接,这导致了环形拓朴。具有节点ID211的节点对于区间{201, 202,…,211}中的所有键负责。因此,具有键ID 203的衝值对存储在节 点211上,并且节点211的数据的复制品存储在后继节点223上,如图la 所示。如果节点211脱离网络N,如图lb所示,则节点223成为同样对节 点211的ID空间负责,包括键203在内。因此,在网络N中维护了节点 211的数据。
WO 2007/138044 Al涉及一种P2P通信设备,例如PDA、台式计算机 或者膝上型计算机,其包括存储器,其中存储了 P2P通信设备的对等标识 指示,所述指示包括明确的、不可修改的一部分以及可修改的一部分
(PDA-个人数字助理)。P2P通信设备的用户被授权自由地选择可修改的 部分,而不能改变明确的、不可修改的部分(其^L确定地分配给用户)。 例如,用户被允许选择一字节的值,其将被添加到预定的9字节的UUID 的末端,以便构成完整的10字节的UUID (=唯一用户标识符)。这是为
了确保与单个用户相关联的两个或多个P2P通信设备在P2P网络中位于彼此靠近的地方。这种邻居定位的优点在于,关于邻居列表的改变的信息以
及持续有效(keep-alive)的消息可以在P2P通信设备之间进行快速交换, 而不用负担P2P网络之下的IP网络(IP^因特网协议)。这种邻居定位的 缺点在于,很可能的是,P2P通信设备经由相同的网络实体(例如路由器) 连接于P2P网络。 一旦此路由器故障,则所有的P2P通信设备同时被断开。

发明内容
本发明的目的是提供一种在对等覆盖网络中进行冗余存储的改进方 法。此外,本发明的另一目的是提供一种对应的网络节点以及一种对应的 用于执行该改进方法的计算机程序产品。
通过一种在包括多个节点的对等覆盖网络中进行冗余数据存储的方法 实现了本发明的第一目的,所述方法包括以下步骤识别物理硬件,所述 多个节点中的第一节点在所述物理硬件上运行;确定所述多个节点中的至 少一个第二节点,所述至少一个第二节点在与所述第一节点不同的物理硬, 件上运行;以及,将所述第一节点负责的数据的复制品存储在所述笫一节 点的下一个逻辑节点上,除此之外或者作为替代,将所述数据的复制品存 储在所述至少一个第二节点上,其中,所述下一个逻辑节点是关于所述 对等覆盖网络的拓朴结构,所述多个节点中与所述第一节点相邻的节点。 此外,通过一种包括多个节点的对等网络的第一节点实现了本发明的第二 目的,其中所述节点包括控制单元,其适于识别所述第一节点在其上运 行的物理硬件;确定所述多个节点中的至少一个第二节点,所述至少一个 第二节点在与所述第一节点不同的物理硬件上运行;以及,将所述第一节 点负责的数据的复制品存储在所述第一节点的下一个逻辑节点上,除此之 外附加或者作为替代,启动将所述数据的复制品存储在所述至少一个第二 节点上,其中,所述下一个逻辑节点是关于所述对等覆盖网络的拓朴结 构,所述多个节点中与所述第一节点相邻的节点。并且,通过一种用于在 包括多个节点的对等覆盖网络中进行冗余数据存储的计算机程序产品实现 了本发明的第三目的,其中所述计算机程序产品,当在所述多个节点中的一个节点上执行时,执行以下步骤识别所述第一节点在其上运行的物理 >漫件;确定所述多个节点中的至少一个第二节点,其在与所述第一节点不 同的物理石更件上运行;以及,将所述第一节点负责的数据的复制品存储在 所述第一节点的下一个逻辑节点上,除此之外或者作为替代,启动将所述 数据的复制品存储在所述至少一个第二节点上,其中,所述下一个逻辑节 点是关于所述对等覆盖网络的拓朴结构,所述多个节点中与所述第一节 点相邻的节点。
如果复制算法仅基于对于覆盖特定的节点ID,即,无需考虑底层物理 硬件(如现有技术系统中的情形),以下是可能的两个随后的对等体位 于相同的物理机器(例如PC (=个人计算机))上。如果该物理硬件故障, 则这两个邻居节点同时退出DHT,并且原始数据和复制数据二者均丢失。 本发明的实施例解决了现有技术中遇到的此问题。
本发明的实施例引入了 一种冗余数据存储算法,其是基于覆盖拓朴细 节,但同时考虑到P2P覆盖网络的底层物理硬件。本发明的实施例描述了 网络节点(=逻辑对等体),其将与网络节点在其上运行的物理硬件有关的 信息包括在P2P系统的冗余数据存储算法中。
在现有技术中,位于相同物理机器(例如,通过操作系统的虛拟化, 例如XEN、 VMware)的节点不知道这件事,与现有技术不同,本发明的 实施例提供了 一种冗余数据存储系统,其识别 一个或多个网络节点在其上 运行的物理硬件,并且考虑了与物理硬件有关的、用于适当的冗余数据存 储的此信息。
本发明的实施例提供了一种进行冗余数据存储的安全方式。由于数据 复制是防止在节点故障的情况下数据丢失的一种策略,因此根据本发明实 施例的复制不会在相同的物理节点上发生。这种情况不会被现有技术的 DHT算法所考虑。特别是在小型部署中(例如,包括最多一百个节点的网 络),相对于其逻辑ID成为邻居的节点在相同的物理节点(例如在虚拟 化环境中,例如VMware、 Xen)上托管。在现有4支术中,节点的物理硬_ 件被忽视,因此,很可能在硬件故障的情形中数据被丢失。本发明的实施例借助于考虑了节点的物理硬件的冗余数据存储而避免了这种风险。
因此,本发明的实施例在小型部署中特别有帮助,在这样的小型部署 中,邻居节点在相同的物理机器上被托管的概率有所增加。由于借助于对
物理位置与覆盖节点ID的映射的冗余数据存储的原因,本发明的实施例 避免了数据丢失。
本发明的实施例增加了所存储数据的可用性。本发明的实施例提供了 与实际硬件有关的信息被包括在复制策略中
根据本发明的实施例的新的复制策略可以容易地被包括在已知的用于 冗余数据存储的算法中。在硬件故障的情况下成为对于键负责的节点对复 制品负责。
本发明的实施例支持对于复制的不同冗余级。并且,如本发明的实施 例所呈现的、基于硬件细节对节点ID的分配减少了在硬件故障的情况下 数据丢失的风险。
与冗余数据存储算法基于覆盖细节的当前P2P覆盖相反,本发明的实 施例提供了一种解决方案,其考虑了针对P2P网络中的覆盖拓朴创建和冗 余数据存储的分布式物理硬件^出设施之上的虚拟化解决方案。
此外,本发明描迷了针对可以有益地用于诸如服务器群集或纯P2P电 话系统的分布式环境中的基础技术的改进。具体而言,此类技术可以被包 括在IETF P2P-SIP中(IETF-因特网工程任务组;SIP-^I"启动协议)。
在现有^t术中,已知的是,将数据的复制品的数量增加得大于相同用 户的对等体的数量,以便保护数据使其不会对于单一硬件故障AJ晚弱的。 特别是在具有高DB (=数据库)操作频率的群集部署中,每个复制品导致 极大的流量,这可能是不可接受的。而且,在通信网络的部署中,现有技 术文献的方法是不实用的,因为具有有限性能的i殳备(例如,电话、PDA) 无法承受存储增加数量的复制品。本发明的实施例避免了这些缺点,因为 仅需要再多一个复制品,即,所需的复制品的数量是非常有限的。
通过由所附权利要求指示的本发明实施例实现了另外的优点。
根据本发明的优选实施例,如果在与第一节点相同的物理硬件上运行的一个节点试图加入对等网络,则为加入节点选择节点ID,使得预定义数 量的其它节点关于所述对等覆盖网络的拓朴结构位于所述加入节点和所述 第一节点之间。由此,在现有技术中已知的加入过程被修改,从而实现了 在相同物理硬件上运行的对等体之间的最大距离。在覆盖中的对等体的邻 居关系由对等体ID所确定。由此,使ID分配过程成为硬件相关有助于避 免以下情况,其中位于相同硬件上的两个对等体成为邻居。
以下是可能的由具有与群集拓朴有关的信息的登记服务器 (enrolment server)分配对等体ID。该登记服务器-优选地是中央服务 器-用以下方式分配对等体ID,即,新加入对等体不会与这样的对等体成 为邻居,所述对等体与新加入对等体位于相同的硬件上。
然而,在中央实体不可用的部署中,新加入P2P网络的对等体自己, 例如随机地,选择其ID。在加入过程期间,对等体联系接纳对等体 (admitting peer ,其负责将新的对等体集成到拓朴中),并由此知道邻居 的拓朴。如果加入对等体的硬件与邻居中的对等体有冲突,则接纳对等体 可能决定重定向加入对等体。加入对等体接着选择不同的对等体ID,并试 图在别处加入覆盖。由此,根据本发明的实施例,以下是可能的加入对 等体被接纳对等体重定向,以试图关于对等覆盖网络的拓朴结构,在另一 位置加入对等覆盖网络。在预定义数量的其它节点关于对等覆盖网络的拓 朴结构位于加入节点和第一节点之间之前,加入节点不会被同一个或另一 个接納节点所接納。
以下是可能的第一节点探测到与其自身的硬件有关、以及与网络的 其它节点有关的信息。该探测的目的是找出多个网络节点中的哪些节点在 相同的物理硬件上运行。存在探测物理硬件的若千种可能的方式
根据本发明的优选实施例,通过从第一节点的平台检索信息,确定第 一节点在其上运行的所述物理硬件。优选地,所述检索由第一节点执行。 确定第一节点在其上运行的所述物理硬件,除此之外或者替代地,通过从 至少一个第二节点的平台检索信息,确定与第一节点在相同的物理硬件上 运行的所述至少一个第二节点。优选地,所述检索由第一节点执行。所述平台可以使第一节点和/或至少一个第二节点在其上运行的物理硬件,例
如,CPU (=中央处理单元)、计算机、网络单元等。所述信息可以例如 是与第 一节点和/或至少一个第二节点相关联的CPU ID 、 MAC地址、位置、 IP地址、位置等等(MAC《体存取控制)。这包括软件应用在网络节点 的操作系统的帮助下能够找出的任意信息。例如,MAC地址通常是用于 确定物理主机的相对安全的方式,但是,如果使用了硬件虚拟化技术,可 能不是这样的情况。
本发明的实施例修改了由Chord对等体执行的复制方法,并由此能够 在物理节点故障的情形中提高数据可用性。本发明的实施例将每个对等体 节点关联于硬件标识符,例如CPUID、 MAC地址等等,其标识了托管对 等体节点的硬件平台。对等体节点使用硬件标识符来复制资源集合,对等 体节点对于在不同硬件平台上运行的至少一个对等体节点,优选地是按照 拓朴结构(例如按照对等体1D)的最接近的后继者上的一组资源负责。
根据本发明的另 一优选实施例,通过从与第一节点相链接或相关联的 外部管理单元检索信息,确定第一节点在其上运行的所述物理硬件。优选 地,所述检索由第一节点执行。确定第一节点在其上运行的所述物理硬件, 除此之外或者作为替代,通过从与第二节点相链接或相关联的外部管理单 元检索信息,确定与第一节点在相同的物理硬件上运行的所述至少一个第 二节点。优选地,所述检索由第一节点执行。所述外部管理单元还可以是 外部群集(cluster)管理实体,其中术语"群集"指代作为网络节点的群 集的P2P覆盖网络。
如果外部群集管理实体可用,例如可用于配置节点ID,则外部群集管 理实体也可以提供与群集的物理拓朴有关的信息。外部群集管理实体可以 是中央登记服务器、引导服务器、或者网络管理和监视服务器。
如果软件应用不能探测到所需的硬件信息,则由节点的管理者对节点 进行手动(预先)配置是一种解决方案。优选地,通过从对等网络的网络 操作员和/或从第一节点的用户检索相应的信息,确定第一节点在其上运行 的所述物理硬件。优选地,所述检索由笫一节点执行。确定第一节点在其上运行的所述物理硬件,除此之外或者作为替代,通过从对等网络的网络 操作员和/或从至少一个第二节点的用户检索相应的信息,确定与第一节点 在相同的物理硬件上运行的所述至少一个第二节点。优选地,所述检索由 第一节点执行。
在优选实施例中,借助于在与第一节点相关联的应用层上的测量,确 定第一节点在其上运行的所述物理硬件。优选地,所述确定由第一节点执 行。确定第一节点在其上运行的所述物理硬件,除此之外或者作为替代, 借助于在与第二节点相关联的应用层上的测量,确定与第一节点在相同的 物理硬件上运行的所述至少一个第二节点。优选地,所述确定由第一节点 执行。
在应用层上的所述测量可以是应用级探查机制,诸如"ping"消息交 换。基于所述ping消息交换,如果其它节点在相同的设备上托管,则节点 可以从连接等待时间进行估计。并且,如果节点在相同的硬件上,其它已 知的方法可以;故用于进行估计例如,网络协调系统试图通过测量节点间 等待时间来获得关于底层网络的知识,而无需对所有链路进行明确测量。 这允许当节点在物理拓朴中接近时将节点靠近地放置在逻辑覆盖中。另一 示例是Pastry,其通过测量到其它节点的等待时间而针对本地性持续地调 节路由表。
根据本发明的另一优选实施例,第一节点将第一节点在其上运行的物 理硬件的描述包括到从第一节点发送到第一节点的下一个逻辑节点的P2P 消息中,其中所述下一个逻辑节点存储数据的复制品。可能地,第一节点 的下一个逻辑节点由下述事实所定义,所述事实为,下一个逻辑节点存储 第一节点负责的数据的复制品。下一个逻辑节点检查第一节点在其上运行 的物理硬件是否与下一个逻辑节点在其上运行的物理硬件相同。如果第一 节点在其上运行的物理硬件与下一个逻辑节点在其上运行的物理硬件相 同,则下一个逻辑节点将数据的复制品转发到至少一个第二节点。
ID分配是用于防止相同硬件上的对等体参考P2P覆盖网络的拓朴结 构位于彼此相邻的一种方式。由于节点可能随机地故障,实际不是邻居的两个对等体可能在任意时间成为邻居。在某些部署中,在此情形中可能的
解决方案是重新分配对等体ID。然而,对对等体ID的重新分配不会总是 可能的,此外还可能对于覆盖结构具有不想要的效果。例如,对对等体ID 的重新分配还可能意味着对等体负责的键空间(key space)发生改变很 可能对等体变为对完全不同的^/值对负责。对于实际集成的对等体的所需
数据传输需要时间和资源,并且可能是不可接受的。
由此,根据本发明的实施例,P2P覆盖网络的复制算法被扩充。通过 已经检索的、关于物理硬件的信息的帮助,将复制的数据附加地复制到下 一个节点,其在不同硬件上运行,并将变为在硬件故障的情形中对数据负责。
优选地,如果需要冗余数据存储的较高冗余度,则第一节点负责的数 据的复制品被存储在许多第二节点上,其中每个第二节点运行在另一物理 硬件上,从而存储了复制品并且每个运行在不同的硬件上的第二节点的总 数等于预定义的冗余因子。


通过阅读当前优选地示例性实施例并结合附图,本发明的这些以及另 外的特征和优点将被更好地理解,在附图中 图la示出了现有技术的P2P覆盖网络; 图lb示出了现有技术的P2P覆盖网络; 图2示出了根据本发明实施例的P2P覆盖网络;
图3示出了才艮据本发明实施例在图2中示出的P2P覆盖网络中的冗余 数据存储;以及
图4示出了根据本发明实施例在图2中示出的P2P覆盖网络中的冗余 数据存储。
具体实施例方式
图2示出了根据本发明实施例的P2P覆盖网络。具体而言,图2示出了根据本发明实施例的Chord环N。所述Chord环N包括多个节点0、 20、 50、 87、 112、 140、 179、 200、 211、 223、 240,其中参考标记O、 20、 50、 87、 112、 140、 179、 200、 211、 223、 240意思是同样表示节点0、 20、 50、 87、 112、 140、 179、 200、 211、 223、 240的节点ID。节点的节点ID通 过对于覆盖特定的DHT算法被分配,并且例如可以是基于登记服务器的, 或者由节点自己随机选择的。每个节点表示Chord环N的一个对等体。
在所述方法的第一步骤,第一节点211确定其正在哪个物理硬件上运 行。并且,第一节点211确定Chord环N的其它节点0、 20、 50、 87、 112、 140、 179、 200、 223、 240正在哪个物理硬件上运行。
第一节点211由一个或若干个互连的计算机組成,即,硬件平台、基 于硬件平台的软件平台、以及由软件和硬件平台构成的系统平台所执行的 若干应用程序。通过执行这些应用程序来提供第一节点211的功能。这些 应用程序或这些应用程序中选定的一部分,当在系统平台上执行时,组成 了提供路由服务的计算机软件产品,如下文中所述的。另外,所述计算机 软件产品由存储介质组成,所述存储介质存储这些应用程序、或应用程序 的所述的选定的一部分。
从功能视角看来,第一节点211包括控制单元,用于控制笫一节点 的功能;存储介质,用于存储数据;以及接口,用于与其它节点交换信息。
对于对物理硬件的确定,第一节点211可以使用任意可用信息,其有 助于识别第一节点在其上运行的物理^^件。以下是可能的第一节点211 通过从其自身的平台收集信息,例如CPUID、 MAC地址、位置、IP地址 等等,而检索关于第一节点在其上运行的物理硬件的信息。接着,第一节 点211可以从Chord环N的其它节点0、 20、 50、 87、 112、 140、 179、 200、 223、 240收集相应的信息,并比较所收集的信息片。例如,如果第 一节点211在其上运行的计算机的CPU ID等于节点223在其上运行的计 算机的CPU ID,则第一节点211得出这样的结果第一节点211在其上 运行的物理硬件等同于节点223在其上运行的物理硬件。
除了可从其自身的平台获得例如CPUID、 MAC地址、位置、IP……的信息之外,第一节点211还可以使用借助于手动配置提供的、借助于应 用层测量等收集的、从外部管理实体检索的信息,所述手动配置由第一节 点211在其上运行的石更件的用户所执行。类似地,其它节点0、 20、 50、 87、 112、 140、 179、 200、 223、 240中的每个均可以使用任意可用信息, 其有助于识别该节点在其上运行的物理硬件。以下是可能的其它节点0、 20、 50、 87、 112、 140、 179、 200、 223、 240中的每个将所收集的、与各 个物理硬件有关的信息传送到第一节点211。以下也是可能的第一节点 211访问其它节点0、 20、 50、 87、 112、 140、 179、 200、 223、 240在其 上运行的物理硬件,并且从其它节点0、 20、 50、 87、 112、 140、 179、 200、 223、 240收集与它们各自的物理硬件有关的信息段。
对物理硬件分类的此步骤的结果在图2中示出,图2示出了硬件分类 以及通过针对节点0、 20、 50、 87、 112、 140、 179、 200、 211、 223、 240 的不同图标形状来示出所述硬件分类。每个形状表示不同的物理机器。这 意味着,节点0、 50、 140、 211和223在第一机器上运行。节点20、 112、 179和240在第二^L器上运行。节点87和200在第三^L器上运行。
在现有技术的方案中,存储在节点211上的衝值对203的复制品仅净皮 复制到节点223上,如图la所示的。如图3所示,当节点211和节点223 在相同的硬件上托管时,本发明实施例提供了附加地或可替换地将复制品 转发到节点240。
例如通过查询其邻居223、 240等,由节点211自身完成确定对于其硬_ 件信息负责的对等体240。可替换地,节点211将其硬件信息包括在P2P 消息中,该P2P消息祐发送到其逻辑邻居节点223。接着,节点223能够 确定对等体211和223在相同的物理硬件上托管。在此情形中,节点223 将复制品203从节点223转发到节点240。
对于节点211和223由于硬件故障的原因而退出网络N的情形,如图 4所示,节点240仍然保持着^/值对203的拷贝,从而数据203被保持在 网络N中。
为了获得甚至更高的冗余因子,第 一节点必须触发将复制品存储到在不同硬件上运行的更多数量的对等体上。例如,如果请求冗余因子为三,
则第一节点211必须触发的是复制品数据203也被存储在节点87上。由 此,第一节点211负责的复制品数据203被存储在运行于第一硬件(=图2 中的圓形)上的节点223、运行于第二硬件(=图2中的方形)上的节点240、 以及运行于第三机器(=图2中的菱形)上的节点87。
在高级实现方式中,可以存在基于硬件的若干冗佘级。例如,取决于 不同的刀片、机架、服务器机房或数据中心,存储一个复制品可能是有用 的。
根据本发明实施例的加入和脱离算法参照现有技术的方案进行修改, 以便确保硬件相关的复制品的一致性。在对于根据本发明实施例的加入和 脱离算法的以下描述中,假定对等体确定其在哪个硬件上运行的过程已经 如上所述那样;陂完成。
在算法修改的描述中使用了以下缩写
LR 依赖于逻辑覆盖ID的复制品
HR 依赖于物理硬件的复制品
HRP HR的位置
NP 邻居对等体
JP 加入对等体
LP 离开对等体
1 )加入算法
la)加入对等体
如果到JP的直接NP在与JP相同的硬件上被托管,则JP必须确定 HRP,其是位于不同硬件上的下一个NP。接着,HR被推送到该对等体。 否则,相同的对等体会负责LR和HR二者。在此情形中,仅一个复制品 被推送到相应的对等体。
lb )在邻居列表中具有JP的对等体
如果加入位置位于该对等体与其HRP之间,则JP ^f艮可能对HRP有 影响。在此情形中,每个对等体必须检查其HRP是否已改变。如果HRP已改变,则HR必须被推送到现在位于HRP上的对等体,并且旧的HR 必须被删除。
2)离开算法
在邻居列表中具有LP的对等体
如果LP位于该对等体与其HRP之间,或者如果LP在HRP自身之 上,则LP也很可能对HRP有影响。在此情形中,每个对等体必须检查其 HRP是否已改变。如果HRP已改变,则HR必须净皮推送到现在位于HRP 上的对等体,并且旧的HR必须被删除。
权利要求
1.一种用于在包括多个节点(0、20、50、87、112、140、179、200、211、223、240)的对等覆盖网络(N)中进行冗余数据存储的方法,所述方法包括以下步骤识别物理硬件,所述多个节点(0、20、50、87、112、140、179、200、211、223、240)中的第一节点(211)在所述物理硬件上运行;确定在与所述第一节点(211)不同的物理硬件上运行的所述多个节点(0、20、50、87、112、140、179、200、211、223、240)中的至少一个第二节点(240);以及将所述第一节点(211)负责的数据的复制品(203)存储在所述第一节点的下一个逻辑节点(223)上,除此之外或者作为替代,将所述数据的复制品(203)存储在所述至少一个第二节点(240)上,其中,所述下一个逻辑节点(223)是关于所述对等覆盖网络(N)的拓扑结构,所述多个节点(0、20、50、87、112、140、179、200、211、223、240)中与所述第一节点(211)相邻的节点。
2. 根据权利要求l所述的方法,其特征在于,所述方法进一步包括以 下步骤如果在与所述第一节点(211)相同的物理硬件上运行的节点加入 所述对等覆盖网络(N),则为加入节点选择节点标识符,使得预定义数 量的其它节点关于所迷对等覆盖网络(N)的拓朴结构位于所述加入节点 和所述第一节点(211)之间。
3. 根据权利要求2所述的方法,其特征在于,所述方法进一步包括以 下步骤通过登记单元将所述节点标识符分配给所述加入节点。
4. 根据权利要求2所述的方法,其特征在于,所述方法进一步包括以 下步骤由接纳节点将所i^口入节点重定向,以便在关于所述对等覆盖网 络(N)的拓朴结构的另一位置加入所述对等覆盖网络(N),从而所述预 定义数量的其它节点关于所述对等覆盖网络(N)的拓朴结构位于所述加 入节点和所述第一节点(211)之间。
5. 根据权利要求1所述的方法,其特征在于,所述方法包括以下步骤 通过从所述第一节点(211)和/或所述至少一个笫二节点(240)的平台分 别检索信息,识别所述第一节点(211)在其上运行的所述物理硬件和/或 确定所述至少一个第二节点(240)。
6. 根据权利要求1所述的方法,其特征在于,所述方法包括以下步骤 通过从与所述第一节点(211)和/或所述至少一个笫二节点(240)相链接 的外部管理单元分别检索信息,识别所述第一节点(211)在其上运行的所 述物理硬件和/或确定所述至少一个第二节点(240)。
7. 根据权利要求1所述的方法,其特征在于,所述方法包括以下步骤 借助于从所述对等网络(N)的网络操作员和/或所述第一节点(211)的用 户和/或所述至少一个第二节点(240)检索相应信息,识别所述第一节点(211 )在其上运行的所述物理硬件和/或确定所述至少一个第二节点 (240)。
8. 根据权利要求1所述的方法,其特征在于,所述方法包括以下步骤 借助于在所述对等覆盖网络(N)的应用层上的等待时间测量,识别所迷 第一节点(211)在其上运行的所述物理硬件和/或确定所述至少一个第二 节点(240)。
9. 根据权利要求l所述的方法,其特征在于,所述方法进一步包括以 下步骤由所述第一节点(211)将所述第一节点(211)在其上运行的物理硬 件的描述包括到从所述第一节点(211)发送到所述第一节点(211)的下 一个逻辑节点(223)的对等消息中,所述下一个逻辑节点(223)存储数 据的复制品(203);由所述下一个逻辑节点(223)检查所述第一节点(211)在其上运行 的物理硬件是否与所述下一个逻辑节点(223 )在其上运行的物理硬件相同; 以及如果所述第一节点(211)在其上运行的物理硬件与所述下一个逻辑节 点(223)在其上运行的物理硬件相同,则由所述下一个逻辑节点(223)将所述数据的复制品(203)转发到所述至少一个第二节点(240)。
10. —种包括多个节点(0、 20、 50、 87、 112、 140、 179、 200、 211、 223、 240)的对等网络(N)的第一节点(211),其中所述节点包括控制 单元,其适于识别所述第一节点(211)在其上运行的物理硬件;确定在 与所述第一节点(211)不同的物理硬件上运行的所述多个节点(0、 20、 50、 87、 112、 140、 179、 200、211、 223、 240)中的至少一个第二节点(240), 其在与所述第一节点(211)不同的物理硬件上运行;以及,将所述第一节 点(211)负责的数据的复制品(203)存储在所述第一节点的下一个逻辑 节点(223)上,除此之外或者作为替代,启动将所述数据的复制品(203) 存储在所述至少一个第二节点(240)上,其中,所述下一个逻辑节点(223) 是关于所述对等覆盖网络(N)的拓朴结构,所述多个节点(0、 20、 50、 87、 112、 140、 179、 200、 211、 223、 240)中与所述第一节点(211)相 邻的节点。
11. 一种用于在包括多个节点(0、 20、 50、 87、 112、 140、 179、 200、 211、 223、 240)的对等覆盖网络(N)中进行冗余数据存储的计算机程序 产品,其中所述计算机程序产品,当在所述多个节点(O、 20、 50、 87、 112、 140、 179、 200、 211、 223、 240)中的一个节点上执行时,执行以下步骤识别所述第一节点(211)在其上运行的物理^更件;确定所述多个节点(0、 20、 50、 87、 112、 140、 179、 200、 211、 223、 240)中的至少一个第二节点(240),其在与所述第一节点(211)不同的 物理》更件上运行;以及作为将所述第一节点(211)负责的数据的复制品(203)存储在所述 第一节点的下一个逻辑节点(223)上的附加或者作为替代,启动将所述数 据的复制品(203)存储在所述至少一个第二节点(240)上,其中,所述 下一个逻辑节点(223)是参照所述对等覆盖网络(N)的拓朴结构,所 述多个节点(0、 20、 50、 87、 112、 140、 179、 200、 211、 223、 240)中 与所述第一节点(211)相邻的一个节点。
全文摘要
本发明涉及冗余数据存储方法。对等覆盖网络(N)包括多个节点(0、20、50、87、112、140、179、200、211、223、240)。识别所述多个节点中的第一节点(211)在其上运行的物理硬件。确定所述多个节点中在与第一节点(211)不同的物理硬件上运行的至少一个第二节点(240)。将第一节点(211)负责的数据的复制品(203)存储在第一节点的下一个逻辑节点(223)上,除此之外或者作为替代,所述数据的复制品(203)被存储在所述至少一个第二节点(240)上,其中下一个逻辑节点(223)是参照所述对等覆盖网络(N)的拓扑结构,所述多个节点中与第一节点(211)相邻的一个节点。
文档编号H04L29/08GK101616184SQ20091014919
公开日2009年12月30日 申请日期2009年6月26日 优先权日2008年6月27日
发明者M·托姆苏, N·施旺, T·施特劳斯 申请人:阿尔卡特朗讯公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1