CN101610165B - 一种自动扩散资源的方法和装置 - Google Patents
一种自动扩散资源的方法和装置 Download PDFInfo
- Publication number
- CN101610165B CN101610165B CN200910090156A CN200910090156A CN101610165B CN 101610165 B CN101610165 B CN 101610165B CN 200910090156 A CN200910090156 A CN 200910090156A CN 200910090156 A CN200910090156 A CN 200910090156A CN 101610165 B CN101610165 B CN 101610165B
- Authority
- CN
- China
- Prior art keywords
- client
- diffusion
- original
- internet resources
- push
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1076—Resource dissemination mechanisms or network resource keeping policies for optimal resource availability in the overlay network
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明公开了一种自动扩散资源的方法和装置,属于网络通信领域。所述方法包括:原始点对点P2P客户端从网络资源服务器上下载网络资源;所述原始P2P客户端从P2P种子服务器上获取配置的扩散P2P客户端,并将所述网络资源自动向所述扩散P2P客户端推送。所述装置包括:原始P2P客户端和扩散P2P客户端。本发明实施提供的方案,通过原始P2P客户端从网络资源服务器上首次获取网络资源后,自动向P2P系统中的P2P客户端扩散,从而保证了当其他P2P客户端通过P2P传输技术获取网络资源时,多个P2P客户端都提供资源,不消耗网络资源服务器资源,降低网络资源服务器成本,又提高了下载速度,进而提高了用户的使用体验。
Description
技术领域
本发明涉及网络通信领域,特别涉及一种自动扩散资源的方法和装置。
背景技术
随着网络通信技术的发展,网络资源的传输变得越来越频繁,且所传输的资源的数量也越来越多,使得网络资源服务器的负担越来越大。由于P2P(Peer-to-Peer,点对点)技术,在网络中的传输能力依赖于所有参与者的计算能力和带宽,而不是依赖于较少的几台网络资源服务器上,解决了网络资源服务器负担过重的问题,从而在网络传输中得到广泛应用。
目前,利用P2P技术传输网络资源时,用户下载网络资源时,如果P2P种子(即能够提供资源的P2P客户端)数量不足,则需要从网络资源服务器中获取所需的资源。
发明人在实现本发明时经过分析和研究后,发现现有技术至少存在以下的缺点和不足:
现有的P2P传输技术,用户下载网络资源在P2P种子数量不足时,需要消耗网络资源服务器的带宽,从而造成成本消耗过大,且下载速度慢,降低了用户的使用体验。
发明内容
为了保证通过P2P传输技术获取网络资源时不消耗网络资源服务器资源,降低网络资源服务器成本,提高用户的使用体验,本发明实施例提供了一种自动扩散资源的方法和装置。所述技术方案如下:
本发明实施例提供了一种自动扩散资源的方法,所述方法包括:
原始点对点P2P客户端从网络资源服务器上下载网络资源;
所述原始P2P客户端从P2P种子服务器上获取配置的扩散P2P客户端,并将所述网络资源自动向所述扩散P2P客户端推送;
当上述P2P客户端下载完该网络资源时,P2P系统中新增P2P客户端下载请求时,直接从上述P2P客户端中获取该网络资源
其中,第二P2P客户端为所述扩散P2P客户端包括的一个P2P客户端,且所述第二P2P客户端的下一级扩散P2P客户端包括第三P2P客户端和第NP2P客户端,所述第三P2P客户端的下级扩散P2P客户端包括所述第NP2P客户端;
所述第二P2P客户端向所述第三P2P客户端推送网络资源以及向所述第NP2P客户端推送网络资源,所述第三P2P客户端向所述第NP2P客户端推送所述第二客户端推送的网络资源,且所述第二P2P客户端向所述第三P2P客户端推送网络资源的速度大于向所述第NP2P客户端推送网络资源的速度,以及所述第NP2P客户端具有判断所接收的网络资源是否重复的功能。
其中,所述原始P2P客户端从P2P种子服务器上获取配置的扩散P2P客户端,并将所述网络资源自动向所述扩散P2P客户端推送,具体包括:
所述原始P2P客户端向所述P2P种子服务器发送查询请求;
所述P2P种子服务器接收所述查询请求后,查询与所述原始P2P客户端直接相连的P2P客户端,并在查找到与所述原始P2P客户端直接相连的P2P客户端中查询处于空闲状态的P2P客户端,将查找到的处于空闲状态的P2P客户端作为原始P2P客户端的扩散P2P客户端发送给所述原始P2P客户端;
所述原始P2P客户端接收所述P2P种子服务器发送的扩散P2P客户端,并将从所述网络资源服务器上下载的网络资源向所述扩散P2P客户端推送。
其中,所述原始P2P客户端从P2P种子服务器上获取配置的扩散P2P客户端,并将所述网络资源自动向所述扩散P2P客户端推送,具体包括:
所述原始P2P客户端向所述P2P种子服务器发送查询请求;
所述P2P种子服务器首先在P2P系统中查询处于空闲状态的P2P客户端,在查找到的处于空闲状态的P2P客户端中查询与所述原始P2P客户端直接相连的P2P客户端,并将所述查找到的与所述原始P2P客户端直接相连的P2P客户端作为原始P2P客户端的扩散P2P客户端发送给所述原始P2P客户端;
所述原始P2P客户端接收所述P2P种子服务器发送的扩散P2P客户端,并将从所述网络资源服务器上下载的网络资源向所述扩散P2P客户端推送。
其中,所述P2P种子服务器查询处于空闲状态的P2P客户端,还包括:
所述P2P种子服务器查询未处于空闲状态但带宽占用很小的P2P客户端;或者,所述P2P种子服务器在查找到的处于空闲的P2P客户端中选择部分P2P客户端。
其中,所述原始P2P客户端从P2P种子服务器上获取配置的扩散P2P客户端,并将所述网络资源自动向所述扩散P2P客户端推送之后,还包括:
所述扩散P2P客户端接收所述原始P2P客户端推送的网络资源后,从所述P2P种子服务器中获取所述扩散P2P客户端的下一级扩散P2P客户端;
所述扩散P2P客户端向所述下一级扩散P2P客户端推送所述网络资源;
所述下一级扩散P2P客户端继续向下扩散直到P2P系统的扩散网络中的P2P客户端都接收到所述网络资源。
本发明实施例还提供了一种自动扩散资源的装置,所述装置包括:原始点对点P2P客户端、扩散P2P客户端和P2P系统中新增P2P客户端,
所述原始P2P客户端,用于从网络资源服务器上下载网络资源;从P2P种子服务器上获取配置的所述扩散P2P客户端,并将所述网络资源自动向所述扩散P2P客户端推送;
所述扩散P2P客户端,用于接收所述原始P2P客户端推送的所述网络资源;
所述P2P系统中新增P2P客户端,用于当上述P2P客户端下载完该网络资源时,且当自身下载请求时,直接从上述P2P客户端中获取该网络资源
其中,第二P2P客户端为所述扩散P2P客户端包括的一个P2P客户端,且所述第二P2P客户端的下一级扩散P2P客户端包括第三P2P客户端和第NP2P客户端,所述第三P2P客户端的下级扩散P2P客户端包括所述第NP2P客户端;
所述第二P2P客户端向所述第三P2P客户端推送网络资源以及向所述第NP2P客户端推送网络资源,所述第三P2P客户端向所述第NP2P客户端推送所述第二客户端推送的网络资源,且所述第二P2P客户端向所述第三P2P客户端推送网络资源的速度大于向所述第NP2P客户端推送网络资源的速度,以及所述第NP2P客户端具有判断所接收的网络资源是否重复的功能。
其中,所述原始P2P客户端,具体用于向所述P2P种子服务器发送查询请求;接收所述P2P种子服务器发送的扩散P2P客户端,并将从所述网络资源服务器上下载的网络资源向所述扩散P2P客户端推送。
其中,所述装置还包括:P2P种子服务器,具体用于接收所述查询请求后,查询与所述原始P2P客户端直接相连的P2P客户端,并在查找到与所述原始P2P客户端直接相连的P2P客户端中查询处于空闲状态的P2P客户端,将查找到的处于空闲状态的P2P客户端作为原始P2P客户端的扩散P2P客户端发送给所述原始P2P客户端。
其中,所述P2P种子服务器,具体用于接收所述查询请求后,首先在P2P系统中查询处于空闲状态的P2P客户端,在查找到的处于空闲状态的P2P客户端中查询与所述原始P2P客户端直接相连的P2P客户端,并将所述查找到的与所述原始P2P客户端直接相连的P2P客户端作为原始P2P客户端的扩散P2P客户端发送给所述原始P2P客户端。
其中,所述P2P种子服务器,还用于查询未处于空闲状态但带宽占用很小的P2P客户端;或者,所述P2P种子服务器在查找到的处于空闲的P2P客户端中选择部分P2P客户端。
其中,所述扩散P2P客户端,具体用于接收所述原始P2P客户端推送的网络资源后,从所述P2P种子服务器中获取所述扩散P2P客户端的下一级扩散P2P客户端;向所述下一级扩散P2P客户端推送所述网络资源,以使得所述下一级扩散P2P客户端继续向下扩散直到P2P系统的扩散网络中的P2P客户端都接收到所述网络资源。
本发明实施例提供的技术方案的有益效果是:
本发明实施提供的方案,通过原始P2P客户端从网络资源服务器上首次获取网络资源后,自动向P2P系统中的P2P客户端扩散,使得多个P2P客户端都下载网络资源,从而保证了当其他P2P客户端通过P2P传输技术获取网络资源时,多个P2P客户端都可以提供资源,不消耗网络资源服务器资源,降低网络资源服务器成本,又提高了下载速度,进而提高了用户的使用体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例1提供的方法流程示意图;
图2是本发明实施例2提供的扩散结构示意图;
图3是本发明实施例2提供的方法流程示意图;
图4是本发明实施例3提供的装置结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例1
为了保证通过P2P传输技术获取网络资源时不消耗网络资源服务器资源,降低网络资源服务器成本,提高用户的使用体验,本发明实施例提供了一种自动扩散资源的方法,参见图1,该方法包括:
101:原始点对点P2P客户端从网络资源服务器上下载网络资源;
102:原始P2P客户端从P2P种子服务器上获取配置的扩散P2P客户端,并将网络资源自动向扩散P2P客户端推送。
其中,本发明实施例中的扩散P2P客户端,是指种子服务器根据实际连接情况以及空闲状态对扩散网络中的每个P2P客户端进行配置,使得每个P2P客户端都有各自对应的扩散P2P客户端。
其中,原始P2P客户端从P2P种子服务器上获取配置的扩散P2P客户端,并将网络资源自动向扩散P2P客户端推送,具体包括:
原始P2P客户端向P2P种子服务器发送查询请求;
P2P种子服务器接收查询请求后,查询与原始P2P客户端直接相连的P2P客户端,并在查找到与原始P2P客户端直接相连的P2P客户端中查询处于空闲状态的P2P客户端,将查找到的处于空闲状态的P2P客户端作为原始P2P客户端的扩散P2P客户端发送给原始P2P客户端;
原始P2P客户端接收P2P种子服务器发送的扩散P2P客户端,并将从网络资源服务器上下载的网络资源向扩散P2P客户端推送。
其中,原始P2P客户端从P2P种子服务器上获取配置的扩散P2P客户端,并将网络资源自动向扩散P2P客户端推送,具体包括:
原始P2P客户端向P2P种子服务器发送查询请求;
P2P种子服务器首先在P2P系统中查询处于空闲状态的P2P客户端,在查找到的处于空闲状态的P2P客户端中查询与原始P2P客户端直接相连的P2P客户端,并将查找到的与原始P2P客户端直接相连的P2P客户端作为原始P2P客户端的扩散P2P客户端发送给原始P2P客户端;
原始P2P客户端接收P2P种子服务器发送的扩散P2P客户端,并将从网络资源服务器上下载的网络资源向扩散P2P客户端推送。
其中,P2P种子服务器查询处于空闲状态的P2P客户端,还包括:
P2P种子服务器查询未处于空闲状态但带宽占用很小的P2P客户端;或者,P2P种子服务器在查找到的处于空闲的P2P客户端中选择部分P2P客户端。
其中,原始P2P客户端从P2P种子服务器上获取配置的扩散P2P客户端,并将网络资源自动向扩散P2P客户端推送之后,还包括:
扩散P2P客户端接收原始P2P客户端推送的网络资源后,从P2P种子服务器中获取扩散P2P客户端的下一级扩散P2P客户端;
其中,本发明实施例中的下一级扩散P2P客户端是相对扩散P2P客户端而言的,例如:原始P2P客户端对应着扩散P2P客户端,每个扩散P2P客户端对应的扩散P2P客户端称为下一级扩散P2P客户端,依次类推,当有多层扩散时,为了进行区分,可以设置第一级扩散P2P客户端、第二级扩散P2P客户端、第三级扩散P2P客户端等等,至于具体划分本发明实施例不作限制。
扩散P2P客户端向下一级扩散P2P客户端推送网络资源;
下一级扩散P2P客户端继续向下扩散直到P2P系统的扩散网络中的P2P客户端都接收到网络资源。
本发明实施提供的方法,通过原始P2P客户端从网络资源服务器上首次获取网络资源后,自动向P2P系统中的P2P客户端扩散,使得多个P2P客户端都下载网络资源,从而保证了当其他P2P客户端通过P2P传输技术获取网络资源时,多个P2P客户端都可以提供资源,不消耗网络资源服务器资源,降低网络资源服务器成本,又提高了下载速度,进而提高用户的使用体验。
实施例2
为了实现通过P2P传输技术获取网络资源时,能够保证不消耗网络资源服务器资源,降低网络资源服务器成本,提高用户的使用体验,本发明实施例提供了一种自动扩散资源的方法,扩散的具体实现内容如下:
其中,本发明实施例中以图2的P2P系统的扩散架构图为例进行说明,图2中,P2P系统的扩散网络包括2个服务器:P2P种子服务器和网络资源服务器;N个P2P客户端:第一P2P客户端、第二P2P客户端、第三P2P客户端、……、第N P2P客户端;每个P2P客户端作为一个种子都在P2P种子服务器中进行注册,由P2P种子服务器进行统一管理;第一P2P客户端从网络资源服务器首先下载网络资源,具体实现过程参见图3:
201:第一P2P客户端首先从网络资源服务器上下载网络资源;
其中,本发明实施例中以第一P2P客户端为P2P系统中的原始P2P客户端,也称为原始节点,这里所指的原始节点为第一次从网络资源服务器中下载所需网络资源的客户端节点。第一P2P客户端作为原始节点首先从网络资源服务器上消耗网络资源服务器带宽下载网络资源,即带宽首次消耗。
202:第一P2P客户端从P2P种子服务器上获取配置的扩散P2P客户端,并将从网络资源服务器上下载的网络资源推送给扩散第二P2P客户端;其中,第一P2P客户端从网络资源服务器上下载资源后,首先向P2P种子服务器发送查询请求,查询可以扩散的P2P客户端;P2P种子服务器接收到第一P2P客户端发送的查询请求后,根据预设的规则进行查询,将满足条件的P2P客户端发送给第一P2P客户端;例如:本发明实施例中满足条件的客户端为第二P2P客户端;第一P2P客户端收到P2P种子服务器发送的满足条件的第二P2P客户端后,将所下载的资源发送给第二P2P客户端。
P2P种子服务器根据预设的规则,查询第一P2P客户端的扩散P2P客户端,可以首先查询与第一P2P客户端直接相连的P2P客户端有哪些,再在与第一P2P客户端直接相连的客户端中查询有哪些处于空闲状态,以便充分利用带宽,当然,P2P种子服务器也可以先查找P2P系统中空闲的P2P客户端有哪些,再查找空闲的P2P客户端中有哪些与第一P2P客户端直接相连。例如:本发明实施例中,查询与第一P2P客户端直接相连的P2P客户端有第二P2P客户端和第NP2P客户端,在第二P2P客户端和第NP2P客户端中处于空闲状态为第二P2P客户端。
另外,P2P种子服务器也可以查询没有处于空闲状态但带宽占用很小的P2P客户端;或者,在查询的处于空闲状态的P2P客户端中根据预设的规则选择部分P2P客户端作为第一P2P客户端的扩散P2P客户端,预设的规则可以是带宽、计算能力等。例如:本发明实施例中,第二P2P客户端可能没有处于空闲状态,但占用带宽很小;或者,处于空闲状态有多个P2P客户端,但第二P2P客户端的带宽和计算能力是多个P2P客户端中最强的。
本发明实施例中,满足条件的P2P客户端为第二P2P客户端,可能与第一P2P客户端直接相连的P2P客户端不止一个,但是处于空闲状态的可能只有第二P2P客户端,或者,满足条件的P2P客户端有多个,但是第二P2P客户端为带宽最大的P2P客户端。
由于第一P2P客户端需要从P2P种子服务器中查询与之相连的P2P客户端,以及通过P2P种子服务器查询各个P2P客户端的状态,所以P2P系统中的各个P2P客户端需要首先在P2P种子服务器中进行注册或者登记,以便P2P种子服务器统一查询和管理。
其中,第一P2P客户端可以一边从网络资源服务器上消耗服务器带宽下载网络资源,一边将所下载的网络资源推送给第二P2P客户端,还可以一次性从网络资源服务器中将所需要的网络资源下载完后,再向第二P2P客户端扩散推送。第一P2P客户端将所下载的资源保存在本地,可以是固定的存储介质如硬盘,也可以是临时的存储介质如内存、缓存,还可以保存在网络存储介质如网络硬盘使用时直接从网络中获取,本发明实施例对此不作限制。
203:第二P2P客户端接收第一P2P客户端推送的网络资源,从P2P种子服务器上获取配置的扩散第三P2P客户端和第N P2P客户端,并将从第一P2P客户端上接收的网络资源推送给第三P2P客户端和第N P2P客户端;第三P2P客户端将从第二P2P客户端上接收的网络资源也推送给第N P2P客户端;
其中,第二P2P客户端从P2P种子服务器上获取配置的扩散第三P2P客户端和第N P2P客户端,将下载的网络资源推送给第三P2P客户端和第N P2P客户端;第二P2P客户端接收第一P2P客户端推送的资源后,首先向P2P种子服务器发送查询请求,查询可以扩散的P2P客户端;P2P种子服务器接收到查询请求后,根据预设的规则进行查询后,将满足条件的P2P客户端发送给第二P2P客户端,本发明实施例中满足条件的客户端为第三P2P客户端和第N P2P客户端;第一P2P客户端收到P2P种子服务器发送的满足条件的第三P2P客户端和第N P2P客户端后,将所接收的资源发送给第三P2P客户端和第N P2P客户端。
而第三P2P客户端在接收到第二P2P客户端推送的网络资源后,同样经过种子服务器的查询,查找到可以向第N P2P客户端推送网络资源。在此,第二P2P客户端已经向第N P2P客户端推送网络资源,但是种子服务器查询第三P2P客户端满足条件的P2P客户端时,查找到与第三P2P客户端直接相连的也有第NP2P客户端,此时虽然第N P2P客户端已经在接收第二P2P客户端推送的网络资源,但是可能由于第N P2P客户端的带宽还没有被完全利用所以仍然可以通过第三P2P客户端接收第二P2P客户端推送的网络资源,但第二P2P客户端向第三P2P客户端推送网络资源的速度一定要大于第二P2P客户端向第N P2P客户端推送网络资源的速度,这样才能保证推送给第N P2P客户端的网络资源不重复,因此第N P2P客户端中具有判断所接收的网络资源是否重复的功能。
P2P种子服务器根据预设的规则查询第二P2P客户端可以扩散的P2P客户端,可以首先查找与第二P2P客户端直接连接的P2P客户端有哪些,再查找与第二P2P客户端直接相连的客户端中有哪些处于空闲状态,以便充分利用带宽,当然也可以推送给没有处于空闲状态但只占用很小的带宽传输其他资源的P2P客户端。当然,P2P种子服务器也可以先查找P2P系统中空闲的P2P客户端有哪些,再查找空闲的P2P客户端中有哪些与第二P2P客户端直接相连。本发明实施例中,满足条件的P2P客户端为第三P2P客户端和第NP2P客户端。对于查找第三P2P客户端满足扩散条件的P2P客户端的过程与上述方法相同,不再赘述。
其中,第二P2P客户端可以一边从第一P2P客户端上接收网络资源,一边将所下载的网络资源推送给第三P2P客户端和第N P2P客户端。第二P2P客户端将所下载的资源保存在本地,可以是固定的存储介质具如硬盘,也可以是临时的存储介质如内存、缓存,还可以保存在网络存储介质如网络硬盘中,使用时直接从网络中获取。
其他的P2P客户端在P2P系统中通过P2P方式相互下载该网络资源;其中,其他的N-4个P2P客户端采用相同的扩散步骤继续进行扩散,直至N个P2P客户端都下载完该网络资源,即N个P2P客户端的本地都保存有该网络资源,此时首次带宽消耗被放大了N倍。
204:当N个P2P客户端都下载完该网络资源时,P2P系统中新增P2P客户端下载请求时,直接从N个P2P客户端中获取该网络资源。
其中,P2P系统中的N个P2P客户端都下载完该网络资源时,此时P2P系统中某个没有该网络资源的P2P客户端发起下载请求,则P2P系统中N个P2P客户端都可以为该P2P客户端提供该网络资源,而无需占用网络资源服务器带宽,既降低了网络资源服务器成本,同时还提高了下载速度,进而提高了用户的使用体验。
本发明实施例提供的方法,通过原始P2P客户端从网络资源服务器中下载网络资源后,自动扩散给其他P2P客户端,实时动态扩充P2P种子,从而保证其他P2P客户端下载网络资源时有足够的P2P种子提供网络资源,无需占用网络资源服务器的带宽,降低了网络资源服务器成本,提高了下载速度,进而提高了用户的使用体验。
实施例3
本发明实施例还提供了一种自动扩散资源的装置,参见图4,该装置包括:原始点对点P2P客户端和扩散P2P客户端302,其中,
原始P2P客户端301,用于从网络资源服务器上下载网络资源;从P2P种子服务器上获取配置的扩散P2P客户端302,并将网络资源自动向扩散P2P客户端302推送;
扩散P2P客户端302,用于接收原始P2P客户端301推送的网络资源。
其中,原始P2P客户端301,具体用于向P2P种子服务器发送查询请求;接收P2P种子服务器发送的扩散P2P客户端302,并将从网络资源服务器上下载的网络资源向扩散P2P客户端302推送。
其中,装置还包括:P2P种子服务器,具体用于接收查询请求后,查询与原始P2P客户端301直接相连的P2P客户端,并在查找到与原始P2P客户端301直接相连的P2P客户端中查询处于空闲状态的P2P客户端,将查找到的处于空闲状态的P2P客户端作为原始P2P客户端301的扩散P2P客户端302发送给原始P2P客户端301。
其中,P2P种子服务器,具体用于接收查询请求后,首先在P2P系统中查询处于空闲状态的P2P客户端,在查找到的处于空闲状态的P2P客户端中查询与原始P2P客户端301直接相连的P2P客户端,并将查找到的与原始P2P客户端301直接相连的P2P客户端作为原始P2P客户端301的扩散P2P客户端302发送给原始P2P客户端301。
其中,P2P种子服务器,还用于查询未处于空闲状态但带宽占用很小的P2P客户端;或者,P2P种子服务器在查找到的处于空闲的P2P客户端中选择部分P2P客户端。
其中,扩散P2P客户端302,具体用于接收原始P2P客户端301推送的网络资源后,从P2P种子服务器中获取扩散P2P客户端302的下一级扩散P2P客户端302;向下一级扩散P2P客户端推送网络资源,以使得下一级扩散P2P客户端继续向下扩散直到P2P系统的扩散网络中的P2P客户端都接收到网络资源。
本发明实施提供的装置,通过原始P2P客户端从网络资源服务器上首次获取网络资源后,自动向P2P系统中的P2P客户端扩散,使得多个P2P客户端都下载网络资源,从而保证了当其他P2P客户端通过P2P传输技术获取网络资源时,多个P2P客户端都可以提供资源,不消耗网络资源服务器资源,降低网络资源服务器成本,又提高了下载速度,进而提高用户的使用体验。
本发明实施例中的“接收”一词可以理解为主动从其他模块获取也可以是接收其他模块发送来的信息。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本发明实施例中的部分步骤,可以利用软件实现,相应的软件程序可以存储在可读取的存储介质中,如光盘或硬盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种自动扩散资源的方法,其特征在于,所述方法包括:
原始点对点P2P客户端从网络资源服务器上下载网络资源;
所述原始P2P客户端从P2P种子服务器上获取配置的扩散P2P客户端,并将所述网络资源自动向所述扩散P2P客户端推送;
所述扩散P2P客户端接收所述原始P2P客户端推送的网络资源后,从所述P2P种子服务器中获取所述扩散P2P客户端的下一级扩散P2P客户端;
所述扩散P2P客户端向所述下一级扩散P2P客户端推送所述网络资源;
所述下一级扩散P2P客户端继续向下扩散直到P2P系统的扩散网络中的P2P客户端都接收到所述网络资源;
当上述P2P客户端下载完该网络资源时,P2P系统中新增P2P客户端下载请求时,直接从上述P2P客户端中获取该网络资源;
其中,第二P2P客户端为所述扩散P2P客户端包括的一个P2P客户端,且所述第二P2P客户端的下一级扩散P2P客户端包括第三P2P客户端和第NP2P客户端,所述第三P2P客户端的下级扩散P2P客户端包括所述第NP2P客户端;
所述第二P2P客户端向所述第三P2P客户端推送网络资源以及向所述第NP2P客户端推送网络资源,所述第三P2P客户端向所述第NP2P客户端推送所述第二客户端推送的网络资源,且所述第二P2P客户端向所述第三P2P客户端推送网络资源的速度大于向所述第NP2P客户端推送网络资源的速度,以及所述第NP2P客户端具有判断所接收的网络资源是否重复的功能。
2.如权利要求1所述的方法,其特征在于,所述原始P2P客户端从P2P种子服务器上获取配置的扩散P2P客户端,并将所述网络资源自动向所述扩散P2P客户端推送,具体包括:
所述原始P2P客户端向所述P2P种子服务器发送查询请求;
所述P2P种子服务器接收所述查询请求后,查询与所述原始P2P客户端直接相连的P2P客户端,并在查找到与所述原始P2P客户端直接相连的P2P客户端中查询处于空闲状态的P2P客户端,将查找到的处于空闲状态的P2P客户端作为原始P2P客户端的扩散P2P客户端发送给所述原始P2P客户端;
所述原始P2P客户端接收所述P2P种子服务器发送的扩散P2P客户端,并将从所述网络资源服务器上下载的网络资源向所述扩散P2P客户端推送。
3.如权利要求1所述的方法,其特征在于,所述原始P2P客户端从P2P种子服务器上获取配置的扩散P2P客户端,并将所述网络资源自动向所述扩散P2P客户端推送,具体包括:
所述原始P2P客户端向所述P2P种子服务器发送查询请求;
所述P2P种子服务器接收所述查询请求后,首先在P2P系统中查询处于空闲状态的P2P客户端,在查找到的处于空闲状态的P2P客户端中查询与所述原始P2P客户端直接相连的P2P客户端,并将所述查找到的与所述原始P2P客户端直接相连的P2P客户端作为原始P2P客户端的扩散P2P客户端发送给所述原始P2P客户端;
所述原始P2P客户端接收所述P2P种子服务器发送的扩散P2P客户端,并将从所述网络资源服务器上下载的网络资源向所述扩散P2P客户端推送。
4.如权利要求2或3所述的方法,其特征在于,所述P2P种子服务器查询处于空闲状态的P2P客户端,还包括:
所述P2P种子服务器查询未处于空闲状态但带宽占用很小的P2P客户端;或者,所述P2P种子服务器在查找到的处于空闲的P2P客户端中选择部分P2P客户端。
5.一种自动扩散资源的装置,其特征在于,所述装置包括:原始点对点P2P客户端、扩散P2P客户端和P2P系统中新增P2P客户端,
所述原始P2P客户端,用于从网络资源服务器上下载网络资源;从P2P种子服务器上获取配置的所述扩散P2P客户端,并将所述网络资源自动向所述扩散P2P客户端推送;
所述扩散P2P客户端,用于接收所述原始P2P客户端推送的所述网络资源;
进一步地,所述扩散P2P客户端,具体用于接收所述原始P2P客户端推送的网络资源后,从所述P2P种子服务器中获取所述扩散P2P客户端的下一级扩散P2P客户端;向所述下一级扩散P2P客户端推送所述网络资源,以使得所述下一级扩散P2P客户端继续向下扩散直到P2P系统的扩散网络中的P2P客户端都接收到所述网络资源;
所述P2P系统中新增P2P客户端,用于当上述P2P客户端下载完该网络资源时,且当自身下载请求时,直接从上述P2P客户端中获取该网络资源;
其中,第二P2P客户端为所述扩散P2P客户端包括的一个P2P客户端,且所述第二P2P客户端的下一级扩散P2P客户端包括第三P2P客户端和第NP2P客户端,所述第三P2P客户端的下级扩散P2P客户端包括所述第NP2P客户端;
所述第二P2P客户端向所述第三P2P客户端推送网络资源以及向所述第NP2P客户端推送网络资源,所述第三P2P客户端向所述第NP2P客户端推送所述第二客户端推送的网络资源,且所述第二P2P客户端向所述第三P2P客户端推送网络资源的速度大于向所述第NP2P客户端推送网络资源的速度,以及所述第NP2P客户端具有判断所接收的网络资源是否重复的功能。
6.如权利要求5所述的装置,其特征在于,所述原始P2P客户端,具体用于向所述P2P种子服务器发送查询请求;接收所述P2P种子服务器发送的扩散P2P客户端,并将从所述网络资源服务器上下载的网络资源向所述扩散P2P客户端推送。
7.如权利要求5所述的装置,其特征在于,所述装置还包括:P2P种子服务器,具体用于接收所述查询请求后,查询与所述原始P2P客户端直接相连的P2P客户端,并在查找到与所述原始P2P客户端直接相连的P2P客户端中查询处于空闲状态的P2P客户端,将查找到的处于空闲状态的P2P客户端作为原始P2P客户端的扩散P2P客户端发送给所述原始P2P客户端。
8.如权利要求5所述的装置,其特征在于,所述P2P种子服务器,具体用于接收所述查询请求后,首先在P2P系统中查询处于空闲状态的P2P客户端,在查找到的处于空闲状态的P2P客户端中查询与所述原始P2P客户端直接相连的P2P客户端,并将所述查找到的与所述原始P2P客户端直接相连的P2P客户端作为原始P2P客户端的扩散P2P客户端发送给所述原始P2P客户端。
9.如权利要求7或8所述的装置,其特征在于,所述P2P种子服务器,还用于查询未处于空闲状态但带宽占用很小的P2P客户端;或者,所述P2P种子服务器在查找到的处于空闲的P2P客户端中选择部分P2P客户端。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910090156A CN101610165B (zh) | 2009-07-29 | 2009-07-29 | 一种自动扩散资源的方法和装置 |
MYPI2011006224A MY176910A (en) | 2009-07-29 | 2010-06-24 | Method and system for spreading resources automatically |
PCT/CN2010/074386 WO2011012034A1 (zh) | 2009-07-29 | 2010-06-24 | 一种自动扩散资源的方法和装置 |
SG2011091808A SG176804A1 (en) | 2009-07-29 | 2010-06-24 | Method for automatically spreading resources and equipment thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910090156A CN101610165B (zh) | 2009-07-29 | 2009-07-29 | 一种自动扩散资源的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101610165A CN101610165A (zh) | 2009-12-23 |
CN101610165B true CN101610165B (zh) | 2012-08-29 |
Family
ID=41483763
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910090156A Active CN101610165B (zh) | 2009-07-29 | 2009-07-29 | 一种自动扩散资源的方法和装置 |
Country Status (4)
Country | Link |
---|---|
CN (1) | CN101610165B (zh) |
MY (1) | MY176910A (zh) |
SG (1) | SG176804A1 (zh) |
WO (1) | WO2011012034A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101610165B (zh) * | 2009-07-29 | 2012-08-29 | 腾讯科技(深圳)有限公司 | 一种自动扩散资源的方法和装置 |
CN102595489A (zh) * | 2011-01-10 | 2012-07-18 | 华为技术有限公司 | 获取服务质量参数的方法、服务网关及aaa服务器 |
CN106488169B (zh) * | 2015-08-28 | 2019-09-13 | 腾讯科技(深圳)有限公司 | 一种数据传输的方法、系统以及相关设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1988450A (zh) * | 2005-12-23 | 2007-06-27 | 中兴通讯股份有限公司 | 一种网络调度型媒体文件的分发系统 |
CN101051980A (zh) * | 2007-05-21 | 2007-10-10 | 华为技术有限公司 | 一种文件数据分发方法及相关设备 |
CN101068336A (zh) * | 2006-08-22 | 2007-11-07 | 腾讯科技(深圳)有限公司 | 一种对等连接流媒体直播系统和装置 |
CN101090367A (zh) * | 2007-07-06 | 2007-12-19 | 北京搜狗科技发展有限公司 | 一种对等网络中的数据传输方法及装置 |
CN101146022A (zh) * | 2006-09-11 | 2008-03-19 | 思华科技(上海)有限公司 | 节点重叠内容分发网络 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8606846B2 (en) * | 2007-10-15 | 2013-12-10 | Nbcuniversal Media, Llc | Accelerating peer-to-peer content distribution |
CN101465875B (zh) * | 2008-11-12 | 2011-12-07 | 湖南大学 | 一种基于网络定位的负载均衡方法 |
CN101610165B (zh) * | 2009-07-29 | 2012-08-29 | 腾讯科技(深圳)有限公司 | 一种自动扩散资源的方法和装置 |
-
2009
- 2009-07-29 CN CN200910090156A patent/CN101610165B/zh active Active
-
2010
- 2010-06-24 WO PCT/CN2010/074386 patent/WO2011012034A1/zh active Application Filing
- 2010-06-24 SG SG2011091808A patent/SG176804A1/en unknown
- 2010-06-24 MY MYPI2011006224A patent/MY176910A/en unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1988450A (zh) * | 2005-12-23 | 2007-06-27 | 中兴通讯股份有限公司 | 一种网络调度型媒体文件的分发系统 |
CN101068336A (zh) * | 2006-08-22 | 2007-11-07 | 腾讯科技(深圳)有限公司 | 一种对等连接流媒体直播系统和装置 |
CN101146022A (zh) * | 2006-09-11 | 2008-03-19 | 思华科技(上海)有限公司 | 节点重叠内容分发网络 |
CN101051980A (zh) * | 2007-05-21 | 2007-10-10 | 华为技术有限公司 | 一种文件数据分发方法及相关设备 |
CN101090367A (zh) * | 2007-07-06 | 2007-12-19 | 北京搜狗科技发展有限公司 | 一种对等网络中的数据传输方法及装置 |
Non-Patent Citations (1)
Title |
---|
周卫等.推送模式的P2P流媒体分发算法.《科学技术与工程》.2008,第8卷(第4期),第946页第1栏第1行-第948页第2栏第1行. * |
Also Published As
Publication number | Publication date |
---|---|
CN101610165A (zh) | 2009-12-23 |
SG176804A1 (en) | 2012-01-30 |
MY176910A (en) | 2020-08-26 |
WO2011012034A1 (zh) | 2011-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9998533B2 (en) | P2P content caching system and method | |
US7894828B2 (en) | System and method for establishing peer-to-peer bandwidth sharing ad hoc networks | |
CN109862065A (zh) | 文件下载方法、装置和电子设备 | |
US7873019B2 (en) | Systems and methods for establishing gateway bandwidth sharing ad-hoc networks | |
US20100306252A1 (en) | Efficient Use of Peer Cache Space In Large Scale File Distributions | |
US20120124173A1 (en) | Content delivery using multiple sources over heterogeneous interfaces | |
CN104954468A (zh) | 资源的分配方法及装置 | |
CN102067094A (zh) | 高速缓存优化 | |
CN103577503A (zh) | 云端文件存储系统及方法 | |
JP2013507694A (ja) | データ通信高速化および効率化のためのシステムおよびその方法 | |
CN104410660A (zh) | 多媒体资源的下载方法、装置、路由器及服务器 | |
CN102271165A (zh) | 互联网搜索资源的分享管理装置及方法 | |
CN103369002B (zh) | 一种资源下载的方法及系统 | |
CN109982152A (zh) | P2p cdn业务处理方法、智能网关以及cdn平台 | |
CN103595782A (zh) | 一种分布式存储系统及其下载文件的方法 | |
CN102882960B (zh) | 一种资源文件的发送方法及装置 | |
KR100823730B1 (ko) | 피투피 기반의 스트리밍 서비스 제공 방법 및 장치, 이를이용한 스트리밍 서비스 시스템 | |
CN101610165B (zh) | 一种自动扩散资源的方法和装置 | |
CN106202074A (zh) | 一种处理共享文件的方法及装置 | |
CN114466018A (zh) | 内容分发网络的调度方法、装置、存储介质及电子设备 | |
CN107003981A (zh) | 与本地配对的设备同步以使用点到点通信从远程服务器获得数据 | |
CN111309254A (zh) | 数据处理方法、装置、可读介质及电子设备 | |
CN102916907A (zh) | 基于家庭网关的下载方法和系统以及家庭网关 | |
US9137331B2 (en) | Adaptive replication | |
CN113163003A (zh) | 文件传输方法、云端服务器、客户端以及雾节点路由器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |