Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
POINT TO POINT (P2P) OVERLAY NETWORK, DATA RESOURCES OPERATION METHOD AND NEW NODE JOIN METHOD THEREOF
Document Type and Number:
WIPO Patent Application WO/2011/150741
Kind Code:
A1
Abstract:
A Point To Point (P2P) overlay network, a data resources operation method and a new node join method thereof are disclosed in the present invention. The P2P overlay network comprises multi node domains, wherein each node domain is connected with the others, and the nodes of each node domain are used for storing the data resource of the P2P overlay network. The data resource is divided into multi resource domains and the data resource stored in each node of a node domain belongs to the same resource domain. With the present invention, spending for maintaining a system can be reduced, and the P2P overlay network can be configured conveniently.

Inventors:
HU XUECHUAN (CN)
Application Number:
PCT/CN2011/074167
Publication Date:
December 08, 2011
Filing Date:
May 17, 2011
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ZTE CORP (CN)
HU XUECHUAN (CN)
International Classes:
H04L12/46
Foreign References:
CN101674233A2010-03-17
CN101651710A2010-02-17
CN101710902A2010-05-19
Attorney, Agent or Firm:
KANGXIN PARTNERS, P.C. (CN)
北京康信知识产权代理有限责任公司 (CN)
Download PDF:
Claims:
权 利 要 求 书

1. 一种对等 P2P叠力口网络, 包括:

多个节点域, 其中各个节点域相互连接, 所述各个节点域中的节点 设置为存储所述 P2P叠加网络的数据资源, 其中, 所述数据资源被划分 为多个资源域, 一个所述节点域的各个节点存储的数据资源属于同一个 资源域。

2. 根据权利要求 1所述的 P2P叠加网络, 其中, 所述多个资源域中各个资 源域具有相同的地域位置信息。

3. 根据权利要求 1所述的 P2P叠加网络, 其中, 每个所述节点域的节点域 ID包含该节点域所存储的数据资源所归属的资源域的资源域 ID。

4. 根据权利要求 3所述的 P2P叠加网络, 其中, 所述 P2P叠加网络的多个 节点还设置为存储所述多个资源域中各个资源域的域名与资源域 ID 的 第一对应关系。

5. 根据权利要求 3所述的 P2P叠加网络, 其中, 所述 P2P叠加网络的多个 节点还设置为存储所述多个节点域中各个节点域的节点域 ID 与该节点 域的路由信息的第二对应关系。

6. 根据权利要求 3所述的 P2P叠加网络, 其中, 每个所述节点的节点标识 包含该节点所属节点域的节点域 ID。

7. 根据权利要求 3所述的 P2P叠加网络, 其中, 每个所述数据资源的资源 标识包含该数据资源所属的资源域的资源域 ID。

8. —种 P2P叠加网络的数据资源操作方法, 包括:

P2P 叠加网络的接入节点接收请求方发送的操作请求, 其中, 所述 操作请求用于请求对所述 P2P 叠加网络中存储的数据资源执行预定操 作;

所述接入节点获取存储所述数据资源的节点域;

所述接入节点将所述操作请求发送给所述节点域内存储所述数据资 源的节点; 所述节点对所述数据资源执行所述预定操作。

9. 根据权利要求 8所述的方法, 其中, 所述接入节点获取存储所述数据资 源的节点域包括:

所述接入节点获取所述数据资源的资源标识, 其中, 所述资源标识 包括:所述数据资源所属的资源域的资源域 ID和所述资源域内所述数据 资源的资源 ID;

所述接入节点将所述资源标识与所述 P2P叠加网络的各个节点域的 节点域 ID进行最长匹配, 获取最长匹配的节点域 ID所对应的节点域, 其中,各个节点域的所述节点域 ID包括: 该节点域存储的数据资源所属 的资源域的资源域 ID。

10. 根据权利要求 9所述的方法, 其中, 所述操作请求中携带有数据资源的 资源标识, 则所述接入节点获取所述数据资源的资源标识包括:

所述接入节点从所述操作请求中获取所述资源标识。

11. 根据权利要求 9所述的方法, 其中, 所述操作请求中携带有所述数据资 源的名称及所述数据资源所属的资源域的域名, 则所述接入节点获取所 述数据资源的资源标识包括:

所述接入节点才艮据所述 P2P叠加网络中存储的各个资源域的域名与 资源域 ID的第一对应关系 ,获取与所述操作请求中携带的域名对应的资 源域 ID;

所述接入节点 艮据所述数据资源的名称, 获取所述数据资源的域内 的资源 ID;

所述接入节点根据获取的所述资源域 ID和所述域内的资源 ID, 得 到所述数据资源的所述资源标识。

12. 根据权利要求 9所述的方法, 其中, 如果获取的所述节点域为所述接入 节点所属的节点域, 则所述接入节点将所述操作请求发送给所述节点域 内存储所述数据资源的节点包括:

所述接入节点根据预定算法, 获取存储所述资源数据的所述节点; 所述接入节点将所述操作请求发送给所述节点。

13. 根据权利要求 9所述的方法, 其中, 如果获取的所述节点不属于所述接 入节点所属的节点域, 则所述接入节点将所述操作请求发送给所述节点 域内存储所述数据资源的节点包括:

所述接入节点根据所述 P2P叠加网络存储的各个节点域的节点域 ID 与该节点域的路由信息的第二对应关系 ,获取与最长匹配的节点域 ID对 应的路由信息;

所述接入节点根据所述路由信息, 将所述操作请求发送给所述节点 域 ID对应的节点域的连接节点;

所述连接节点根据预定算法, 获取存储所述资源数据的所述节点, 并将所述操作请求发送给所述节点。

14. 一种 P2P叠加网络的新节点加入方法, 包括:

新节点向 P2P叠加网络的接入节点发送请求加入所述 P2P叠加网络 的加入请求消息, 其中, 所述加入请求消息中携带有所述新节点的节点 标识;

所述接入节点 居所述节点标识确定所述新节点归属的节点域, 并 将所述加入请求消息发送给所述节点域内所述新节点的负责节点,其中, 所述负责节点为其节点标识与所述新节点的节点标识最接近的节点; 所述负责节点接收所述加入请求消息, 返回响应消息, 所述响应消 息根据所述加入请求消息的路由路径返回到所述新节点, 其中, 所述响 应消息中携带有所述负责节点的标识信息。

15. 根据权利要求 14所述的方法, 其中, 所述新节点的节点标识包括: 该新 节点所属节点域的节点域 ID和该新节点在该节点域内的节点 ID, 则所 述接入节点 居所述节点标识确定所述新节点归属的节点域包括:

所述接入节点将所述新节点的节点标识与所述 P2P叠加网络的各个 节点域的节点域 ID进行最长匹配, 确定最长匹配的节点域 ID所对应的 节点域为所述新节点归属的节点域。

16. 根据权利要求 15所述的方法, 其中, 如果所述新节点归属的节点域为所 述接入节点所属的节点域, 则所述接入节点将所述加入请求消息发送所 述节点域内所述新节点的负责节点包括:

所述接入节点根据预定算法, 获取所述新节点的负责节点; 所述接入节点将所述加入请求消息转发给所述负责节点。

17. 根据权利要求 15所述的方法, 其中, 如果所述新节点归属的节点域不是 所述接入节点所属的节点域, 则所述接入节点将所述加入请求消息发送 所述节点域内所述新节点的负责节点包括:

所述接入节点根据所述 P2P叠加网络存储的各个节点域的节点域 ID 与该节点域的路由信息的第二对应关系 ,获取与最长匹配的节点域 ID对 应的路由信息;

所述接入节点根据所述路由信息, 将所述加入请求消息发送给所述 节点域 ID对应的节点域的连接节点;

所述连接节点根据预定算法, 获取所述新节点的负责节点, 并将所 述加入请求消息发送给所述负责节点。

18. 根据权利要求 14所述的方法, 其中, 在所述新节点向所述接入节点发送 所述加入请求消息之前, 所述方法还包括:

所述新节点获取其节点标识, 其中, 所述该节点标识为所述 P2P叠 加网络的配置服务器分配的或所述新节点 -据其属性信息生成的。

19. 根据权利要求 14所述的方法, 其中, 在所述响应消息返回到所述新节点 之后, 所述方法还包括:

所述新节点获取所述响应消息中携带的所述负责节点的标识信息, 并根据所述标识信息与所述负责节点进行消息交互。

20. 根据权利要求 19所述的方法, 其中, 在所述新节点接收所述响应消息之 后, 所述方法还包括:

所述新节点向其所属节点域之外的其它节点域的连接节点发送域外 广播消息, 通知所述其它节点域有新节点加入。

Description:
P2P叠加网各及

