论文部分内容阅读
资源定位问题是P2P网络的核心问题之一,也是P2P网络研究的热点。P2P的资源定位模型,按照网络拓扑结构,可分为四种:中心拓扑的定位模型,分布式非结构化的定位模型,分布式结构化的定位模型和混合式定位模型。目前,最受研究者们关注的是基于DHT(动态哈希表)的分布式结构化定位模型。DHT路由算法使用分布式哈希函数进行资源定位,快速,扩展性较好。但DHT方法只支持关键字精确查找,且没有考虑节点的位置信息,数据没有进行本地化,速度传输速度慢。典型的DHT模型有Chord,Pastry,CAN和Tapestry等。 本文在Chord模型的基础上,结合了混合式P2P网络的优点,提出了一种分层的结构化P2P模型Dual-Chord。该系统分为两层,主干网层和子网层,均使用Chord协议进行资源定位。主干网由超级节点组成,子网由超级节点,普通节点和副本节点组成。超级节点,能力比普通节点强,稳定性高。副本节点,用于备份超级节点的信息,当超级节点失效时,副本节点会接替超级节点的工作。子网普通节点进行资源定位时,首先在本地子网内用Chord协议查询,只有查询失败时,才到主干网上查询。Dual-Chord系统按照节点的物理距离进行子网划分,子网节点在获取外网资源后,在本地子网中重新发布,同时超级节点对查询请求进行查询缓冲。这样,充分利用了查询和数据的时间和空间局部性,资源定位速度快,数据传输效率高。 系统仿真过程中,鉴于仿真器的可扩展性,本文提出了三层接口的系统结构,即网络层,消息层和应用层。考虑到系统仿真的节点规模较大,因此在覆盖网层采用消息机制,侧重于测试和仿真覆盖网协议,不进行底层网络的协议级仿真。系统仿真使用Eclipse平台,Java实现,设计简单,可扩展性好,移植性强。