发明内容
本发明所要解决的技术问题是提供一种资源共享的方法及***,使P2P网络中的资源可以均衡共享,提高用户下载文件资料的速度,使P2P网络资源得到充分的利用。
本发明还提供一种服务器,用于P2P网络中资源共享配置。
本发明还提供一种客户端,用于P2P网络中资源共享配置。
为解决上述技术问题,本发明提供了一种资源共享的方法,包括:
服务器接收客户端发送的共享请求信息,该共享请求信息包含所述客户端的可共享资源信息;
所述服务器获取所述可共享资源信息中的各资源在其保存的可共享资源信息中的出现频率;
当某资源的出现频率低预定数值时,所述服务器通知客户端提供所述资源。
优选的,还包括:所述服务器获取所述资源在其保存的共享资源下载信息中的被下载次数;
将所述资源的出现频率与被下载次数相对比;
对比结果低于预定数值时,所述服务器通知所述客户端提供所述资源。
优选的,还包括:所述服务器通知其它客户端提供所述资源。
优选的,还包括:所述服务器接收客户端发送的共享资源下载信息,该共享资源下载信息包括资源的被下载次数。
优选的,还包括:服务器接收客户端发送的硬件信息,并依据所述硬件信息确定所述客户端共享资源的数量。
本发明提供一种资源共享的***,包括:
客户端,用于发送共享请求信息到服务器,所述共享请求信息包含可共享资源信息;
服务器,用于获取所述可共享资源信息中的资源在其保存的可共享资源信息中出现频率,出现频率低于预定数值时,通知所述客户端提供所述资源。
优选的,还包括:所述服务器通知其它客户端共享所述资源。
优选的,所述服务器还用于接收所述客户端发送的硬件信息,并依据所述硬件信息确定所述客户端共享资源的数量。
本发明提供一种服务器,包括可共享资源信息处理单元和通知单元:
所述可共享资源信息处理单元,用于接收客户端发送的可共享资源信息,并获取所述可共享资源信息中的资源在其保存的可共享资源列表中出现频率;在出现频率低于预定数值时,触发所述通知单元;
所述通知单元,用于通知客户端提供所述资源。
优选的,还包括:硬件信息处理单元,用于接收客户端发送的硬件信息,并依据所述硬件信息确定所述客户端共享资源的数量。
本发明服务器根据共享资源在所述可共享资源列表内的出现频率,均衡调配共享资源,出现频率低于一定数值时,服务器通知客户端提供所述资源,避免部分资源在P2P网络中过度共享。
优选的,本发明服务器获取共享资源在其保存的共享资源下载信息中的被下载次数,服务器将共享资源出现频率与其被下载次数相对比,对比结果低于一定数值时,服务器通知客户端提供所述共享资源。共享资源被下载次数多,表明该共享资源热度高,共享资源依据其热度在P2P网络中被合理数量的客户端共享,满足共享资源在P2P网络中均衡分配。
优选的,本发明服务器根据客户端的硬件配置决定该客户端可以共享资源的数量,硬件配置高的客户端可以共享较多的资源,硬件配置低的客户端只能共享较少的资源,使P2P网络中的配置较高的客户端得到充分的利用,提高用户在P2P网络中访问、下载文件资料的速度;也使得P2P网络中带宽得到很好的利用,减轻服务器的压力。
具体实施方式
本发明主要应用在P2P网络中,P2P网络中多个客户端与服务器相连,客户端之间可相互下载共享的资源,服务器集中管理各客户端,并交换各客户端的信息。
本发明的核心思想为:服务器根据共享资源在所述可共享资源列表内的出现频率,均衡调配共享资源,出现频率低于一定数值时,服务器通知客户端提供所述资源,避免部分资源在P2P网络中过度共享,提高其它一些资源的共享度;
服务器获取共享资源在其保存的共享资源下载信息中的被下载次数,服务器将共享资源出现频率与其被下载次数相对比,对比结果低于一定数值时,服务器通知客户端提供所述共享资源;共享资源被下载次数多,表明该共享资源热度高,共享资源依据其热度在P2P网络中被合理数量的客户端共享,满足共享资源在P2P网络中均衡分配;
服务器根据用户客户端的硬件配置决定该客户端可以共享资源的数量,硬件配置高的客户端可以共享较多的资源,硬件配置低的客户端只能共享较少的资源,使P2P网络中的配置较高的客户端得到充分的利用,提高用户在P2P网络中访问、下载文件资料的速度;使得P2P网络中带宽得到很好的利用,减轻服务器的压力。
请参阅图1,示出了本发明一种资源共享***示意图,多个客户端11相互连接,并都连接到服务器12。
本发明资源共享***实现资源共享的方式为:客户端11发送共享请求信息到服务器12,共享请求信息包含可共享资源列表,服务器12根据可共享资源列表中的资源,在其保存的可共享资源信息中查找并计算出该资源的出现频率,出现频率低于一定数值时,服务器12返回给客户端11的共享资源列表中包含有该资源;出现频率高于一定数值时,服务器12返回给客户端11的共享资源列表中不包含有该资源。客户端11根据服务器12的返回的共享资源列表中的信息提供相应的资源。
本发明资源共享***实现资源共享的方式还可为:客户端11发送共享资源下载信息到服务器12,该共享资源下载信息包括资源的名称和被下载次数,服务器12查找、计算所述资源在其保存的共享资源下载信息中的被下载次数,并将所述资源的被下载次数与其在服务器保存的可共享资源里表中出现频率相对比,得到对比结果;对比结果低于一定数值时,服务器12返回给客户端11的共享资源列表中不包含有所述资源;对比结果高于一定数值,服务器12返回给客户端11的共享资源列表中包含有所述资源,服务器12还通知其它客户端11共享所述资源;客户端11根据服务器12的返回的共享资源列表中的信息提供相应的资源。
本发明资源共享***实现资源共享的方式还可为:服务器12接收所述客户端11发送的硬件信息,并依据所述硬件信息确定客户端11共享资源的数量;服务器12根据资源的出现频率确定其是否由客户端11共享,也可根据资源的被下载次数与其出现频率的对比结果确定其是否由客户端11共享;服务器11发送共享资源列表给客户端12,该共享资源列表内所包含的资源不超出客户端12能够共享的资源大小,客户端12根据共享资源列表共享相应的资源。
请参阅图2,为本发明一种服务器的示意图,服务器20包括可共享资源信息处理单元21、共享资源下载信息处理单元22、硬件信息处理单元23与通知单元24。
可共享资源信息处理单元21获取可共享资源列表中的资源在其保存的可共享资源列表中出现频率;出现频率低于一定数值时,触发通知单元24,通知单元24通知客户端提供所述资源;
共享资源下载信息处理单元22接收客户端发送的共享资源下载信息,该共享资源下载信息包括资源的名称和被下载次数;还可获取资源在其保存的共享资源下载信息中的被下载次数;还可将所述资源的出现频率与被下载次数相对比,得到对比结果;对比结果低于一定数值时,触发通知单元24,通知单元24通知客户端提供所述资源。
硬件信息处理单元23接收客户端发送的硬件信息,并依据所述硬件信息确定所述客户端共享资源的数量。
请参阅图3,为本发明一种客户端的示意图,客户端30包括共享信息检索单元31、共享资源下载信息发送单元32、硬件信息检索单元33与资源共享单元34。
共享信息检索单元31获取客户端可共享资源列表,并将可共享资源列表发送到服务器;服务器根据可共享资源列表中资源的出现频率,通知客户端30是否共享该资源;
共享资源下载信息发送单元32将客户端30共享资源下载信息发送到服务器,该共享资源下载信息包括资源的名称和被下载次数;该共享资源下载信息用于确定资源的被下载次数,将资源的被下载次数与出现频率相对比,对比结果低于一定数值时,服务器通知客户端30提供所述资源。
硬件信息检索单元33检索客户端的硬件信息并发送到服务器;硬件信息用于确定客户端30共享资源的数量;
资源共享单元34,用于按照服务器返回信息中包含的共享资源信息,提供相应的资源。
请参阅图4,示出了本发明资源共享方法一实施例流程图,具体过程如下;
41、客户端向服务器发送共享请求信息到服务器,该共享请求信息包括可共享资源列表。
客户端功能单元检索用户共享的资源信息,并按一定的格式制成可共享资源列表。共享资源为影音资料、学习资料、应用软件资料等一切可用于网络传输的文件资料。可共享资源列表内包含客户端用户具有的、愿意共享的文件资料的名称、大小等信息。
42、服务器接收该请求信息,并获得资源在可共享资源列表内的出现频率。
服务器整理并保存客户端传送可共享资源列表,根据文件资料在保存的可共享资源列表内出现的频率确定该文件资料在整个P2P网络中被共享的次数。如,一部电影资料在50万个客户端传送的可共享资源列表内出现的频率为10%,表明该电影资料此时在P2P网络有5万个客户端提供共享。
43、服务器确定该资源是否由客户端共享,并生成相应的共享资源列表发送给所述客户端。
服务器根据配置规则统一均衡调配共享资源,该配置规则为在可共享资源列表内出现频率超过一定数值的共享资源为过度共享,需减少其被共享的次数。具体数值由服务器依据整个P2P网络的实际情况测试得到。
过度共享的资源,服务器通知客户端不提供该资源的共享,不是过度共享的资源,服务器通知客户端提供该资源的共享。服务器以共享资源列表的形式通知客户端。
44、客户端根据接收到的共享资源列表,共享相应的资源。
为使P2P网络中共享资源可依据其热度在P2P网络中被合理数量的客户端共享,让共享资源在P2P网络中得到更为合理均衡的分配,本发明服务器统计共享资源中文件资料被客户端下载的次数;服务器将共享资源出现频率与该共享资源的被下载次数相对比,根据对比结果按一定规则确定该共享资源被共享的次数。
请参阅图5,示出了本发明资源共享方法另一实施例的流程图,具体过程如下。
51、服务器接收客户端发送共享资源请求信息,该共享资源请求信息包含客户端可共享资源列表。
服务器获取可共享资源列表中各资源在保存的可共享资源列表内的出现频率。
52、服务器统计共享资源在P2P网络中被客户端下载次数。
当客户端在网络上下载文件资料,该客户端将一下载信息传送给服务器,该下载信息包括客户端所下载文件资料的名称、时间等信息。服务器内置的功能单元设置一动态的共享资源热度表,该共享资源热度表内表明P2P网络上每个文件资料被下载的次数和每次被下载的时间,并根据将各客户端传送的下载信息实时更新。服务器根据每个文件资料在一定时间内被下载的次数决定其热度。
由于客户端用户爱好存在很大的趋同性,一些新推出的实用性很强的应用软件、明星的流行歌曲,或某体大量宣传的电影等文件资料往往受到大部分用户喜爱,其被下载的次数相当多,有的文件资料甚至在一个小时之内就被下载上万次,而有的文件资料的热度在一定时期变化非常大,比如新上映的电影,经过较长的一段时间后,其热度较大为降低,因此,每个文件资料的热度都是动态,需实时更新的。
53、服务器将资源的被下载次数与其在保存的可共享资源列表内出现频率相对比,根据比较的结果,进行均衡分配。
服务器将文件资料的热度与其在可共享资源列表内出现频率相对比,如,在客户端数量为1百万的P2P网络内,一份文件资料在客户端传送的可共享资源列表内出现频率为5%,即5万个客户端提供该文件资料共享,而该文件资料在最近一个小时被下载的数量为1千次,则服务器认为该文件资料共享过度,根据配置规则,该文件资料只需1万个客户端共享即可,因此,服务器通知客户端不共享该文件资料,将共享该文件资料的客户端逐渐降低。
如,一文件资料在整个P2P网络中由5万的客户端共享,而该文件资料在最近一个小时被下载的数量达几万次,则服务器认为该文件资料共享过低,根据分配规则,该文件资料还需5万个客户端共享才能满足其它客户端用户下载的需要,服务器在P2P网络中选出有能力共享该文件资料的5万客户端来共享此文件资料。由能力共享该文件资料主要是指客户端的硬件配置可以满足共享该文件资料,并且根据该客户端以前发送的可共享资源列表或下载信息中表明该客户端具有此文件资料。
本实施例的配置规则是服务器根据测试和统计数据制定的,是文件资料可被共享的数值与其热度的对比关系,并根据P2P网络的实际情况动态变化的,使用该规则可以使文件资料被共享的数量与其热度相适应,即满足用户下载该文件的要求,又不至于该文件资料被过度共享。
54、服务器根据配置规则完成共享资源的均衡调配后,生成相应的共享资源列表发送给所述客户端,客户端共享相应的资源。
为提高用户在P2P网络中访问、下载文件资料的速度,使P2P网络中带宽得到很好的利用,并在一定程度上减轻服务器的压力。本发明服务器根据用户客户端的硬件配置决定该客户端可以共享资源的数量,硬件配置高的客户端可以共享较多的资源,硬件配置低的客户端只能共享较少的资源,使P2P网络中的配置较高的客户端得到充分的利用。
请参阅图6,示出本发明资源共享方法又一实施例流程图,具体过程如下:
61、客户端向服务器发送共享请求信息,该信息包含客户端硬件信息;
客户端检索该客户端的硬件配置信息,主要为客户端的中心处理器(CPU,Center Processing Unit)、带宽、内存、联网设备等硬件配置,CUP在很大程度上决定客户端的处理数据的速度,带宽在一定程度上决定客户端与P2P网络上其它设备数据传输的速度,根据客户端的CPU、带宽等硬件配置,基本可以大致判断出在网络上与该客户端进行数据交互的速度。
62、服务器根据请求信息内的硬件信息确定客户端共享资源的大小。
硬件信息包括客户端的CPU、带宽等硬件配置信息,服务器通过对P2P网络的数据传输速度测试可知客户端硬件配置与该客户端处理、传输数据速度之间的对比关系,该对比关系并不是固定的,需要根据服务器测试的结果不断的调整。服务器根据对比关系决定客户端可共享资源的大小。
如果硬件配置相对较低的客户端共享了大量的文件资料,其它客户端就会集中访问该客户端或在该客户端下载文件资料,该客户端的CUP需要处理大量的相关数据,因其处理速度较低,处理的时间相对增加很多,再由于其带宽不足,数据传输较慢,造成拜访其客户端或下载其共享文件资料的客户端用户长时间的等待,这样,客户端的用户不但感觉不到P2P网路下载文件资料的快速和方便,还很可能因等待时间过长而放弃下载,浪费不必要的时间。
相反,如果硬件配置很高的客户端仅仅共享了数量较少的文件资料,使其硬件资源不能得到充分的利用,造成网络硬件资源的相对浪费。
因此,根据用户客户端的硬件配置决定该客户端可以共享资源的数量,硬件配置高的客户端可以共享较多的资源,硬件配置低的客户端只能共享较少的资源,可以让P2P网络中的配置较高的客户端得到充分的利用,提高用户在P2P网络中访问、下载文件资料的速度;也使得P2P网络中带宽得到很好的利用,减轻服务器的压力。
63、服务器根据客户端提供可共享资源信息列表中共享资源的被下载次数和出现频率,确定该客户端可否共享的资源。
服务器可根据共享资源的热度确定其是否由客户端共享,也可根据共享资源的热度与其出现频率的对比结果确定其是否由客户端共享。
64、服务器发送共享资源列表给客户端,该共享资源列表内所包含的资源不超出客户端能够共享的资源大小。客户端根据共享资源列表共享相应的资源。
请参阅图7,示出了经过本发明方案处理的共享资源的共享度曲线示意图,其中横坐标为文件资料序列,纵坐标为文件资料共享度,虚线表示没有经过本发明方案处理文件资料的共享度曲线,实线为经过本发明方案处理的共享文件资料共享度曲线。
图中虚线曲度过大,表明没有经过本发明方案处理的文件资料,其共享度明显不均衡,一部分文件资料明显过高,而经过本发明方案统一均衡调配之后的实线则平滑的多,表示共享的文件资料被均衡共享。
以上对本发明所提供的一种资源共享的方法和***,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。