其数据资源操作方法和新节点加入方法 技术领域 本发明涉及通信领域, 具体而言, 涉及一种 P2P叠加网络及其数据资源操 作方法和新节点力口入方法。 背景技术 分布式哈希表 ( Distributed Hash Table, 简称为 DHT )网络是点对点( Point To Point, 简称为 P2P )网络的一种实现技术。 它釆用分布式的散列表技术来实 现资源的存储与查找。 在多域的 DHT叠加网中, 整个 P2P网络被分成多个域, 每个域都由唯一的域 ID来标识。 在同一个域当中的节点都有相同的域 ID, 所 有的节点都由唯一的节点 ID标识。 并且, 在多域 P2P网络中, 资源标识也携 带域 ID, 以表示对应的资源属于哪个域, 每个资源都有一个资源 ID来唯一标 识。 具体地, 在多域的 DHT叠加网中, 资源和节点标识分别是: 节点标识 = 域 ID+节点 ID 资源标识 = 域03+资源 ID 才艮据上述描述可知, 节点标识和资源标识都带有域信息, 并且, 节点标识 和资源标识中所釆用的域 ID长度相同, 代表的信息也相同。 图 1 中叠加网中 有三域 , 域名为 dom-a.com.cn、 dom-b.com.cn和 dom-c.com.cn, 这三个域的域 ID分另' J为 0301、 0101、 0201。 每个 i或的资源标 i只前部分为 i或 ID, 例 ¾口, 资源 X的标识为 i或 ID(0101) +资源 ID(13XX); 而每个 i或的节点标识前部分也为 i或 ID, 例如, 节点 M的标 i只为 i或 ( 0101 ) +节点 ID ( 22XX )„ 在现有的多域的 DHT 叠加网中, 节点在资源查找时, 先比较查找资源标 识中的域 ID和本节点标识中的域 ID是否相等, 如果相等则认为所查询的资源 为本域的, 然后在本域中查找资源; 如果不相等, 则认为是其他域的资源, 将 查询消息路由到该域 ID所指的域中, 再进行域内查找, 最终查找到所求资源。 下面具体结合图 2对现有技术的资源查找进行说明。 在图 2中假设有三个 域 ID分另' J为 0101 , 0201和 0301。 当 ClientA在域 0101的 K节点处查询 资源 ID=0101-22XX的资源时, 居资源 ID中包含的域 ID确定是在本域 (资源 标识中的域 ID和本节点的域 ID相等), 将查询请求路由到本域中存储该资源 的节点 M, 具体如图 2 所示。 假如 ClientB在域 0201 中 L节点处查询资源 ID=0301-22XX的资源时, L节点发现查询的资源在域 0301中, 通过路由表获 知可通过 P点链接到 0301域 (资源标识中的域 ID和 0301域 ID相等), L节 点将查询请求路由到 P节点, P节点确定查询的资源在本域, 将查询请求路由 到保存此资源的节点 N处, 路径如图 2所示。 现有的多域架构的不能灵活地配置, 不能根据域的规模进行合理的域规 划。 例如, 如果某运营商域中用户数据资源非常大, 其域中的节点数量非常多, 按照目前的架构配置, 只能规划成一个叠加网域, 从而导致系统的维护开销非 常大。 例如, 图 1中的域名为 dom-b.com.cn的域, 用户数据非常多, 需要几十 万个节点, 如果这些节点都划在一个 DHT域中, 则将导致系统的维护开销非 常大。 发明内容 本发明的主要目的在于提供一种 P2P叠加网络及其数据资源操作方法和新 节点加入方法, 以至少解决上述问题。 根据本发明的一个方面, 提供了一种 P2P叠加网络, 包括: 多个节点域, 其中各个节点域相互连接, 各个节点域中的节点设置为存储 P2P叠加网络的数 据资源, 其中, 该数据资源被划分为多个资源域, 一个节点域的各个节点存储 的数据资源属于同一个资源域。 该多个资源域中的各个资源域具有相同的地域 位置信息。 每个节点域的节点域 ID 包含该节点域所存储的数据资源所归属的资源 域 的资源域 ID。

P2P叠加网络的多个节点还设置为存储多个资 源域中各个资源域的域名与 资源域 ID的第一对应关系。

