一种种子用户分配优化方法及系统与流程

文档序号:14847626发布日期:2018-06-30 16:54阅读:161来源:国知局
一种种子用户分配优化方法及系统与流程
本发明涉及对等网络(peer-to-peer,P2P)下载优化领域,尤其涉及一种种子用户分配优化方法及系统。
背景技术
:P2P下载技术是以拥有该资源的种子用户为服务器,由种子用户给要下载该资源的客户端提供资源,从他们那里分块下载资源,这样既能分散下载的压力,也能加快下载的速度。P2P下载的关键是为用户分配一定数目的种子用户,客户端把这些种子用户当做服务器,从这些种子用户上下载资源,以达到为客户端加速、为服务端节省带宽的目的。但由于网络传输的不稳定性,如果在分配过程中随机分配种子用户,或只按某一个条件分配种子用户,客户端和这些种子用户相连,效果可能还不如直接和服务器连接的的效果好;再者,种子用户的带宽也是有限的,如果过多用户的客户端与同一个种子用户相连,会影响种子用户的反应速度。即:但常规的分配种子用户的方法有以下缺点:(1)没有考虑种子用户的运营商和客户端的运营商之间的差异;(2)没有考虑种子用户的地域和客户端的地域之间的差异。另外,由于电脑客户端用户的减少,每个资源可用的种子用户也越来越少,原来的随机分配种子用户方式会导致播放、下载出现卡顿和延迟的现象。技术实现要素:本发明实施例提供了一种种子用户分配优化方法及系统,主要解决P2P分配种子用户时的一些问题,为客户端分配优质的种子用户,以便加快客户端播放、下载的速度,提升用户体验,节约带宽。一方面,提供了一种种子用户分配优化方法,包括:通过分析客户端的歌曲播放日志,统计运营商之间以及区域之间的各自的相互影响系数;根据所述影响系数,计算所述每个种子用户的权重系数;根据所述权重系数,对所述种子用户进行权重排序;根据所述种子用户的权重排序,将权重排序后的种子用户分配给所述客户端。优选地,所述根据所述影响系数,计算所述每个种子用户的权重系数,包括:当接收到所述客户端发起对一个资源的2P下载请求时,根据索引,得到拥有所述资源的所有种子用户;根据所述客户端和所述种子用户的IP地址,得到所述客户端和所述每个种子用户各自所在的运营商和地区;根据所述影响系数,计算所述所有种子用户的权重系数。优选地,所述根据所述权重系数,对所述种子用户进行权重排序,包括:根据所述权重系数的大小,对所述种子用户从大到小进行权重排序。优选地,所述根据所述种子用户的权重排序,将权重排序后的种子用户分配给所述客户端,包括:根据所述种子用户的权重排序,将权重排序后的种子用户从前向后依次分配给所述客户端;客户端在接受到权重排序后的种子用户时,按从前到后的顺序,分组和各个种子用户相连。另一方面,提供了一种种子用户分配优化系统,包括:统计模块,用于通过分析客户端的歌曲播放日志,统计运营商之间以及区域之间的各自的相互影响系数;计算模块,用于根据所述影响系数,计算所述每个种子用户的权重系数;排序模块,用于根据所述权重系数,对所述种子用户进行权重排序;分配模块,用于根据所述种子用户的权重排序,将权重排序后的种子用户分配给所述客户端。优选地,所述计算模块,具体用于当所述客户端发起对一个资源的请求时,根据请求索引,得到拥有所述资源的所有种子用户;根据所述客户端和所述种子用户的IP地址,得到所述客户端和所述每个种子用户所在的运营商和地区;根据所述影响系数,计算所述每个种子用户的权重系数。进一步优选地,所述计算模块包括:获取单元和计算单元;其中,所述获取单元,用于当接收到所述客户端发起对一个资源的请求时,根据请求索引,得到拥有所述资源的多个种子用户;以及根据所述客户端和所述种子用户的IP地址,得到所述客户端和所述每个种子用户所在的运营商和地区;所述计算单元,用于根据所述影响系数,计算所述每个种子用户的权重系数。优选地,所述排序模块,具体用于根据所述权重系数的大小,对所述种子用户从大到小进行权重排序。优选地,所述分配模块,具体用于根据所述种子用户的权重排序,将权重排序后的种子用户从前向后依次分配给所述客户端;客户端在接受到权重排序后的种子用户时,按从前到后的顺序,分组和各个种子用户相连。相对于现有技术,本发明实施例中,采取对种子用户进行优化的分配方式,对客户端提供的各个种子用户的按效果排序的,这样客户端在一开始就会和效果好的种子用户相连,获得较好的资源下载速度,从而提升歌曲播放、下载的体验,并且可以节省服务器带宽,节省费用。附图说明为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例。图1为本发明实施例提供的一种种子用户分配优化方法流程图;图2为本发明实施例提供的对种子用户进行权重计算的方法流程示意图;图3为本发明实施例提供的一种种子用户分配优化系统结构图;图4为为本发明实施例提供的计算模块的结构图。具体实施方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图和实施例,对本发明实施例中的技术方案进行清楚地描述。图1为本发明实施例提供的一种种子用户分配优化方法流程图,该方法可以由歌曲下载软件的服务器执行,如图1所示,该方法包括:步骤101,通过分析客户端的歌曲播放日志,统计运营商之间以及区域之间的各自的相互影响系数。其中,服务器解析每个客户端的歌曲播放日志,对客户端的歌曲播放日志进行分析,根据IP信息,统计运营商之间的相互影响系数和地域之间的相互影响系数。比如,通过分析客户端的歌曲播放日志,得到运营商之间的相互影响系数和地域之间的相互影响系数,分别如表1和表2:电信网通教育网其他电信10.80.60.4网通0.810.60.4教育网0.60.610.4其他0.40.40.41表1北京河北武汉广州北京10.80.60.4河北0.810.70.5武汉0.60.710.8广州0.40.50.81表2步骤102,根据所述影响系数,计算所述每个种子用户的权重系数。图2为本发明实施例提供的对种子用户进行权重计算的方法流程示意图;如图2所示,在一个示例中,当一个客户端发起对一个资源的P2P下载请求,服务器在收到客户端的下载请求后,根据索引,得到拥有该资源的所有种子用户。客户端和每个种子用户都有对应的IP地址,服务器根据IP地址可以得到客户端和各个种子用户所属的运营商和地域,根据步骤101中得到的运营商之间的相互影响系数和地域之间的相互影响系数,可以计算出拥有客户端所需资源的种子用户的权重系数。下面举例说明:客户端想下载歌曲《忘情水》,当服务器收到客户端的该歌曲P2P下载请求后,服务器根据下载请求客户端的IP地址,计算出客户端所属运营商和地域,同时根据拥有歌曲《忘情水》下载资源的种子用户的IP地址,计算出种子用户所属的运营商和地域。例如,获得的客户端及种子用户的运营商和地域分别为:客户端:电信-北京种子用户1:网通-武汉;种子用户2:电信-广州;种子用户3:教育网-北京;种子用户4:其他-河北;种子用户5:电信-武汉。最后根据表1和表2已经得到的运营商之间的影响系数以及地域之间的影响系数,计算出拥有歌曲《忘情水》下载资源的种子用户的权重系数:种子用户1:Wight1=(电信-网通)+(北京-武汉)=0.8+0.6=1.4;种子用户2:Wight2=(电信-电信)+(北京-广州)=1+0.4=1.4;种子用户3:Wight3=(电信-教育网)+(北京-北京)=0.6+1=1.6;种子用户4:Wight4=(电信-其他)+(北京-河北)=0.4+0.8=1.2;种子用户5:Wight5=(电信-电信)+(北京-武汉)=1+0.6=1.6。步骤103,根据所述权重系数,对所述种子用户进行权重排序。具体地,根据步骤102中得到的种子用户的权重系数的大小,对种子用户进行权重系数从大到小的重新排序。故,经过权重排序后,种子用户的排序为:种子用户3,种子用户5,种子用户1,种子用户2,种子用户4。这里需要说明的是,权重系数大小相同的种子用户,排列不分先后。步骤104,根据所述种子用户的权重排序,将权重排序后的种子用户分配给所述客户端。具体地,根据所述种子用户的权重排序,将权重排序后的种子用户从前向后依次分配给所述客户端;客户端在接受到权重排序后的种子用户时,按从前到后的顺序,分组和各个种子用户相连。比如:将种子用户按照步骤103中得到的权重排序(种子用户3,种子用户5,种子用户1,种子用户2,种子用户4)分配给客户端,客户端收到以上排序的种子用户时,按从前到后的顺序进行连接,就可以获得较好的播放、下载体验。需要说明的是,客户端P2P的下载方式是:对接收到的权重排序的种子用户,按从前向后的顺序,分组和各个种子用户相连,例如,接收到100个种子用户,先和前16个相连,如果效果不好,把其中速度较慢的几个关闭,再和后面的10个相连,如果效果不好,再把连接中速度较慢的连接关闭,再试下一组,如果100个种子用户都已用完了,达不到预期的效果,则开始走服务器下载。通过本发明提供的各个种子用户是按效果排序的,这样客户端在一开始就会和效果好的种子用户相连,获得较好的资源下载速度,从而提升歌曲播放、下载的体验,并且可以节省服务器带宽,节省费用。图3位本发明实施例提供的一种种子用户分配优化系统结构图,该系统用于执行本发明实施例提供的种子用户分配优化方法,如图3所示,该系统包括:统计模块301,用于通过分析客户端的歌曲播放日志,统计运营商之间以及区域之间的各自的相互影响系数;计算模块302,用于根据所述影响系数,计算所述每个种子用户的权重系数;排序模块303,用于根据所述权重系数,对所述种子用户进行权重排序;分配模块304,用于根据所述种子用户的权重排序,将权重排序后的种子用户分配给所述客户端。其中,所述计算模块302,具体用于当所述客户端发起对一个资源的请求时,根据请求索引,得到拥有所述资源的所有种子用户;根据所述客户端和所述种子用户的IP地址,得到所述客户端和所述每个种子用户所在的运营商和地区;根据所述影响系数,计算所述每个种子用户的权重系数。图4为为本发明实施例提供的计算模块的结构图,如图4所示,所述计算模块302包括:获取单元3021和计算单元3022;其中,所述获取单元3021,具体用于当当所述客户端发起对一个资源的请求时,根据请求索引,得到拥有所述资源的所有种子用户;以及根据所述客户端和所述种子用户的IP地址,得到所述客户端和所述每个种子用户所在的运营商和地区;所述计算单元3022,具体用于根据所述影响系数,计算所述每个种子用户的权重系数。所述排序模块303,具体用于根据所述权重系数的大小,对所述种子用户从大到小进行权重排序。所述分配模块304,具体用于根据所述种子用户的权重排序,将权重排序后的种子用户从前向后依次分配给所述客户端;客户端在接受到权重排序后的种子用户时,按从前到后的顺序,分组和各个种子用户相连。P2P下载的效果可以通过ps比(从种子用户下载的数据量比上从服务器下载的数据量)来比较,在没有对种子用户分配优化之前,ps比为9,在对种子用户分配优化之后,ps比达到11,说明从客户端下载的数据量增多,有91%的数据量都是从种子用户处下载的。本发明实施例在进行种子用户的分配过程中考虑了客户端和种子用户之间的运营商差异及地域差异,把经过权重排序的种子用户分配给客户端,客户端在一开始就会和效果好的种子用户相连,获得较好的资源下载速度,解决了播放、下载中出现的卡顿、延迟现象,这极大提升了歌曲播放、下载的体验,并且节省了服务器带宽,节省了费用。专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令处理器完成,所述的程序可以存储于计算机可读存储介质中,所述存储介质是非短暂性(non-transitory)介质,例如随机存取存储器,只读存储器,快闪存储器,硬盘,固态硬盘,磁带(magnetictape),软盘(floppydisk),光盘(opticaldisc)及其任意组合。以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1