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

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

Info

Publication number
CN104935638B
CN104935638B CN201510221218.4A CN201510221218A CN104935638B CN 104935638 B CN104935638 B CN 104935638B CN 201510221218 A CN201510221218 A CN 201510221218A CN 104935638 B CN104935638 B CN 104935638B
Authority
CN
China
Prior art keywords
mrow
server
node
bandwidth
download
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201510221218.4A
Other languages
English (en)
Other versions
CN104935638A (zh
Inventor
杨梦宁
罗杨洋
徐玲
洪明坚
葛永新
张小洪
杨丹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Anhui Xiaoma Creative Technology Co ltd
Suzhou Teng Teng Intellectual Property Advisory Co ltd
Original Assignee
Chongqing University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chongqing University filed Critical Chongqing University
Priority to CN201510221218.4A priority Critical patent/CN104935638B/zh
Publication of CN104935638A publication Critical patent/CN104935638A/zh
Application granted granted Critical
Publication of CN104935638B publication Critical patent/CN104935638B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明涉及基于阻塞切换服务器的P2P下载算法,该算法首先计算网络中节点服务器的平均带宽,然后判定阻塞条件,根据阻塞条件让用户和性能低下的节点服务器链接阻塞,不断选择承载均值大的节点服务器进行连接,即连接性能较高的节点服务器,从而提升客户端的下载效率。该算法减小了整体网络的归一化标准差,而归一化标准差的减小表示整个覆盖网络的带宽波动变小,从而能更精确的预测下载剩余时间。随着整体覆盖网络的归一化标准差的降低,用户的平均下载时间也会逐步降低。仿真实验证明本发明算法在无竞争环境下平均性能提升为传统算法的113%,在竞争环境中平均性能提升虽然仅1%,但预估下载时间的准确性提升了44%。

Description

一种基于阻塞切换服务器的P2P下载算法
技术领域
本发明涉及互联网技术领域,具体涉及一种基于阻塞切换服务器的P2P下载算法。
背景技术
随着互联网的高速发展,用户对互联网的访问质量要求越来越高。在P2P(peer-to-peer对等)网络中。用户下载文件的方式就是选择带宽性能最佳的节点服务器。但是,P2P网络的多变性导致服务器性能非常不稳定,影响用户的下载速度以及下载剩余时间预估。在目前的研究中,提升用户下载速率的方式有在服务器性能下降时最大化利用逐渐减小的带宽,还有通过改变连接到的服务器的方法,选取最优服务器下载。这两种方法实施的前提是采用计算平均下载速度方式对网络进行评估。
在决定平均下载性能的时候研究者们都有一个普遍的误解,阻塞点一般在网络的自治系统的边界产生。然而,在一篇文章(Bustamante,F.E.,& Qiao,Y.Friendships thatlast:peer lifespan and its role in P2P protocols.[J]proceedings of the 8thinternational workshop Retrieved 11/28,2007)中说明只有40%的阻塞点发生在一个自治网络中。这些信息说明了P2P协议并不是依赖于节点的位置相近也不依赖于阻塞点解决的。一个阻塞点可能会发生在下载过程中的整个网络链路的任何地方。并且节点服务器有可能会因为自己负载的增加而导致性能上的变化和网络连接的变化。所以网络带宽的平均性能计算和理想情况并不相同,对于用户下载速度的改进也在此遇到了瓶颈。
有文献(郑纬民,胡进锋,代亚非等.对等计算研究概论.[R]中国计算机学会文集:中国计算机科学技术发展报告,2004:121.142)假设了用户在下载过程中是随机的选择新的节点服务器并定期进行随机的更换节点。而选择新的节点服务器缓和了因为用户驻留在性能不佳的节点服务器而造成的下载时间延长的问题。在文中,期望下载时间IE(Tran)是由文件大小F和平均网络性能来决定的,表示如公式(1):
在随机的选择节点服务器时,连接状态的变化虽然对用户的下载速度不会产生影响,但是在下载过程中,由于阻塞节点的产生会给网络和节点服务器带来更多的负担,并且还会让节点服务器降级。如果用户一直连接在一个阻塞的服务器上,那么这些阻塞点将一直存在。
通过现有的研究可以看出,现有的下载算法都不如基于时间周期转换下载服务器算法。并且在研究基于时间周期转换下载服务器算法的研究者们还发现平均网络性能并不能精确的描述下载时间。因为在使用平均网络性能评估选择算法时其下载时间度量使用单一节点服务器的下载时间,影响整个度量精确性,或者用户卡在某一个文件块延长了下载时间,从而对下载网络带宽的评估就会根据性能最差的节点服务器的平均值来计算。所以根据平均网络性能计算出的下载时间就会比预期的长很多。公式(2)就是的平均网络性能计算式:
在理想状态下,一个大小为F的文件在平均带宽为的情况下,下载时间的确是时间T。然而公式(2)忽略了一个问题,节点服务器的网络带宽性能在下载过程中是一直变化的。导致这种节点服务器网络带宽不断变化的原因有很多,包括一个现存连接到网络的节点服务器所接受的连接数量,根据节点服务器承载性能所作的流量限制,还有节点服务器和用户之间一般情况下存在的拥塞。根据对公式(2)的完整评价之后,提出要减少下载时间,首先必须要能准确的评估下载时间,所以本文提出了一个新的评估下载过程模型,这个模型较公式(1-2)更为精确。
发明内容
针对现有技术存在的上述问题,本发明的目的是提供一种基于阻塞切换服务器提升下载效率的P2P下载算法。
为实现上述目的,本发明采用如下技术方案:一种基于阻塞切换服务器的P2P下载算法,包括如下步骤:
S1:用户进入网络后,扫描得到整个网络中用户能连接上的节点所有服务器的带宽日志,然后采用公式(3)计算网络中所有节点服务器的上传平均带宽CP:
其中,N表示用户连接上的节点服务器的数量,Ci表示用户连接上的节点服务器的上传带宽;
S2:将用户待下载文件Q分解成若干固定大小的文件块qj,j=1,2,3,...,N,N表示构成待下载文件的文件块的总数;
S3:当用户任意连接到一个节点服务器时,开始下述网络承载均值算法:
1)设置用户最多可连接节点服务器的数量P;
2)搜索网络,遍历每个拥有组成待下载文件的文件块的所有节点服务器;
3)判断当前用户要下载的文件块qj是否下载完成,如果是返回步骤2),否则执行下一步;
4)扫描当前用户能连接上的节点服务器,所有能连接上的节点服务器构成服务器池;
5)判断服务器池中每个节点服务器的上传带宽与上传平均带宽的CP的关系,所有上传带宽小于上传平均带宽CP的节点服务器构成待阻塞服务器池,所有上传带宽不小于上传平均带宽CP的节点服务器构成可连接服务器池;
6)判断可连接服务器池中节点服务器的数量是否为0,如果不为0则执行步骤10),否则扫描待阻塞服务器池,得到待阻塞服务器池中所有节点服务器的带宽日志,根据公式(4)计算待阻塞服务器池中所有节点服务器的上传平均宽带CP’;
其中,M表示待阻塞服务器池中节点服务器的数量,Ck表示待阻塞服务器池中节点服务器的上传带宽;
7)根据公式(5)计算调整系数g:
8)将待阻塞服务器池中每个节点服务器的上传宽带乘调整系数,得到调整后待阻塞服务器池;
9)判断调整后待阻塞服务器池中每个节点服务器的上传宽带与上传平均带宽的CP的关系,将上传宽带小于上传平均带宽CP的节点服务器设为阻塞点,断开其与当前用户的连接,然后返回步骤3);
10)判断下载比率与可连接服务器池中服务器数量的关系,如果下载比率不小于连接服务器池中服务器数量,则保持其他用户将当前用户作为节点服务器,连接当前用户进行下载的数量,并保持当前用户的上传带宽;
否则,降低其他用户将当前用户作为节点服务器,连接当前用户进行下载的数量,并降低当前用户的上传带宽;
11)设可连接服务器池中共有B个节点服务器b,bf表示可连接服务器池中第f个节点服务器;
12)采用公式(6)计算当前用户从节点服务器bf下载的下载承载均值Dfn
其中,Efn表示从第f个节点服务器bf所下载n个文件块的总大小,采用公式(7)计算得到,Tfn表示从第f个节点服务器bf所下载n个文件块的下载用时,采用公式(8)计算得到:
其中,ejf表示从第f个节点服务器bf下载第j个文件块的大小,tjf表示从第f个节点服务器bf下载第j个文件块的下载用时,n=1,2,3,...且n≤N;
13)根据所有承载均值Dfn由大到小的顺序,对承载均值Dfn对应的节点服务器bf进行排序,形成候选节点服务器列表;
14)当时间周期到下一轮时,优先连接候选节点服务器列表中首位的节点服务器,并返回步骤3)。
相对于现有技术,本发明具有如下优点:
1、本发明算法减小了整体网络的归一化标准差,而归一化标准差的减小表示整个覆盖网络的带宽波动变小了,从而能更精确的预测下载剩余时间。
2、随着整体覆盖网络的归一化标准差的降低,用户的平均下载时间也会逐步降低。仿真实验证明本发明算法在无竞争环境下平均性能提升为传统算法的113%,在竞争环境中平均性能提升虽然仅1%,但预估下载时间的准确性提升了44%。
附图说明
图1为本发明算法的基本流程图。
图2为网络承载均值算法的流程图。
图3为PeerSim仿真实验环境部署图。
图4为无竞争条件下下载时间随非均质等级变化图。
图5为本发明算法与现有技术的对比结果。
图6无竞争下载时间、阻塞以及非均质程度结果图。
具体实施方式
在本发明中涉及的技术词汇的含义解释如下:
网络非均质程度是指整个对等覆盖网络中服务器带宽性能的差异性,即带宽最大的服务器和带宽最小的服务器的带宽差异。非均质程度越高,带宽差异越大。
归一化标准差:指用户的下载带宽波动情况。标准差越小,带宽波动越小。
下载比率:拥有文件块的节点服务器数量/用户的数量,下载比率越小证明网络中用户越多,或是节点服务器越少,下载环境越拥塞。
阻塞比率:(现在节点会被阻塞的判定带宽/当前节点服务器的上传带宽)*100%。
阻塞阈值:是使用一个百分比变量来表示用户现在正连接着的节点服务器的上传带宽和用户计算出的阻塞下界的比率。
下面对本发明作进一步详细说明。
在本发明中,阻塞点的作用是调整用户从服务器下载时服务器端的带宽。阻塞点将在参与用户下载连接的节点服务器和整个网络的带宽进行对比的时候生成,而阻塞点本身由整个覆盖网络来维护。下载的用户会记录所有与其连接的节点服务器的网络带宽性能。
一种基于阻塞切换服务器的P2P下载算法,包括如下步骤:
S1:用户进入网络后,扫描得到整个网络中用户能连接上的所有节点服务器的带宽日志,然后采用公式(3)计算网络中所有节点服务器的上传平均带宽CP:
其中,N表示用户连接上的节点服务器的数量,Ci表示用户连接上的节点服务器的上传带宽。
使用公式(3)能计算出节点服务器的带宽,这样即可判定现在用户连接的节点服务器上传带宽是否在正常范围内。
平均值算法是用户登入P2P网络后,取得整个网络的带宽性能日志。用户初始连接网络时就会获取整个网络的运行状态和其他信息,以便形成用户自身的网络带宽均值。
S2:将用户待下载文件Q分解成若干固定大小的文件块qj,j=1,2,3,...,N,N表示构成待下载文件的文件块的总数;
S3:当用户任意连接到一个节点服务器时,开始下述网络承载均值算法:
1)设置用户最多可连接节点服务器的数量P;(本发明的算法是基于用户能连接上的所有节点服务器的数量大于用户设置的可连接的节点服务器的数量P,而这在现实网络中也是一种常态。)
2)搜索网络,遍历每个拥有组成待下载文件的文件块的所有节点服务器;
3)判断当前用户要下载的文件块qj是否下载完成,如果是返回步骤2),否则执行下一步;
4)扫描当前用户能连接上的节点服务器,所有能连接上的节点服务器构成服务器池;
5)判断服务器池中每个节点服务器的上传带宽与上传平均带宽的CP的关系,所有上传带宽小于上传平均带宽CP的节点服务器构成待阻塞服务器池,所有上传带宽不小于上传平均带宽CP的节点服务器构成可连接服务器池;
6)判断可连接服务器池中节点服务器的数量是否为0,如果不为0则执行步骤10),否则扫描待阻塞服务器池,得到待阻塞服务器池中所有节点服务器的带宽日志,根据公式(4)计算待阻塞服务器池中所有节点服务器的上传平均宽带CP’;
其中,M表示待阻塞服务器池中节点服务器的数量,Ck表示待阻塞服务器池中节点服务器的上传带宽;
7)根据公式(5)计算调整系数g:
8)将待阻塞服务器池中每个节点服务器的上传宽带乘以调整系数,得到调整后待阻塞服务器池;
9)判断调整后待阻塞服务器池中每个节点服务器的上传宽带与上传平均带宽的CP的关系,将上传宽带小于上传平均带宽CP的节点服务器设为阻塞点,断开其与当前用户的连接,然后返回步骤3);(保持上传宽带不小于上传平均带宽CP的节点服务器的连接);
10)判断下载比率与可连接服务器池中服务器数量的关系,如果下载比率不小于连接服务器池中服务器数量,则保持其他用户将当前用户作为节点服务器,连接当前用户进行下载的数量,并保持当前用户的上传带宽;(每个用户在网络中进行下载的同时,也会成为下载同一文件块的其他用户的节点服务器,当下载比率不小于连接服务器池中服务器数量,说明目前下载环境好,因此,保持当前用户作为节点服务器,其他用户连接当前用户进行下载的数量,同时保持当前用户上传宽带);
否则,降低其他用户将当前用户作为节点服务器,连接当前用户进行下载的数量,并降低当前用户的上传带宽(当下载比率小于连接服务器池中服务器数量,说明目前下载环境拥堵,因此,减少当前用户作为节点服务器,其他用户连接当前用户进行下载的数量,同时降低当前用户的上传宽带);
11)设可连接服务器池中共有B个节点服务器b,bf表示可连接服务器池中第f个节点服务器;
12)采用公式(6)计算当前用户从节点服务器bf下载的下载承载均值Dfn
其中,Efn表示从第f个节点服务器bf所下载n个文件块的总大小,采用公式(7)计算得到,Tfn表示从第f个节点服务器bf所下载n个文件块的下载用时,采用公式(8)计算得到:
其中,ejf表示从第f个节点服务器bf下载第j个文件块的大小,tjf表示从第f个节点服务器bf下载第j个文件块的下载用时,n=1,2,3,...且n≤N;
13)根据所有承载均值Dfn由大到小的顺序,对承载均值Dfn对应的节点服务器bf进行排序,形成候选节点服务器列表;承载均值越大,说明该节点服务器的网络性能越稳定,承载均值是用于计算用户和节点服务器之间连接的历史平均带宽;
14)当时间周期到下一轮时,优先连接候选节点服务器列表中首位的节点服务器,并返回步骤3)。(重新计算可连接服务器池中服务器的承载均值,并实时更新节点服务器列表)。
图1所示算法将在用户任意连接到一个节点服务器时开始执行,而用户则是随机连接服务器并判定服务器的上传带宽。用户将通过执行图1所示的算法来判定现在连接的节点服务器的平均带宽是否具有良好的上传带宽和相关网络服务性能。如果发现了网络性能稳定,平均带宽优良的节点服务器,用户就立即将此节点服务器加入候选节点服务器列表,并居于首位。当时间周期到下一轮时立即连接此节点服务器,然后重新计算节点服务器池中的节点服务器性能。在实际情况中,用户选择的节点服务器为用户提供的上传带宽小于用户的带宽下限时,用户就会比较曾经获取过的节点服务器历史带宽并通过历史中的节点服务器数据自适应的完成阻塞当前连接的节点服务器的判定。可以让用户通过带宽历史有效的评估一个服务器池中服务器的上传带宽。
本发明的算法改进了基于时间转换服务器的下载算法。图2输入的是一张节点服务器列表。列表中的服务器只由服务器池中的节点服务器组成。输出的则是下载时间。该算法主要完成了对选择的节点服务器上传带宽和整体网络带宽均值的对比。为了模拟真实条件,对比时,节点服务器的上传带宽会乘以一个变动率θ。当整体网络中用户能连接上的所有服务器的上传宽带大于节点服务器上传带宽×变动率时,用户就不会选择该节点服务器而重新随机的再选择一个节点服务器。将变动率引入算法之后,当用户需要断开节点服务器时,变动率将会在用户进行带宽计算时,为其结果做出一定的修正。
其中,θ表示当公式(9)成立时,说明当前连接的节点服务器正是用户需要的。当公式(9)不成立时,表明当前连接的节点服务器不满足用户的带宽需求。当用户通过图2决定选择连接到一个节点服务器之后第一个下载时间周期就会开始。
对比试验:
关于下载文件,本试验采用的是固定150MB的文件F。这种大小的文件是典型的对等网络中存在最多的文件。本试验采用PeerSim软件模拟P2P网络,并结合ns-3模拟离散事件。主要流程设计有:
(1)定义网络节点数量;(2)选择一个协议或多个协议初始化节点的状态;(3)选择所需要的对象分析参数;(4)使用配置文件运行模拟器。具体部署见附图3。
在图3中,网络中的每个节点都包含了所需要用到的算法和协议,节点的值在具体实验时给出,每个节点的关联由WireOut初始化,WireOut会产生随机的P2P覆盖网络,Observer对象会根据参数输出仿真实验结果。
通过仿真实验得到了实验结果。这个实验的步骤主要如下:首先在无竞争条件下,实验总共使用了4台服务器作为节点服务器,用户在下载时会随机的选择一台连接。为了预防在随机过程出现离群点,在10次仿真实验中都引入了表示非均质性等级的还根据节点服务器随时间的变动率引入了阻塞点。节点服务器的变动率主要指节点服务器的上传带宽性能随着时间在节点服务器的平均上传时间到节点服务器的当前上传带宽性能变动。根据公式(10),实验的变动率将从10%到100%变化。
θ=1.0,1.1,1.2,...2 (10);
图4表示了无竞争环境下的仿真实验结果。表示了使用变动率在1.05时仿真实验运行的结果均值。由于基于时间切换的下载方式时间周期是5分钟,所以下载文件F使用的时间周期是20个。仿真实验的整体网络带宽均值是210Kbps。
图4简单直接的说明了对于单个用户来说,非均质程度越接近于1,下载文件的时间越短。在竞争下载环境下将会对非均质程度对下载时间的影响做进一步的分析。
在竞争环境下的网络更加贴近于使用P2P网络的实际情况。所以,判定多个用户可以阻塞同一台性能低下节点服务器,并自主选择更优质的节点服务器的下载算法会比原始的基于时间转换服务器下载算法使用更少的下载时间。在这个实验中,同样引入了调整阻塞算法的变动率θ,并且为了让多用户竞争下载的网络环境基础系数相近,当一个节点服务器在某次由于上传带宽小于用户所能接受的最低界限时,该节点服务器的变动系数会按照公式(5)那样从10%到100%变化。
为了评估本发明算法改进对竞争的网络环境下对用户平均下载时间的减少,本仿真实验依然引入了下载比率。图5展示了本发明的算法实验结果和文献1(Chiu,Y.-M.,&Eun,D.Y.Minimizing file download time in stochastic peer-to-peer networks.[J]IEEE/ACM Transactions on Networking(TON),2008,16(2),253-266)基于时间转换算法结果的对比情况。
图5中,横坐标轴表示用户数量,纵坐标轴表示下载时间,单位为分钟。
仿真实验的标准差归一化
在最快的速度内将待下载文件下载下来并不是本发明算法成功的唯一指标。在内容分发网络系统中,精确的评估在有一定拥塞的网络环境下,下载文件的时间才具有重要的意义。为此,需要使用标准差归一化,即标准差除以均值,来得到误差属性。
表1无竞争和竞争环境仿真实验中归一化标准差结果表
表1在无竞争下载仿真实验环境中,本发明算法在任意的网络非均质条件下,都显示出了比传统基于时间转换的下载算法更加优越的性能。在竞争下载仿真实验环境中,本发明算法则表现出网络下载比率越高,性能越优越。并且该算法还能更加精确的预测下载剩余时间。
在无竞争的环境下,阻塞比率表示着现在节点会被阻塞的判定值以及当前节点服务器的带宽。由于这两个都是变动的值,所以阻塞比率是一个变量。比如,当前的整体网络上传宽带均值是200Kbps,有一个节点服务器的上传带宽是160Kbps。所以如果整体网络变动率在15%时,用户接受的最小上传带宽就是(200*(1-0.15))=170Kbps。该节点服务器会被拒绝。而当整体网络变动率在25%时,由于用户可接受的最小上传带宽变成了(200*(1-0.25))=150Kbps.所以该节点服务器会和用户进行连接。阻塞比率越低时,实际的带宽和阻塞判定带宽越接近。
图4是整个无竞争环境下的仿真实验结果总结。图中清楚的显示了当整个网络的非均质程度增加时,用户的平均下载时间不断下降。然而在基于时间切换的仿真实验中该方法一直保持着100分钟左右的下载时间,并且在非均质性增加的时候下载时间还稍有增加。
在非竞争下载的仿真实验中,实验结果说明在网络整体的非均质性逐步增加的时候,以及节点服务器的带宽性能波动变大时,本发明算法性能更加优良,更能够节省下载时间。例如,当阻塞阈值在25%时,整个下载时间从96分钟缩短到60分钟。
阻塞比率、阻塞阈值和变动率是仿真试验中,为了仿真实的模拟现实网络而引入的,不属于本发明算法需要的参数。
在竞争的网络环境下,模拟实验依然证明了本发明算法能有效提高用户的下载速率,减少下载时间。相比于基于时间转换的下载算法,本发明算法也小幅减少了用户的下载时间。但这并不能说明本发明算法在竞争的网络环境下对用户的下载提升偏小。因为本发明减小了整体网络的归一化标准差,而归一化标准差的减小表示整个覆盖网络的带宽波动变小了,从而能更精确的预测下载剩余时间。进一步的实验证明,如果对等覆盖网络的整体下载比率小于3,则本发明可以有效的降低整体覆盖网络的归一化标准差。随着整体覆盖网络的归一化标准差的降低,用户的平均下载时间也会逐步降低。而且由于阻塞算法降低归一化标准差的特性,相比于传统的基于时间转换的下载算法,本发明可以更加精确的预测下载剩余时间。
仿真实验证明本发明算法在无竞争环境下平均性能提升为传统算法的113%。在竞争环境中平均性能提升虽然仅1%,但预估下载时间的准确性提升了44%。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。

