- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
混合P2P网络模型研究与设计.doc
混合P2P网络模型研究与设计
摘 要 当前主流P2P 网络 模型存在的可扩展性不高,效率低下等 问题 已经严重阻碍了P2P 应用 的 发展 。虽然结构化P2P网络模型在一定程度上解决了这些问题,但其本身存在的缺陷也使其很难转化成实用系统。本文在 分析 以上网络优缺点的基础上,提出一种基于混合模式的新型P2P网络模型,并对新模型实现方式和重要过程进行详细描述。在此基础上进一步引入管理机制和新型关键值匹配方案以增强网络的管理型和实用性。 关键词 P2P网络;结构化网络模型;混合模式;关键值匹配算法1 引言 计算 机对等网(Peer-to-peer odel based P2P NetPN的主要设计思想是,对结构化对等网络模型进行进一步的扩展,在其中引入分层的概念并融入多种的网络模型。新型网络模型中的关键值查询算法通过结合杂凑函数散列表查询算法和文字模糊匹配算法在提高查询效率的基础上为用户提供了更好的服务。以上所描述的设计思想,可以达到以下设计目的: ●新型的网络体系结构融合了现存主流P2P网络,增强了Gnutella和Napster的可扩展性。 ●针对Chord所存在的绕路(Detouring)问题和Inter主干网超荷负载的问题提出了一套在Inter网络上切实可行的P2P网络方案 ●在网络体系结构中加入相应的管理机制,增强了网络的可管理性,避免了P2P网络一直存在的管理混乱和商业价值不高的缺点。 ●在网络体系结构中加入的新型关键值匹配方案保证了网络的透明性,为用户提供了更好的服务。3.2 新型网络模型总体结构描述 正如图1所示,HMPN采取多级分层结构,其中N代表子网,p代表子网中的节点,e代表子网中的边缘节点。该网络模型通过边缘节点把各个子网连接起来,边缘节点组合成Chord环,形成一个以Chord为主干网各种子网共存的大型网络,每个子网络中的节点只能通过本子网的边缘节点与其它子网在主干网中的边缘节点交流,并不知道其它子网的具体属性。从 理论 上来说子网可以是任何一种网络,本文只讨论子网是Gnutella,Napster和Chord的情况。首先引进边缘节点和管理节点的概念: ◆边缘节点(Edge node):边缘节点是指子网与主干网交接的一个或者多个节点。其作用是在子网查询失败时,通过边缘节点把子网中查询失败的过程发送到更大的主干网上查询;并且子网中的节点通过边缘节点把自身的共享信息发布到主干网上。边缘节点具有子网中普通节点同等的所有功能。 ◆管理节点(Manager node):HMPN中的管理节点是由子网中专门的终端来担当。其作用是与其它子网管理节点交流并监视(Monitor)子网节点以及运行边缘节点选举算法。只存在于各个子网中管理节点的地位非常特殊,它们具有公开的身份(如网络运行商),却并不具备子网中普通节点所具备的功能。
图1 HMPN体系结构图3.3 边缘节点选举算法描述 边缘节点选举算法运行在管理节点上。同时,管理节点还必须实时监视边缘节点,当边缘节点出现崩溃时,可以利用选举出的备份边缘节点(Backup edge node)代替原边缘节点。具体的算法如下: 1) 在每个节点加入网络之后,根据自身的带宽能力和计算能力解析出一个优先级(Priority),并把这个优先级发送至管理节点,管理节点把所有节点的优先级记录在一个节点优先级列表(Node priority list)中。 2) 当子网中只存在一个节点的时候,这个节点被选为边缘节点,备份边缘节点为空。 3) 在子网中存在多个节点时,根据节点的优先级,管理节点选取优先级最高的点作为边缘节点,选取次高的点记录在管理节点的备份边缘节点值中。例如当网络中需要n(ngt;=1)个边缘节点时,则管理节点选取节点优先级列表中的最前面n个节点作为边缘节点,在从剩余节点中选取优先级最高的n个节点作为备份边缘节点记录在管理节点中。 4) 当有新的节点加入网络时,管理节点记录新节点的优先级。管理节点把优先级列表中除边缘节点外的所有节点重新按递减顺序排序,并把最前面n个节点值作为备份节点记录在管理节点中。 5) 当边缘节点崩溃或出现优先级降低的问题时,管理节点使用备份节点代替出现问题的边缘节点,成为新的边缘节点,并把崩溃边缘节点中的关键值等信息拷贝到新的边缘节点上。然后管理节点把剩余节点优先级列表重新排队选取新的备份边缘节点。3.4 节点查询过程描述 当节点需要查询一个关键值所存储的节点时,各个子网的查询方式由于子网的构造不同而有所差异,在描述具体的查询过程之前,下面详细描述节点查询的过程: 1)查询过程开始,首先该查询节点会根据所在的子网构造方式而利用不同的查询 方法 ,如果一个节点在Gnutella子网中,当它需要查询关键值时利用广播的方式首先在本子网中进行查询,如果查询成
文档评论(0)