P2P叠加网络的多个节点还设置为存储多个节 点域中各个节点域的节点域 ID与该节点域的路由信息的第二对应关系。 每个节点的节点标识包含该节点所属节点域的 节点域 ID。 每个数据资源的资源标识包含该数据资源所属 的资源域的资源域 ID。 根据本发明的另一方面, 提供了一种 P2P叠加网络的数据资源操作方法, 包括: P2P叠加网络的接入节点接收请求方发送的操作 请求, 其中, 该操作请 求用于请求对 P2P叠加网络中存储的数据资源执行预定操作; 接入节点获取存 储该数据资源的节点域; 接入节点将上述操作请求发送给该节点域内存 储该数 据资源的节点; 该节点对该数据资源执行上述预定操作。 该接入节点获取存储数据资源的节点域包括: 接入节点获取数据资源的资 源标识, 其中, 资源标识包括: 数据资源所属的资源域的资源域 ID 和资源域 内数据资源的资源 ID; 接入节点将资源标识与 P2P 叠加网络的各个节点域的 节点域 ID进行最长匹配, 获取最长匹配的节点域 ID所对应的节点域, 其中, 各个节点域的节点域 ID 包括: 该节点域存储的数据资源所属的资源域的资源 域 ID。 上述操作请求中携带有数据资源的资源标识, 则接入节点获取数据资源的 资源标识包括: 接入节点从操作请求中获取资源标识。 上述操作请求中携带有数据资源的名称及数据 资源所属的资源域的域名, 则接入节点获取数据资源的资源标识包括: 接入节点根据 P2P叠加网络中存储 的各个资源域的域名与资源域 ID 的第一对应关系, 获取与操作请求中携带的 域名对应的资源域 ID; 接入节点根据数据资源的名称, 获取数据资源的域内的 资源 ID; 接入节点根据获取的资源域 ID和域内的资源 ID, 得到数据资源的资 源标识。 如果获取的节点域为接入节点所属的节点域, 则接入节点将操作请求发送 给节点域内存储数据资源的节点包括: 接入节点根据预定算法, 获取存储资源 数据的节点; 接入节点将操作请求发送给节点。 如果获取的节点不属于接入节点所属的节点域 , 则接入节点将操作请求发 送给节点域内存储数据资源的节点包括: 接入节点根据 P2P叠加网络存储的各 个节点域的节点域 ID 与该节点域的路由信息的第二对应关系, 获取与最长匹 配的节点域 ID对应的路由信息; 接入节点根据路由信息, 将操作请求发送给 节点域 ID对应的节点域的连接节点; 连接节点根据预定算法, 获取存储资源 数据的节点, 并将操作请求发送给节点。 根据本发明的又一个方面, 提供了一种 P2P叠加网络的新节点加入方法, 包括:新节点向 P2P叠加网络的接入节点发送请求加入 P2P叠力口网络的力口入请 求消息, 其中, 该加入请求消息中携带有该新节点的节点标识 ; 接入节点根据 该节点标识确定新节点归属的节点域, 并将上述加入请求消息发送给该节点域 内新节点的负责节点, 其中, 负责节点为其节点标识与新节点的节点标识最 接 近的节点; 负责节点接收该加入请求消息, 返回响应消息, 该响应消息根据上 述加入请求消息的路由路径返回到新节点, 其中, 该响应消息中携带有负责节 点的标识信息。 上述新节点的节点标识包括: 该新节点所属节点域的节点域 ID和该新节 点在该节点域内的节点 ID,则接入节点根据节点标识确定新节点归属的 节点域 包括:接入节点将新节点的节点标识与 P2P叠加网络的各个节点域的节点域 ID 进行最长匹配, 确定最长匹配的节点域 ID所对应的节点域为新节点归属的节 点域。 如果新节点归属的节点域为接入节点所属的节 点域, 则接入节点将加入请 求消息发送节点域内新节点的负责节点包括: 接入节点根据预定算法, 获取新 节点的负责节点; 接入节点将加入请求消息转发给负责节点。 如果新节点归属的节点域不是接入节点所属的 节点域, 则接入节点将加入 请求消息发送节点域内新节点的负责节点包括 : 接入节点根据 P2P叠加网络存 储的各个节点域的节点域 ID 与该节点域的路由信息的第二对应关系, 获取与 最长匹配的节点域 ID对应的路由信息; 接入节点根据路由信息, 将加入请求 消息发送给节点域 ID对应的节点域的连接节点; 连接节点根据预定算法, 获 取新节点的负责节点, 并将加入请求消息发送给负责节点。 在上述新节点向接入节点发送加入请求消息之 前, 该方法还包括: 新节点 获取其节点标识, 其中, 该节点标识为 P2P叠加网络的配置月艮务器分配的或新 节点根据其属性信息生成的。 在响应消息返回到新节点之后, 该方法还包括: 新节点获取响应消息中携 带的负责节点的标识信息, 并才艮据标识信息与负责节点进行消息交互。 在新节点接收响应消息之后, 该方法还包括: 新节点向其所属节点域之外 的其它节点域的连接节点发送域外广播消息, 通知其它节点域有新节点加入。 通过本发明, 在 P2P叠加网络中, 将资源域和节点域分开, 当某个资源域 的资源数据比较多时, 可以将该资源域的资源数据布局到多个节点域 中运行, 减少了系统维护的开销, 解决了现有技术中当用户资源数据过多时而导 致域中 的节点规模过大、 系统维护开销过高的问题, 进而可以根据实际情况, 灵活地 配置 P2P叠加网络。 附图说明 此处所说明的附图用来提供对本发明的进一步 理解, 构成本申请的一部 分, 本发明的示意性实施例及其说明用于解释本发 明, 并不构成对本发明的不 当限定。 在附图中: 图 1为现有技术中的多域系统结构示意图; 图 2为在现有的多域系统中进行资源查询示意图 图 3为才艮据本发明实施例的 P2P叠加网络的一种结构示意图; 图 4为根据本发明实施例的 P2P叠加网络的数据资源操作方法的流程图; 图 5为本发明实施例中对 P2P叠加网络中的数据资源进行操作的示意图; 图 6为根据本发明实施例的 P2P叠加网络的数据资源操作方法的优选实施 方式的流程图; 图 7为才艮据本发明实施例的 P2P叠加网络的新节点加入方法的流程图; 图 8为本发明实施例中在 P2P叠加网络中加入新节点的示意图; 图 9为才艮据本发明实施例的 P2P叠加网络的新节点加入方法的优选实施方 式的¾¾程图。 具体实施方式 下文中将参考附图并结合实施例来详细说明本 发明。 需要说明的是, 在不 冲突的情况下, 本申请中的实施例及实施例中的特征可以相互 组合。 才艮据本发明实施例, 首先提供一种 P2P叠加网络, 在该 P2P叠加网络中资 源域和节点域相分离。 图 3为才艮据本发明实施例的 P2P叠加网络的一种结构示意图,如图 3所示, 在本发明实施例的 P2P叠加网络中,整个 P2P网络中的数据资源被划分为多个 资源域 (在图 3 中一个方框表示一个资源域), 而整个 P2P叠加网络中的节点 划分成多个节点域 (在图 3 中一个圓圏表示一个节点域), 每个资源域的数据 资源可以由一个节点域负责, 也可以由多个节点域负责, 即一个资源域的数据 资源可以存储在一个节点域的各个节点中, 也可以存储在多个节点域的各个节 点中, 具体可以根据该资源域包含的数据资源量进行 确定, 当某个资源域的数 据资源较多时, 可以将该资源域的数据资源存储在多个节点域 中。 即在本发明 实施例中, 一个节点域的各个节点所存储数据资源属于同 一个资源域。 在具体应用中, 资源域的划分可以按照地域位置来进行, 例如, 上海域, 南京域, 北京域等。 划分所依据的地域位置信息可以是资源或用户 所在的行政 区域, 也可以按照运营商进行区域划分等。 一个资源管理域可以只部署一个节 点域, 比如南京资源域可以部署在一个节点域,上海 资源域也是一个节点域等。 但是如果资源域中的资源(用户)非常多, 部署的节点域的节点规模就会很大, 为了使得域的负载均衡, 维护开销小, 路由性能高, 可以把一个资源域部署多 个节点域中。 整个 P2P网络中的资源域划分以及资源域的数目可以 根据实际情况来定。 在具体应用中, 每个资源域都具有一个域名, 同时有唯一的标识 (简称为 资源域 ID ) 与之对应, 例如, 图 3中有三个资源域(用方框表示), 域名分别 为 dom-b.com.cn, dom-c.com.cn, dom-a.com.cn对应的域 ID为 0101 , 0201 , 0301 , 可以在 P2P叠加网络中存储资源域的域名与资源域 ID的对应关系, 具 体地, 可以通过如表 1所示的域映射表来记录资源域名与资源域 ID对应关系。 表 1. 域名映射表