Claims (1)

1.一种基于阻塞切换服务器的P2P下载算法,其特征在于:包括如下步骤:
S1:用户进入网络后,扫描得到整个网络中用户能连接上的所有节点服务器的带宽日志,然后采用公式(3)计算网络中所有节点服务器的上传平均带宽CP:
<mrow> <mi>C</mi> <mi>P</mi> <mo>=</mo> <mfrac> <mn>1</mn> <mi>N</mi> </mfrac> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </munderover> <msub> <mi>C</mi> <mi>i</mi> </msub> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>3</mn> <mo>)</mo> </mrow> <mo>;</mo> </mrow>
其中,N表示用户连接上的节点服务器的数量,Ci表示用户连接上的节点服务器的上传带宽;
S2:将用户待下载文件Q分解成若干固定大小的文件块qj,j=1,2,3,...,F,F表示构成待下载文件的文件块的总数;
S3:当用户任意连接到一个节点服务器时,开始下述网络承载均值算法:
1)设置用户最多可连接节点服务器的数量P;
2)搜索网络,遍历每个拥有组成待下载文件的文件块的所有节点服务器;
3)判断当前用户要下载的文件块qj是否下载完成,如果是返回步骤2),否则执行下一步;
4)扫描当前用户能连接上的节点服务器,所有能连接上的节点服务器构成服务器池;
5)判断服务器池中每个节点服务器的上传带宽与上传平均带宽的CP的关系,所有上传带宽小于上传平均带宽CP的节点服务器构成待阻塞服务器池,所有上传带宽不小于上传平均带宽CP的节点服务器构成可连接服务器池;
6)判断可连接服务器池中节点服务器的数量是否为0,如果不为0则执行步骤10),否则扫描待阻塞服务器池,得到待阻塞服务器池中所有节点服务器的带宽日志,根据公式(4)计算待阻塞服务器池中所有节点服务器的上传平均带宽CP’;
<mrow> <msup> <mi>CP</mi> <mo>&amp;prime;</mo> </msup> <mo>=</mo> <mfrac> <mn>1</mn> <mi>M</mi> </mfrac> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>k</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>M</mi> </munderover> <msub> <mi>C</mi> <mi>k</mi> </msub> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>4</mn> <mo>)</mo> </mrow> <mo>;</mo> </mrow>
其中,M表示待阻塞服务器池中节点服务器的数量,Ck表示待阻塞服务器池中节点服务器的上传带宽;
7)根据公式(5)计算调整系数g:
<mrow> <mi>g</mi> <mo>=</mo> <mfrac> <mrow> <mi>C</mi> <mi>P</mi> </mrow> <mrow> <msup> <mi>CP</mi> <mo>&amp;prime;</mo> </msup> </mrow> </mfrac> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>5</mn> <mo>)</mo> </mrow> <mo>;</mo> </mrow>
8)将待阻塞服务器池中每个节点服务器的上传带宽乘调整系数,得到调整后待阻塞服务器池;
9)判断调整后待阻塞服务器池中每个节点服务器的上传带宽与上传平均带宽的CP的关系,将上传带宽小于上传平均带宽CP的节点服务器设为阻塞点,断开其与当前用户的连接,然后返回步骤3);
10)判断下载比率与可连接服务器池中服务器数量的关系,如果下载比率不小于连接服务器池中服务器数量,则保持其他用户将当前用户作为节点服务器,连接当前用户进行下载的数量,并保持当前用户的上传带宽;
否则,降低其他用户将当前用户作为节点服务器,连接当前用户进行下载的数量,并降低当前用户的上传带宽;
11)设可连接服务器池中共有B个节点服务器b,bf表示可连接服务器池中第f个节点服务器;
12)采用公式(6)计算当前用户从节点服务器bf下载的下载承载均值Dfn
<mrow> <msub> <mi>D</mi> <mrow> <mi>f</mi> <mi>n</mi> </mrow> </msub> <mo>=</mo> <mfrac> <msub> <mi>E</mi> <mrow> <mi>f</mi> <mi>n</mi> </mrow> </msub> <msub> <mi>T</mi> <mrow> <mi>f</mi> <mi>n</mi> </mrow> </msub> </mfrac> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>6</mn> <mo>)</mo> </mrow> <mo>;</mo> </mrow>
其中,Efn表示从第f个节点服务器bf所下载n个文件块的总大小,采用公式(7)计算得到,Tfn表示从第f个节点服务器bf所下载n个文件块的下载用时,采用公式(8)计算得到:
<mrow> <msub> <mi>E</mi> <mrow> <mi>f</mi> <mi>n</mi> </mrow> </msub> <mo>=</mo> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <msub> <mi>e</mi> <mrow> <mi>j</mi> <mi>f</mi> </mrow> </msub> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>7</mn> <mo>)</mo> </mrow> <mo>;</mo> </mrow>
<mrow> <msub> <mi>T</mi> <mrow> <mi>f</mi> <mi>n</mi> </mrow> </msub> <mo>=</mo> <munderover> <mo>&amp;Sigma;</mo> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <msub> <mi>t</mi> <mrow> <mi>j</mi> <mi>f</mi> </mrow> </msub> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>8</mn> <mo>)</mo> </mrow> <mo>;</mo> </mrow>
其中,ejf表示从第f个节点服务器bf下载第j个文件块的大小,tjf表示从第f个节点服务器bf下载第j个文件块的下载用时,n=1,2,3,...且n≤F;
13)根据所有承载均值Dfn由大到小的顺序,对承载均值Dfn对应的节点服务器bf进行排序,形成候选节点服务器列表;
14)当时间周期到下一轮时,优先连接候选节点服务器列表中首位的节点服务器,并返回步骤3)。
CN201510221218.4A 2015-04-30 2015-04-30 一种基于阻塞切换服务器的p2p下载算法 Expired - Fee Related CN104935638B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510221218.4A CN104935638B (zh) 2015-04-30 2015-04-30 一种基于阻塞切换服务器的p2p下载算法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510221218.4A CN104935638B (zh) 2015-04-30 2015-04-30 一种基于阻塞切换服务器的p2p下载算法

