P2P对等网络路由模型及关键技术分析3
2.3 结构化P2P模型
结构化P2P模式是一种采用纯分布式的消息传递机制和根据关键字(KEY)的定位服务,从根本上改变了P2P网络无结构的状态。其中主流的方法就是采用分布式哈希表(Distributed Hash Table,DHT)技术,是目前扩展性最好的P2P路由方式之一。DHT首先为网络中的每一个节点分配虚拟地址(VID),同时用一个关键字(KEY)表示其可提供的共享内容。通过一个特定的哈希函数(一般使用的是安全哈希函数,如SHA一1等)将文件名(KEY)与节点信息(VID)运算为一个哈希值H(KEY,VID),当网络上其它节点进行资源定位的时候,可以容易地根据H(Key)值获得文档的精确存储位置。由于DHT各节点并不需要维护整个网络的信息,只在节点中存储其临近的后继节点信息,因此较少的路由信息可有效地实现到目标节点,同时又取消了洪泛算法,该模型有效地减少了节点信息的发送数量,增强了P2P网络的扩展性。同时,出于冗余度及延时的考虑,大部分DHT总是在节点的虚拟标识与关键字最接近的K个节点上备份冗余信息,避免了单一节点失效的问题。
基于DHT的路由方式是P2P系统研究的主流之一。所涉及的系统一般都假定节点的能力相当,这对于较小规模的系统非常有效,但这种假设并不适合大规模的Intemet部署。目前,成功应用也比较少见。
2.4 混合式P2P模型
混合式P2P网络结合了集中式结构和分布式拓扑的优点,网络中存在着中间服务器,文件目录是分布的。在分布式模式的基础上引入了超级节点(Super Node)概念,将用户节点按能力(处理、存储、带宽等方面性能)分为搜索节点和普通节点两类.搜索节点与其临近的若干普通节点之间构成一个自治的簇(Cluster),簇内采用基于集中目录式的P2P模式,而整个P2P网络中存在着众多这样的簇,各个不同的簇之间再通过分布式P2P模式将搜索节点相连起来,甚至可在各个搜索节点之间,再次选取性能最优的节点或者另外引入一新的性能最优的节点作为索引节点,来保存整个网络中可以利用的搜索节点信息,并且负责维护整个网络的结构。混合式P2P模型消除了分布式P2P结构中使用Flooding算法带来的网络拥塞、搜索迟缓等不利影响,吸收了集中式拓扑的易管理性与分布式拓扑的可扩展性,在异构的P2P网络环境下是一种较好的模式选择。其中最典型的案例就是Fastrack,如图3所示。