设为首页 加入收藏 期刊导航 网站地图
  • 首页
  • 期刊
    • 数学与物理
    • 地球与环境
    • 信息通讯
    • 经济与管理
    • 生命科学
    • 工程技术
    • 医药卫生
    • 人文社科
    • 化学与材料
  • 会议
  • 合作
  • 新闻
  • 我们
  • 招聘
  • 千人智库
  • 我要投搞
  • 办刊

期刊菜单

  • ●领域
  • ●编委
  • ●投稿须知
  • ●最新文章
  • ●检索
  • ●投稿

文章导航

  • ●Abstract
  • ●Full-Text PDF
  • ●Full-Text HTML
  • ●Full-Text ePUB
  • ●Linked References
  • ●How to Cite this Article
Computer Science and Application 计算机科学与应用, 2012, 2, 47-50
http://dx.doi.org/10.12677/csa.2012.21009 Published Online March 2012 (http://www.hanspub.org/journal/csa)
Fault-Tolerant Method in P2P Information Management
Systems*
Lu Cai1, Jian Zhao2
1School of Information Management and Information Systems, Chang’an University, Xi’an
2School of Basic Education, National University of Defense Technology, Changsha
Email: Centaur_Laurel@hotmail.com, zhaojian@nudt.edu.cn
Received: Jan. 2nd, 2012; revised: Jan. 19th, 2012; accepted: Feb. 3rd, 2012
Abstract: FissionE is a Kautz graph based infrastructure of P2P information management systems. It has the optimal
network diameter given node degree d = 2. In order to address the problem of degraded routing performance caused by
node failures, in this paper we propose a fault-tolerant routing algorithm for the FissionE system. The basic idea is to
bypass failed node or link with some certain mechanism, so that FissionE can achieve better routing performance.
Keywords: P2P Information Management System; Kautz Graphs; Fault-Tolerance
P2P 信息管理系统中的容错方法*
蔡 璐1,赵 舰2
1长安大学经济管理系,西安
2国防科技大学基础教育学院,长沙
Email: Centaur_Laurel@hotmail.com, zhaojian@nudt.edu.cn
收稿日期:2012 年1月2日;修回日期:2012年1月19 日;录用日期:2012年2月3日
摘 要:FissionE 是一种基于Kautz 图的 P2P信息管理系统网络架构,在给定节点度数(d = 2)下具有最优的网络
直径。针对结点失效导致的 FissionE 路由性能较差的问题,本文对 FissionE 的容错路由算法进行研究,其基本
思想是:如果下一跳结点失效或网络连接失效,那么将采用某种方法“绕过”失效的结点或连接,从而获得较
好的路由性能。
关键词:P2P 信息管理系统;Kautz 图;容错
1. 引言
近年来,P2P 技术作为一种新型的网络计算技术蓬
勃兴起,已经被广泛地应用于信息管理系统领域,具
有广阔的发展前景[1-3]。P2P 信息管理系统中各结点的
地位平等,每个结点既是客户机又是服务器,不依赖
于任何中央服务器,可以充分利用各个结点上的资源,
极大地丰富了网络中的资源,各个结点可以直接进行
交互和协作,因而有效地提高了资源 的利用率[4-6]。
然而,现有的P2P 信息管理系统难以应用于结点
状态不稳定的环境[7]。这是由于一方面网络拓扑变化
频繁,另一方面P2P信息管理系统中没有中央控制,
各结点的状态信息无法进行汇聚,进而导致路由性能
较差。
FissionE 是一种基于 Kautz 图的信息管理系统网
络架构。FissionE 创造性地提出了许多新型的规则和
算法,例如 Kautz_hash 命名算法、邻居关系不变量拓
扑构造规则和局部优化动态维护机制,并且详细地分
析和证明这些机制的正确性。在给定节点度数(d = 2)
*资助信息:本文研究成果受到国家自然科学基金(批准号:
60903205)和博士点基金(批准号:20094307110008)的资助。
Copyright © 2012 Hanspub 47
P2P 信息管理系统中的容错方法
下FissionE 具有最优的网络直径。
针对节点失效导致的 P2P 信息管理系统性能较差
的问题,本文对FissionE 的容错方法进行研究,其基
本思想是:如果下一跳结点失效或网络连接失效,那
么将采用某种方法“绕过”失效的结点或连接,从而
获得较好的性能。模拟实验表明,本文提出的方法能
够在存在节点失效的情况下实现高效的FissionE 信息
管理系统网络架构。
2. 相关研究
本节将对 FissionE 的基本设计(包括 Kautz 图拓扑
结构、FissionE 路由算法等)进行回顾。
Kautz串[2]是指在由k个字符组成的字符串中,如
果每个字符只能取从0到d的整数且相邻的两个字符
不同,那么就称这个字符串是基底为 d、长度为 k的
Kautz串。Kautz 空间KautzSpace(d, k)是指所有基底为
d、长度为 k的Kautz 串的集合。Kautz 图[2]K(d, k)是
每个结点的出度和入度都是d且网络直径是 k的有向
图,Kautz 图K(d, k)中每个结点的标识都是Kautz 空
间KautzSpace(d, k)中的一个Kautz串,Kautz 图K(d, k)
中任意一个结点都有 d条到结点

