# US 2014/0156809 A1 · Data downloading method, terminal, server, and system

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2014/0156809 A1
- Document ID: US20140156809A1
- Status: Published application
- Kind: A1
- Application number: 14/232,074
- Filed: 2013-01-29
- Published: 2014-06-05
- Earliest claimed: 2012-02-17
- Assignees: Tencent Technology (Shenzhen) Company Limited
- Applicants: Tencent Technology (Shenzhen) Company Limited
- Inventors: Guowei Fu; Gang Liu
- Web page: https://patentgrep.com/patent/US20140156809A1

## CPC

- H04L 67/06: specially adapted for file transfer, e.g. file transfer protocol [FTP]
- H04L 67/104: Peer-to-peer [P2P] networks
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A data downloading method, wherein the method includes the following steps: obtaining a downloading request for a file to be downloaded, wherein the downloading request includes an original downloading link, which is any one of a source URL link, a BT seed file, and an eMule downloading link; obtaining a hash value of the file to be downloaded based on the original downloading link; based on the hash value of the file to be downloaded, if the original downloading link is the BT seed file, obtaining the eMule downloading link information of the file to be downloaded and a multi-source URL set; if the original downloading link is the eMule downloading link, obtaining the Bt seed file information of the file to be downloaded and the multi-source URL set; and if the original downloading link is the source URL link, obtaining the Bt seed file information and the eMule downloading link information of the file to be downloaded and the multi-source URL set; downloading the file to be downloaded based on the obtained Bt seed file information and/or eMule downloading link information of the file to be downloaded, and the multi-source URL set. In the above method, the data sharing based on the networks over different downloading protocols may be implemented.

## Claims

### Claim 1

A data downloading method, wherein the method includes the steps of:
obtaining a downloading request for a file to be downloaded, wherein the downloading request includes an original downloading link, which is any one of a source URL link, a bit stream (BT) seed file, and an eMule downloading link;
obtaining a hash value of the file to be downloaded based on the original downloading link;
based on the hash value of the file to be downloaded, if the original downloading link is the BT seed file, obtaining the eMule downloading link information of the file to be downloaded and a multi-source URL set; if the original downloading link is the eMule downloading link, obtaining the Bt seed file information of the file to be downloaded and the multi-source URL set; and if the original downloading link is the source URL link, obtaining the Bt seed file information and the eMule downloading link information of the file to be downloaded and the multi-source URL set;
downloading the file to be downloaded based on the obtained Bt seed file information and/or eMule downloading link information of the file to be downloaded, and the multi-source URL set.

### Claim 2 (depends on 1)

The data downloading method according to claim 1, wherein the step of obtaining the hash value of the file to be downloaded based on the original downloading link comprises:
if the original downloading link is the source URL link, inquiring the hash value corresponding to the source URL link of the file to be downloaded based on a preset mapping relationship between the URL link and the hash value;
if the original downloading link is the BT seed file, inquiring the hash value corresponding to the Bt seed file information of the file to be downloaded based on a preset mapping relationship between the BT seed file information and the hash value;
if the original downloading link is the eMule downloading link, inquiring the hash value corresponding to the eMule downloading link information of the file to be downloaded based on a preset mapping relationship between the eMule downloading link information and the hash value.

### Claim 3 (depends on 1)

The data downloading method according to claim 1, wherein the step of, if the original downloading link is the source URL link, obtaining the Bt seed file information and the eMule downloading link information of the file to be downloaded and the multi-source URL set based on the hash value of the file to be downloaded comprises:
inquiring the multi-source URL set corresponding to the hash value of the file to be downloaded based on the preset mapping relationship between the URL link and the hash value;
inquiring the Bt seed file information corresponding to the hash value of the file to be downloaded based on the preset mapping relationship between the BT seed file information and the hash value;
inquiring the eMule downloading link information corresponding to the hash value of the file to be downloaded based on the preset mapping relationship between the eMule downloading link information and the hash value.

### Claim 4 (depends on 1)

The data downloading method according to claim 1, wherein the step of, if the original downloading link is the BT seed file, obtaining the eMule downloading link information of the file to be downloaded and the multi-source URL set based on the hash value of the file to be downloaded lies in:
inquiring the multi-source URL set corresponding to the hash value of the file to be downloaded based on the preset mapping relationship between the URL link and the hash value;
inquiring the eMule downloading link information corresponding to the hash value of the file to be downloaded based on the preset mapping relationship between the eMule downloading link information and the hash value.

### Claim 5 (depends on 1)