而资源域中的各个数据资源的资源标识可以包 括: 该数据资源所属的资源 域的资源域 ID和该数据资源在该资源域内的资源 ID, 即: 资源标识 =资源域 ID +资源 ID 同样, 节点域的划分可以按照地域位置来进行, 或者, 也可以按照其他方 式比如 IP地址等进行划分, 每个节点域都有一个节点域 ID, 在具体实施过程 中, 节点域的节点域 ID 可以包含该节点域所存储的数据资源所属的资 源域的 资源域 ID, 即资源域 ID的长度小于或等于节点域 ID的长度, 优选地, 资源 域 ID可以作为节点域 ID的前缀, 或者, 资源域 ID也可以作为节点域 ID的预 定位, 例如, 最后四位等。 在确定节点域的节点域 ID后, 可以通过节点域 ID来表示节点域内各个节 点的节点标识, 具体地, 节点标识可以包括该节点所属的节点域 ID 和该节点 在该节点域内的节点 ID, 即: 节点标识 =节点域 ID +节点 ID 在具体应用中, 上述资源 ID和节点 ID可以釆用预定的域内 DHT算法得 到, 从而使得数据资源的资源 ID与存储该数据资源的节点的节点 ID相关联。 例如, 图 3 中包含五个节点域, 每个节点域的节点域 ID 包含其存储的数 据资源所属的资源的 ID, 例如, 图 3中的五个节点域可以分别为 0301 , 0201 , 01011 , 01012, 01013。 i或内可以釆用不同的 DHT算法来计算各个节点在节点 域内的节点 ID、 各个数据资源在资源域内的资源 ID以及存储数据资源的节点 等, 例如, One-hop、 Pastry、 Chord和 Kad等算法。 在具体应用中, 上述 P2P叠加网络的节点域与节点域之间可以釆用全 连接 方式, 具体可以在 P2P叠加网络的各个节点中存储各个节点域的节 点域 ID与 该节点域的路由信息的对应关系, 以使得各个节点域之间可以建立连接, 在具 体应用中, 该对应关系可以釆用如表 2所示的映射表存储。 表 2. 域间路由表

通过上述的描述可知, 在上述 P2P叠加网络中, 资源域和该资源域所在的 节点域中, 资源域的 ID和节点域的 ID可能相等, 但资源域的 ID包含在节点 域的 ID 内, 可以通过最长匹配得到资源域所在的节点域, 例如, 一个资源域 部署到多个节点域, 则该资源域的域 ID—定可在节点域的域 ID中最长匹配。 通过本发明实施例的上述 P2P叠加网络, 资源域和节点域相分离, 从而使 得一个资源域的数据资源可以通过一个或多个 节点域来负责存储。 如图 3中域 名为 dom-b.com.cn 的资源域, 域内的所有数据资源由三个节点域 (域 ID 为 01011 , 01012和 01013 ) 中节点负责。 进而使得运营商在规划叠加网时, 可以 把资源域和节点域分开, 如果某个资源管理域的资源数据比较多时, 节点的数 量也会非常多, 可以布局到多个节点域中运行, 系统的维护开销就不会太大。 这样可以根据实际情况, 灵活地配置叠加网。 从而提高整个叠加网络的性能提 高。 下面描述基于本发明实施例提供的上述 P2P 叠加网络的数据资源操作方 法。 图 4为根据本发明实施例的 P2P叠加网络的数据资源操作方法的流程图, 如图 4所示, 该方法主要包括以下步骤 (步骤 S402 -步骤 S408 ): 步骤 S402, P2P叠加网络的一个接入节点接收请求方发送的 操作请求, 其 中,该操作请求用于请求对 P2P叠加网络中存储的某个数据资源执行预定操 作; 具体地, 该预定操作可以为查询、 存储或修改某个数据资源。 步骤 S404 , 接入节点获取存储上述数据资源的节点域; 步骤 S406,接入节点将上述操作请求发送给上述节点 内存储该数据资源 的节点; 步骤 S408, 上述节点对该数据资源执行预定操作。 通过本发明实施例的上述 P2P叠加网络的数据资源操作方法, 可以对节点 域与资源域分离的 P2P叠加网络中存储的数据资源执行预定的操作 。 下面进一步描述上述各步 4聚的处理细节。 (一) 步骤 S402 在具体实施过程中, 当用户需要对 P2P叠加网络中的某个数据资源执行某 种操作时, 通过其客户端向 P2P叠加网络中与该客户端连接的接入节点发送 请 求, 请求对某个数据资源执行某项操作。 用户需要查询域名为 dom-c.com.cn域 的数据资源 abc, 即查询 abc@dom-c.com.cn, 则用户通过其客户端发送查询请 求。 在具体应用中, 客户端在向 P2P叠加网络发送的操作请求时, 可以将待操 作数据资源的名称和其所在的资源域的域名转 换为该数据资源的资源标识, 例 如, 将 abc@dom-c.com.cn转化为该数据资源的资源标识 02012213 , 并将该数 据资源的资源标识携带在操作请求中发送给 P2P叠加网络的接入节点; 或者, 客户端也可以只将该数据资源的名称和其所在 的资源域的域名携带 在操作请求中发送给上述接入节点, 由接入节点将该资源的名称和资源域的域 名转化为该数据资源的资源标识。