12
,,
k
UU uuu




23
,,VV uukk
uaa u的出边(记作U)。图
1给出了 Kautz 图K(2, 3)的示例。
V
根据 Kautz 串的定义,Kautz 图K(d, k)中共有
个结点,在目前所有的拓扑图中最接近
Moore 界 ,并且在k = 2 时,Kautz
图中共有个结点,只比Moore界 少
一个,可见Kautz 图是结点数目最多的拓扑图。Kautz
图K(d, k)的网络直径达到了由 Moore 界推出的网络直
径下界,可见 Kautz 图具有
最优网络直径。Kautz 图的连接度为 d,即在Kautz
图的任意两个结点之间存在d条互不相交的路径,可
见Kautz 图的容错性非常好。
1kk
dd


lo

2
1k
dd d 
2
dd


g1 1
dNd








2
1dd
1
在静态 Kautz 图中采用长路径路由算法,如果
,那么从结点 U到结点 V的路由路径为:U
1k
uv

如果uv那么从结点 U
到结点 V的路由路径为:Uu
12
uu u

231 3412kk k
uu uvuu uvvu  
112kk
vvvvV;1k,
12 23
u uuu
12
vv
2kk
uv
k


232 1kkkk
uvvuvv vV


。
34
uu
由此可见,Kautz 图K(d, k)中任意两个结点之间
的路由路径长度为 k或,平均路由路径长度为1k






1111 1ddk dkk d1

 。例如在
Kautz 图K(2, 3)中从结点101 到结点 212的路由路径
为101→012→121→212,如图 1所示。
FissionE 中每个结点的标识都是一个基底为 2的
Kautz 串。最初 FissionE 与静态 Kautz 图相同,但是随
着结点的动态加入和退出,结点标识的长度也在动态
变化,
FissionE 针对此提出了邻居关系不变量拓扑 构造
规则,使 FissionE 中邻居结点的标识长度相差始终不
超过 1,维护了良好的拓扑结构。FissionE 中每个结点
的路由表中都记录了两种邻居的信息,即出边邻居和
入边邻居,结点 12
,,
k
Uuu u


km
q
的出边邻居是结点
23 1
Vuu uq


0m
23 1k
uu uq
2
(是基底为2的
Kautz 串且
m
q


12
uu
);结 点的入边邻居
是结点Wa
12
u,,
k
uUu
i
u

12 i
au uu
k
(是基底为 2的Kautz
串且 2ki

 )。图 2给出了一个 FissionE拓扑示例。
Figure 1. Routing path from source node 101 to destination node
212 in K(2, 3)
图1. K(2, 3)中从源结点 101 到目的结点 212 的路由路径
Figure 2. Routing path from source node 121 to destination node
2020
图2. 从源结点 121 到目的结点 2020 的路由路径
Copyright © 2012 Hanspub
48
P2P 信息管理系统中的容错方法
FissionE 中消息路由的过程和Kautz 图的长路径
路由算法相似,设 X为当前结点的标识,T为目标
Kautz 串,M为X和T的前后匹配位数,
X
为X的
长度,消息路由算法为重复进行


,LXMXT 和
直至 。例如在上述拓扑示例中从结点
121 到结点2020 的消息路由路径为121→212→120→
2020,如图 2所示。
1LL
 0L
3. FissionE的容错路由算法设计
3.1. Kautz图容错路由
为降低失效结点对消息路由的影响,本文提出在
Kautz 图中采用如下兄弟结点容错机制。
结点 12
,,
k
X
xx x的两个出边邻居 23
Bxx