The data downloading method according to claim 1, wherein the step of, if the original downloading link is the eMule downloading link, obtaining the Bt seed file information of the file to be downloaded and the multi-source URL set based on the hash value of the file to be downloaded lies in:
inquiring the multi-source URL set corresponding to the hash value of the file to be downloaded based on the preset mapping relationship between the URL link and the hash value;
inquiring the Bt seed file information corresponding to the hash value of the file to be downloaded based on the preset mapping relationship between the Bt seed file information and the hash value.

### Claim 6 (depends on 1)

The data downloading method according to claim 1, wherein the Bt seed file information is a feature code and a file number of the Bt seed file, the eMule downloading link information is an information abstract value and a file size of the file to be downloaded, and the step of downloading the file to be downloaded based on the obtained Bt seed file information and/or eMule downloading link information of the file to be downloaded, and the multi-source URL set comprises:
dividing the file to be downloaded into a plurality of segments, and scheduling downloading tasks for the segments based on downloading capabilities;
downloading the segments based on the multi-source URL set of the file to be downloaded;
if the original downloading link is a Bt seed file, downloading the segments based on the original downloading link, and if otherwise, obtaining the Bt seed based on the feature code of the Bt seed file of the file to be downloaded, and downloading the segments based on the Bt seed;
if the original downloading link is an eMule downloading link, downloading the segments based on the original downloading link, and if otherwise, constituting an eMule downloading link based on the information abstract value and the file size of the file to be downloaded, and downloading the segments based on the eMule downloading link.

### Claim 7 (depends on 1)

The data downloading method according to claim 1, wherein the method further includes:
if the file to be downloaded is a new file, establishing and storing a mapping relationship between the URL link and the hash value, between the Bt seed information and the hash value, or between the eMule downloading link information and the hash value of the new file.

### Claim 8 (depends on 7)

The data downloading method according to claim 7, wherein the method further includes:
if the file to be downloaded is the new file, obtaining and storing the Bt seed file of the file to be downloaded.

### Claim 9

A data downloading system, including a downloading server and a downloading client, wherein the downloading server includes:
a resource inquiring server, being configured for obtaining a downloading request for a file to be downloaded, the downloading request includes an original downloading link, and the original downloading link is anyone of a source URL link, a bit stream (BT) seed file, and an eMule downloading link;
a logic server group, being configured for obtaining a hash value of the file to be downloaded based on the original downloading link;
the logic server group is further configured for: based on the hash value of the file to be downloaded, if the original downloading link is the BT seed file, obtaining the eMule downloading link information of the file to be downloaded and a multi-source URL set; if the original downloading link is the eMule downloading link, obtaining the Bt seed file information of the file to be downloaded and the multi-source URL set; and if the original downloading link is the source URL link, obtaining the Bt seed file information and the eMule downloading link information of the file to be downloaded and the multi-source URL set;
the downloading client is configured for downloading the file to be downloaded based on the obtained Bt seed file information and/or eMule downloading link information of the file to be downloaded, and the multi-source URL set.

### Claim 10 (depends on 9)

The data downloading system according to claim 9, wherein the original downloading link is the source URL link or the BT seed file or the eMule downloading link, and the logic server group includes:
a U2h server, being configured for, if the original downloading link is the source URL link, inquiring the hash value corresponding to the source URL link of the file to be downloaded based on a preset mapping relation between the URL link and the hash value;
a Bt2h server, being configured for, if the original downloading link is the BT seed file, inquiring the hash value corresponding to the Bt seed file information of the file to be downloaded based on a preset mapping relationship between the Bt seed file information and the hash value;
an eMule2h server, being configured for, if the original downloading link is the eMule downloading link, inquiring the hash value corresponding to the eMule downloading link information of the file to be downloaded based on a preset mapping relationship between the eMule downloading link information and the hash value.

### Claim 11 (depends on 9)

The data downloading system according to claim 9, wherein the logic server group further includes one or both of a h2Bt server and a h2eMule server, and a h2U server, wherein:
the h2U server is configured for inquiring the multi-source URL set corresponding to the hash value of the file to be downloaded based on the preset mapping relationship between the URL link and the hash value;
the h2Bt server is configured for inquiring the Bt seed file information corresponding to the hash value of the file to be downloaded based on the preset mapping relationship between the Bt seed file information and the hash value;
the h2eMule server is configured for inquiring the eMule downloading link information corresponding to the hash value of the file to be downloaded based on the preset mapping relationship between the eMule downloading link information and the hash value.

