WO2020093504A1 - 一种下载资源文件的数据块的方法、设备和*** - Google Patents
一种下载资源文件的数据块的方法、设备和*** Download PDFInfo
- Publication number
- WO2020093504A1 WO2020093504A1 PCT/CN2018/119886 CN2018119886W WO2020093504A1 WO 2020093504 A1 WO2020093504 A1 WO 2020093504A1 CN 2018119886 W CN2018119886 W CN 2018119886W WO 2020093504 A1 WO2020093504 A1 WO 2020093504A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- peer
- target
- file
- resource file
- target resource
- Prior art date
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
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
- H04L67/108—Resource delivery mechanisms characterised by resources being split in blocks or fragments
-
- 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/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- 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/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- 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/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
- H04L67/1063—Discovery through centralising entities
Definitions
- the invention relates to the technical field of data transmission, in particular to a method, device and system for downloading data blocks of resource files.
- P2P (peer-to-peer) technology is a communication technology based on peer-to-peer data transmission. It establishes a direct client-to-client communication mechanism.
- each peer has As a client, it also acts as a server for other peers.
- data blocks based on peer-to-peer network transmission resource files have been introduced on the basis of the CDN system.
- the CDN server can deploy a large number of devices with good performance in a peer-to-peer network in advance as a super peer.
- the super peer can download and store all data blocks of the resource file from the CDN server.
- the terminal can request the peer list from the tracker server while downloading the data block from the CDN server, and the tracker server can feed back the peer information of the deployed super peer that stores the corresponding resource file (The peer information can include at least the peer's IP address and port number). Therefore, the terminal can establish a connection with the super peer, and obtain the data blocks of the resource files it stores from the super peer.
- embodiments of the present invention provide a method, device, and system for downloading data blocks of resource files.
- the technical solution is as follows:
- a method for downloading a data block of a resource file includes:
- the target peer receives the download instruction of the target resource file, and obtains the standard file size of the target resource file based on the URL of the target resource file;
- the target peer generates a file specific identifier of the target resource file according to the URL and standard file size of the target resource file;
- the target peer sends to the tracker server a request for obtaining a peer list carrying the file specific identifier of the target resource file;
- the target peer downloads the target resource file according to the peer information contained in the peer list fed back by the Tracker server.
- the acquiring the standard file size of the target resource file based on the URL of the target resource file includes:
- the target peer obtains the IP address of the target CDN server from the DNS system based on the URL of the target resource file;
- the target peer sends a HEAD request carrying the URL to the target CDN server according to the IP address;
- the target peer obtains the standard file size of the target resource file carried in the response message of the target CDN server for the HEAD request.
- the downloading of the target resource file includes:
- the target peer obtains bitmap information of the target resource file according to the standard file size and the preset data block size of the target resource file;
- the target peer downloads the data block of the target resource file according to the bitmap information of the target resource file.
- the method further includes:
- the target peer downloads the data block of the target resource file from the CDN system according to the bitmap information and URL of the target resource file.
- a method for downloading data blocks of a resource file includes:
- the Tracker server receives a request for obtaining a peer list sent by the target peer and carrying the file specific identifier of the target resource file, and establishes a peer list corresponding to the target resource file, where the file specific identifier includes the URL and standard of the target resource file File size;
- the Tracker server sends the file specific identifier to a plurality of preset optional super peers, so that the optional super peer downloads the data block set corresponding to the file specific identifier;
- the Tracker server When receiving the resource ready notification sent by the target super peer, the Tracker server adds the peer information of the target super peer to the peer list;
- the Tracker server After receiving the preset duration of the peer list acquisition request, the Tracker server sends the peer list to the target peer.
- the method further includes:
- the Tracker server determines the IP address of the target peer according to the peer list acquisition request
- the Tracker server determines multiple optional super peers responding to the target peer based on the IP address of the target peer.
- the method further includes:
- the Tracker server determines a plurality of optional ordinary peers currently storing data blocks of the target resource file
- the Tracker server adds the peer information of the plurality of optional ordinary peers to the peer list.
- the peer list includes a normal peer list used to store peer information of a common peer and a super peer list used to store peer information of a super peer.
- a method for downloading data blocks of a resource file includes:
- the target super peer receives the file specific identifier of the target resource file sent by the Tracker server, and determines the URL and standard file size of the target resource file;
- the target super peer determines whether a data block set of a target resource file with a total data amount consistent with the standard file size is stored locally;
- the target super peer sends a resource ready notification to the Tracker server, otherwise downloads all data blocks of the target resource file according to the URL and standard file size;
- the target super peer After downloading all the data blocks, the target super peer sends a resource ready notification to the Tracker server.
- the target super peer determining whether a data block set of a target resource file with a total data amount consistent with the standard file size is stored locally includes:
- the target super peer determines whether a set of data blocks corresponding to the URL is stored locally;
- the target super peer determines whether the total data volume of the data block set is consistent with the standard file size.
- the downloading of all data blocks of the target resource file according to the URL and standard file size includes:
- the target super peer obtains the IP list corresponding to the URL from the DNS system;
- the target super peer downloads all data blocks of the target resource file satisfying the standard file size according to the IP addresses of multiple CDN servers included in the IP list.
- the target super peer downloads all data blocks of the target resource file satisfying the file size from the multiple CDN servers according to the IP addresses of multiple CDN servers included in the IP list, include:
- the target super peer traverses the IP list and extracts the IP addresses of each CDN server included in the IP list one by one;
- the target super peer sends a HEAD request carrying the URL to the CDN server corresponding to the extracted IP address;
- the target super peer downloads the target resource file from the CDN server sending the response message All data blocks.
- a client for downloading data blocks of resource files is provided.
- the client is used to:
- the client is specifically used for:
- the client is specifically used for:
- the client is also used for:
- a tracker server for downloading data blocks of resource files is provided.
- the tracker server is used for:
- Tracker server is also used for:
- Tracker server is also used for:
- the peer list includes a normal peer list used to store peer information of a common peer and a super peer list used to store peer information of a super peer.
- a super client for downloading data blocks of resource files is provided.
- the super client is used for:
- the super client is specifically used for:
- the super client is specifically used for:
- IP addresses of multiple CDN servers included in the IP list download all data blocks of the target resource file satisfying the standard file size.
- the super client is specifically used for:
- a system for downloading data blocks of resource files includes the client according to the fourth aspect, the tracker server according to the fifth aspect, and the sixth aspect Super client.
- the file size and URL of the target resource file can be notified to the Tracker server, and the Tracker server can forward the above file size and URL to the super peer preset in the P2P network to notify The super peer prepares the data block of the target resource file that satisfies the file size and URL.
- the Tracker server can recommend the super peer to the target peer in the form of a peer list.
- the target peer can download the target from the super peer The data block of the resource file.
- the file size given by the target peer can be used to ensure that the provided data block is effectively available, and belongs to the same resource file as the data block obtained by the target peer through other methods.
- the validity of the resource file downloaded by the target peer can be guaranteed.
- FIG. 1 is a scene framework diagram of downloading a data block of a resource file according to an embodiment of the present invention
- FIG. 2 is a flowchart of a method for downloading data blocks of a resource file according to an embodiment of the present invention.
- An embodiment of the present invention provides a method for downloading data blocks of a resource file.
- This method can be applied in a P2P network, and combined with a CDN system and a DNS system.
- the scenario framework for implementing this method can be shown in FIG. 1.
- the P2P network may contain a large number of ordinary peers (that is, clients used by users) that use P2P technology to download resource files, and may also include a Tracker server set by the CDN server and a large number of distributed super peers.
- Ordinary peers can download data blocks of resource files from CDN systems, super peers, and other ordinary peers.
- the super peer can be used to download data blocks of resource files from the CDN system and provide the data blocks to ordinary peers.
- the tracker server can be used to inform the super peer of the download requirements of the common peer's resource files and provide the peer list to the common peer.
- the CDN server of the CDN system can store file data of a large number of resource files in the form of a collection of data blocks.
- the DNS system is mainly used to direct the resource file request sent by the peer to the source station to the designated CDN server. All the above network devices may include a processor, a memory, and a transceiver.
- the processor may be used to process data blocks for downloading resource files in the following process, and the memory may be used to store data required in the following process and
- the generated data, the transceiver can be used to receive and send the relevant data in the following process.
- Step 201 The target peer receives the download instruction of the target resource file, and obtains the standard file size of the target resource file based on the URL of the target resource file.
- the user can install a resource download application that downloads resource files through P2P technology on the client.
- the client can call the CDN server embedded in the resource download application. Provided SDK, so as to realize the subsequent processing of data blocks for downloading resource files.
- the resource library interface of the resource download application may display the file identifiers of a large number of resource files that support P2P technology download.
- the user wants to download a resource
- a file such as a target resource file
- the user can click on the file identifier of the corresponding target resource file, and then the target peer can receive the download instruction of the target resource file, and obtain the URL of the target resource file from the download instruction. After that, the target peer can obtain the standard file size of the target resource file based on the URL of the target resource file.
- the target peer can request the standard file size of the resource file from the CDN system through a HEAD request.
- the process of obtaining the standard file size in step 201 can be as follows: The target peer obtains the target CDN from the DNS system based on the URL of the target resource file The IP address of the server; the target peer sends a HEAD request carrying the URL to the target CDN server according to the IP address; the target peer obtains the standard file size of the target resource file carried in the response message of the target CDN server for the HEAD request.
- the target peer after the target peer obtains the URL of the target resource file from the download instruction of the target resource file, it can query the DNS system for the IP list corresponding to the URL, and select a CDN server (which can be called the target CDN) from the IP list. Server) IP address. After that, the target peer can send a HEAD request carrying the URL of the target resource file to the target CDN server according to the IP address to query the standard file size of the resource file corresponding to the URL. After that, the target resource file may receive a response message for the HEAD request fed back by the target CDN service, and extract the standard file size of the target resource file carried in the response message.
- a CDN server which can be called the target CDN
- the target resource file may receive a response message for the HEAD request fed back by the target CDN service, and extract the standard file size of the target resource file carried in the response message.
- Step 202 The target peer generates a file specific identifier of the target resource file according to the URL of the target resource file and the standard file size.
- the target peer can generate a file-specific identifier of the target resource file according to the standard file size and the URL of the target resource file.
- the file-specific identifier can be "www.xxxx. com / test / 123.apk / 1024MB ", where www.xxxx.com/test/123.apk is the URL and 1024MB is the standard file size.
- the file specific identifier of the target resource file may also include file information such as the resource provider ID of the target resource file and the version number of the target resource file. For example, if the resource provider ID is yyy and the version number is 1.0.0, the file specific The logo can be "yyy / www.xxxx.com / test / 123.apk / 1024MB / 1.0.0".
- Step 203 The target peer sends to the tracker server a request to obtain a peer list carrying the file specific identifier of the target resource file.
- the target peer may send a request for acquiring a peer list carrying the file specific identifier of the target resource file to the tracker server according to the pre-stored network address of the tracker server.
- Step 204 The Tracker server receives a request for acquiring a list of peers carrying the file specific identifier of the target resource file sent by the target peer, and establishes a peer list corresponding to the target resource file.
- the Tracker server can receive the peer list acquisition request sent by the target peer, and extract the file specific identifier of the target resource file carried in the peer list acquisition request. At the same time, the Tracker server can establish the peer list corresponding to the target resource file.
- the Tracker server can select an optional super peer according to the target peer's IP address.
- the following processing may exist: The Tracker server determines the target peer's IP address according to the peer list acquisition request; IP address to determine multiple optional super peers that respond to the target peer.
- the Tracker server can determine the IP address of the target peer according to the peer list acquisition request after receiving the peer list acquisition request sent by the target peer. After that, the Tracker server can select the P2P network based on the target peer's IP address Multiple optional super peers for responding to the target peer with better network quality (such as a physical location closer to the target peer or on the same network segment as the target peer).
- the peer list may contain the peer information of ordinary peers that store the data blocks of the target resource file.
- the tracker server determines that the data of the target resource file is currently stored Multiple optional ordinary peers of the block; the Tracker server adds the peer information of multiple optional ordinary peers to the peer list.
- the ordinary peer may periodically notify the Tracker server that the data block of the resource file is stored on it. Therefore, for the target resource file, after creating the peer list corresponding to the target resource file, the Tracker server can first determine multiple optional ordinary peers currently storing the data blocks of the target resource file, and then compare the peer information of these optional ordinary peers Add to the peer list above. It is worth mentioning that the Tracker server determines the optional ordinary peer processing, you can refer to the above process to determine the optional super peer, not repeat them here.
- Step 205 The Tracker server sends the file-specific identifier to the preset multiple optional super peers.
- the Tracker server may first determine multiple optional super peers among the super peers preset in the P2P network, and then may distribute the file specific identifier to each optional Super peer.
- the target super peer receives the file specific identifier of the target resource file sent by the Tracker server, and determines the URL and standard file size of the target resource file.
- the target super peer if it receives the file specific identifier of the target resource file sent by the Tracker server, it can parse the file specific identifier to obtain the URL and standard file size of the target resource file.
- step 207 the target super peer determines whether the data block set of the target resource file with the total data amount consistent with the standard file size is stored locally.
- the target superpeer can determine whether the data block set of the target resource file with the total data amount consistent with the standard file size is stored locally. It can be understood that the total data amount of the data block set here is the total data amount of all data blocks of the target resource file, and the standard file size of the same resource file should be kept equal to the total data amount of all the data blocks.
- the processing of the target super peer determining the storage status of the data block set of the target resource file may be specifically as follows: the target super peer determines whether the data block set corresponding to the URL is stored locally; if it is, the target super peer determines the data block set Whether the total amount of data is consistent with the standard file size.
- the target superpeer can first use the URL to determine whether the data block set corresponding to the URL is stored locally. If stored, the target super peer can further determine whether the total data amount of the data block set is consistent with the above-mentioned standard file size.
- Step 208 if it is, the target super peer sends a resource ready notification to the Tracker server, otherwise downloads all data blocks of the target resource file according to the URL and the standard file size.
- the target super peer can send a resource ready notification for the target resource file to the Tracker server, and if the target is not stored locally Any data block of the resource file, or the total data volume of the data block collection of the target resource file stored locally is inconsistent with the standard file size, the target super peer can be based on the URL and standard file size resolved by the file specific identification of the target resource file , Download all the data blocks of the target resource file.
- the target super peer can download all data blocks of the target resource file that meet the standard file size in multiple CDN servers.
- the processing of downloading the data block in step 208 may be specifically as follows: the target super peer is obtained from the DNS system The IP list corresponding to the URL; the target super peer downloads all data blocks of the target resource file that meet the standard file size according to the IP addresses of multiple CDN servers included in the IP list.
- the target super peer if the target super peer does not store the data block set of the target resource file whose total data volume is the same as the standard file size, you can first obtain the IP list corresponding to the URL of the target resource file from the DNS system. Contains the IP addresses of multiple CDN servers, each of which provides download services for data blocks of target resource files. After that, the target super peer can download all the data blocks of the target resource file that meet the standard file size according to the IP addresses of the multiple CDN servers.
- the target super peer can query the file size of the target resource file stored in multiple CDN servers one by one to ensure that the downloaded data block meets the standard file size.
- the processing of downloading all data blocks of the target resource file can be as follows: The target super peer traverses the IP list and extracts the IP address of each CDN server contained in the IP list one by one; the target super peer sends a HEAD request with a URL to the CDN server corresponding to the extracted IP address; when a HEAD request is received When the file size carried in the response message is the same as the standard file size, the target super peer downloads all data blocks of the target resource file from the CDN server that sent the response message.
- the target super peer can traverse the IP list and extract the IP addresses of each CDN server included in the IP list one by one. For each extracted IP address, the target super peer can send a HEAD request carrying the URL of the target resource file to the CDN server corresponding to the IP address to query the file length of the resource file corresponding to the URL on the CDN server. In this way, after receiving the response message from the CDN server for the HEAD request, the target super peer can determine whether the file size carried in the response message is consistent with the standard file size of the target resource file.
- the corresponding CDN server sends a HEAD request and performs subsequent processing until the file size carried in the response message fed back by the CDN server is consistent with the standard file size of the target resource file.
- the target super peer can download all data blocks of the target resource file from the CDN server that sent the response message.
- step 209 after downloading all data blocks, the target super peer sends a resource ready notification to the Tracker server.
- the target super peer can send a resource ready notification for the target resource file to the Tracker server. It is not difficult to understand that during the process of downloading the data blocks of the target resource file, the target super peer can determine whether all the data blocks of the target resource file have been downloaded according to the total data amount of all the downloaded data blocks and the above-mentioned standard file size.
- Step 210 when receiving the resource ready notification sent by the target super peer, the Tracker server adds the peer information of the target super peer to the peer list.
- the Tracker server when receiving the resource ready notification sent by the target super peer for the target resource file, the Tracker server may be in the peer list corresponding to the target resource file Add the peer information of the target super peer.
- the target super peer here may be any one or more of the above multiple optional super peers.
- Step 211 After receiving the preset duration of the peer list acquisition request, the Tracker server sends the peer list to the target peer.
- the Tracker server may send the peer list corresponding to the target resource file to the target peer after receiving the preset duration of the peer list acquisition request sent by the target peer.
- step 212 the target peer downloads the target resource file according to the peer information contained in the peer list fed back by the Tracker server.
- the target peer can receive the peer list that the Tracker server obtains the feedback for the peer list, extract the peer information contained in the peer list, and then download the target resource file according to the peer information.
- the target peer may establish a connection with a peer (including ordinary peer and / or super peer) corresponding to each peer information in the peer list, and download data blocks of the target resource file from these peers.
- the target peer can dynamically adjust the download processing of the target resource file according to the download rate, that is, disconnect the slow download or unresponsive peer, establish a connection with the new peer, reduce or cancel the low download rate Requests data blocks from peers, and requests more data blocks from peers with high download rates.
- the target peer may periodically send a peer list acquisition request to the Tracker server. After the tracker server sends the peer list to the target peer, if it receives the resource-ready notification of the new super peer, it can add the peer information of the super peer to the peer list. In this way, when the peer list acquisition request for the target resource file from the target peer is received again, the Tracker server can feed back the latest peer list to the target peer after a preset duration.
- the target peer can generate bitmap information from the standard file size, and download the target resource file according to the bitmap information.
- the process of downloading the target resource file in step 212 can be as follows: the target peer according to the standard file of the target resource file The size and the preset data block size are used to obtain the bitmap information of the target resource file; the target peer downloads the data block of the target resource file according to the bitmap information of the target resource file.
- the target peer before downloading the data block of the target resource file, can calculate the bitmap information of the target resource file (including the data block of the target resource file) according to the standard file size of the target resource file and the preset data block size Quantity and data content corresponding to each data block, etc.). After that, the target peer can download the data block of the target resource file according to the bitmap information of the target resource file and the peer information contained in the peer list.
- the target peer can download the data block of the resource file from the CDN system while downloading the data block of the resource file from the peer.
- the target peer can download the data block of the resource file from the CDN system while downloading the data block of the resource file from the peer.
- the target peer can download the data block of the resource file from the CDN system while downloading the data block of the resource file from the peer.
- the target peer obtains the bitmap information
- the following processing may also exist: the target peer is based on Bitmap information and URL of the target resource file, download the data block of the target resource file from the CDN system.
- the target peer can download the data block of the target resource file through other peers on the P2P network, and according to the URL and bitmap information of the target resource file, from the CDN At the CDN server in the system, download the data block of the target resource file.
- the Tracker server can create ordinary peer lists and super peer lists for super peers and ordinary peers respectively.
- the ordinary peer list can be used to store ordinary peer's peer information
- the super peer list can be used to store super peer's peers. information.
- the Tracker server feeds back the peer list corresponding to the target resource file to the target peer, it can feed back the normal peer list and the super peer list at the same time.
- the target peer downloads the data block of the target resource file according to the peer list, it can preferentially use the peer information of the super peer in the super peer list, establish a connection with the super peer, and download the corresponding data block from the super peer.
- the file size and URL of the target resource file can be notified to the Tracker server, and the Tracker server can forward the above file size and URL to the super peer preset in the P2P network to notify The super peer prepares the data block of the target resource file that satisfies the file size and URL.
- the Tracker server can recommend the super peer to the target peer in the form of a peer list.
- the target peer can download the target from the super peer The data block of the resource file.
- the file size given by the target peer can be used to ensure that the provided data block is effectively available, and belongs to the same resource file as the data block obtained by the target peer through other methods.
- the validity of the resource file downloaded by the target peer can be guaranteed.
- an embodiment of the present invention also provides a client for downloading data blocks of resource files.
- the client is used to:
- the client is specifically used for:
- the client is specifically used for:
- the client is also used for:
- an embodiment of the present invention also provides a tracker server for downloading data blocks of resource files.
- the tracker server is used for:
- Tracker server is also used for:
- Tracker server is also used for:
- the peer list includes a normal peer list used to store peer information of a common peer and a super peer list used to store peer information of a super peer.
- an embodiment of the present invention also provides a super client for downloading data blocks of resource files.
- the super client is used for:
- the super client is specifically used for:
- the super client is specifically used for:
- IP addresses of multiple CDN servers included in the IP list download all data blocks of the target resource file satisfying the standard file size.
- the super client is specifically used for:
- an embodiment of the present invention also provides a system for downloading data blocks of resource files.
- the system includes a client, a tracker server, and a super client, where the functions of the client, tracker server, and super client Reference may be made to steps 201 to 212 above.
- the program may be stored in a computer-readable storage medium.
- the mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种下载资源文件的数据块的方法、设备和***,属于数据传输技术领域。所述方法包括:目标peer需要下载目标资源文件时,可以将目标资源文件的文件大小和URL告知Tracker服务器,Tracker服务器可以向P2P网络中预设的超级peer转发上述文件大小和URL,以通知超级peer准备满足该文件大小和URL的目标资源文件的数据块,超级peer准备就绪后,Tracker服务器可以以peer列表的形式将超级peer推荐给目标peer,进而,目标peer可以从超级peer处下载目标资源文件的数据块。采用本发明,可以保证目标peer下载的资源文件的有效性。
Description
本发明涉及数据传输技术领域,特别涉及一种下载资源文件的数据块的方法、设备和***。
P2P(端对端,peer-to-peer)技术是一种基于对等网络进行数据传输的通讯技术,建立了一种客户端对客户端的直接通信机制,在对等网络中,每一peer既作为客户端,又充当其它peer的服务端。为了减轻CDN服务器的负载压力,同时节省CDN流量成本,目前已在CDN***的基础上引入基于对等网络的传输资源文件的数据块。
CDN服务方可以预先在对等网络中分布式部署大量性能良好的设备作为超级peer,超级peer可以从CDN服务器下载并存储资源文件全部的数据块。这样,当需要获取某一资源文件时,终端可以在从CDN服务器下载数据块的同时,向tracker服务器请求peer列表,tracker服务器可以向终端反馈已部署的存储有相应资源文件的超级peer的peer信息(peer信息至少可以包括peer的IP地址和端口号)。从而,终端可以与超级peer建立连接,并从超级peer处获取其存储的资源文件的数据块。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
CDN服务器中存储的资源文件的数据块可能存在一定量的无效数据块,而由于缓存时间不同,通过同一链接下载的数据块可能会因为版本更新问题而归属于不同的资源文件,导致从CDN服务器和超级peer下载的数据块分属不同的资源文件,故而,下载的资源文件的有效性较低。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种下载资源文件的数据块的方法、设备和***。所述技术方案如下:
第一方面,提供了一种下载资源文件的数据块的方法,所述方法包括:
目标peer接收目标资源文件的下载指令,基于所述目标资源文件的URL获取所述目标资源文件的标准文件大小;
所述目标peer根据所述目标资源文件的URL和标准文件大小生成所述目标资源文件的文件特定标识;
所述目标peer向tracker服务器发送携带有所述目标资源文件的文件特定标识的peer列表获取请求;
所述目标peer根据所述Tracker服务器反馈的peer列表包含的peer信息,下载所述目标资源文件。
可选的,所述基于所述目标资源文件的URL获取所述目标资源文件的标准文件大小,包括:
目标peer基于所述目标资源文件的URL从DNS***获取目标CDN服务器的IP地址;
所述目标peer根据所述IP地址向所述目标CDN服务器发送携带有所述URL的HEAD请求;
所述目标peer获取所述目标CDN服务器针对所述HEAD请求的响应报文携带的所述目标资源文件的标准文件大小。
可选的,所述下载所述目标资源文件,包括:
所述目标peer根据所述目标资源文件的标准文件大小和预设的数据块大小,获取所述目标资源文件的位图信息;
所述目标peer根据所述目标资源文件的位图信息,下载所述目标资源文件的数据块。
可选的,所述获取所述目标资源文件的位图信息之后,还包括:
所述目标peer根据所述目标资源文件的位图信息和URL,从CDN***处下载所述目标资源文件的数据块。
第二方面,提供了一种下载资源文件的数据块的方法,所述方法包括:
Tracker服务器接收目标peer发送的携带有目标资源文件的文件特定标识的peer列表获取请求,建立所述目标资源文件对应的peer列表,其中,所述文件特定标识包含所述目标资源文件的URL和标准文件大小;
所述Tracker服务器向预设的多个可选超级peer发送所述文件特定标识,以使所述可选超级peer下载所述文件特定标识对应的数据块集合;
当接收到目标超级peer发送的资源就绪通知时,所述Tracker服务器在所述peer列表中添加所述目标超级peer的peer信息;
所述Tracker服务器在接收所述peer列表获取请求的预设时长后,向所述目标peer发送所述peer列表。
可选的,所述Tracker服务器接收目标peer发送的携带有目标资源文件的文件特定标识的peer列表获取请求之后,还包括:
Tracker服务器根据所述peer列表获取请求确定所述目标peer的IP地址;
所述Tracker服务器基于所述目标peer的IP地址,确定响应所述目标peer的多个可选超级peer。
可选的,所述建立所述目标资源文件对应的peer列表之后,还包括:
所述Tracker服务器确定当前存储有所述目标资源文件的数据块的多个可选普通peer;
所述Tracker服务器在peer列表中添加所述多个可选普通peer的peer信息。
可选的,所述peer列表包含用于存储普通peer的peer信息的普通peer列表和用于存储超级peer的peer信息的超级peer列表。
第三方面,提供了一种下载资源文件的数据块的方法,所述方法包括:
目标超级peer接收Tracker服务器发送的目标资源文件的文件特定标识,确定所述目标资源文件的URL和标准文件大小;
所述目标超级peer判断本地是否存储有总数据量与所述标准文件大小一致的目标资源文件的数据块集合;
如果是,所述目标超级peer则向所述Tracker服务器发送资源就绪通知,否则根据所述URL和标准文件大小下载所述目标资源文件的全部数据块;
所述目标超级peer在下载完所述全部数据块后,向所述Tracker服务器发送资源就绪通知。
可选的,所述目标超级peer判断本地是否存储有总数据量与所述标准文件大小一致的目标资源文件的数据块集合,包括:
所述目标超级peer判断本地是否存储有所述URL对应的数据块集合;
如果是,所述目标超级peer则判断所述数据块集合的总数据量是否与所述标准文件大小一致。
可选的,所述根据所述URL和标准文件大小下载所述目标资源文件的全部数据块,包括:
所述目标超级peer从DNS***获取所述URL对应的IP列表;
所述目标超级peer根据所述IP列表中包含的多个CDN服务器的IP地址,下载满足所述标准文件大小的所述目标资源文件的全部数据块。
可选的,所述目标超级peer根据所述IP列表中包含的多个CDN服务器的IP地址,从所述多个CDN服务器处下载满足所述文件大小的所述目标资源文件的全部数据块,包括:
所述目标超级peer遍历所述IP列表,逐一提取所述IP列表中包含的每个CDN服务器的IP地址;
所述目标超级peer向提取出的IP地址对应的CDN服务器发送携带有所述URL的HEAD请求;
当接收到的针对所述HEAD请求的响应报文中携带的文件大小与所述标准文件大小一致时,所述目标超级peer从发送所述响应报文的CDN服务器处下载所述目标资源文件的全部数据块。
第四方面,提供了一种下载资源文件的数据块的客户端,所述客户端,用于:
接收目标资源文件的下载指令,基于所述目标资源文件的URL获取所述目标资源文件的标准文件大小;
根据所述目标资源文件的URL和标准文件大小生成所述目标资源文件的文件特定标识;
向tracker服务器发送携带有所述目标资源文件的文件特定标识的peer列表获取请求;
根据所述Tracker服务器反馈的peer列表包含的peer信息,下载所述目标资源文件。
可选的,所述客户端,具体用于:
基于所述目标资源文件的URL从DNS***获取目标CDN服务器的IP地 址;
根据所述IP地址向所述目标CDN服务器发送携带有所述URL的HEAD请求;
获取所述目标CDN服务器针对所述HEAD请求的响应报文携带的所述目标资源文件的标准文件大小。
可选的,所述客户端,具体用于:
根据所述目标资源文件的标准文件大小和预设的数据块大小,获取所述目标资源文件的位图信息;
根据所述目标资源文件的位图信息,下载所述目标资源文件的数据块。
可选的,所述客户端,还用于:
根据所述目标资源文件的位图信息和URL,从CDN***处下载所述目标资源文件的数据块。
第五方面,提供了一种下载资源文件的数据块的Tracker服务器,所述Tracker服务器,用于:
接收目标peer发送的携带有目标资源文件的文件特定标识的peer列表获取请求,建立所述目标资源文件对应的peer列表,其中,所述文件特定标识包含所述目标资源文件的URL和标准文件大小;
向预设的多个可选超级peer发送所述文件特定标识,以使所述可选超级peer下载所述文件特定标识对应的数据块集合;
当接收到目标超级peer发送的资源就绪通知时,在所述peer列表中添加所述目标超级peer的peer信息;
在接收所述peer列表获取请求的预设时长后,向所述目标peer发送所述peer列表。
可选的,所述Tracker服务器,还用于:
根据所述peer列表获取请求确定所述目标peer的IP地址;
基于所述目标peer的IP地址,确定响应所述目标peer的多个可选超级peer。
可选的,所述Tracker服务器,还用于:
确定当前存储有所述目标资源文件的数据块的多个可选普通peer;
在peer列表中添加所述多个可选普通peer的peer信息。
可选的,所述peer列表包含用于存储普通peer的peer信息的普通peer列表和用于存储超级peer的peer信息的超级peer列表。
第六方面,提供了一种下载资源文件的数据块的超级客户端,所述超级客户端,用于:
接收Tracker服务器发送的目标资源文件的文件特定标识,确定所述目标资源文件的URL和标准文件大小;
判断本地是否存储有总数据量与所述标准文件大小一致的目标资源文件的数据块集合;
如果是,则向所述Tracker服务器发送资源就绪通知,否则根据所述URL和标准文件大小下载所述目标资源文件的全部数据块;
在下载完所述全部数据块后,向所述Tracker服务器发送资源就绪通知。
可选的,所述超级客户端,具体用于:
判断本地是否存储有所述URL对应的数据块集合;
如果是,则判断所述数据块集合的总数据量是否与所述标准文件大小一致。
可选的,所述超级客户端,具体用于:
从DNS***获取所述URL对应的IP列表;
根据所述IP列表中包含的多个CDN服务器的IP地址,下载满足所述标准文件大小的所述目标资源文件的全部数据块。
可选的,所述超级客户端,具体用于:
遍历所述IP列表,逐一提取所述IP列表中包含的每个CDN服务器的IP地址;
向提取出的IP地址对应的CDN服务器发送携带有所述URL的HEAD请求;
当接收到的针对所述HEAD请求的响应报文中携带的文件大小与所述标准文件大小一致时,从发送所述响应报文的CDN服务器处下载所述目标资源文件的全部数据块。
第七方面,提供了一种下载资源文件的数据块的***,所述***包括如第四方面所述的客户端,和如第五方面所述的Tracker服务器,以及如第六方面所述的超级客户端。
本发明实施例提供的技术方案带来的有益效果是:
本发明实施例中,目标peer需要下载目标资源文件时,可以将目标资源文件的文件大小和URL告知Tracker服务器,Tracker服务器可以向P2P网络中预设的超级peer转发上述文件大小和URL,以通知超级peer准备满足该文件大小和URL的目标资源文件的数据块,超级peer准备就绪后,Tracker服务器可以以peer列表的形式将超级peer推荐给目标peer,进而,目标peer可以从超级peer处下载目标资源文件的数据块。这样,超级peer向目标peer提供资源文件的数据块时,可以通过目标peer给出的文件大小来保证提供的数据块有效可用,且与目标peer通过其它方式获取的数据块属于同一资源文件,进而可以保证目标peer下载的资源文件的有效性。
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种下载资源文件的数据块的场景框架图;
图2是本发明实施例提供的一种下载资源文件的数据块的方法流程图。
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本发明实施例提供了一种下载资源文件的数据块的方法,该方法可以运用在P2P网络中,并结合CDN***和DNS***共同实现,实现本方法的场景框架可以如图1所示。其中,P2P网络中可以包含大量使用P2P技术下载资源文件的普通peer(即用户使用的客户端),还可以包含由CDN服务方设置的Tracker服务器和分布式部署的大量超级peer。普通peer可以从CDN***和超级peer,以及其它普通peer处下载资源文件的数据块。超级peer可以用于从CDN***处下载资源文件的数据块,并将数据块提供给普通peer。Tracker服务器可以用 于将普通peer的资源文件的下载需求告知给超级peer,并向普通peer提供peer列表。CDN***的CDN服务器中可以以数据块集合的形式存储有大量的资源文件的文件数据。DNS***主要用于将peer向源站发送的资源文件请求引导至指定的CDN服务器。上述所有网络设备中均可以包括处理器、存储器和收发器,处理器可以用于进行下述流程中的下载资源文件的数据块的处理,存储器可以用于存储下述处理过程中需要的数据以及产生的数据,收发器可以用于接收和发送下述处理过程中的相关数据。
下面将结合具体实施方式,对图2所示的处理流程进行详细的说明,内容可以如下:
步骤201,目标peer接收目标资源文件的下载指令,基于目标资源文件的URL获取目标资源文件的标准文件大小。
在实施中,用户可以在客户端上安装通过P2P技术下载资源文件的资源下载应用,客户端在运行该资源下载应用实现下载资源文件的过程中,可以调用该资源下载应用内嵌的CDN服务方提供的SDK,从而实现后续下载资源文件的数据块的处理。具体情况下,客户端(后续称为目标peer)运行资源下载应用后,资源下载应用的资源库界面中可以显示有大量支持P2P技术下载的资源文件的文件标识,当用户想要下载某一资源文件(如目标资源文件)时,用户可以点击相应的目标资源文件的文件标识,进而目标peer可以接收到目标资源文件的下载指令,并从该下载指令中获取到目标资源文件的URL。之后,目标peer可以基于目标资源文件的URL,获取目标资源文件的标准文件大小。
可选的,目标peer可以通过HEAD请求从CDN***获取资源文件的标准文件大小,相应的,步骤201中获取标准文件大小的处理可以如下:目标peer基于目标资源文件的URL从DNS***获取目标CDN服务器的IP地址;目标peer根据IP地址向目标CDN服务器发送携带有URL的HEAD请求;目标peer获取目标CDN服务器针对HEAD请求的响应报文携带的目标资源文件的标准文件大小。
在实施中,目标peer在由目标资源文件的下载指令获取到目标资源文件的URL之后,可以向DNS***查询该URL对应的IP列表,并从IP列表中选取一个CDN服务器(可称为目标CDN服务器)的IP地址。之后,目标peer可以根据该IP地址向目标CDN服务器发送携带有目标资源文件的URL的HEAD请 求,以查询该URL对应的资源文件的标准文件大小。之后,目标资源文件可以接收到目标CDN服务反馈的针对上述HEAD请求的响应报文,提取该响应报文携带的目标资源文件的标准文件大小。
步骤202,目标peer根据目标资源文件的URL和标准文件大小生成目标资源文件的文件特定标识。
在实施中,目标peer在获取到目标资源的标准文件大小之后,可以根据该标准文件大小和目标资源文件的URL生成目标资源文件的文件特定标识,例如,文件特定标识可以为“www.xxxx.com/test/123.apk/1024MB”,其中,www.xxxx.com/test/123.apk为URL,1024MB为标准文件大小。此外,目标资源文件的文件特定标识还可以包括目标资源文件的资源提供者标识和目标资源文件的版本号等文件信息,例如,资源提供者标识为yyy,版本号为1.0.0,则文件特定标识可以为“yyy/www.xxxx.com/test/123.apk/1024MB/1.0.0”。
步骤203,目标peer向tracker服务器发送携带有目标资源文件的文件特定标识的peer列表获取请求。
在实施中,目标peer在生成目标资源文件的文件特定标识之后,可以根据预先存储的tracker服务器的网络地址,向tracker服务器发送携带有上述目标资源文件的文件特定标识的peer列表获取请求。
步骤204,Tracker服务器接收目标peer发送的携带有目标资源文件的文件特定标识的peer列表获取请求,建立目标资源文件对应的peer列表。
在实施中,Tracker服务器可以接收目标peer发送的peer列表获取请求,并提取peer列表获取请求中携带的目标资源文件的文件特定标识,同时,Tracker服务器可以建立目标资源文件对应的peer列表。
可选的,Tracker服务器可以根据目标peer的IP地址,选取可选超级peer,相应,步骤204之后可以存在如下处理:Tracker服务器根据peer列表获取请求确定目标peer的IP地址;Tracker服务器基于目标peer的IP地址,确定响应目标peer的多个可选超级peer。
在实施中,Tracker服务器在接收到目标peer发送的peer列表获取请求后,可以根据该peer列表获取请求确定目标peer的IP地址,之后,Tracker服务器可以基于目标peer的IP地址,在P2P网络中选取与目标peer之间的网络质量较好(如物理位置与目标peer较近,或者与目标peer处于同网段)的用于响应 目标peer的多个可选超级peer。
可选的,peer列表中可以包含存储有目标资源文件的数据块的普通peer的peer信息,相应的,步骤204中创建peer列表后可以包括如下处理:Tracker服务器确定当前存储有目标资源文件的数据块的多个可选普通peer;Tracker服务器在peer列表中添加多个可选普通peer的peer信息。
在实施中,P2P网络中,普通peer在下载资源文件的数据块后,可以周期性通知Tracker服务器其上存储有资源文件的数据块。故而,对于目标资源文件,Tracker服务器在创建目标资源文件对应的peer列表后,可以先确定当前存储有目标资源文件的数据块的多个可选普通peer,然后将这些可选普通peer的peer信息添加至上述peer列表中。值得一提的是,Tracker服务器确定可选普通peer的处理,可以参考上述确定可选超级peer的处理,此处不再赘述。
步骤205,Tracker服务器向预设的多个可选超级peer发送文件特定标识。
在实施中,Tracker服务器在获取到目标资源文件的文件特定标识后,可以先在P2P网络中预设的超级peer中确定多个可选超级peer,然后可以将文件特定标识分发给每个可选超级peer。
步骤206,目标超级peer接收Tracker服务器发送的目标资源文件的文件特定标识,确定目标资源文件的URL和标准文件大小。
在实施中,目标超级peer在运行的过程中,如果接收到Tracker服务器发送的目标资源文件的文件特定标识,则可以对该文件特定标识进行解析,从而得到目标资源文件的URL和标准文件大小。
步骤207,目标超级peer判断本地是否存储有总数据量与标准文件大小一致的目标资源文件的数据块集合。
在实施中,目标超级peer在解析出目标超级peer的URL和标准文件大小后,可以将判断本地是否存储有总数据量与标准文件大小一致的目标资源文件的数据块集合。可以理解,此处数据块集合的总数据量是目标资源文件的全部数据块的总数据量,同一资源文件的标准文件大小应与其全部数据块的总数据量保持相等。
可选的,目标超级peer判断目标资源文件的数据块集合的存储情况的处理具体可以如下:目标超级peer判断本地是否存储有URL对应的数据块集合;如果是,目标超级peer则判断数据块集合的总数据量是否与标准文件大小一致。
在实施中,目标超级peer在解析出目标超级peer的URL和标准文件大小后,可以先使用URL判断本地是否存储有该URL对应的数据块集合。如果存储有,目标超级peer则可以进一步判断该数据块集合的总数据量是否与上述标准文件大小一致。
步骤208,如果是,目标超级peer则向Tracker服务器发送资源就绪通知,否则根据URL和标准文件大小下载目标资源文件的全部数据块。
在实施中,如果本地存储有总数据量与标准文件大小一致的目标资源文件的数据块集合,目标超级peer则可以向Tracker服务器发送针对目标资源文件的资源就绪通知,而如果本地未存储有目标资源文件的任何数据块,或者本地存储的目标资源文件的数据块集合的总数据量与标准文件大小不一致,目标超级peer则可以根据通过目标资源文件的文件特定标识解析出的URL和标准文件大小,下载目标资源文件的全部数据块。
可选的,目标超级peer可以在多个CDN服务器中下载满足标准文件大小的目标资源文件的全部数据块,相应的,步骤208中下载数据块的处理可以具体如下:目标超级peer从DNS***获取URL对应的IP列表;目标超级peer根据IP列表中包含的多个CDN服务器的IP地址,下载满足标准文件大小的目标资源文件的全部数据块。
在实施中,目标超级peer如果未存储有总数据量与标准文件大小一致的目标资源文件的数据块集合,则可以先从DNS***获取目标资源文件的URL对应的IP列表,该IP列表中可以包含有多个CDN服务器的IP地址,其中的每个CDN服务器均提供目标资源文件的数据块下载服务。之后,目标超级peer可以根据上述多个CDN服务器的IP地址,下载满足标准文件大小的目标资源文件的全部数据块。
可选的,目标超级peer可以逐一查询多个CDN服务器存储的目标资源文件的文件大小,以保证下载的数据块满足标准文件大小,相应的,下载目标资源文件的全部数据块的处理可以如下:目标超级peer遍历IP列表,逐一提取IP列表中包含的每个CDN服务器的IP地址;目标超级peer向提取出的IP地址对应的CDN服务器发送携带有URL的HEAD请求;当接收到的针对HEAD请求的响应报文中携带的文件大小与标准文件大小一致时,目标超级peer从发送响应报文的CDN服务器处下载目标资源文件的全部数据块。
在实施中,目标超级peer在从DNS***获取到URL对应的IP列表后,可以遍历该IP列表,逐一提取IP列表中包含的每个CDN服务器的IP地址。对于提取出的每个IP地址,目标超级peer可以向该IP地址对应的CDN服务器发送携带有目标资源文件的URL的HEAD请求,以查询该CDN服务器上URL对应的资源文件的文件长度。这样,在接收到CDN服务器针对HEAD请求的响应报文后,目标超级peer可以判断响应报文中携带的文件大小与目标资源文件的标准文件大小是否一致,如果不一致,则可以向下一个IP地址对应的CDN服务器发送HEAD请求,并执行后续处理,直至CDN服务器反馈的响应报文中携带的文件大小与目标资源文件的标准文件大小一致。当响应报文中携带的文件大小与目标资源文件的标准文件大小一致时,目标超级peer则可以从发送该响应报文的CDN服务器处下载目标资源文件的全部数据块。
步骤209,目标超级peer在下载完全部数据块后,向Tracker服务器发送资源就绪通知。
在实施中,目标超级peer在下载完目标资源文件的全部数据块之后,可以向Tracker服务器发送针对目标资源文件的资源就绪通知。不难理解,目标超级peer在下载目标资源文件的数据块的过程中,可以根据已下载的所有数据块的总数据量和上述标准文件大小来判断是否已下载完目标资源文件的全部数据块。
步骤210,当接收到目标超级peer发送的资源就绪通知时,Tracker服务器在peer列表中添加目标超级peer的peer信息。
在实施中,Tracker服务器在向多个可选超级peer发送文件特定标识之后,当接收到目标超级peer发送的针对目标资源文件的资源就绪通知时,Tracker服务器可以在目标资源文件对应的peer列表中添加目标超级peer的peer信息。此处的目标超级peer可以是上述多个可选超级peer中的任意一个或多个。
步骤211,Tracker服务器在接收peer列表获取请求的预设时长后,向目标peer发送peer列表。
在实施中,Tracker服务器在接收到目标peer发送的peer列表获取请求的预设时长后,可以向目标peer发送目标资源文件对应的peer列表。
步骤212,目标peer根据Tracker服务器反馈的peer列表包含的peer信息,下载目标资源文件。
在实施中,目标peer可以接收Tracker服务器针对peer列表获取请求反馈 的peer列表,提取peer列表包含的peer信息,进而可以根据该peer信息,下载目标资源文件。具体的,目标peer可以与peer列表中每个peer信息对应的peer(包括普通peer和/或超级peer)建立连接,并从这些peer下载目标资源文件的数据块。在下载过程中,目标peer可以根据下载速率动态调整对目标资源文件的下载处理,即断开与下载缓慢或者无响应的peer的连接,与新的peer建立连接,减少或取消发向下载速率低的peer的数据块请求,向下载速率高的peer请求更多的数据块等。
需要说明的是,在完成目标资源文件的下载之前,目标peer可以周期性地向Tracker服务器发送peer列表获取请求。而Tracker服务器在向目标peer发送peer列表后,如果接收到了新的超级peer的资源就绪通知,可以在peer列表中添加该超级peer的peer信息。这样,当再次接收到目标peer发来的针对目标资源文件的peer列表获取请求,Tracker服务器可以在预设时长后向目标peer反馈最新的peer列表。
可选的,目标peer可以由标准文件大小生成位图信息,并依位图信息下载目标资源文件,相应的,步骤212中下载目标资源文件的处理可以如下:目标peer根据目标资源文件的标准文件大小和预设的数据块大小,获取目标资源文件的位图信息;目标peer根据目标资源文件的位图信息,下载目标资源文件的数据块。
在实施中,在下载目标资源文件的数据块前,目标peer可以根据目标资源文件的标准文件大小和预设的数据块大小,计算出目标资源文件的位图信息(包括目标资源文件的数据块数量和每个数据块对应的数据内容等)。之后,目标peer可以根据目标资源文件的位图信息和peer列表中包含的peer信息,下载目标资源文件的数据块。
可选的,目标peer在从peer下载资源文件的数据块的同时,可以从CDN***下载资源文件的数据块,相应的,目标peer在获取到位图信息之后,还可以存在如下处理:目标peer根据目标资源文件的位图信息和URL,从CDN***处下载目标资源文件的数据块。
在实施中,目标peer在计算出目标资源文件的位图信息之后,在通过P2P网络的其它peer处下载目标资源文件的数据块的同时,可以根据目标资源文件的URL和位图信息,从CDN***中的CDN服务器处,下载目标资源文件的数 据块。
可选的,Tracker服务器可以针对超级peer和普通peer分别创建的普通peer列表和超级peer列表,其中,普通peer列表可以用于存储普通peer的peer信息,超级peer列表可以用于存储超级peer的peer信息。相应的,Tracker服务器向目标peer反馈目标资源文件对应的peer列表时,可以同时反馈普通peer列表和超级peer列表。而目标peer在根据peer列表下载目标资源文件的数据块时,可以优先使用超级peer列表中超级peer的peer信息,与超级peer建立连接,并从超级peer处下载相应的数据块。
本发明实施例中,目标peer需要下载目标资源文件时,可以将目标资源文件的文件大小和URL告知Tracker服务器,Tracker服务器可以向P2P网络中预设的超级peer转发上述文件大小和URL,以通知超级peer准备满足该文件大小和URL的目标资源文件的数据块,超级peer准备就绪后,Tracker服务器可以以peer列表的形式将超级peer推荐给目标peer,进而,目标peer可以从超级peer处下载目标资源文件的数据块。这样,超级peer向目标peer提供资源文件的数据块时,可以通过目标peer给出的文件大小来保证提供的数据块有效可用,且与目标peer通过其它方式获取的数据块属于同一资源文件,进而可以保证目标peer下载的资源文件的有效性。
基于相同的技术构思,本发明实施例还提供了一种下载资源文件的数据块的客户端,所述客户端,用于:
接收目标资源文件的下载指令,基于所述目标资源文件的URL获取所述目标资源文件的标准文件大小;
根据所述目标资源文件的URL和标准文件大小生成所述目标资源文件的文件特定标识;
向tracker服务器发送携带有所述目标资源文件的文件特定标识的peer列表获取请求;
根据所述Tracker服务器反馈的peer列表包含的peer信息,下载所述目标资源文件。
可选的,所述客户端,具体用于:
基于所述目标资源文件的URL从DNS***获取目标CDN服务器的IP地 址;
根据所述IP地址向所述目标CDN服务器发送携带有所述URL的HEAD请求;
获取所述目标CDN服务器针对所述HEAD请求的响应报文携带的所述目标资源文件的标准文件大小。
可选的,所述客户端,具体用于:
根据所述目标资源文件的标准文件大小和预设的数据块大小,获取所述目标资源文件的位图信息;
根据所述目标资源文件的位图信息,下载所述目标资源文件的数据块。
可选的,所述客户端,还用于:
根据所述目标资源文件的位图信息和URL,从CDN***处下载所述目标资源文件的数据块。
基于相同的技术构思,本发明实施例还提供了一种下载资源文件的数据块的Tracker服务器,所述Tracker服务器,用于:
接收目标peer发送的携带有目标资源文件的文件特定标识的peer列表获取请求,建立所述目标资源文件对应的peer列表,其中,所述文件特定标识包含所述目标资源文件的URL和标准文件大小;
向预设的多个可选超级peer发送所述文件特定标识,以使所述可选超级peer下载所述文件特定标识对应的数据块集合;
当接收到目标超级peer发送的资源就绪通知时,在所述peer列表中添加所述目标超级peer的peer信息;
在接收所述peer列表获取请求的预设时长后,向所述目标peer发送所述peer列表。
可选的,所述Tracker服务器,还用于:
根据所述peer列表获取请求确定所述目标peer的IP地址;
基于所述目标peer的IP地址,确定响应所述目标peer的多个可选超级peer。
可选的,所述Tracker服务器,还用于:
确定当前存储有所述目标资源文件的数据块的多个可选普通peer;
在peer列表中添加所述多个可选普通peer的peer信息。
可选的,所述peer列表包含用于存储普通peer的peer信息的普通peer列表和用于存储超级peer的peer信息的超级peer列表。
基于相同的技术构思,本发明实施例还提供了一种下载资源文件的数据块的超级客户端,所述超级客户端,用于:
接收Tracker服务器发送的目标资源文件的文件特定标识,确定所述目标资源文件的URL和标准文件大小;
判断本地是否存储有总数据量与所述标准文件大小一致的目标资源文件的数据块集合;
如果是,则向所述Tracker服务器发送资源就绪通知,否则根据所述URL和标准文件大小下载所述目标资源文件的全部数据块;
在下载完所述全部数据块后,向所述Tracker服务器发送资源就绪通知。
可选的,所述超级客户端,具体用于:
判断本地是否存储有所述URL对应的数据块集合;
如果是,则判断所述数据块集合的总数据量是否与所述标准文件大小一致。
可选的,所述超级客户端,具体用于:
从DNS***获取所述URL对应的IP列表;
根据所述IP列表中包含的多个CDN服务器的IP地址,下载满足所述标准文件大小的所述目标资源文件的全部数据块。
可选的,所述超级客户端,具体用于:
遍历所述IP列表,逐一提取所述IP列表中包含的每个CDN服务器的IP地址;
向提取出的IP地址对应的CDN服务器发送携带有所述URL的HEAD请求;
当接收到的针对所述HEAD请求的响应报文中携带的文件大小与所述标准文件大小一致时,从发送所述响应报文的CDN服务器处下载所述目标资源文件的全部数据块。
基于相同的技术构思,本发明实施例还提供了一种下载资源文件的数据块的***,所述***包括客户端、Tracker服务器和超级客户端,其中,客户端、Tracker服务器和超级客户端的功能可以参考上述步骤201至步骤212。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (25)
- 一种下载资源文件的数据块的方法,其特征在于,所述方法包括:目标peer接收目标资源文件的下载指令,基于所述目标资源文件的URL获取所述目标资源文件的标准文件大小;所述目标peer根据所述目标资源文件的URL和标准文件大小生成所述目标资源文件的文件特定标识;所述目标peer向tracker服务器发送携带有所述目标资源文件的文件特定标识的peer列表获取请求;所述目标peer根据所述Tracker服务器反馈的peer列表包含的peer信息,下载所述目标资源文件。
- 根据权利要求1所述的方法,其特征在于,所述基于所述目标资源文件的URL获取所述目标资源文件的标准文件大小,包括:目标peer基于所述目标资源文件的URL从DNS***获取目标CDN服务器的IP地址;所述目标peer根据所述IP地址向所述目标CDN服务器发送携带有所述URL的HEAD请求;所述目标peer获取所述目标CDN服务器针对所述HEAD请求的响应报文携带的所述目标资源文件的标准文件大小。
- 根据权利要求1所述的方法,其特征在于,所述下载所述目标资源文件,包括:所述目标peer根据所述目标资源文件的标准文件大小和预设的数据块大小,获取所述目标资源文件的位图信息;所述目标peer根据所述目标资源文件的位图信息,下载所述目标资源文件的数据块。
- 根据权利要求3所述的方法,其特征在于,所述获取所述目标资源文件的位图信息之后,还包括:所述目标peer根据所述目标资源文件的位图信息和URL,从CDN***处下载所述目标资源文件的数据块。
- 一种下载资源文件的数据块的方法,其特征在于,所述方法包括:Tracker服务器接收目标peer发送的携带有目标资源文件的文件特定标识的peer列表获取请求,建立所述目标资源文件对应的peer列表,其中,所述文件特定标识包含所述目标资源文件的URL和标准文件大小;所述Tracker服务器向预设的多个可选超级peer发送所述文件特定标识,以使所述可选超级peer下载所述文件特定标识对应的数据块集合;当接收到目标超级peer发送的资源就绪通知时,所述Tracker服务器在所述peer列表中添加所述目标超级peer的peer信息;所述Tracker服务器在接收所述peer列表获取请求的预设时长后,向所述目标peer发送所述peer列表。
- 根据权利要求5所述的方法,其特征在于,所述Tracker服务器接收目标peer发送的携带有目标资源文件的文件特定标识的peer列表获取请求之后,还包括:Tracker服务器根据所述peer列表获取请求确定所述目标peer的IP地址;所述Tracker服务器基于所述目标peer的IP地址,确定响应所述目标peer的多个可选超级peer。
- 根据权利要求5所述的方法,其特征在于,所述建立所述目标资源文件对应的peer列表之后,还包括:所述Tracker服务器确定当前存储有所述目标资源文件的数据块的多个可选普通peer;所述Tracker服务器在peer列表中添加所述多个可选普通peer的peer信息。
- 根据权利要求5-7任一项所述的方法,其特征在于,所述peer列表包含用于存储普通peer的peer信息的普通peer列表和用于存储超级peer的peer信息的超级peer列表。
- 一种下载资源文件的数据块的方法,其特征在于,所述方法包括:目标超级peer接收Tracker服务器发送的目标资源文件的文件特定标识,确定所述目标资源文件的URL和标准文件大小;所述目标超级peer判断本地是否存储有总数据量与所述标准文件大小一致的目标资源文件的数据块集合;如果是,所述目标超级peer则向所述Tracker服务器发送资源就绪通知,否则根据所述URL和标准文件大小下载所述目标资源文件的全部数据块;所述目标超级peer在下载完所述全部数据块后,向所述Tracker服务器发送资源就绪通知。
- 根据权利要求9所述的方法,其特征在于,所述目标超级peer判断本地是否存储有总数据量与所述标准文件大小一致的目标资源文件的数据块集合,包括:所述目标超级peer判断本地是否存储有所述URL对应的数据块集合;如果是,所述目标超级peer则判断所述数据块集合的总数据量是否与所述标准文件大小一致。
- 根据权利要求9所述的方法,其特征在于,所述根据所述URL和标准文件大小下载所述目标资源文件的全部数据块,包括:所述目标超级peer从DNS***获取所述URL对应的IP列表;所述目标超级peer根据所述IP列表中包含的多个CDN服务器的IP地址,下载满足所述标准文件大小的所述目标资源文件的全部数据块。
- 根据权利要求11所述的方法,其特征在于,所述目标超级peer根据所述IP列表中包含的多个CDN服务器的IP地址,从所述多个CDN服务器处下载满足所述文件大小的所述目标资源文件的全部数据块,包括:所述目标超级peer遍历所述IP列表,逐一提取所述IP列表中包含的每个CDN服务器的IP地址;所述目标超级peer向提取出的IP地址对应的CDN服务器发送携带有所述 URL的HEAD请求;当接收到的针对所述HEAD请求的响应报文中携带的文件大小与所述标准文件大小一致时,所述目标超级peer从发送所述响应报文的CDN服务器处下载所述目标资源文件的全部数据块。
- 一种下载资源文件的数据块的客户端,其特征在于,所述客户端,用于:接收目标资源文件的下载指令,基于所述目标资源文件的URL获取所述目标资源文件的标准文件大小;根据所述目标资源文件的URL和标准文件大小生成所述目标资源文件的文件特定标识;向tracker服务器发送携带有所述目标资源文件的文件特定标识的peer列表获取请求;根据所述Tracker服务器反馈的peer列表包含的peer信息,下载所述目标资源文件。
- 根据权利要求13所述的客户端,其特征在于,所述客户端,具体用于:基于所述目标资源文件的URL从DNS***获取目标CDN服务器的IP地址;根据所述IP地址向所述目标CDN服务器发送携带有所述URL的HEAD请求;获取所述目标CDN服务器针对所述HEAD请求的响应报文携带的所述目标资源文件的标准文件大小。
- 根据权利要求13所述的客户端,其特征在于,所述客户端,具体用于:根据所述目标资源文件的标准文件大小和预设的数据块大小,获取所述目标资源文件的位图信息;根据所述目标资源文件的位图信息,下载所述目标资源文件的数据块。
- 根据权利要求15所述的客户端,其特征在于,所述客户端,还用于:根据所述目标资源文件的位图信息和URL,从CDN***处下载所述目标资源文件的数据块。
- 一种下载资源文件的数据块的Tracker服务器,其特征在于,所述Tracker服务器,用于:接收目标peer发送的携带有目标资源文件的文件特定标识的peer列表获取请求,建立所述目标资源文件对应的peer列表,其中,所述文件特定标识包含所述目标资源文件的URL和标准文件大小;向预设的多个可选超级peer发送所述文件特定标识,以使所述可选超级peer下载所述文件特定标识对应的数据块集合;当接收到目标超级peer发送的资源就绪通知时,在所述peer列表中添加所述目标超级peer的peer信息;在接收所述peer列表获取请求的预设时长后,向所述目标peer发送所述peer列表。
- 根据权利要求17所述的Tracker服务器,其特征在于,所述Tracker服务器,还用于:根据所述peer列表获取请求确定所述目标peer的IP地址;基于所述目标peer的IP地址,确定响应所述目标peer的多个可选超级peer。
- 根据权利要求17所述的Tracker服务器,其特征在于,所述Tracker服务器,还用于:确定当前存储有所述目标资源文件的数据块的多个可选普通peer;在peer列表中添加所述多个可选普通peer的peer信息。
- 根据权利要求17-19任一项所述的Tracker服务器,其特征在于,所述peer列表包含用于存储普通peer的peer信息的普通peer列表和用于存储超级peer的peer信息的超级peer列表。
- 一种下载资源文件的数据块的超级客户端,其特征在于,所述超级客 户端,用于:接收Tracker服务器发送的目标资源文件的文件特定标识,确定所述目标资源文件的URL和标准文件大小;判断本地是否存储有总数据量与所述标准文件大小一致的目标资源文件的数据块集合;如果是,则向所述Tracker服务器发送资源就绪通知,否则根据所述URL和标准文件大小下载所述目标资源文件的全部数据块;在下载完所述全部数据块后,向所述Tracker服务器发送资源就绪通知。
- 根据权利要求21所述的超级客户端,其特征在于,所述超级客户端,具体用于:判断本地是否存储有所述URL对应的数据块集合;如果是,则判断所述数据块集合的总数据量是否与所述标准文件大小一致。
- 根据权利要求21所述的超级客户端,其特征在于,所述超级客户端,具体用于:从DNS***获取所述URL对应的IP列表;根据所述IP列表中包含的多个CDN服务器的IP地址,下载满足所述标准文件大小的所述目标资源文件的全部数据块。
- 根据权利要求23所述的超级客户端,其特征在于,所述超级客户端,具体用于:遍历所述IP列表,逐一提取所述IP列表中包含的每个CDN服务器的IP地址;向提取出的IP地址对应的CDN服务器发送携带有所述URL的HEAD请求;当接收到的针对所述HEAD请求的响应报文中携带的文件大小与所述标准文件大小一致时,从发送所述响应报文的CDN服务器处下载所述目标资源文件的全部数据块。
- 一种下载资源文件的数据块的***,其特征在于,所述***包括如权 利要求13至16中任一项所述的客户端,和如权利要求17至20中任一项所述的Tracker服务器,以及如权利要求21至24中任一项所述的超级客户端。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP18939294.7A EP3876492B1 (en) | 2018-11-07 | 2018-12-07 | Method, apparatus, and system for downloading data block of resource file |
US17/284,767 US11343306B2 (en) | 2018-11-07 | 2018-12-07 | Method, device and system for downloading data block of resource file |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811321407.9 | 2018-11-07 | ||
CN201811321407.9A CN109347968B (zh) | 2018-11-07 | 2018-11-07 | 一种下载资源文件的数据块的方法、设备和*** |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020093504A1 true WO2020093504A1 (zh) | 2020-05-14 |
Family
ID=65314519
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2018/119886 WO2020093504A1 (zh) | 2018-11-07 | 2018-12-07 | 一种下载资源文件的数据块的方法、设备和*** |
Country Status (4)
Country | Link |
---|---|
US (1) | US11343306B2 (zh) |
EP (1) | EP3876492B1 (zh) |
CN (1) | CN109347968B (zh) |
WO (1) | WO2020093504A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110048906B (zh) * | 2019-03-27 | 2021-04-02 | 网宿科技股份有限公司 | 一种判断节点传输质量的方法、***、装置及服务器 |
US10917497B2 (en) | 2019-03-27 | 2021-02-09 | Wangsu Science & Technology Co., Ltd. | Method, system, device and server for determining transmission quality of node |
CN111200657B (zh) * | 2020-01-03 | 2021-08-27 | 网宿科技股份有限公司 | 一种管理资源状态信息的方法和资源下载*** |
US11102289B2 (en) | 2020-01-03 | 2021-08-24 | Wangsu Science & Technology Co., Ltd. | Method for managing resource state information and system for downloading resource |
CN111930505B (zh) * | 2020-08-10 | 2021-07-02 | 建投数据科技(山东)有限公司 | 大数据平台的数据资源管理方法及***、服务器及介质 |
CN112637262B (zh) * | 2020-11-18 | 2022-12-02 | 网宿科技股份有限公司 | 一种内容刷新方法和装置 |
CN112486783B (zh) * | 2020-11-25 | 2022-09-27 | 建信金融科技有限责任公司 | 一种进度条的显示方法和装置 |
EP4075691B1 (en) * | 2021-02-20 | 2024-05-01 | Wangsu Science & Technology Co., Ltd. | Resource requesting method and terminal |
CN112968959B (zh) * | 2021-02-20 | 2022-11-04 | 网宿科技股份有限公司 | 一种资源请求方法及终端 |
US20230198645A1 (en) * | 2021-12-21 | 2023-06-22 | Dish Network Technologies India Private Limited | Methods, devices, and systems for distributing content in community of over-the-air broadcast content receivers |
CN115118711A (zh) * | 2022-06-06 | 2022-09-27 | 蚂蚁区块链科技(上海)有限公司 | 一种文件传输的方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120136725A1 (en) * | 2002-08-12 | 2012-05-31 | David S. Morganstein | Targeted media advertising over networks |
CN102833293A (zh) * | 2011-06-17 | 2012-12-19 | 腾讯科技(深圳)有限公司 | P2sp网络中资源下载的方法及客户端 |
CN103986747A (zh) * | 2014-04-14 | 2014-08-13 | 曦威胜科技开发(深圳)有限公司 | P2p协议中文件共享下载方法 |
CN107920258A (zh) * | 2016-10-11 | 2018-04-17 | ***通信有限公司研究院 | 一种数据处理方法及装置 |
Family Cites Families (82)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6337715B1 (en) * | 1997-07-04 | 2002-01-08 | Matsushita Electric Industrial Co., Ltd. | Broadcasting reception apparatus and data broadcasting method |
US6920110B2 (en) * | 2001-02-14 | 2005-07-19 | Microsoft Corporation | System and method for transferring data over a network |
US20020049760A1 (en) * | 2000-06-16 | 2002-04-25 | Flycode, Inc. | Technique for accessing information in a peer-to-peer network |
US7627897B2 (en) * | 2001-01-03 | 2009-12-01 | Portauthority Technologies Inc. | Method and apparatus for a reactive defense against illegal distribution of multimedia content in file sharing networks |
US20040107242A1 (en) * | 2002-12-02 | 2004-06-03 | Microsoft Corporation | Peer-to-peer content broadcast transfer mechanism |
US20040255003A1 (en) * | 2003-06-16 | 2004-12-16 | Tecu Kirk S. | System and method for reordering the download priority of markup language objects |
US20050091167A1 (en) * | 2003-10-25 | 2005-04-28 | Macrovision Corporation | Interdiction of unauthorized copying in a decentralized network |
US20050203851A1 (en) * | 2003-10-25 | 2005-09-15 | Macrovision Corporation | Corruption and its deterrence in swarm downloads of protected files in a file sharing network |
US7756051B2 (en) * | 2004-07-02 | 2010-07-13 | Microsoft Corporation | Content distribution using network coding |
US7593333B2 (en) * | 2004-07-07 | 2009-09-22 | Microsoft Corporation | Efficient one-to-many content distribution in a peer-to-peer computer network |
JP2006126894A (ja) * | 2004-10-26 | 2006-05-18 | Sony Corp | コンテンツ配信方法、プログラムおよび情報処理装置 |
US8046426B2 (en) * | 2004-12-30 | 2011-10-25 | Massachusetts Institute Of Technology | Random linear coding approach to distributed data storage |
JP4103892B2 (ja) * | 2005-01-26 | 2008-06-18 | オンキヨー株式会社 | ピアツーピアコンテンツ配信システム |
US20060212542A1 (en) * | 2005-03-15 | 2006-09-21 | 1000 Oaks Hu Lian Technology Development Co., Ltd. | Method and computer-readable medium for file downloading in a peer-to-peer network |
US20060212584A1 (en) * | 2005-03-15 | 2006-09-21 | Qian Xiang Shi Ji (Beijing) Technology Development Co. Ltd. | Method and system for accelerating downloading of web page content by a peer-to-peer network |
US7920572B2 (en) * | 2005-09-20 | 2011-04-05 | Cisco Technology, Inc. | Modifying operation of peer-to-peer networks based on integrating network routing information |
US20070094279A1 (en) * | 2005-10-21 | 2007-04-26 | Nokia Corporation | Service provision in peer-to-peer networking environment |
KR101359081B1 (ko) * | 2006-06-27 | 2014-02-05 | 톰슨 라이센싱 | 성능 인식 p2p 콘텐트 온 디맨드 |
US7558797B2 (en) * | 2006-06-30 | 2009-07-07 | Microsoft Corporation | Metadata structures for mass P2P file sharing |
US20080005195A1 (en) * | 2006-06-30 | 2008-01-03 | Microsoft Corporation | Versioning synchronization for mass p2p file sharing |
US20080016201A1 (en) * | 2006-07-15 | 2008-01-17 | Solid State Networks, Inc. | Methods and apparatus for transferring data |
US9325786B2 (en) * | 2006-07-27 | 2016-04-26 | The Hong Kong University Of Science And Technology | Peer-to-peer interactive media-on-demand |
GB2440762B (en) * | 2006-08-11 | 2011-11-02 | Cachelogic Ltd | Content distribution network |
EP2055080A4 (en) * | 2006-08-21 | 2011-11-30 | Ericsson Telefon Ab L M | DISTRIBUTED SERVER NETWORK FOR PROVIDING TRIPLE AND PLAY SERVICES FOR END USER |
EP1914643A1 (en) * | 2006-10-19 | 2008-04-23 | Motorola, Inc. | Method and apparatus for filtering peer-to-peer network searches for limited capability devices |
US20080098123A1 (en) * | 2006-10-24 | 2008-04-24 | Microsoft Corporation | Hybrid Peer-to-Peer Streaming with Server Assistance |
US7996550B2 (en) * | 2006-11-30 | 2011-08-09 | Red Hat, Inc. | Peer-to-peer download with quality of service fallback |
US8775562B2 (en) * | 2006-12-05 | 2014-07-08 | International Business Machines Corporation | Mapping file fragments to file information and tagging in a segmented file sharing system |
US7814146B2 (en) * | 2006-12-05 | 2010-10-12 | International Business Machines Corporation | File fragment trading based on rarity values in a segmented file sharing system |
ES2360647T3 (es) * | 2006-12-08 | 2011-06-07 | Deutsche Telekom Ag | Método y sistema para la diseminación del contenido igual a igual. |
CN101026543A (zh) * | 2007-03-28 | 2007-08-29 | 华为技术有限公司 | 点到点p2p内容共享的方法及*** |
WO2008144530A2 (en) | 2007-05-17 | 2008-11-27 | Noank Media, Inc. | Methods, media, and systems for tracking, encrypting, and determining content usage, and identifying large content files |
US20080288411A1 (en) * | 2007-05-17 | 2008-11-20 | Devon Copley | Methods, media, and systems for tracking and encrypting content usage |
US8122488B2 (en) * | 2007-05-18 | 2012-02-21 | Yangaroo, Inc. | Media file distribution system and method |
US20090100128A1 (en) * | 2007-10-15 | 2009-04-16 | General Electric Company | Accelerating peer-to-peer content distribution |
US20090222515A1 (en) * | 2007-12-31 | 2009-09-03 | Solid State Networks, Inc. | Methods and apparatus for transferring data |
US8015283B2 (en) * | 2008-04-30 | 2011-09-06 | Motion Picture Laboratories, Inc. | Cooperative monitoring of peer-to-peer network activity |
US9106668B2 (en) * | 2008-06-24 | 2015-08-11 | Azureus Software, Inc. | Distributed peer location in peer-to-peer file transfers |
US20100011060A1 (en) * | 2008-07-08 | 2010-01-14 | Solid State Networks, Inc. | Methods and apparatus for distributing content |
US8204915B2 (en) * | 2009-02-13 | 2012-06-19 | Alcatel Lucent | Apparatus and method for generating a database that maps metadata to P2P content |
EP2401868A1 (en) * | 2009-02-24 | 2012-01-04 | Telefonaktiebolaget L M Ericsson (PUBL) | Personalized data distribution based on peer-to-peer content delivery |
US20100223320A1 (en) * | 2009-02-27 | 2010-09-02 | He Huang | Data distribution efficiency for online collaborative computing sessions |
CN101494664B (zh) * | 2009-03-09 | 2012-04-18 | 浙江工商大学 | 基于jxta的p2p推式网络存储方法 |
WO2010103827A1 (ja) * | 2009-03-12 | 2010-09-16 | パナソニック株式会社 | 再生装置、再生方法、記録媒体、アプリケーション、及びオーサリング装置 |
US8516071B2 (en) * | 2009-06-03 | 2013-08-20 | Qualcomm Incorporated | Systems and methods for creating virtual universal plug-and-play systems |
CN101964741B (zh) * | 2009-07-25 | 2013-01-30 | 华为技术有限公司 | 一种节点列表发送方法和设备 |
CN102082807B (zh) * | 2009-12-01 | 2014-11-05 | 突触计算机***(上海)有限公司 | 基于多协议的文件传输方法及装置 |
CN101764807B (zh) * | 2009-12-16 | 2012-09-05 | 北京邮电大学 | 基于元搜索引擎的多源下载互联网资源的装置及方法 |
IT1397439B1 (it) * | 2009-12-30 | 2013-01-10 | St Microelectronics Srl | Procedimento e dispositivi per la distribuzione di contenuti mediali e relativo prodotto informatico |
CN102118376B (zh) * | 2010-01-06 | 2016-03-02 | 中兴通讯股份有限公司 | 内容分发网络服务器及内容下载方法 |
US20110307538A1 (en) * | 2010-06-10 | 2011-12-15 | Alcatel-Lucent Usa, Inc. | Network based peer-to-peer traffic optimization |
KR101210613B1 (ko) * | 2010-11-30 | 2012-12-11 | 주식회사 케이티 | 모바일 p2p 서비스를 제공하는 시스템 및 그 방법 |
JP2012151849A (ja) * | 2011-01-19 | 2012-08-09 | Nhn Business Platform Corp | P2p基盤のストリーミングサービスのデータストリームをパケット化するシステムおよび方法 |
CN102137150B (zh) * | 2011-01-24 | 2014-04-02 | 华为技术有限公司 | 一种控制对等p2p信令的方法和装置 |
US8838722B2 (en) * | 2011-02-16 | 2014-09-16 | Masque Publishing, Inc. | Communications adaptable to mobile devices |
US9529910B2 (en) * | 2011-07-13 | 2016-12-27 | Jean Alexandera Munemann | Systems and methods for an expert-informed information acquisition engine utilizing an adaptive torrent-based heterogeneous network solution |
CN102542858B (zh) * | 2011-12-28 | 2014-06-11 | 深圳新为软件股份有限公司 | 课程播放方法和*** |
ITVI20120026A1 (it) * | 2012-01-27 | 2013-07-28 | St Microelectronics Srl | Metodi per la condivisione di files relativi al protocollo bit fountain |
US8600220B2 (en) * | 2012-04-02 | 2013-12-03 | JBF Interlude 2009 Ltd—Israel | Systems and methods for loading more than one video content at a time |
JP2015529868A (ja) * | 2012-06-07 | 2015-10-08 | ティヴァーサ アイピー インコーポレイテッド | ロバストなデータ監視のための相互比較を伴うビットトレントスキャン |
US9219782B2 (en) * | 2012-12-11 | 2015-12-22 | Microsoft Technology Licensing, Llc | Identifying seed computing devices using estimates in peer-to-peer networks |
US10402545B2 (en) * | 2013-03-19 | 2019-09-03 | Ip Squared Technologies Holding, Llc | Systems and methods for managing data assets associated with peer-to-peer networks |
KR101475516B1 (ko) * | 2013-04-18 | 2014-12-24 | 주식회사 와이오즈 | 토렌트 프로토콜 기반의 파일 공유 방법 및 그 방법을 이용한 파일 공유 장치 |
KR101573197B1 (ko) * | 2014-02-24 | 2015-12-02 | 에스케이텔레콤 주식회사 | 피투피 기반 파일 전송 제어 방법 및 이를 위한 피투피 통신 제어 장치 |
US10110657B2 (en) * | 2014-07-03 | 2018-10-23 | Telefonaktiebolaget Lm Ericsson (Publ) | System and method for pushing live media content in an adaptive streaming environment |
US10798144B2 (en) * | 2015-06-18 | 2020-10-06 | Ericsson Ab | Directory limit based system and method for storing media segments |
CN106453671A (zh) * | 2015-08-07 | 2017-02-22 | 中国电信股份有限公司 | 用于cdn 调度的方法、客户端、服务器和*** |
US10349104B2 (en) * | 2015-08-19 | 2019-07-09 | Ericsson Ab | System and method for managing segment delivery and bandwidth responsive to encoding complexity metrics |
US10498368B2 (en) * | 2015-11-02 | 2019-12-03 | Mk Systems Usa Inc. | Dynamic client-side selection of FEC information |
US10104514B2 (en) * | 2015-12-17 | 2018-10-16 | T-Mobile Usa, Inc. | Systems and methods for the temporal shifting of data downloads or streaming |
US10506262B2 (en) * | 2015-12-29 | 2019-12-10 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and system for optimized media delivery |
US10313408B2 (en) * | 2016-06-22 | 2019-06-04 | Telefonaktiebolaget Lm Ericsson (Publ) | Client-assisted time-shift live media and advertisement content play for learned ABR video white spot coverage in a streaming network |
CN107959704B (zh) * | 2016-10-18 | 2020-01-03 | ***通信有限公司研究院 | 一种数据处理方法及家庭网关 |
US10725859B2 (en) * | 2017-05-25 | 2020-07-28 | Western Digital Technologies, Inc. | Parity generation offload using peer-to-peer data transfers in data storage system |
CN107181804B (zh) * | 2017-05-25 | 2019-01-08 | 腾讯科技(深圳)有限公司 | 资源的下载方法和装置 |
US10761929B2 (en) * | 2017-05-25 | 2020-09-01 | Western Digital Technologies, Inc. | Data storage drive rebuild with parity generation offload using peer-to-peer data transfers |
FR3067544A1 (fr) * | 2017-06-27 | 2018-12-14 | Orange | Procede et dispositif de telechargement de contenu audiovisuel |
US10225620B1 (en) * | 2017-08-25 | 2019-03-05 | Telefonaktiebolaget Lm Ericsson (Publ) | System and method for effectuating selective ABR segment delivery for ABR bandwidth control |
US10412467B2 (en) * | 2017-09-08 | 2019-09-10 | Amazon Technologies, Inc. | Personalized live media content |
US10805161B2 (en) * | 2017-09-13 | 2020-10-13 | Verizon Digital Media Services Inc. | Rapid configuration propagation in a distributed multi-tenant platform |
KR102122679B1 (ko) * | 2019-03-26 | 2020-06-16 | 하상민 | 인터넷 상에서 불법 콘텐츠의 배포를 방지하는 방법 및 시스템 |
US11102272B2 (en) * | 2019-12-19 | 2021-08-24 | Wangsu Science and Technology Co., Ltd. | Method and device for downloading resource file |
-
2018
- 2018-11-07 CN CN201811321407.9A patent/CN109347968B/zh active Active
- 2018-12-07 WO PCT/CN2018/119886 patent/WO2020093504A1/zh unknown
- 2018-12-07 US US17/284,767 patent/US11343306B2/en active Active
- 2018-12-07 EP EP18939294.7A patent/EP3876492B1/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120136725A1 (en) * | 2002-08-12 | 2012-05-31 | David S. Morganstein | Targeted media advertising over networks |
CN102833293A (zh) * | 2011-06-17 | 2012-12-19 | 腾讯科技(深圳)有限公司 | P2sp网络中资源下载的方法及客户端 |
CN103986747A (zh) * | 2014-04-14 | 2014-08-13 | 曦威胜科技开发(深圳)有限公司 | P2p协议中文件共享下载方法 |
CN107920258A (zh) * | 2016-10-11 | 2018-04-17 | ***通信有限公司研究院 | 一种数据处理方法及装置 |
Non-Patent Citations (1)
Title |
---|
See also references of EP3876492A4 * |
Also Published As
Publication number | Publication date |
---|---|
CN109347968A (zh) | 2019-02-15 |
EP3876492A4 (en) | 2021-12-29 |
CN109347968B (zh) | 2021-09-24 |
EP3876492A1 (en) | 2021-09-08 |
US20210400107A1 (en) | 2021-12-23 |
US11343306B2 (en) | 2022-05-24 |
EP3876492B1 (en) | 2024-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020093504A1 (zh) | 一种下载资源文件的数据块的方法、设备和*** | |
EP3595268B1 (en) | Streaming media resource distribution method, system, edge node and central dispatching system | |
US11758013B2 (en) | Methods and systems for caching data communications over computer networks | |
JP4753052B2 (ja) | コンテンツ配信方法及びシステム | |
EP2897340B1 (en) | Routing proxy for adaptive streaming | |
US20150264009A1 (en) | Client-selectable routing using dns requests | |
US10848586B2 (en) | Content delivery network (CDN) for uploading, caching and delivering user content | |
US20130144994A1 (en) | Content Delivery Network and Method for Content Delivery | |
WO2012151993A1 (zh) | 业务推送方法和装置 | |
US9723095B2 (en) | Multi delivery method policy controlled client proxy | |
EP3497909A1 (en) | Improved adaptive bit rate streaming of live content with manifest update push notification or long poll | |
KR20150099944A (ko) | 피투피 기반 파일 전송 제어 방법 및 이를 위한 피투피 통신 제어 장치 | |
WO2017128713A1 (zh) | 订阅消息的发布方法及装置 | |
CN112307486B (zh) | 一种权限获取方法、设备和*** | |
CN107707589B (zh) | ***版本的更新方法、内容分发网络节点、远程网关 | |
CN114553693A (zh) | 网关升级方法及装置 | |
US20150074234A1 (en) | Content system and method for chunk-based content delivery | |
KR101469310B1 (ko) | 서비스 오버레이 네트워크에서 종단간 QoS 보장형 콘텐츠 전달 방법 및 그 시스템 | |
KR102141444B1 (ko) | 모바일 콘텐트 네트워크에서 데이터 전송 및 수신 장치 및 방법 | |
WO2022083385A1 (en) | Network nodes and methods therein for providing backup network function | |
US20140161125A1 (en) | Method, duplication point device, and system for data flow reuse transmission | |
KR101524470B1 (ko) | 분산 모바일 컨텐츠 전달 네트워크 시스템 및 상기 시스템을 이용한 컨텐츠 제공 방법 | |
EP3668060A1 (en) | Computing device and method for implementing a micro-caching functionality | |
CN114465896A (zh) | 一种配置信息处理方法、装置、设备及可读存储介质 | |
CN102377748B (zh) | 内容交付网络及内容交付方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 18939294 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2018939294 Country of ref document: EP Effective date: 20210604 |