于莉
【摘要】本文介绍了Pastry协议模拟插件的运行环境以及实验配置文件的格式与参数的定义。并根据实验数据的分析,对Pastry协议的路由性能、容错性、自适应性这三个重要指标进行评估。
【关键词】Pastry协议数据分析
【中图分类号】G40 【文献标识码】B 【文章编号】2095-3089(2014)4-0212-02
一、实验准备
本文将介绍Pastry协议模拟插件在Peersim上的仿真实验结果。在涉及的所有实验中,Pastry协议使用的参数为:BITS= 128、b= 4、L=32、R=32×16。实验中没有实际调用上层应用程序,这样能更好的测试Pastry协议的性能而不受到应用层的干扰。所有的实验都运行在三星X11-CV0G笔记本电脑上: Microsoft Windows XP Professional (SP2) 操作系统、1.5G内存、Intel Core(TM)2 Duo Processor处理器、jdk-1.5.0.14。
首先介绍一下实验的配置文件,这个配置文件可被Peersim模拟器读取,用来定义各种网络初始化参数及设定实验的控制类。
其次,总共测试了Pastry协议的三个方面的性能:(1)Pastry协议路由性能;(2) Pastry的协议容错性;(3) Pastry协议自适应性。
二、Pastry协议模拟插件路由性能
Pastry协议是容错和高效的,根据协议的设计思想,一个查找消息在网络中经过
log步的路由后应该能到达目标结点。我们接下来将用实验来测试Pastry协议的路由性能。
第一个实验描述了Pastry网络平均路由跳步数与结点数的关系,并与
log曲线进行了比较。我们测试了从50个结点到10000个结点情况下的实际跳步数。每个路由查找消息的两端都是随机在网络中选取的2个结点。从实验结果的数据我们可以看到实际测试得到的数据比理论曲线稍低,数据的分析结果和Pastry经典论文中的实验结果是一致的,由此可以看出Pastry协议的路由性能确实是优秀的,同时也说明模拟插件的設计是成功的。
而在10000个结点、8500条路由信息的模拟实验中,通过观察和分析成功到达目标结点的路由信息的跳步数分布情况,我们可以看出,大多数的路由信息经过4步后到达目标结点,这符合Pastry的设计规范(
log=4)。但是从分布情况中,我们可以看到仍然有16%的消息用了5步才到达目标结点。在Pastry的经典论文中,10万个结点的模拟实验下,概率分布仍然如此,由此可以推断Pastry协议在越是庞大的网络中,路由性能越接近设计思想。
三、Pastry协议容错性
Pastry的容错特性,保证了协议在网络中结点突然离开的情况下,同样能进行可靠的路由。通过实验,我们观察到了在500个结点的网络中,10%结点失效对不同情况的Pastry网络的路由性能产生的影响。
从实验的结果可以看到,当网络中没有结点失效时,消息能够100%的到达目标结点。当网络中有10%的结点失效后,如果不对结点的叶结点表和路由表进行清理、维护,则差不多有8%的消息会丢失。而如果对结点记录的两个表进行清理,则只有6.5%的消息不能最终到达目标结点。假如缩短清理、维护两个表的时间间隔,这个概率能再次降到3.5%。可是维护的间隔过短的话,势必增加网络的负担。
在Pastry的经典论文中并没有进行相应的实验,通过对实验的分析,当一条路由消息传递到一个失效结点时,则路由过程终止。虽然我们对结点的路由表和叶结点表周期性的进行清理,但是效果仍然不是很好,怎样改进协议对两表的清理方法,进一步提高路由的容错性是我们下一步工作需要解决的。
四、Pastry协议自适应性
接下来看看在有新结点加入网络的情况下,Pastry协议的自适应性。实验展示了在网络中有新结点不断加入的情况下,路由平均跳步数与理论
log的比较。
这一实验在Pastry经典论文中没有被设计出来,通过对新结点加入前后路由平均跳步数与理论值的比较,判断新加入结点对网络路由性能的影响,测试Pastry协议新结点加入算法的性能。从实验结果的数据可以看到,当2000个结点的网络新加入1000个结点后,平均跳步数虽然有一定的增长,但是仍然比对应结点数下的理论值要小,由此看出Pastry协议对于新加入结点的适应性是很出色的。
我们知道,在有结点的加入或退出时,Pastry网络会不断调整、更新来维护网络的整体性能,这包括通知已存在结点新结点的到来、对结点路由表和叶结点表的更新和维护,这些都会占用网络资源,延长路由信息的耗时。通过对静态网络和动态网络路由平均时间的比较,可以让我们了解网络的动荡对Pastry网络路由性能的影响,从侧面反应出Pastry自适用性的好坏。
五、结束语
通过对以上实验数据的分析,Pastry协议在路由性能和自适应性方面表现良好。但是在容错性方面还需要进行优化,以保证在对结点路由表和叶结点表维护时间尽量增长的情况下,保证高效、可靠的路由传递。