### Claim 12 (depends on 9)

The data downloading system according to claim 9, wherein the Bt seed file information is a feature code and a file number of the Bt seed file, the eMule downloading link information is an information abstract value and a file size of the file to be downloaded, and the downloading client includes:
a scheduling module, being configured for dividing the file to be downloaded into a plurality of segments, and scheduling downloading tasks for the segments based on downloading capabilities;
a downloading module, including:
a Http downloading unit, being configured for downloading the segments based on the multi-source URL set of the file to be downloaded;
a Bt downloading unit, being configured for, if the original downloading link is a Bt seed file, downloading the segments based on the original downloading link, and if otherwise, obtaining the Bt seed based on the feature code of the Bt seed file of the file to be downloaded, and downloading the segments based on the Bt seed;
an eMule downloading unit, being configured for, if the original downloading link is an eMule downloading link, downloading the segments based on the original downloading link, and if otherwise, constituting an eMule downloading link based on the information abstract value and the file size of the file to be downloaded, and downloading the segments based on the eMule downloading link.

### Claim 13 (depends on 9)

The data downloading system according to claim 9, wherein the downloading server further includes a resource storage module, and the resource storage module is configured for, if the file to be downloaded is a new file, establishing and storing a mapping relationship between the URL link and the hash value, between the Bt seed information and the hash value, or between the eMule downloading link information and the hash value of the new file.

### Claim 14 (depends on 13)

The data downloading system according to claim 13, wherein the downloading server further includes a Bt seed server, and the Bt seed server is configured for, if the file to be downloaded is a new file, obtaining and storing the Bt seed file of the file to be downloaded.

### Claim 15

A data downloading method, wherein the method includes the following steps:
transmitting a downloading request message to a resource mapping server when downloading a file to be downloaded, wherein the downloading request message carries a downloading link of the file to be downloaded in a first resource network;
receiving a downloading response message transmitted by the resource mapping server, wherein the downloading response message carries the downloading links of the file to be downloaded respectively in the first resource network and a second resource network, and the second resource network is one or more kinds of resource networks which are different from the first resource network;
downloading the file to be downloaded based on the downloading links of the file to be downloaded respectively in the first and the second resource networks.

### Claim 16 (depends on 15)

The data downloading method according to claim 15, further including, before transmitting the downloading request message to the resource mapping server: obtaining the downloading link of the file to be downloaded in the first resource network.

### Claim 17 (depends on 15)

The data downloading method according to claim 15, further including,
after downloading the file to be downloaded: calculating identification information of the file to be downloaded based on contents included in the file to be downloaded, and transmitting the identification information of the file to be downloaded and the downloading links to the resource mapping server.

### Claim 18

A data downloading method, wherein the method includes the following steps:
receiving a downloading request message transmitted by a terminal, wherein the downloading request message carries a downloading link of the file to be downloaded in a first resource network;
obtaining the downloading links of the file to be downloaded respectively in a first and a second resource networks based on the downloading link of the file to be downloaded in the first resource network, wherein the second resource network is one or more kinds of resource networks which are different from the first resource network;
transmitting a downloading response message to the terminal, wherein the downloading response message carries the downloading links of the file to be downloaded respectively in the first and the second resource networks, so that the terminal downloads the file to be downloaded based on the downloading links of the file to be downloaded respectively in the first and the second resource networks.

### Claim 19 (depends on 18)

The data downloading method according to claim 18, wherein the step of obtaining the corresponding downloading links of the file to be downloaded respectively in the first and the second resource networks based on the downloading link of the file to be downloaded in the first resource network comprises:
obtaining the identification information of the file to be downloaded from a stored mapping relationship between the identification information and the downloading links based on the downloading link of the file to be downloaded in the first resource network;
obtaining the downloading links of the file to be downloaded respectively in the first and the second resource networks from the stored mapping relationship between the identification information and the downloading links based on the identification information of the file to be downloaded.

### Claim 20 (depends on 18)

The data downloading method according to claim 18, wherein the method further includes:
receiving the identification information of the file to be downloaded and the downloading links transmitted by the client, and establishing a mapping relationship between the identification information of the file to be downloaded and the downloading links after the downloading of the file to be downloaded is completed by the terminal.

### Claim 21 (depends on 20)

The data downloading method according to claim 20, further including,
after receiving the identification information of the file to be downloaded and the downloading links transmitted by the client: obtaining downloading time for downloading the file to be downloaded, and establishing a mapping relationship between the downloading links of the file to be downloaded and the downloading time.

