一种基于阻塞切换服务器的p2p下载算法

文档序号:9219825阅读:290来源:国知局
一种基于阻塞切换服务器的p2p下载算法
【技术领域】
[0001] 本发明涉及互联网技术领域,具体涉及一种基于阻塞切换服务器的P2P下载算 法。
【背景技术】
[0002] 随着互联网的高速发展,用户对互联网的访问质量要求越来越高。在 P2P(peer-to-peer对等)网络中。用户下载文件的方式就是选择带宽性能最佳的节点服务 器。但是,P2P网络的多变性导致服务器性能非常不稳定,影响用户的下载速度以及下载剩 余时间预估。在目前的研宄中,提升用户下载速率的方式有在服务器性能下降时最大化利 用逐渐减小的带宽,还有通过改变连接到的服务器的方法,选取最优服务器下载。这两种方 法实施的前提是采用计算平均下载速度方式对网络进行评估。
[0003] 在决定平均下载性能的时候研宄者们都有一个普遍的误解,阻塞点一般在网络的 自治系统的边界产生。然而,在一篇文章(Bustamante,F.E.,&Qiao,Y.Friendshipsthat last:peerlifespananditsroleinP2Pprotocols. [J]proceedingsofthe8th internationalworkshopRetrieved11/28, 2007)中说明只有 40%的阻塞点发生在一个 自治网络中。这些信息说明了P2P协议并不是依赖于节点的位置相近也不依赖于阻塞点解 决的。一个阻塞点可能会发生在下载过程中的整个网络链路的任何地方。并且节点服务器 有可能会因为自己负载的增加而导致性能上的变化和网络连接的变化。所以网络带宽的平 均性能计算和理想情况并不相同,对于用户下载速度的改进也在此遇到了瓶颈。
[0004] 有文献(郑炜民,胡进锋,代亚非等.对等计算研宄概论.[R]中国计算机学会 文集:中国计算机科学技术发展报告,2004 :121. 142)假设了用户在下载过程中是随机的 选择新的节点服务器并定期进行随机的更换节点。而选择新的节点服务器缓和了因为用 户驻留在性能不佳的节点服务器而造成的下载时间延长的问题。在文中,期望下载时间 IE(Tran)是由文件大小F和平均网络性能来决定的,表示如公式(1):
[0005]
[0006] 在随机的选择节点服务器时,连接状态的变化虽然对用户的下载速度不会产生影 响,但是在下载过程中,由于阻塞节点的产生会给网络和节点服务器带来更多的负担,并且 还会让节点服务器降级。如果用户一直连接在一个阻塞的服务器上,那么这些阻塞点将一 直存在。
[0007] 通过现有的研宄可以看出,现有的下载算法都不如基于时间周期转换下载服务器 算法。并且在研宄基于时间周期转换下载服务器算法的研宄者们还发现平均网络性能并不 能精确的描述下载时间。因为在使用平均网络性能评估选择算法时其下载时间度量使用单 一节点服务器的下载时间,影响整个度量精确性,或者用户卡在某一个文件块延长了下载 时间,从而对下载网络带宽的评估就会根据性能最差的节点服务器的平均值来计算。所以 根据平均网络性能计算出的下载时间就会比预期的长很多。公式(2)就是的平均网络性能 计算式:
[0008]
[0009] 在理想状态下,一个大小为F的文件在平均带宽为]的情况下,下载时间的确是 时间T。然而公式(2)忽略了一个问题,节点服务器的网络带宽性能在下载过程中是一直变 化的。导致这种节点服务器网络带宽不断变化的原因有很多,包括一个现存连接到网络的 节点服务器所接受的连接数量,根据节点服务器承载性能所作的流量限制,还有节点服务 器和用户之间一般情况下存在的拥塞。根据对公式(2)的完整评价之后,提出要减少下载 时间,首先必须要能准确的评估下载时间,所以本文提出了一个新的评估下载过程模型,这 个模型较公式(1-2)更为精确。

【发明内容】