k
x
y(y = 0, 1, 2 且b  xk)互为兄弟结点,当结点 X处理
路由消息 Routing(T, L, P)时,如果路由消息要转发到
的出边邻居 已经失效,那么将路由消
息转发给 W的兄弟结点 ,之后按照长
路径路由算法,路由至目的结点。例如在 Kautz 图K(2,
3)中,理想情况下从源结点 102 到目的结点 120 的路
由路径为 102→021→212→120。当结点 212失效后,
路由路径变为102 →021→210→101→012→120,如图
3所示。
23 k
Wxxxa
23 k
Bxx xb
3.2. FissionE容错路由
在现有 FissionE设计中,结点被动退出后路由消
息很有可能还会被转发给已经失效的结点,为增加消
息路由的鲁棒性,一种选择是仿照Kautz 图容错路由
算法进行路由。但是,由于在 FissionE中结点的出边
邻居个数可能为 1,因此我们提出如下改进的 FissionE
容错方法。
标识为 21kj
Wuux x


02j 和23
Vuu


2
,,
k
u
2
(与相对于 互补,0)的结点互
为容错结点。当路由消息路由至Uu 时,假
设下一跳结点Wu () 已经失
效,那么U将把消息转发至 W的容错结点(即
),然后从V再路由至目的结点。
1k
uq q
23
Vuu
m2
u
2
u1
u
2
ux
1km
uq q
m
12
u
1kj
x0j
例如在图 2所示的 FissionE拓扑中,212 和012
互为容错结点,理想情况下从源结点 121 到目标 Kautz
串120 的路由路径为 121→212→120,如图4所示。
当结点 212失效后,路由路径变为 121→210→10→012
→120,如图5所示。图 6给出了FissionE 容错机制。
Figure 3. Routing path after node 212 fails in K(2, 3)
图3. K(2, 3)中结点212 失效后的路由路径
Figure 4. Ideal routing path from source node 121 to destination
node 120
图4. 从源结点 121 到目的结点 120 的理想路由路径
Figure 5. Routing path after node 212 fails
图5. 结点 212 失效后的路由路径
Copyright © 2012 Hanspub 49
P2P 信息管理系统中的容错方法
Copyright © 2012 Hanspub
50
Figure 6. Fault tolerant rouging in FissionE
图6. FissionE的容错路由机制
4. 模拟评估
Figure 7. Fault tolerant performance
我们通过修改 FissionE模拟器对容错路由的性能
(平均路径长度)进行评估。在模拟过程中,首先通过
Kautz_hash 算法随机产生一个目标 Kautz 串,并随机
选择一个结点作为消息发起结点。消息采用标准
FissionE 路由算法进行路由。在每个消息的路由过程
中,随机选择一个结点作为失效结点,当消息遇到失
效结点时将启用如图6所示的容错路由算法。结点数
从256 变化到 32 K。模拟结果如图7所示。
图7. 容错性能
有效地提高 FissionE 的容错性能。
参考文献 (References)
[1] 李东升. 基于对等模式的资源定位技术研究[D]. 国防科技大
学, 2005.
[2] 彭兰. P2P 技术与网络传播的未来[URL], 2004.
http://news.xinhuanet.com/newmedia/2004-12/01/content_2282
285.htm
图中也包括了没有失效结点时标准 FissionE 的平
均路由路径长度。从图中可以看出,发生结点失效时
的容错路由延迟仅比正常情况下的 FissionE 路由延迟
高50%左右,从而说明我们的容错路由算法是有效的。
[3] I. Stoica, R. Morris, D. Liben-Nowell, D. R. Karger, et al. Chord:
A scalable peer-to-peer lookup protocol for internet applications.
IEEE/ACM Transactions on Networking, 2003, 11(1): 17-32.
[4] M. Bawa, F. B. Cooper, A. Crespo, N. Daswani, et al. Peer-to-Peer
research at Stanford. SIGMOD Record, 2003, 32(3): 23-28.
[5] Napster Website, 2001. http://www.napster.com
[6] S. Rhea, D. Geels, T. Roscoe and J. Kubiatowicz. Handling churn
in a DHT. USENIX Annual Technical Conference, General Track,
2004.
5. 结论
[7] 刘敏. 结构化P2P 系统容错机制研究[D]. 国防科技大学,
2008.
本文对结构化 P2P 信息管理系统 FissionE 的容错
方法进行研究。模拟实验表明,本文提出的方法能够

版权所有:汉斯出版社 (Hans Publishers) Copyright © 2012 Hans Publishers Inc. All rights reserved.