### Claim 22 (depends on 18)

The data downloading method according to claim 18, wherein the method further includes:
monitoring the stored mapping relationship between the downloading links and the downloading time, if the downloading link with the downloading time being ahead of a preset time is found by monitoring, deleting the mapping relationship including the downloading link with the downloading time being ahead of the preset time from the stored mapping relationship between the identification information and the downloading links.

### Claim 23 (depends on 22)

The data downloading method according to claim 22, wherein the method further includes:
if the downloading link with the downloading time being ahead of the preset time is found by monitoring, deleting the mapping relationship including the downloading link with the downloading time being ahead of the preset time from the stored mapping relationship between the downloading links and the downloading time.

### Claim 24

A terminal, wherein the terminal includes:
a first transmitting module, being configured for transmitting a downloading request message to a resource mapping server when downloading a file to be downloaded, wherein the downloading request message carries a downloading link of the file to be downloaded in a first resource network;
a first receiving module, being configured for receiving a downloading response message transmitted by the resource mapping server, wherein the downloading response message carries the downloading links of the file to be downloaded respectively in the first resource network and a second resource network, and the second resource network is one or more kinds of resource networks which are different from the first resource network;
a downloading module, being configured for downloading the file to be downloaded based on the downloading links of the file to be downloaded respectively in the first and the second resource networks.

### Claim 25 (depends on 24)

The terminal according to claim 24, wherein the terminal further includes:
a first acquiring module, being configured for obtaining the downloading link of the file to be downloaded in the first resource network.

### Claim 26 (depends on 24)

The terminal according to claim 24, wherein the terminal further includes:
a calculating module, being configured for calculating identification information of the file to be downloaded based on contents included in the file to be downloaded, and transmitting the identification information of the file to be downloaded and the downloading links to the resource mapping server.

### Claim 27

A resource mapping server, wherein the server includes:
a second receiving module, being configured for receiving a downloading request message transmitted by a terminal, wherein the downloading request message carries a downloading link of the file to be downloaded in a first resource network;
a second acquiring module, being configured for obtaining the downloading links of the file to be downloaded respectively in the first resource network and a second resource network based on the downloading link of the file to be downloaded in the first resource network, wherein the second resource network is one or more kinds of resource networks which are different from the first resource network;
a second transmitting module, being configured for transmitting a downloading response message to the terminal, wherein the downloading response message carries the downloading links of the file to be downloaded respectively in the first and the second resource networks, so that the terminal downloads the file to be downloaded based on the downloading links of the file to be downloaded respectively in the first and the second resource networks.

### Claim 28 (depends on 27)

The server according to claim 27, wherein the second acquiring module includes:
a first inquiring module, being configured for obtaining identification information of the file to be downloaded from a stored mapping relationship between the identification information and the downloading links based on the downloading link of the file to be downloaded in the first resource network;
a second inquiring module, being configured for obtaining the downloading links of the file to be downloaded respectively in the first and the second resource networks from the stored mapping relationship between the identification information and the downloading links based on the identification information of the file to be downloaded.

### Claim 29 (depends on 27)

The server according to claim 27, wherein the server further includes:
a first establishing module, being configured for receiving the identification information of the file to be downloaded and the downloading links transmitted by the terminal, and establishing-a mapping relationship between the identification information of the file to be downloaded and the downloading links after the downloading of the file to be downloaded is completed by the terminal.

### Claim 30 (depends on 29)

The server according to claim 29, wherein the server further includes:
a second establishing module, being configured for obtaining downloading time for downloading the file to be downloaded, and establishing a mapping relationship between the downloading links of the file to be downloaded and the downloading time.

### Claim 31 (depends on 27)

The server according to claim 27, wherein the server further includes:
a first deleting module, being configured for monitoring the stored mapping relationship between the downloading link and the downloading time, if the downloading link with the downloading time being ahead of a preset time is found by monitoring, deleting the mapping relationship including the downloading link with the downloading time being ahead of the preset time from the stored mapping relationship between the identification information and the downloading link.

### Claim 32 (depends on 31)

The server according to claim 31, wherein the server further includes:
a second deleting module, being configured for, if the downloading link with the downloading time being ahead of a preset time is found by monitoring, deleting the mapping relationship including the downloading link with the downloading time being ahead of the preset time from the stored mapping relationship between the downloading link and the downloading time.

### Claim 33 (depends on 24)

A resource downloading system, wherein the system includes the terminal according to claim 24; and a resource mapping server.