(二) 步骤 S404 在具体实施过程中, 如果数据资源的资源标识包括该数据资源所属 的资源 域的资源域 ID和该资源域内该数据资源的资源 ID, 且节点域的节点域 ID 包 括该节点域所存储的数据资源所属的资源域的 资源域 ID,则可以通过最长匹配 的方式获取存储上述数据资源的节点域。 即接入节点将上述资源标识与 P2P叠 加网络的各个节点域的节点域 ID进行最长匹配, 获取最长匹配的节点域 ID所 对应的节点域, 该节点域即为存储上述数据资源的节点域。 釆用这种方式, 资 源域 ID可以作为节点域 ID的前缀, 也可以位于节点域 ID的预定位置(例如, 最后几位); 而资源标识包括: 资源域 ID和资源 ID, 其中, 资源域 ID可以作 为资源标识的前缀, 也可以位于资源标识的预定位置 (该预定位置可以预先约 定), 并且, 资源 ID为釆用域内算法计算得到的。 在具体应用中, 如果资源域 ID为节点域 ID的前缀, 且资源标识 =资源域 ID +资源 ID, 则可以直接釆用 前缀最长匹配的方式获取最长匹配的节点域 ID; 或者, 可以按照预先约定, 从 节点域 ID的预定位置获取该节点域 ID 包含的资源域 ID, 并从资源标识的预 定位置中获取该数据资源所属的资源域的资源 域 ID, 将这两个资源域 ID进行 匹配, 如果匹配成功, 则将资源标识中的其余位与节点域 ID 的其余位进行匹 配, 从而可以获取最长匹配的节点域 ID。 或者,在组网过程中,也可以在 P2P叠加网络中存储各个资源域的节点域, 或者存储各个数据资源的节点域, 例如, 可以记录资源标识在某个范围内的数 据资源存储在哪个节点等, 接入节点根据这些信息, 可以确定存储上述数据资 源的节点域。 (三) 步骤 S406 在具体实施过程中, 如果上述步骤 S404 中所确定的节点域为接入节点所 在的节点域 (即本域), 则接入节点根据预设的域内算法, 可以获取到存储上 述数据资源的节点, 并将上述接收到的上述操作请求转发给该节点 ; 如果上述步骤 S404 中所确定的节点域不是该接入节点所在的节点 域, 则 接入节点根据 P2P网络中预先存储的节点域 ID与该节点域的路由信息的对应 关系 (如上表 2所示) 可以获取步骤 S404中所确定的节点域的路由信息, 根 据该路由信息, 接入节点将上述操作请求转发给该节点域的连 接节点。 该连接 节点接收到该操作请求后, 确定该数据资源存储在本域, 则按照预定的域内算 法, 获取本域内存储该数据资源的节点, 并将上述操作请求转发给该节点。