Publications (2)

Publication Number Publication Date
CN104935638A CN104935638A (zh) 2015-09-23
CN104935638B true CN104935638B (zh) 2018-03-09

Family

ID=54122609

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510221218.4A Expired - Fee Related CN104935638B (zh) 2015-04-30 2015-04-30 一种基于阻塞切换服务器的p2p下载算法

Country Status (1)

Country Link
CN (1) CN104935638B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110493320B (zh) * 2019-07-23 2021-08-13 北京三快在线科技有限公司 数据下载方法、装置、电子设备及存储介质
CN110445867A (zh) * 2019-08-12 2019-11-12 深圳市网心科技有限公司 一种事件分发方法、装置、系统及计算机可读存储介质
CN116647572B (zh) * 2023-07-26 2023-11-14 腾讯科技(深圳)有限公司 访问端点切换方法、装置、电子设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009101443A2 (en) * 2008-02-15 2009-08-20 Digital Distribution Networks Limited Distribution of digital content
CN103312824A (zh) * 2013-07-10 2013-09-18 亿览在线网络技术(北京)有限公司 一种p2p网络智能调速方法、装置和系统
WO2015055100A1 (en) * 2013-10-18 2015-04-23 Tencent Technology (Shenzhen) Company Limited Peer-to-peer upload scheduling

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009101443A2 (en) * 2008-02-15 2009-08-20 Digital Distribution Networks Limited Distribution of digital content
CN103312824A (zh) * 2013-07-10 2013-09-18 亿览在线网络技术(北京)有限公司 一种p2p网络智能调速方法、装置和系统
WO2015055100A1 (en) * 2013-10-18 2015-04-23 Tencent Technology (Shenzhen) Company Limited Peer-to-peer upload scheduling