[0010] 针对现有技术存在的上述问题,本发明的目的是提供一种基于阻塞切换服务器提 升下载效率的P2P下载算法。
[0011] 为实现上述目的,本发明采用如下技术方案:一种基于阻塞切换服务器的P2P下 载算法,包括如下步骤:
[0012]S1:用户进入网络后,扫描得到整个网络中用户能连接上的节点所有服务器的带 宽日志,然后采用公式(3)计算网络中所有节点服务器的上传平均带宽CP:
[0013]
[0014] 其中,N表示用户连接上的节点服务器的数量,Q表示用户连接上的节点服务器的 上传带宽;
[0015]S2:将用户待下载文件Q分解成若干固定大小的文件块q」,j= 1,2, 3, . . .,N,N表 示构成待下载文件的文件块的总数;
[0016]S3:当用户任意连接到一个节点服务器时,开始下述网络承载均值算法:
[0017] 1)设置用户最多可连接节点服务器的数量P;
[0018] 2)搜索网络,遍历每个拥有组成待下载文件的文件块的所有节点服务器;
[0019] 3)判断当前用户要下载的文件块+是否下载完成,如果是返回步骤2),否则执行 下一步;
[0020] 4)扫描当前用户能连接上的节点服务器,所有能连接上的节点服务器构成服务器 池;
[0021] 5)判断服务器池中每个节点服务器的上传带宽与上传平均带宽的CP的关系,所 有上传带宽小于上传平均带宽CP的节点服务器构成待阻塞服务器池,所有上传带宽不小 于上传平均带宽CP的节点服务器构成可连接服务器池;
[0022] 6)判断可连接服务器池中节点服务器的数量是否为0,如果不为0则执行步骤 10),否则扫描待阻塞服务器池,得到待阻塞服务器池中所有节点服务器的带宽日志,根据 公式(4)计算待阻塞服务器池中所有节点服务器的上传平均宽带CP';
[0023]
[0024] 其中,M表示待阻塞服务器池中节点服务器的数量,Ck表示待阻塞服务器池中节点 服务器的上传带宽;
[0025] 7)根据公式(5)计算调整系数g:
[0026]
[0027] 8)将待阻塞服务器池中每个节点服务器的上传宽带乘调整系数,得到调整后待阻 塞服务器池;
[0028] 9)判断调整后待阻塞服务器池中每个节点服务器的上传宽带与上传平均带宽的 CP的关系,将上传宽带小于上传平均带宽CP的节点服务器设为阻塞点,断开其与当前用户 的连接,然后返回步骤3);
[0029] 10)判断下载比率与可连接服务器池中服务器数量的关系,如果下载比率不小于 连接服务器池中服务器数量,则保持其他用户将当前用户作为节点服务器,连接当前用户 进行下载的数量,并保持当前用户的上传带宽;
[0030] 否则,降低其他用户将当前用户作为节点服务器,连接当前用户进行下载的数量, 并降低当前用户的上传带宽;
[0031] 11)设可连接服务器池中共有B个节点服务器b,bf表示可连接服务器池中第f?个 节点服务器;
[0032] 12)采用公式(6)计算当前用户从节点服务器bf下载的下载承载均值Dfn:
[0033]
[0034] 其中,Efn表示从第f?个节点服务器bf所下载n个文件块的总大小,采用公式(7) 计算得到,Tfn表示从第f个节点服务器下载n个文件块的下载用时,采用公式(8)计 算得到:
[0037] 其中,e#表示从第f个节点服务器bf下载第j个文件块的大小,t#表示从第f?个 节点服务器bf下载第j个文件块的下载用时,n= 1,2, 3,...且n彡N;
[0038] 13)根据所有承载均值Dfn由大到小的顺序,对承载均值Dfn对应的节点服务器bf 进行排序,形成候选节点服务器列表;
[0039]14)当时间周期到下一轮时,优先连接候选节点服务器列表中首位的节点服务器, 并返回步骤3)。
[0040] 相对于现有技术,本发明具有如下优点:
[0041] 1、本发明算法减小了整体网络的归一化标准差,而归一化标准差的减小表示整个 覆盖网络的带宽波动变小了,从而能更精确的预测下载剩余时间。
[0042] 2、随着整体覆盖网络的归一化标准差的降低,用户的平均下载时间也会逐步降 低。仿真实验证明本发明算法在无竞争环境下平均性能提升为传统算法的113%,在竞争环 境中平均性能提升虽然仅1%,但预估下载时间的准确性提升了 44%。
【附图说明】
[0043] 图1为本发明算法的基本流程图。
[0044] 图2为网络承载均值算法的流程图。
[0045] 图3为PeerSim仿真实验环境部署图。
[0046] 图4为无竞争条件下下载时间随非均质等级变化图。
[0047] 图5为本发明算法与现有技术的对比结果。
[0048] 图6无竞争下载时间、阻塞以及非均质程度结果图。
【具体实施方式】
[0049] 在本发明中涉及的技术词汇的含义解释如下:
[0050] 网络非均质程度是指整个对等覆盖网络中服务器带宽性能的差异性,即带宽最大 的服务器和带宽最小的服务器的带宽差异。非均质程度越高,带宽差异越大。
[0051] 归一化标准差:指用户的下载带宽波动情况。标准差越小,带宽波动越小。
[0052] 下载比率:拥有文件块的节点服务器数量/用户的数量,下载比率越小证明网
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1