(四 ) 步骤 S408 存储上述数据资源的节点在接收到上述操作请 求后, 根据该操作请求的指 示, 对该数据资源执行预定操作, 即查询、 存储或修改该数据资源, 如果是查 询操作, 则该节点根据上述操作请求的路径, 向请求方返回相应的数据, 如果 是存储或修改操作请求, 则该节点根据上述操作请求的路径, 向请求返回相应 的响应消息。 下面以图 5所示 P2P叠加网络为例,对本发明实施例的上述 P2P叠加网络 的数据资源操作方法的优选实现方式进行说明 。 在图 5 中, 标识 ID 以 4 进制为例进行描述, 如图 5 所示, 资源域 dom-b.com.cn的资源 i或 ID为 0101 , 其对应三个节点 i或 ID为 01011、 01012和 01013的节点 i或; 而资源域 dom-a. com. cn的资源域 ID为 0301 , 其对应一个节 点域 ID为 0301的节点 i或; 而资源 i或 dom-c com.cn的资源 i或 ID为 0201 , 其对 应一个节点域 ID为 0201的节点域。 在图 5中, 用户通过客户端 A ( Client A ) 向 P2P叠加网络查询 /存储 /修改 某个资源域名为 dom-c. com. cn域的资源数据, 例 ^口, abc@dom-c. com. cn。 该该 数据资源存储或应该存储在节点域 ID为 0201的节点域中的 E节点, 图 6为具 体实施的流程图, 如图 6所示, 主要包括以下步骤: 步-骤 601 , Client A将资源 abc@dom-c. com. cn转化为资源标识为 02012213; 在具体应用中, Client A可以查询域名映射表(如表 1所示;), 获取域名为 Dom-c.com. cn的资源域的资源域 ID为 0201 , 通过域内算法, 可以计算出 "abc" 对应的资源 ID为 2213 , 从而得到该数据资源的资源标识 ID为 0201-2213。 步骤 602, Client A向连接节点 B发送查询 /存储 /修改资源请求消息, 该请 求中携带的资源标识为 0201-2213; 步骤 603 , 节点 B (节点域 ID为 01011 )才艮据资源标识 0201-2213在域间 路由表(表 2所示)中前缀最长匹配的节点域 ID, 找到最长匹配到的节点域 ID 是 0201 , 确定该节点域 ID不是本域 ID, 因此, 负责数据资源 0201-2213的节 点不在本域; 步骤 604 , 节点 B根据表 2 , 获取与节点域 ID0201对应的路由信息, 获取 节点域 0201 的连接节点为 A, 则将上述步骤 602 中接收到请求消息转发到连 接节点 A; 步骤 605 , 节点 A通过查询域外路由表(表 2 )找出与资源标识 02012213 前缀最长匹配的节点 i或 ID, 确定目标 (key=02012213)在本 i或; 步骤 606, 节点 A按照域内釆用的算法 (如 Chord, Pastry等) 最终消息路 由到存储该数据资源的节点 E; 步骤 607, 节点 E根据 key=02012213读取 /存储 /修改资源数据; 步骤 608 ~ 610, 节点 E发送响应消息, 该响应消息返回到 Client A, 如果 是查询数据资源, 则该响应消息中携带有是查询的数据; 在具体应用中, Client A 可以直接用资源 abc@dom-c.com.cn向节点 B发 请求消息, 由节点 B查询域名映射表, 再计算出资源 ID, 然后组成资源标识。 下面描述基于本发明实施例提供的上述 P2P叠加网络的新节点加入方法。 图 7为才艮据本发明实施例的 P2P叠加网络的新节点加入方法的流程图, 如 图 7所示, 主要包括以下步骤 (步骤 S702 -步骤 S706 ): 步骤 S702, 新节点向 P2P叠加网络的接入节点发送请求加入 P2P叠加网 络的加入请求消息, 其中, 该加入请求消息中携带有新节点的节点标识; 步骤 S704,接入节点 居上述节点标识确定新节点归属的节点域, 并将上 述加入请求消息发送给该节点域内新节点的负 责节点, 其中, 负责节点为其节 点标识与新节点的节点标识最接近的节点; 步骤 S706, 负责节点接收到上述加入请求消息, 返回响应消息, 该响应消 息根据上述加入请求消息的路由路径返回到新 节点, 其中, 上述响应消息中携 带有负责节点的标识信息。 才艮据本发明实施例的上述 P2P叠加网络的新节点加入方法, 可以在节点域 和资源域分离的 P2P叠加网络中加入新节点。 下面进一步描述上述各处理的细节。 (一) 步 4聚 S702 在具体应用中, 新节点在向 P2P叠加网络的某个接入节点发送加入请求消 息之前, 新节点首先获取节点标识。 在具体实施过程中, 新节点获取节点标识 的方法包括但不限于以下两种: 方法一, 新节点向配置月艮务器发请求, 由配置 服务器分配该新节点的节点标识, 具体如图 8所示; 方法二, 新节点根据自己 的 IP地址等信息, 生成其节点标识。 如果釆用上述方法一获取新节点的节点标识, 则配置服务器在为新节点分 配节点标识时, 同时为该新节点分配接入节点; 如果釆用上述方法二获取新节 点的节点标识, 则 P2P叠加网络的接入节点可以通过手工配置。 新节点在获取配置的接入节点后, 向该接入节点发送加入请求消息, 请求 加入到 P2P叠加网络中, 该请求消息中携带新节点的节点标识。