Also Published As

Publication number Publication date
CN104935638A (zh) 2015-09-23

Similar Documents

Publication Publication Date Title
CN112367109B (zh) 空地网络中由数字孪生驱动的联邦学习的激励方法
Sun et al. Autonomous resource slicing for virtualized vehicular networks with D2D communications based on deep reinforcement learning
Zhang et al. Enhancing the transmission efficiency by edge deletion in scale-free networks
CN108419274B (zh) 一种基于效用函数的异构无线网络选择方法
CN104935638B (zh) 一种基于阻塞切换服务器的p2p下载算法
CN102769551B (zh) 网络质量评测与网络优化的方法及系统
CN109510715A (zh) 带宽分配方法、装置、数据中心以及存储介质
CN109413710B (zh) 基于遗传算法优化的无线传感器网络的分簇方法及装置
CN113595923A (zh) 一种网络拥塞控制方法及装置
CN101873638A (zh) 基于模糊神经网络的异构无线网络接入选择方法
CN109286959A (zh) 一种基于层次分析法的异构无线网络垂直切换方法
CN111258762A (zh) 一种动态周期的媒体服务器负载均衡算法
CN107948083A (zh) 一种基于增强学习的sdn数据中心拥塞控制方法
CN107979545A (zh) 一种基于节点属性的虚拟网络映射方法
Ghalut et al. QoE-aware optimization of video stream downlink scheduling over LTE networks using RNNs and genetic algorithm
CN110995619A (zh) 一种服务质量感知的虚拟网络映射方法和装置
Xu et al. A deep-reinforcement learning approach for SDN routing optimization
Aimtongkham et al. An enhanced CoAP scheme using fuzzy logic with adaptive timeout for IoT congestion control
Luo et al. Network selection algorithm based on group decision making for heterogeneous wireless networks
Guo et al. WCL: Client selection in federated learning with a combination of model weight divergence and client training loss for Internet traffic classification
Ahmed et al. Vertical handover E-TOPSIS algorithm mathematical model using AHP and standard deviation weighing method
Wang et al. Traffic-aware multiple association in ultradense networks: A state-based potential game
CN110245019A (zh) 一种自适应系统资源的线程并发方法及装置
CN108512707A (zh) Web服务组合的参数自适应小生境差分进化方法
DK1981212T3 (en) Method and communication device with multi-homing for dynamic transmission rate control

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20181226

Address after: 243000 Taitiancheng 9-108, Yushan District, Ma'anshan City, Anhui Province

Patentee after: ANHUI XIAOMA CREATIVE TECHNOLOGY Co.,Ltd.

Address before: 234000 north of Yinhe two road, Suzhou, Anhui. Room 1602, building B1, south of the chime Road,

Patentee before: Suzhou Teng Teng Intellectual Property Advisory Co.,Ltd.

Effective date of registration: 20181226

Address after: 234000 north of Yinhe two road, Suzhou, Anhui. Room 1602, building B1, south of the chime Road,

Patentee after: Suzhou Teng Teng Intellectual Property Advisory Co.,Ltd.

Address before: 400044 No. 174 Sha Jie street, Shapingba District, Chongqing

Patentee before: Chongqing University

TR01 Transfer of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180309

Termination date: 20190430

CF01 Termination of patent right due to non-payment of annual fee