(二) 步骤 S704 在具体应用中, 与上述 P2P叠加网络的数据资源操作方法相似, 接入节点 可以通过将新节点的节点标识与 P2P叠加网络中的各个节点域的节点域 ID进 行最长匹配来确定新节点归属的节点域, 也可以在组网时预先存储节点标识在 某个范围内的节点所归属的节点域, 从而获取该新节点所归属的节点域。 如果釆用最长匹配的方式确定新节点所归属的 节点域, 则上述步骤 S702 中的该新节点的节点标识包括: 该新节点所属节点域的节点域 ID和该新节点 在该节点域内的节点 ID (该节点 ID可以釆用域内算法确定), 即节点标识 =节 点 i或 ID +节点 ID。 并且, 新节点所归属的节点域可能为上述接入节点的 本域, 也可能不是上 述接入节点的本域, 针对这两种情况, 接入节点将上述加入请求消息发送给节 点域内该新节点的负责节点有两种处理方式: 方式一、 新节点与接入节点在同一节点域。 则接入节点在确定新节点在本 域后, 根据域内算法, 计算出该新节点的负责节点, 具体地, 该负责节点为其 节点标识大于该新节点的节点标识, 且其节点标识与新节点的节点标识最接近 的节点, 然后将上述加入请求消息转发给该负责节点; 方式二、 新节点与接入节点不在同一节点域。 则接入节点根据上述表 2, 获取新节点所在节点域的路由信息, 并根据该路由信息将上述加入请求消息转 发给该节点域的连接节点。 该连接节点确定该新节点在本域(具体可以釆 用上 述最长匹配的方法确定, 也可以才艮据预先存储的信息确定), 釆用域内算法, 计算出该新节点的负责节点, 并将上述加入请求消息发送给该负责节点。 (三) 步 4聚 S706 负责节点在接收到上述加入请求消息后, 根据该加入请求消息的路由路 径, 向新节点返回响应消息, 该响应消息中携带负责节点的标识信息。 新节点在接收到上述响应消息后, 从该响应消息中获知负责节点的标识信 息, 根据该标识信息与负责节点进行其它消息的交 互, 从而获取 P2P叠加网络 的路由表, 以及该新节点负责的数据资源等, 从而加入到 P2P叠加网络中。 并且, 新节点在接收到上述响应消息后, 将向其它域外接入点发域外广播 消息, 以通知其它域, 有新节点加入, 并接收其它域外节点发送的响应消息。 下面以图 8所示的 P2P叠加网络为例,对新节点加入到 P2P叠加网络的优 选实施方式进行说明, 图 9为新节点加入到 P2P叠加网络的流程力产, 如图 9 所示, 一个新节点加入到 P2P叠加网络主要包括以下步骤: 步骤 901 , 新节点获取其节点标识; 在具体实施过程中, 新节点获取节点标识有两种方法: 方法一, 新节点向 配置服务器发请求, 由配置服务器分配节点标识和叠加网接入节点 , 如图 8所 示; 方法二, 新节点根据自己的 IP地址等信息, 自己生成节点标识, 叠加网接 入节点手工配置。 如新节点 N的节点标识为 01012340; 步骤 902, 新节点向 P2P叠加网的接入节点发节点加入请求消息, 该加入 请求消息中携带有新节点的节点标识; 接入节点是新节点连接 P2P叠加网的一个接入点, 由步骤 901可知它一般 是由配置服务器获得, 也可以是手工配置获得。 步骤 903 , 接入节点 B ( NodeID=01011345 ) 查询 i或间路由表 (表 2 ), 将 新节点的节点标识与各个节点域的节点域 ID进行前缀最长匹配, 发现与新节 点 N的 NodelD ( 01012340 ) 最长匹配的节点 i或 ID为 01012, 通过表 2, 接入 节点 B可以获取该节点域的连接节点为节点 G,接入节点 B将加入请求消息路 由到节点域间连接节点 G; 步骤 904,连接节点 G接收到上述加入请求消息后查询域间路由表 表 2 ), 将新节点的节点标识与各个节点域的节点域 ID进行前缀最长匹配, 发现和新 节点 N的 NodeID(01012340)最长匹配到节点 i或 ID为 01012, 即是本节点所在 的域, 再根据域内的算法 (如 Pastry, Chord, One-Hop等) 找到负责节点 (负责 节点即节点的 NodelD比新节点大, NodelD与新节点的 NodelD且最近的一个 节点) ,负责节点接收到消息后, 返回响应消息; 步骤 905 ~ 908, 响应消息根据请求的路由路径返回到新节点; 步骤 909, 新节点通过响应消息, 获取其负责节点的信息, 并通过其它消 息与负责节点交互, 获取路由表, 负责的资源数据等; 步骤 910, 新节点向其它域外接入点发域外广播消息, 通知其它域, 有新 节点加入; 在实际应用中, 如果域内算法为 One-Hop算法, 则需要本步骤的处理, 如 果为其它算法, 则不需要此步骤; 步骤 911 , 其它域外节点接收到上述广播消息向新节点发 送响应消息。 从以上的描述中, 可以看出, 通过本发明实施例, 将资源域和节点域相分 离, 从而使得一个资源域的数据资源可以通过一个 或多个节点域来负责存储。 进而使得运营商在规划叠加网时, 可以 4巴资源域和节点域分开, 如果某个资源 管理域的资源数据比较多时, 节点的数量也会非常多, 可以布局到多个节点域 中运行, 系统的维护开销就不会太大。 这样可以才艮据实际情况, 灵活地配置叠 加网。 从而提高整个叠加网络的性能提高。 显然, 本领域的技术人员应该明白, 上述的本发明的各模块或各步骤可以 用通用的计算装置来实现, 它们可以集中在单个的计算装置上, 或者分布在多 个计算装置所组成的网络上, 可选地, 它们可以用计算装置可执行的程序代码 来实现, 从而, 可以将它们存储在存储装置中由计算装置来执 行, 并且在某些 情况下, 可以以不同于此处的顺序执行所示出或描述的 步骤, 或者将它们分别 制作成各个集成电路模块, 或者将它们中的多个模块或步骤制作成单个集 成电 路模块来实现。 这样, 本发明不限制于任何特定的硬件和软件结合。 以上所述仅为本发明的优选实施例而已, 并不用于限制本发明, 对于本领 域的技术人员来说, 本发明可以有各种更改和变化。 凡在本发明的 ^"神和原则 之内, 所作的任何修改、 等同替换、 改进等, 均应包含在本发明的保护范围之 内。