CN1710857A - Method and method for realizing document accelerated download - Google Patents

Method and method for realizing document accelerated download Download PDF

Info

Publication number
CN1710857A
CN1710857A CNA2004100478819A CN200410047881A CN1710857A CN 1710857 A CN1710857 A CN 1710857A CN A2004100478819 A CNA2004100478819 A CN A2004100478819A CN 200410047881 A CN200410047881 A CN 200410047881A CN 1710857 A CN1710857 A CN 1710857A
Authority
CN
China
Prior art keywords
submodule
module
file
client
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2004100478819A
Other languages
Chinese (zh)
Other versions
CN100459497C (en
Inventor
方汉
于明俭
李振春
陈向阳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qianxiangshiji Tech Development (Beijing) Co., Ltd.
Original Assignee
Thousand Oaks World Science And Technology Development (beijing) Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Thousand Oaks World Science And Technology Development (beijing) Co Ltd filed Critical Thousand Oaks World Science And Technology Development (beijing) Co Ltd
Priority to CNB2004100478819A priority Critical patent/CN100459497C/en
Publication of CN1710857A publication Critical patent/CN1710857A/en
Application granted granted Critical
Publication of CN100459497C publication Critical patent/CN100459497C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The system is composed of centralized index server, and client end. The said server includes file management module and block management module. The client end consists of IE assistance module, down loading file module, P2P uploading module, and local buffer management module. Through file attributive information and block id transferred by the down loading file module, the file management module of the server obtains attributive information of file. According to prearranged blocking strategy, the block management module carries out blocking file. Through attributive information of block transferred by the down loading file module, the system obtains list of user information. The list is returned back to client end to carry out down loading file. Thus, the server has stored file information, attributive information of block and user id. The invention also discloses relevant method. The invention raises down loading efficiency, guarantees stability and security of down loading source.

Description

A kind of file of realizing quickens the system and method for downloading
Technical field
The invention relates to computer and Internet technical field, relate to a kind of system and method specifically with high-speed downloads file function.
Background technology
Along with the computer fast development, the various apparatus functions relevant with computer also upgrade gradually, upgrade to reach convenient people's operation, improve the purpose of people's operating efficiency.Computer network provides the convenience of resource-sharing for the mankind, a large amount of useful resources is distributed in the internet, people utilize download system that needed file is downloaded to this locality, realize sharing of resource, industry is seemed particularly important so develop a stable file download system of high speed.
In the prior art, at present typical file download system adopts P2P (Peer toPeer, point-to-point) mode mostly, and as BT (Bit Torrent) file download system, it mainly is made up of BT client modules, BT server end module.Client modules sends download request, downloads the operation that associated pathway information is downloaded by the user to the server end module.
This BT file download system is mainly by the BT client modules being installed, seeking the BT resource, being finished four parts such as down operation, refreshing service device end module information and form.Wherein, the user who seeks the BT resource and mainly be with storage file sets up link, and this BT file download system adopts the mode of " seed " to realize the file in download user and the link of loading source file is provided.
The BT file download system realizes that the concrete grammar of download function is as described below:
I, installation BT client modules.
Client is installed the BT file download system, in down operation, calls the BT client modules and downloads.
II, searching BT resource.
Seek the source address information that the BT resource is promptly downloaded, BT downloads and has adopted the method for " seed " that the loading source address is provided.
" seed " is the client modules of file storage, behind the user's download file, become " seed " that upload function is provided, " seed " information (mainly comprising routing information) is stored in the middle of the .torrent file, must initiatively this document be published to the server end module after user's download finishes, " seed " of the function of uploading can be provided for other user.To be exactly that each user is conscious become " seed " to the core content of the implementation method of this BT file download system provides loading source for other user.
After the user determines to download, at first arrive issue and hold (that is: server end module) to click the .torrent download link, download to local this document and storage, i.e. the link of foundation and loading source address.
III, download.
After the loading source address of file was determined, client modules was just opened up in this locality and file destination memory space of the same size, assigns just to begin to carry out down operation.
The issue of IV, fileinfo.
After download finishes, do not close the execution window of BT, " seed " information of this locality is reported to issue end (server end module).
This document download system realizes that with the method for " seed " there is the unsteadiness of downloading in down operation, and is not intelligent, and shortcomings such as the lack of uniformity of speed of download have necessity of improvement very much.Particularly comprise:
1, the operation of the download client of this BT file download system must download user be operated by hand, as manual searching .torrent file, has reduced the download efficiency of file.
2, the server end of this BT file download system only has the function of the information of simple storage " seed " file address.
3, all of this BT file download system are downloaded the client that the source only is confined to become " seed ".
4, what of " seed " are the speed of download of this BT file download system be decided by, must guarantee that in download the quantity of " seed " can guarantee the speed of downloading constantly.
5, there is not the function of verification in this BT file download system to the download of file, can not guarantee the accuracy of file in download content like this, and the preservation of " seed " not had the mechanism of any verification at server end.
6, this BT file download system can not be handled under the situation to " seed " disappearance automatically.
Summary of the invention
The present invention has effectively improved the download problem out of stock that causes owing to " seed " shortage in the prior art, and does not have shortcomings more of the prior art, has more high efficiency in the use, accuracy, stability.
One aspect of the present invention provides a kind of file of realizing to quicken the system that downloads, and mainly by a centralized indexes server, the plurality of client end is formed, wherein:
The centralized indexes server is made up of document management module and piece administration module, file feature information and block identification that this document administration module is used for transmitting by following client file download module obtain the characteristic information of blocks of files, and store the fileinfo that following client file download module is reported; The piece administration module is used for according to predetermined partition strategy file being carried out piecemeal, and the characteristic information of the blocks of files of transmitting by following client file download module obtains the user profile tabulation, and the characteristic information and the user ID of storing the blocks of files that following client file download module reports;
Client includes IE supplementary module, file download module, the last transmission module of P2P, local cache administration module, and this IE supplementary module is used to obtain fileinfo and spanned file characteristic information; The file download module is used for according to the described partition strategy of server end block administration module file being carried out piecemeal and generates block identification, file feature information and block identification are delivered to server end, the characteristic information of the blocks of files that acquisition server end document management module returns, and the characteristic information of the blocks of files returned is delivered to server end, obtain the user profile tabulation that server end block administration module returns, according to this user profile of returning tabulation, from this tabulation, choose the user and provide client as download, and provide client to send download request to this download, finish the download of blocks of files, and the blocks of files after downloading stored, characteristic information and the user ID of downloading back this document piece are reported server end, merge all files piece after downloading, file after being combined is stored, and fileinfo is reported server end; The last transmission module of P2P is used to the file download module of download request client that the transmission of blocks of files is provided; The local cache administration module is used at local cache piece being preserved and being extracted;
Client IE supplementary module obtains fileinfo and spanned file characteristic information, the client file download module receives this document information and according to specific partition strategy file is carried out piecemeal acquisition block identification, the client file download module is delivered to server end with file feature information and block identification, obtain the characteristic information of blocks of files and it is returned client according to this document characteristic information and block identification by the server end document management module, client is delivered to server end with the characteristic information of this document piece, return by server end block administration module acquisition user profile tabulation and with this user profile tabulation, client is according to this user profile of returning tabulation, provide client to send download request to download, provide client P2P to go up the transmission that transmission module provides blocks of files by download, download back storage this document piece in file destination, the local cache administration module is stored in this document piece in the buffer memory, the file download module is reported server end with the characteristic information and the user ID of this document piece, by server end block administration module it is stored.
The present invention provides a kind of file of realizing to quicken the method for downloading on the other hand, and this method realizes the file download by a centralized indexes server and plurality of client end, and wherein, this method comprises the steps:
A, download request client obtain fileinfo and spanned file characteristic information;
B, download request client are carried out piecemeal according to predetermined partition strategy and are obtained block identification;
C, download request client are delivered to the centralized indexes server end with file feature information and block identification, obtain the characteristic information of centralized indexes server end backspace file piece;
D, download request client are delivered to the centralized indexes server end with the characteristic information of blocks of files, obtain the user profile tabulation that the centralized indexes server end returns;
E, download request client are chosen the user and are provided client as download, and provide client to send download request to this download according to this user profile of returning tabulation from this tabulation, provide client that the blocks of files transmission is provided by download;
F, download request client are stored the blocks of files after downloading;
G, download request client are delivered to the centralized indexes server end with the characteristic information and the user ID of the blocks of files of storage, by the centralized indexes server end information of this transmission are stored;
All Files piece after h, download request client will be downloaded merges, and preserves file;
I, download request client are delivered to the centralized indexes server end with fileinfo, by the centralized indexes server end information of transmitting are stored.
The present invention is by adopting index server management document information, blocks of files information and user profile, the user profile tabulation of optimization is provided for the download request client, client provides client directly to send download request according to the user profile in the user list information to these downloads, carry out the down operation of file, in addition, the present invention also provides the mode of carrying out down operation from the Source Site, in the time can not carrying out point-to-point file down operation, provides the download source of file.
The present invention has used the mechanism that fileinfo and blocks of files information are carried out verification in process of downloading, guaranteed the accuracy that file is downloaded, and download in each blocks of files and to carry out the mechanism of reporting after finishing to the centralized indexes server, guarantee the stability of loading source, and provide cache server to be specifically designed to the down operation of popular software.
Consult the back and describe specific embodiments of the invention and accompanying drawing, illustrate that the present invention is better than the characteristics of prior art.It is limitation of the present invention that accompanying drawing can not be understood as with relevant description, and characteristics of the present invention are limited in claims.
Description of drawings
Fig. 1-1 is a system architecture diagram of the present invention;
Fig. 2-1 is a centralized indexes server end module composition diagram of the present invention;
Fig. 2-2 is a client modules composition diagram of the present invention;
Fig. 2-3 registers application drawing for client user of the present invention;
Fig. 2-4 logins, withdraws from application drawing for client user of the present invention;
Fig. 2-5 is each intermodule graph of a relation of client file downloading process of the present invention;
Fig. 2-6 for block delete module in the client block delete of the present invention operating process and block delete report the intermodule relation and with centralized indexes server end module relation diagram;
Fig. 2-7 provides relation between each module of end for client of the present invention download request end and download in downloading implementation procedure;
Fig. 3-1 is the flow chart of centralized indexes server end user registration management submodule of the present invention;
Fig. 3-2 is the flow chart of centralized indexes server end user login management submodule of the present invention;
Fig. 3-3 withdraws from the flow chart of submodule for centralized indexes server end user of the present invention;
Fig. 3-4 is the flow chart of centralized indexes server end fileinfo of the present invention to the block message submodule;
Fig. 3-5 reports the flow chart of submodule for centralized indexes server end file storage of the present invention;
Fig. 3-6 is the flow chart of centralized indexes server end block message of the present invention to the user profile submodule;
Fig. 3-7 optimizes the flow chart of submodule for the common download of centralized indexes server end of the present invention;
Fig. 3-8 downloads the flow chart of optimizing submodule for centralized indexes IP at server end MAP of the present invention;
Fig. 3-9 is a centralized indexes IP at server end MAP topological diagram example of the present invention;
Fig. 3-10 reports the flow chart of submodule for centralized indexes server end block storage of the present invention;
Fig. 3-11 reports the flow chart of submodule for centralized indexes server end block delete of the present invention;
Fig. 3-12 is the flow chart of centralized indexes server end block check module of the present invention;
Fig. 4-1 registers the flow chart of submodule for client user of the present invention;
Fig. 4-2 logins the flow chart of submodule for client user of the present invention;
Fig. 4-3 is the flow chart of client IE supplementary module of the present invention;
Fig. 4-4 is the flow chart of client file information of the present invention to block message inquiry submodule;
Fig. 4-5 is the flow chart of client block message of the present invention to user profile inquiry submodule;
Fig. 4-6 is the flow chart of client file sub module stored of the present invention;
Fig. 4-7 reports the flow chart of submodule for client file of the present invention;
Fig. 4-8 is the flow chart of client's end block sub module stored of the present invention;
Fig. 4-9 reports the flow chart of submodule for client's end block storage of the present invention;
Fig. 4-10 is the flow chart of client block check submodule of the present invention;
Fig. 4-11 preserves the flow chart of submodule for client terminal local buffer memory of the present invention;
Fig. 4-12 extracts the flow chart of submodule for client terminal local buffer memory of the present invention;
Fig. 4-13 downloads the flow chart of realizing submodule for client source website of the present invention;
Fig. 4-14 downloads the flow chart of submodule for client P2P of the present invention;
Fig. 4-15 goes up the flow chart of transmission module for client P2P of the present invention;
Fig. 4-16 is the inventive method realization flow figure;
Embodiment
The embodiment of the invention is a kind of system and method for realizing that file quicken to be downloaded, a kind of specifically high speed, safe, stable file download apparatus system.In order to describe the implementation of this invention more clearly, now specifically describe as follows in conjunction with each accompanying drawing:
One, system constitutes:
The embodiment of the invention is made up of interconnected client (Clients), centralized indexes server (Centralized Index Server) and three parts of caching server (Cache Server), system architecture diagram of the present invention sees also Fig. 1-1, is introduced respectively below:
(1), centralized indexes server (Centralized Index Server) is to be the point-to-point (P2P of user, the abbreviation of Peer to Peer, being direct transmission information between user and the user, rather than by third party's transfer) the file download provides the server of index service.Its major function is that the information of fileinfo, blocks of files, user profile are managed concentratedly, and provide the loading source of optimization for client, avoided like this in the prior art because " seed " disappearance, caused the problem of possible download neutral gear, guaranteed the stability of file source.
Centralized indexes server (Centralized Index Server) is mainly managed concentratedly fileinfo, blocks of files information (the present invention is first with file block to the down operation of file, carries out the operating process that multithreading is downloaded each piecemeal again), user profile by database.Centralized indexes server (Centralized Index Server) is made up of each functional module, and it is to data source, as the database that includes storehouses tables such as fileinfo, blocks of files information, user profile operates, and finishes the task in the file download process.The concrete condition of each functional module sees also following description.
Below introduce the basic stored information in the database, it should be noted that, concrete table and field all are that down operation in conjunction with present embodiment device main functional modules provides in the following stated information and the database, are not that the information that is used to limit apparatus of the present invention is formed.
1, the main contents of fileinfo comprise:
A) uniform resource locator (url), it is the sign of user's download Source Site address information;
B) file size (filesize);
C) file is revised the date (lastmodtime) at last;
D) file feature information: by url, the MD5 characteristic value of the character string that filesize and lastmodtime are combined in order.
Illustrate: MD5 is disclosed algorithm, and this algorithm as input, is exported one 128 information " fingerprint " to the information of random length.See also RFC1321 (the English full name of RFC is Request For Comments, i.e. Request for Comment, major part has developed into the standard of Internet), network address is Http:// www.faqs.org/rfcs/rfc1321.html
Illustrate, certain URL is Http: // 61.139.60.86:80/tmp/oicq/2004/03/11/QQmm.exe, its file size is 303786 bytes, revising the date at last is 2004-03-11 17:50:40, can be spliced into character string to it in order Http: // 61.139.60.86:80/tmp/oicq/2004/03/11/QQmm.exe_2004-03-11The file feature information that 7:50:40_303786 calculates is: a97bb0e6af4e5a8a8bdf7e9b7b179561.
Above information is as described below corresponding to table concrete in the database and main field:
Table name claims urlmd5_to_urlid
The literary name section:
Sequence number Field name Type Explanation Function
??①? ? ? ??Urlid? ? ? Signless integer The ID of url Be used for searching (seeing following content for details) at urlseq_to_blockmd5
??②? ??urlmd5? 32 byte character strings File feature information
??③? ??url? Varying length string The URL of file
??④? ??Filesize? Signless integer File size
??⑤? ? ??lastmodtime? ? ??DATETIME? ? The last modification time of file
The table explanation: urlmd5 is the key assignments of index in this table, is unique.
Table function: by file feature information urlmd5 inquiry urlid.
2, blocks of files information main contents comprise:
A) characteristic value of blocks of files:, as input, calculate its 128 information " fingerprint " with the size of the data of blocks of files and blocks of files according to above-mentioned explanation to the MD5 algorithm.
B) have the user's of blocks of files index information: user ID.
C) blocks of files number, piece ID.
Above block message is corresponding to table concrete in the database and main field as described below:
Table name claims blockmd5_to_blockid
The literary name section
Sequence number Field name Type Explanation
??①? ??Blockid? Signless integer The ID of block number
??②? ??blockmd5? 32 byte character strings The characteristic value of block
The table explanation: the blockmd5 in this table is the key assignments of index, is unique.
Table function: inquire blockid from blockmd5.
Table name claims blockid_to_uuid
The literary name section
Sequence number Field name Type Explanation
??①? ??blockid? Signless integer The ID of block number
??②? ??uuid? Signless integer The ID users that has this piece
The table explanation: blockid can be repetition in this table, promptly can go out a plurality of uuid from a blockid index.
Table function: inquire ID number of user from blockid, this table is an one-to-many.
3, user profile main contents:
A) index of user profile: user ID.
B) at line index.
C) IP address: net address and outer net address in comprising.
D) elemental user information: as: user's name, general information such as sex.
Above information is as described below corresponding to table concrete in the database and main field:
Table name claims: uuid
The literary name section:
Sequence number Field name Type Explanation Function
??①? ?Uuid? Signless integer ID number of user registration
??②? ?online_flag? Integer The user's online sign
??③? ? ?external_ip? ? Signless integer The outside ip address that the user connects If the public network main frame, then with main frame
The IP address is identical
??④? ?internal_ip? Signless integer The IP address of subscriber's main station
??⑤? ?username? 32 byte character strings The nickname that the user provides
??⑥? ?cookie? 16 byte character strings User's login and authenticating operation are used
The table explanation: uuid is unique in this table.
Table function: by the available information of user's uuid inquiring user.
Wherein, cookie is the character string that server is used for authenticating.The user uses this to tie up to system at every turn, and client must sign in to server, and server dynamically produces a cookie character string and sends to client.Request to the centralized indexes server after the client all can attach this character string, after server receives request, can compare the cookie of client and the cookie that is saved in the uuid database, if unanimity then by authentication, otherwise would return mistake.Withdraw from client up to the user, this cookie just lost efficacy.Using the purpose of cookie is in order to prevent the malicious attack from client.
In addition, in conjunction with the narration of concrete down operation in the system of the present invention, also need fileinfo and blocks of files information united and manage, so that the download and inquiry operation.The concrete table that uses thes contents are as follows:
Table name claims urlseq_to_blockmd5
The literary name section:
Sequence number Field name Type Explanation
??①? ??urlid? Signless integer The ID of url
??②? ? ??blockseq? ? Signless integer The sequence number of blocks of files (sequence number that piecemeal obtains)
??③? ??blockmd5? 32 byte character strings The characteristic value of blocks of files
??④? ? ??saved_count? ? Signless integer The number that this document piece was preserved
Table function: inquire blockmd5 from given urlid and blockseq
The table explanation: the index urlid in this table can be repetition.
The centralized indexes server is made of separate document management module, piece administration module, user management module three parts.
The functional module of centralized indexes server is formed referring to Fig. 2-1.
Wherein, the major function of document management module is a management document information, the operation by the characteristic information of fileinfo, piece sequence number inquiry corresponding document piece is finished in customer in response end fileinfo to the request (detailed content is asked for an interview the description of client to this module) of block message inquiry submodule, customer in response end file is reported the fileinfo that submodule is reported, and finishes the storage work of fileinfo.This module is mainly reported submodule by fileinfo to block message submodule, file storage and is constituted.
Fileinfo to the function of block message submodule is to read file feature information urlmd5 that the client transmission comes and the piece sequence number blockseq in the piecemeal submodule (piecemeal submodule detailed functions is asked for an interview following specifying) to finish inquiry to the characteristic information blockmd5 of blocks of files in this document administration module.
This document information to the operation of block message submodule specific implementation is: when file feature information urlmd5 and piece sequence number blockseq information are delivered to this document information to the block message submodule, this document information to block message submodule is retrieved the characteristic information (corresponding storehouse table name is called urlmd5_to_urlid and urlseq_to_blockmd5) of piece in the database by query statement, specifically: client sends uuid, cookie, urlmd5, blockseq information is to this module, the authentification of user submodule is at first according to uuid in the server end user management module, cookie information is carried out user's authenticating operation, and (native system must carry out authenticating operation when carrying out any operation, see the demonstration of authentification of user submodule in the user management module for details), after authentication is passed through, this module at first is that condition inquires urlid with urlmd5 from database table urlmd5_to_urlid, then, with the urlid and the piece sequence number blockseq that inquire is condition, from database table urlseq_to_blockmd5, inquire the characteristic value blockmd5 of blocks of files, and the characteristic value blockmd5 of this document piece is transmitted back client.If the aforesaid operations authentication is rejected, perhaps query manipulation does not obtain corresponding results, all returns error message.This module concrete operations flow process sees also Fig. 3-4.
The function of file storage report submodule is in this document administration module: behind the down operation of finishing whole file, client will be reported fileinfo, client file is reported submodule fileinfo is delivered to server end file storage report submodule, and this module is upgraded operation to database.The operation of specific implementation is: when client with uuid, cookie, url, urlmd5, filesize, when lastmodtime information is reported to server end, the authentification of user submodule at first carries out user's authenticating operation according to uuid, cookie information in the server end user management module, after authentication is passed through, the server end file storage is reported submodule and is taken urlmd5 as condition query urlmd5_to_urlid table, judges whether to exist corresponding urlid, if exist, then do not store, withdraw from this module operation.If do not exist, then in the urlmd5_to_urlid table, create a new record, file feature information (urlmd5) and fileinfo are stored.If authenticating operation is rejected, perhaps query manipulation does not obtain corresponding results, then carries out and withdraws from operation.Detail flowchart sees also 3-5.
The function of piece administration module mainly is to carry out the operation of relevant document piece in the centralized indexes server, as piecemeal, by operations such as block message searching user's information, piece storage, verification, deletion, reports.Specifically, mainly constitute by block message to user profile submodule, piece storage report submodule, block delete submodule, block delete report submodule, piecemeal module, block check module.
The function of each submodule below makes introductions all round:
The function of piecemeal module is according to file size file to be carried out piecemeal, and specifically, this piecemeal module by certain partition strategy piecemeal, finally obtains the size information of piece and the sequence number of piece after the size information that has obtained file.
This piecemeal is big more according to file, the strategy that the size of each piece is big more carries out piecemeal, specifically: the size of determining reference block according to the magnitude range of file, then file is carried out piecemeal, the blocks of files of not enough this reference block size of residue is separately as a blocks of files, and this method of partition purpose is the piecemeal number that as far as possible reduces big file.
Following table has provided different file size scopes, the foundation of judgment standard block size:
The size of piece The file size scope
??256K File size<=8.192M
??512K 8.192M<file size<=16.384M
??1M 16.384M<file size<=32.768M
??2M File size>32.768M
Now be exemplified below according to above-mentioned partition strategy:
For example, be that the result of certain file block of 1222368 bytes is to size:
The sequence number of piece The size of piece (byte) The condition code of piece
??0 ??262144 ??d0bb7027e11e2315c38b5b0e094b3c77
??1 ??262144 ??adf614225776a4aacff28a4bc75e394d
??2 ??262144 ??34d734ee9b4b014a3ebe3e77ed9b0edc
??3 ??262144 ??9a3d0648b2d763155f8f8c2203f2e96c
??4 ??173792 ??9c316baac04e195991d058238ae6cc41
Wherein, the size of last piece is a redundancy section.Its size can be calculated according to file total length and piecemeal rule.
Block message to the function of user profile submodule is that the characteristic information according to blocks of files retrieves the optimal user information list that has this document piece, when client is sent the searching user's information request, the characteristic information blockmd5 of blocks of files is delivered to server end, this block message to user profile submodule passes through the inquiry to database table blockmd5_to_blockid, blockid_to_uuid and uuid successively, obtains a user profile that contains some user profile and tabulates.The optimized choice of submodule with IP MAP (IP geographical position map) download optimization submodule (the detailed content relevant narration of face as follows) optimized in this user profile tabulation via common download, determine that (user in the tabulation is by transmission speed sequence arrangement from big to small to the optimal user information list, the information that this tabulation mainly comprises is: uuid,, external ip, internal ip) return client.
Block message to the operation of user profile submodule specific implementation is: when the client block message when user profile inquiry submodule is delivered to the centralized indexes server with the characteristic information blockmd5 of blocks of files, by the server end block message to the user profile submodule by file block message content in the database is retrieved, obtain several (one or more) user's index information, by this index information searching user's information table the user's IP address information retrieval is come out again.Specifically: the authentification of user submodule at first carries out authenticating operation according to user uuid and cookie in the server end user management module, after authentication is passed through, the server end block message to the characteristic information blockmd5 of the blocks of files that the user profile submodule comes according to the client transmission be condition query database table blockmd5_to_blockid, obtain corresponding blockid, be condition query database table blockid_to_uuid with the blockid that obtains again, obtain a plurality of users' uuid, last block message is inquired about from database table uuid according to each uuid to user profile submodule invoke user information inquiry submodule and whether is had the caching server that prestores this document piece (caching server is the client that has higher priority in query script, the narration of relevant caching server below particular content is asked for an interview) in, if have, then pass this caching server information back client and directly carry out down operation from the buffer memory server end, if do not have, then continue to search the user profile that other have this piece, several (one or more) user profile constitute the user profile tabulation, and (this list information comprises uuid, external_ip, internal_ip).Detailed description sees also Fig. 3-6.
After obtaining the user profile tabulation, will pass through and optimize and can realize that for the download of client submodule provide loading source efficiently, the function that submodule and IP MAP download optimization submodule are optimized in this block message to the common download in the user profile submodule is exactly to finish the Optimizing operation of user profile tabulation.
The function that submodule is optimized in common download is to judge download request client user and the user profile user in tabulating whether (a plurality of users' judgement is side by side, carries out simultaneously in this local area network (LAN) or in same group, controlled by thread), if meet this condition, then this user profile tabulation (order of these row his-and-hers watches is at random) is delivered to client and carries out down operation.If do not meet this condition, further tabulation is optimized to user profile then to utilize IP MAP to download the optimization submodule.The process of detail operations sees also Fig. 3-7.
IP MAP is the external IP geographical position tabulation of announcing of national authority department and the access bandwidth of the part network segment.Can calculate the optimal path of communication between two subscriber's main stations according to this tabulation, thereby be converted to the optimum bandwidth that transmits between two users.But relatively expend time in when directly using IP MAP database to calculate, the present invention has adopted IP MAP download optimization submodule to improve computational speed.
Optimize the submodule function in order to illustrate that IP MAP downloads, now illustrate in conjunction with concrete process:
IP MAP has used following database table:
Table name claims: ip_group
The literary name section:
Sequence number Field name Type Explanation
??① ??ipstart Signless integer The IP From of the network segment is represented with signless integer
??② ??ipend Signless integer The End IP of the network segment is represented with signless integer
??③ ??groupno Signless integer Group number, artificial input does not repeat
Table function: by given IP address (converting signless integer to) index user's group number
Table name claims: group_group
The literary name section:
Sequence number Field name Type Explanation
??① ?group1 Signless integer Network segment packet number
??② ?group2 Signless integer Network segment packet number
??③ ?bandwidth Signless integer Transmission bandwidth between group1 and the group2
Table function: inquire two bandwidth between the grouping by given any two packet number.
Transmission bandwidth to each network segment and other network segment among the present invention calculates, and the result after handling is put into database.To have that big bandwidth connects as adjacent node, thereby formed a network segment topology diagram in logic.See also Fig. 3-9.Then each network segment and other network segment are carried out the transmission bandwidth computing by topological diagram, the result is put into database group_group.Thereby can calculate the bandwidth between any two IP efficiently.
It is to calculate optimal path end to end according to IP MAP that IP MAP downloads the major function of optimizing submodule, and the user list after will optimizing turns back to client.Mainly form by bandwidth module between first group of judge module, second group of judge module and inquiry comparative group.
Optimize submodule in above-mentioned common download and judge the user who has piece not in this local area network (LAN) or under the situation on the same group, IP MAP downloads the optimization submodule and continues user list information is optimized, and determines best download user tabulation.For better this module of explanation realizes the process optimized, the user user0 of existing hypothesis request file in download piece, and a plurality of users that preserved the demand file piece in the buffer memory of oneself are respectively user1, user2, user3, user4.Concrete implementation is: this IP MAP downloads and optimizes in submodule first group of judge module and at first inquire about user0 according to the ip address of user user0 from database table ip_group and whether belong to a certain grouping, if do not belong to a certain grouping then directly return the original subscriber user1 that tabulates, user2, user3, user4, if belong to a certain grouping (packet number of supposing user user0 here again is 0), second group of judge module then inquired about user1 in this module from database table ip_group, user2, user3, whether user4 belongs to a certain grouping respectively, and (process of inquiring about each user uses multithreading to carry out simultaneously, here suppose user1, user3 is grouping 1 and 3, user2, user4 does not belong to any grouping), after having obtained grouping information by bandwidth module respectively inquiry packets 0 and grouping 1 from database table group_group between the inquiry comparative group in this module, the grouping 0 and divide into groups between 3 transmission bandwidth (corresponding to the table in bandwidth), and transmission speed sorted from big to small, suppose that the result is grouping 0 to the bandwidth of grouping 3 greater than the bandwidth of grouping 0 to grouping 1.Not being user user2 among the IP MAP, user4 is appended to the end of user list at last, and end user's tabulation in this example is: user3, user1, user2, user4 (user user2, putting in order of user4 is at random), the user list after will optimizing is at last passed client back.The detail flowchart of this module sees also 3-8.
The block check module functions is in the piece administration module: when the characteristic information of the blocks of files of reporting to the centralized indexes server end when client and user ID information, the characteristic information of verification file piece is stored the characteristic information and the user ID of this document piece determining whether.
The operation of this block check submodule specific implementation is: after a certain blocks of files download of client finishes, client's end block storage is reported submodule and is reported the characteristic information and the user ID of blocks of files to the centralized indexes server, the characteristic value that the block check submodule is judged this piece whether with the centralized indexes server in other client users blocks of files characteristic value of reporting consistent.If unanimity is then stored, if inconsistent then proceeding judged, whether the number (saved_count in database table urlseq_to_blockmd5) that present this information stores of judgement is crossed is less than certain particular value (this particular value is an empirical value), if less than this value, then all records before the deletion, and preserve the cash breath of notifying, return success information.If not, (such as recording in the journal file, and notifying the keeper by alternate manner such as E-mail mode) then gives a warning.Because the submodule close relation is reported in this syndrome module and piece storage, concrete realization operation is referring to following description of piece being stored whole process.
The major function that submodule is reported in the storage of piece in the server end block administration module is after client is finished a certain down operation, and the characteristic information and the user ID of the blocks of files that client is reported are stored.
The every download of client finishes a blocks of files, must report the characteristic information of blocks of files to the centralized indexes server, client's end block storage report submodule uploads to the centralized indexes server with the characteristic information and the user ID of piece, and the storage of server end block is reported submodule it is made response.The operation of this module specific implementation is: when the storage of client's end block is reported submodule with uuid, cookie, when the blockmd5 value is delivered to server, the authentification of user submodule is at first according to uuid in the server end user management module, cookie carries out authenticating operation, after the authentication permission, it is condition with blockmd5 that submodule is reported in the storage of server end block, inquiry blockmd5_to_blockid table, whether inquiry exists corresponding blockid, if there has been the record of the information stores of this piece, whether then consistent with the characteristic information of the blocks of files of other users' reports by the characteristic information of block check module verification this document piece, main operation is that the blockmd5 value that client is reported is compared with the blockmd5 value with identical blockid number.If consistent, then inserting one in the blockid_to_uuid table is the new record of content with this blockid with the uuid that reports.If inconsistent, then need inquire about the numerical value of the saved_count among the urlseq_to_blockmd5, whether less than certain particular value (this value is an empirical value); If less than former all record deletions (to prevent malicious attack) then, and deposit piece blockid and the uuid information that reports in blockid_to_uuid, otherwise send the request of reporting an error, carry out manual abnormality processing to the keeper to this download system.Aforesaid operations authentication not by or query manipulation go wrong and then return error message.Detailed content sees also Fig. 3-10,3-12.
The function of block delete report submodule is after client is reported certain blocks of files of deletion in the centralized indexes server end block administration module, and database table is upgraded data manipulation, with the related libraries table record deletion of this piece.
The operation of specific implementation is: when the client block delete is reported the blockmd5 of submodule with deleted block, uuid, when cookie reports server, the authentification of user submodule is at first according to uuid in the server end user management module, cookie carries out authenticating operation, after the authentication permission, the server end block delete is reported submodule and is taken blockmd5 as condition query blockmd5_to_blockid table, whether inquiry exists corresponding blockid, if exist, then invoking server end block deletion submodule is with corresponding record deletion among the blockid_to_uuid.If there is not corresponding blockid, then return error message to client.If authentication is not passed through or the operation appearance is unusual, return error message.Detailed content sees also Fig. 3-11.
The major function of block delete submodule is to carry out the deletion record operation of centralized indexes server end in the centralized indexes server end block administration module.Owing to be simple delete operation, do not do tired stating at this.
Centralized indexes server end (Centralized Index Server) user management module mainly is that user's essential information manages, realize operations such as the user registers, logins, withdraws from, authentication, guarantee and realize searching user's information (corresponding to the customer management information in the database " uuid " table), mainly comprise user's registration management submodule, user login management submodule, user profile inquiry submodule, user and withdraw from submodule, authentification of user submodule.Each submodule institute operation technique of this server end user management module is prior art.
Wherein, user's registration management submodule provides the user registering functional, for using user's distributing user ID of native system.The main concrete operations that realize are: server receives the register requirement of client, user's registration management submodule is uuid table in the Query Database then, find a user ID that is not registered, upgrade the uuid database table then, add this user, the user ID of registration is returned to the user, and idiographic flow sees also accompanying drawing 3-1.
The function of user login management submodule is to realize the function of user's login, and the user is obtained from cookie, as client and the mutual safety certification of index server.And revise the user's online Information sign.Concrete realization operation is: server receives the logging request of client, login module is Query Database table uuid at first, judge whether this user is the registered user, if not, then return mistake, otherwise, upgrade the user's online information (online_flag) among the database table uuid, and dynamically produce a cookie information stores in uuid table, simultaneously this cookie information is returned to client, so that provide authenticating operation for other modules.The flow chart of this module is seen accompanying drawing 3-2.
User profile inquiry submodule mainly is the operations such as online information, IP address information and user basic information according to the user ID inquiring user.This module is that publicly-owned module can be simultaneously by other module invokes, the specific implementation operation is: the authentification of user submodule at first carries out authenticating operation according to uuid and cookie in the server end user management module, after authentication is passed through, according to different query statement (the select statement under the different condition) the uuid table is inquired about, obtain relevant information, and Query Result is returned.
After the user realized down operation, the user in the user management module withdrawed from submodule and is responsible for withdrawing from operation, and the main operation that realizes is the online_flag information of change user message table uuid.Concrete realization operation is: after user end to server sends the request of withdrawing from, the authentification of user submodule at first carries out authenticating operation in the server end user management module, after authentication is passed through, inquiry uuid database, whether inquiry exists this user's record, if exist, then the online_flag in this uuid table is changed to down status, and withdraw from native system.Concrete realization flow sees also Fig. 3-3.
Whether the authentification of user submodule is publicly-owned module in the user management module, and when being the process user request, the uuid and the cookie information of coming with the client transmission are condition, at first inquire the cookie among the server database table uuid, then compare consistent.If consistent, then authentication is passed through.If inconsistent, authentification failure then.Each operation requests after client user's login need be passed through this authentication.
So far, the function introduction of the basic composition of server end and each module finishes.
(2), client (Clients)
Client mainly goes up transmission module and local cache administration module by user management module, IE supplementary module, file download module, P2P (Peer to Peer, point-to-point).Each module composition of client sees also Fig. 2-2.
In down operation, send request by each functional module of client, the centralized indexes server is handled various requests, cooperatively interacts to finish down operation.The communications protocol of client and index server end is all used http protocol.
The user uses native system for the first time, must register, and obtains a user ID from the centralized indexes server when succeeding in registration, and later client need use this user ID to login to the centralized indexes server.User's registration and login are handled it by corresponding module in the centralized indexes server.The user management module of client is corresponding to the user management module of centralized indexes server, by mutually side by side, independent user registration submodule, user login submodule, the user withdraws from submodule and forms.This corresponding relation figure sees also Fig. 2-3,2-4.
It is to send register requirement to server that the user of client user's administration module registers the submodule major function.Concrete operation is, at first, inquires about in the windows registry of client and whether registers (inquiring user ID), has ID users if registered then can inquire in this locality.If local computer does not have user ID then to send register requirement to the centralized indexes server, by the ID users of centralized indexes server-assignment corresponding to uuid in the uuid table, and this user ID returned client, the client user registers submodule this user ID is kept at client.Details see also Fig. 4-1.
The major function that the user logins submodule is to send logging request to the centralized indexes server, and receives the return information of centralized indexes server.Concrete realization operation is: the client user logins submodule and sends logging request to the centralized indexes server, uuid is sent to server end, the centralized indexes server receives this request, handle this request by server end user login management submodule, Query Database table uuid judges whether this user's uuid is present in the uuid table.If not, will return error message, if be the registered user, then upgrade the user's online information (online_flag) among the database table uuid, change into online.Produce cookie and store in the uuid table (authenticating operation of other modules is provided), this user login management submodule will login successful information and cookie returns client.By the client user login that submodule receives successful information and with the cookie information stores returned to client.Details see also Fig. 4-2.
The major function that the user withdraws from submodule is to send the request of withdrawing to the centralized indexes server, concrete realization operation is: client is with uuid, cookie information is sent to server end, authenticate by authentification of user submodule in the server end user management module, after authentication is passed through, this user of server end withdraws from the online_flag information among the submodule change user message table uuid, this information is changed into roll off the production line, and carry out the operation of withdrawing from native system.
The IE supplementary module is the respond module that triggers download event, and this document download system has been registered the readjustment response of click event and the download clauses and subclauses (login mechanism is the disclosed interface Browser of IE Helper Objects (browser is assisted object)) in the right-click menu to the IE control.Its major function is when the user clicks the down operation incident, triggers the native system download function, and obtains the characteristic information of downloaded files information spanned file.
The operation of the specific implementation of this IE supplementary module is: when the user triggers download event by left button click or right-click menu, this IE supplementary module obtains the url (uniform resource locator) of file, url according to file obtains filesize (file size) from the Source Site, lastmodtime (file is revised the date at last), as input parameter, go out urlmd5 according to url, filesize, lastmodtime according to the MD5 algorithm computation.The detailed content that this module realizes sees also Fig. 4-3.
The major function of client (Clients) file download module is after the IE supplementary module triggers download event, send query requests to server end, final acquisition can provide the user profile tabulation (user profile in this tabulation mainly comprises uuid, external_ip, internal_ip) of this document piece download, realizes operations such as download, storage, report blocks of files.
This document download module mainly is made up of four parts such as user profile enquiry module, download realization submodule, piece management submodule, file management submodules.
Summarize: in the down operation process, each functional module of client is sent the process information of asking and receive the centralized indexes server to return to centralized indexes server (Centralized Index Server) and is realized sequence of operations such as download, storage, report.There are relation one to one substantially in client and centralized indexes server module.The graph of a relation of each module sees also Fig. 2-5 in the client downloads process in detail.The effect of relevant each module of native system client in downloading process please see following specific descriptions for details.
Below basically according to the order of module among Fig. 2-5 the make introductions all round function and the formation of each submodule of file download module.
The major function of piecemeal submodule is according to certain partition strategy file to be carried out piecemeal according to the document size information that obtains in the piece management submodule, and obtains the branch block message of piece, and this piecemeal information comprises the size of piece sequence number and each piece.Client distributes multithreading to realize the information inquiry and the down operation of each piece to the centralized indexes server end in following down operation process.
The piecemeal mechanism of this piecemeal submodule is machine-processed identical with centralized indexes server end piecemeal module, and the file block of the two generation is consistent, and this has guaranteed the consistency in the file download process.Relevant concrete partition strategy sees also above-mentioned centralized indexes server end narration, does not do tired stating at this.
The major function of user profile enquiry module is to send query requests and receive the return information of centralized indexes server to the centralized indexes server in the file download module.This module mainly is made of fileinfo to block message inquiry submodule and block message to user profile inquiry submodule.Two submodules corresponding to the fileinfo of centralized indexes server end document management module to the block message of block message submodule and piece administration module to subscriber information module.Connect each other, the operation that obtains best download user information list is finished in acting in conjunction.
Wherein, fileinfo to the major function of block message inquiry submodule is to send the request of query block information and receive return information to the centralized indexes server.Concrete realization operation is: with the urlmd5 of IE supplementary module generation, blockseq by the acquisition of piecemeal submodule, and the uuid that is used for authenticating operation, cookie is delivered to server end, fileinfo to block message submodule by the centralized indexes server end is a condition with these information, realize query manipulation (narration of above-mentioned server end fileinfo to the block message submodule seen in concrete operations), the characteristic information (blockmd5) of the blocks of files that client file information to block message inquiry submodule reception server end returns or do not have this block feature information and then judge next step operation, particularly: if returned the blockmd5 value, then this information is delivered to the client block message and carries out next step query manipulation to user profile inquiry submodule, if there is not this characteristic value, promptly return an error message, then call the client source website and download the realization submodule is realized file from the Source Site download.Detailed process sees also Fig. 4-4.
Client block message to the major function of user profile inquiry submodule is: after above-mentioned fileinfo to block message inquiry submodule obtained the characteristic information (blockmd5) of blocks of files, client block message to user profile inquiry submodule sent the request of searching user's information and the information that reception is returned to the centralized indexes server.Concrete realization operation is: this module is with the characteristic information (blockmd5) of blocks of files and the uuid that is used for authenticating operation, cookie information sends to the centralized indexes server, the block message of centralized indexes server end to user profile submodule is handled concrete query manipulation (narration of above-mentioned server end block message to the user profile submodule seen in concrete operations), user profile tabulation that client block message to user profile inquiry submodule reception server returns or the information that does not have this user profile tabulation, and then judge next step operation, particularly:, then directly call client P2P and download submodule realization down operation if returned the user profile tabulation.If do not have this list information, promptly return an error message, so directly call the client source website and download the realization submodule is realized file from the Source Site download.Detailed process sees also Fig. 4-5.
Downloading the function that realizes submodule in the file download module is to judge according to the information that the centralized indexes server end returns to carry out the download process operation in which way, specifically, the difference according to downloading mode can be divided into Source Site download realization submodule, P2P downloads submodule.
The Source Site is downloaded and is realized that submodule is that directly (the English full name of HTTP is HyperText Transfer Protocol, i.e. Hypertext Transmission Protocol from HTTP/FTP is provided; The English full name of FTP is File Transfer Protocol, i.e. file transfer protocol (FTP)) the Source Site file in download.The reason that adopts this mode to download has following several:
1. client can not find the user who preserves this document piece from the centralized indexes server;
2., download for some reason and can not realize (such as can not passing fire wall, user in the process of transmitting, roll off the production line etc.) though client has obtained a user list of preserving this document piece;
Client from other user's download blocks of files, but the verification of blocks of files is incorrect;
4. the blocks of files transmission is not supported in the Source Site.
The Source Site is downloaded the realization submodule http protocol (HyperText TransferProtocol, i.e. Hypertext Transmission Protocol) and the File Transfer Protocol (File Transfer Protocol, i.e. file transfer protocol (FTP)) of request is handled respectively.Website is downloaded the flow chart of realizing submodule and is seen also Fig. 4-13.
The operation of this module has been avoided in the prior art because the download problem out of stock that " seed " disappearance causes.
The function that P2P downloads submodule is from other user there transfer files piecemeal.Its is asked from other client there transfer files piece successively according to the user profile tabulation of returning from the centralized indexes server, if request error, then from user list, attempt next, if mistakes is all then downloaded from the Source Site.Hop sees also flow chart 4-14.This P2P downloads submodule originally as prior art.
The P2P of client goes up transmission module, and the end that provides as downloading provides a certain transmission of file for the download request client.See also 2-7 about download request end and download in the downloading process provide the end P2P download module graph of a relation that P2P goes up between the transmission module, the last transmission module of P2P is transferred to the download request end subscriber with the blocks of files that local cache extracts submodule (this local cache extraction submodule content please see for details and describe below) acquisition.The flow chart of the last transmission module of P2P sees also Fig. 4-15.It is prior art that this P2P goes up transmission module itself.
The major function of block check submodule is the check code (being the characteristic value blockmd5 of blocks of files) of the blocks of files after each download of calculating in the piece management submodule, and and the characteristic value of the blocks of files that obtains to the block message enquiry module from the centralized indexes server of above-mentioned client file information compare, and return whether consistent information, if the information unanimity of verification, then can store (narration that the details of storage see also following sub module stored) to this document piece, if inconsistent, as then to download piece again operation from the Source Site.The concrete operation of this block check submodule sees 4-10 for details.
The function of piece sub module stored is to store into by the blocks of files after the verification in the local file destination in the piece management submodule, and buffer memory is handled.Concrete realization operation is that blocks of files is stored in the local file destination.Then, spatial cache is judged, judge whether remaining space in addition, if spatial cache is full, then carry out the operation of deleted file piece according to the method (FIFO, First In First Out) of first in first out, this deletion action is carried out by the block delete submodule, after the deletion action, report submodule by block delete the deletion information of piece is reported server end.If buffer memory also has living space, then call local cache and preserve submodule (concrete function of this module sees also the description of following local cache administration module) this document piece is deposited in the local cache, so that provide loading source for down operation.Details see also Fig. 4-8 of storing process.
The major function that above-mentioned block delete is reported submodule is that block delete information is reported server, reports submodule by the server end block delete storehouse table is carried out concrete operation.The client block delete is reported antagonistic relations Fig. 2-6 of submodule and server end block delete report submodule.Concrete realization operation is: this block delete is reported the characteristic information blockmd5 of submodule with the deleted file piece, uuid, cookie information is delivered to the centralized indexes server, at first by authentification of user submodule in the server end user management module according to uuid, cookie information is carried out authenticating operation, and authentication is reported the renewal operation that submodule is carried out the storehouse by back centralized indexes server block deletion.
(this renewal operation please see the narration that the server end block delete is reported submodule for details).
To report the function of submodule be that the characteristic information and the user ID of the blocks of files of storage are reported in the piece storage in the piece management submodule, and receive the storage of centralized indexes server end block and report return information after submodule is handled.Concrete realization operation is: the storage of client's end block is reported submodule with piece blockmd5, uuid, cookie are delivered to client and carry out concrete realization operation (this operation please see the narration of this module of server end for details) by centralized indexes server end block storage report submodule.The return information of submodule reception server end is reported in the storage of client's end block, if return correct information, then proof is stored successfully.If return error message, illustrate that then the piece of storing in the local cache just can not provide the transmission of piece for other download request ends, by the deletion submodule blocks of files in the local cache is deleted so.This process sees also Fig. 4-9.
Whether the file management submodule major function in the file download module is to judge downloading in the local file destination piece, all pieces are downloaded to finish, and finishes if download, and then the All Files piece is merged in order, realizes the storage to file.And with the storage fileinfo report the centralized indexes server.This module is mainly reported submodule by file storage submodule and file and is constituted.
Wherein, the function of file storage submodule is to judge whether all modules of file are downloaded to finish, and finishes if download, and then the numeric order of this document according to piece is merged, and is stored in the file destination, does not finish if download, then return.Main operation sees Fig. 4-6 for details.
The function that file is reported submodule is that file is downloaded file is sent in information report request from the back that finishes to the centralized indexes server.Concrete operation is, after file storage, client file is reported submodule with url, urlmd5, filesize, lastmodtime and the uuid that is used for authenticating operation, cookie information is delivered to server end, reports submodule by the file storage of document management module in the centralized indexes server and handles request (detailed information sees also the file storage of document management module in the centralized indexes server and reports the submodule description).Main operation sees Fig. 4-7 for details.
Client's device end local cache administration module is to be responsible for the preservation of local cache and to extract operation.The file of just on user's hard disk, creating when local cache is the native system installation (size of the file of being created is decided according to user's hard disk remaining space).Cache file is divided into blocks of files information index part and blocks of files data division.Index part contain blocks of files blockmd5, divide block size and piece information such as stored position hereof.
No matter user's download is from the Source Site download or from P2P user's file in download, can preserve blocks of files in cache file, reports simultaneously and gives index server.If other user connects to come the demand file piece by network, then client provides corresponding upload service for this request.
The local cache administration module is divided into local cache and preserves submodule and local cache extraction submodule.
The function that local cache is preserved submodule is to preserve blocks of files information in cache file, and sets up the index to this piece in cache file.If this cache file has not had idle space during preservation, then call the blocks of files that the deletion of client block delete submodule is preserved the earliest, and invoking block deletion report submodule is reported the characteristic information of deleted file piece to the centralized indexes server.The flow chart that local cache is preserved submodule sees also Fig. 4-11.
The function that local cache extracts submodule is to index the content of blocks of files and the content information of backspace file piece from local cache.Its flow chart sees also 4-12.
(3), caching server is that special-purpose server only has the function of uploading, caching server is used to store the download of concurrent number than higher file.It has bigger buffer memory and higher bandwidth, occupies very high priority when user inquiring.
Caching server is equivalent to only provide the client of upload service, and it is some specific files (comprising blocks of files) of buffer memory in advance.It is identical with host-host protocol and common client between server and other client.Specifically caching server includes the local cache administration module and the last transmission module of P2P of above-mentioned client.
Two, concrete use is described:
The registered user is after login, and the method for down loading that can use native system to provide now specifies the method for down loading that native system provides in conjunction with Fig. 4-16:
As a step among Fig. 4-16: when the user clicks by left button or right-click menu when triggering download event, obtain the url (uniform resource locator) of file by the IE supplementary module, obtain filesize (file size) then from the Source Site, lastmodtime (file is revised the date at last), according to url, filesize, lastmodtime as input parameter, according to MD5 algorithm computation outfile characteristic information urlmd5.
As b step among Fig. 4-16: obtained by client piecemeal submodule file to be carried out piecemeal after the document size information and handled, obtained the sequence number blockseq of blocks of files.
As c step among Fig. 4-16: client file information is to the urlmd5 of block message inquiry submodule with file, the sequence number blockseq information of blocks of files and the uuid that is used to carry out user's authenticating operation, cookie information is sent the request of the characteristic information of inquiry file piece to the centralized indexes server, the authentification of user submodule is at first according to uuid in the server end user management module, cookie information is carried out user's authenticating operation, after authentication is passed through, server end fileinfo to block message submodule inquires urlid from database table urlmd5_to_urlid, from database table urlseq_to_blockmd5, inquire the characteristic information blockmd5 of blocks of files with the sequence number blockseq of blocks of files and the urlid that inquires, the characteristic information blockmd5 of this document piece is transmitted back client.If above-mentioned query manipulation does not inquire the result, then return error message, the operation of file in download is directly downloaded by the client source website and is realized that submodule carries out from the Source Site.
As d step among Fig. 4-16: client is behind the characteristic information blockmd5 that receives the blocks of files that server end returns, send request by client block message to user profile inquiry submodule to server end, with uuid, cookie, blockmd5 information sends to server end, handle by server end block message to user profile submodule, specifically: the authentification of user submodule at first carries out authenticating operation according to user uuid and cookie in the server end user management module, after authentication is passed through, characteristic information blockmd5 Query Database table blockmd5_to_blockid according to the next blocks of files of client transmission obtains corresponding blockid, be the uuid that condition query database table blockid_to_uuid obtains a plurality of users with this blockid again, from database table uuid, inquire the Intranet IP address information internal_ip and the outer net IP address information external_ip of relative users at last according to each uuid, this uuid, internal_ip, external_ip information is formed the user profile tabulation, and this user profile tabulation is turned back to client.If mistake appears in above-mentioned query manipulation, then client is returned in error message, the client source website is downloaded the realization submodule and is realized down operation from the Source Site.
As e step among Fig. 4-16: after server end is passed the user profile tabulation back client, client downloads realizes that P2P downloads submodule according to the user profile tabulation of returning from the centralized indexes server end in the submodule, ask the download from this user profile tabulation that client there transfer files piece is provided successively, if request error, then from the user profile tabulation, attempt next, if all mistake is then downloaded from the Source Site.
As f step among Fig. 4-16: the blocks of files after the download stores blocks of files into local file destination by client's end block sub module stored, also blocks of files will be stored in the local cache simultaneously, so that provide end for down operation provides to download.
As g step among Fig. 4-16: through after the above-mentioned operation, the storage of client's end block is reported submodule and is reported information and the user ID that is stored in blocks of files in the local cache to server, specifically: with uuid, cookie, blockmd5 uploads onto the server, the authentification of user submodule is at first according to uuid in the server end user management module, cookie carries out authenticating operation, after the authentication permission, the storage of server end block is reported submodule and whether is had corresponding blockid according to blockmd5 inquiry blockmd5_to_blockid table, if there has been the information stores of this piece, whether then consistent with the information that other users report by this information of server end block check module verification, main operation is that the blockmd5 that cash is reported is compared with the blockmd5 value of identical blockid.If consistent, then inserting the uuid with this blockid and report in the blockid_to_uuid table is the new record of content.If inconsistent, then need inquire about the numerical value of the saved_count among the urlseq_to_blockmd5, whether less than certain particular value (this value is an empirical value); If less than former all record deletions then, and with the blockid_to_uuid that deposits in of the uuid of blockid and report, otherwise, send the request of reporting an error to the keeper, carry out manual abnormality processing.
As h step among Fig. 4-16: all blocks of files are all passed through above-mentioned downloading process, when all blocks of files of file download finish after, by the client file sub module stored file is merged, preserve this document.
As i step among Fig. 4-16: and report submodule by client file and carry out fileinfo and report the work, this client file is reported submodule with uuid, url, urlmd5, filesize, lastmodtime, cookie information is reported to server end, the authentification of user submodule is at first according to uuid in the server end user management module, cookie information is carried out user's authenticating operation, and after authentication was passed through, the server end file storage was reported submodule according to urlmd5 inquiry urlmd5_to_urlid table, judge whether to exist corresponding urlid, if exist, then do not store, withdraw from this module operation.If do not exist, then in the urlmd5_to_urlid table, create a new record corresponding fileinfo is stored.

Claims (21)

1, a kind of file of realizing quickens the system that downloads, and mainly by a centralized indexes server, the plurality of client end is formed, and it is characterized in that:
The centralized indexes server is made up of document management module and piece administration module, file feature information and block identification that this document administration module is used for transmitting by following client file download module obtain the characteristic information of blocks of files, and store the fileinfo that following client file download module is reported; The piece administration module is used for according to predetermined partition strategy file being carried out piecemeal, and the characteristic information of the blocks of files of transmitting by following client file download module obtains the user profile tabulation, and the characteristic information and the user ID of storing the blocks of files that following client file download module reports;
Client includes IE supplementary module, file download module, the last transmission module of P2P, local cache administration module, and this IE supplementary module is used to obtain fileinfo and spanned file characteristic information; The file download module is used for according to the described partition strategy of server end block administration module file being carried out piecemeal and generates block identification, file feature information and block identification are delivered to server end, the characteristic information of the blocks of files that acquisition server end document management module returns, and the characteristic information of the blocks of files returned is delivered to server end, obtain the user profile tabulation that server end block administration module returns, according to this user profile of returning tabulation, from this tabulation, choose the user and provide client as download, and provide client to send download request to this download, finish the download of blocks of files, and the blocks of files after downloading stored, characteristic information and the user ID of downloading back this document piece are reported server end, merge all files piece after downloading, file after being combined is stored, and fileinfo is reported server end; The last transmission module of P2P is used to the file download module of download request client that the transmission of blocks of files is provided; The local cache administration module is used at local cache piece being preserved and being extracted;
Client IE supplementary module obtains fileinfo and spanned file characteristic information, the client file download module receives this document information and according to specific partition strategy file is carried out piecemeal acquisition block identification, the client file download module is delivered to server end with file feature information and block identification, obtain the characteristic information of blocks of files and it is returned client according to this document characteristic information and block identification by the server end document management module, client is delivered to server end with the characteristic information of this document piece, return by server end block administration module acquisition user profile tabulation and with this user profile tabulation, client is according to this user profile of returning tabulation, provide client to send download request to download, provide client P2P to go up the transmission that transmission module provides blocks of files by download, download back storage this document piece in file destination, the local cache administration module is stored in this document piece in the buffer memory, the file download module is reported server end with the characteristic information and the user ID of this document piece, by server end block administration module it is stored.
2, the system as claimed in claim 1, it is characterized in that the centralized indexes server end also comprises user management module, this user management module is used to carry out user's authenticating operation, user profile inquiry, and finish following client user's administration module registration, login, withdraw from request; Client also comprises user management module, and this module sends to server end and registers, logins, withdraws from request.
3, the system as claimed in claim 1 is characterized in that:
Centralized indexes server end document management module also comprises fileinfo to block message submodule, file storage report submodule, and this document information to block message submodule is used for obtaining by the file feature information of following client file download module user profile enquiry module transmission and block identification the characteristic information of blocks of files; File storage is reported submodule and is used for the fileinfo that following client file download module file management submodule is reported is stored;
Centralized indexes server end block administration module also comprises piecemeal module, block message to user profile submodule, piece storage report submodule, and this piecemeal module is used for according to predetermined partition strategy file being carried out piecemeal; Block message to user profile submodule is used for obtaining the user profile tabulation by the characteristic information of the blocks of files of following client file download module user profile enquiry module transmission; The piece storage is reported submodule and is used for storing characteristic information and the user ID that following client file download module piece is managed the blocks of files of submodule report;
The client file download module also comprises the user profile enquiry module, downloads and realize submodule, piece management submodule, file management submodule, this user profile enquiry module is used for file feature information and block identification are delivered to server end, obtain the characteristic information of the blocks of files that fileinfo to block message submodule returns in the server end document management module, and the characteristic information of the blocks of files returned is delivered to server end, obtain the user profile tabulation that block message to user profile submodule returns in the server end block administration module; Download realization submodule is chosen the user and is provided client as download according to this user profile of returning tabulation from this tabulation, and provides client to send download request to this download, goes up the download that transmission module provides the transmission realization blocks of files of blocks of files by P2P; Piece management submodule is used for according to the described partition strategy of server end block administration module piecemeal module file being carried out piecemeal, blocks of files after storage is downloaded, and the characteristic information and the user ID of blocks of files of storage be delivered to server end, report the information that submodule will transmit by the storage of server end block and store; This document management submodule is used for the merge file piece, is combined the back file and stores, and fileinfo is reported the file storage report submodule of server end document management module;
The client terminal local caching management module comprises that also local cache is preserved submodule and local cache extracts submodule, and this local cache is preserved submodule and is used for download is realized that submodule downloaded files piece stores local cache into; Local cache extraction submodule is used for the content at local cache index file piece, and this document piece delivery of content is gone up the transmission that transmission module is realized blocks of files to P2P.
4, system as claimed in claim 3, it is characterized in that: centralized indexes server end block administration module also comprises block delete submodule and block delete report submodule, and this block delete is reported submodule and is used for receiving characteristic information and the user totem information that following client file download module piece is managed the blocks of files of submodule transmission; This block delete submodule is used to delete this information;
Piece management submodule can also be used for deleting the blocks of files of local cache and the characteristic information of the blocks of files of deletion and the block delete that user ID is delivered to server end block administration module are reported submodule in the client file download module.
5, as claim 3,4 described systems, it is characterized in that: centralized indexes server end block administration module also comprises the block check module, this module is used to judge whether the characteristic value of the blocks of files of being reported by client's end block management submodule is consistent with the characteristic value of the blocks of files of other clients reports, if it is consistent, then reporting submodule by the piece storage of server end block administration module stores the information and the user ID of this document piece, if fruit is inconsistent, then return error message.
6, system as claimed in claim 3, it is characterized in that: the user profile enquiry module of client file download module comprises that also fileinfo to block message is inquired about submodule and block message to user profile is inquired about submodule, this document information to block message inquiry submodule is used for the characteristic information and the block identification of file are delivered to server end document management module fileinfo to the block message submodule, and obtains the characteristic information of the blocks of files that this module transmission of server end returns; Block message to user profile inquiry submodule is used for the characteristic information of blocks of files is delivered to server end block administration module block message to the user profile submodule, and obtains the user profile tabulation that this module of server end is returned.
7, system as claimed in claim 3, it is characterized in that: download in the client file download module and realize that submodule comprises that also the realization submodule is downloaded in the Source Site and P2P downloads submodule, this Source Site is downloaded and is realized that submodule is used in the download that can not carry out the blocks of files under the point-to-point down operation situation; P2P downloads submodule and is used to carry out the download of point-to-point blocks of files.
8, system as claimed in claim 4, it is characterized in that: piece management submodule also comprises piecemeal submodule, piece sub module stored, piece storage report submodule in the client file download module, and this piecemeal submodule is used for according to the described partition strategy of server end block administration module piecemeal module file being carried out piecemeal and obtains the blocks of files sign; The piece sub module stored is used for the blocks of files after downloading is stored; Piece storage report submodule passes to piece management report submodule in the server end block administration module with the characteristic information and the user ID of this storage file piece.
9, system as claimed in claim 8 is characterized in that: piece management submodule also comprises block delete submodule and block delete report submodule in the client file download module, and wherein this deletion submodule is used for the blocks of files of local cache is deleted; Block delete is reported submodule and is used for the block delete that characteristic information and user ID with this deleted file piece be delivered to server end block administration module and reports submodule.
10, system as claimed in claim 9, it is characterized in that: piece management submodule also comprises the block check submodule in the client file download module, and this module is used for judging whether the characteristic information that downloads to local blocks of files is consistent to the characteristic information of the blocks of files of block message inquiry submodule acquisition with client file download module fileinfo; If unanimity is then stored this document piece by the piece sub module stored of client's end block management submodule,, then realize that by downloading the Source Site download realizes that submodule carries out the download of blocks of files again in the submodule if inconsistent.
11, system as claimed in claim 3, it is characterized in that: block message to user profile submodule comprises that also submodule is optimized in common download or IP MAP downloads one or two modules of optimizing in the submodule in the centralized indexes server end block administration module, wherein, common download is optimized submodule and is used for transmitting back client block message to user profile and inquiring about submodule belonging to same local area network (LAN) or the tabulation of user profile on the same group with the download request client user; IP MAP downloads the optimization submodule and is used for judging according to the user profile of download request client whether this user has the group number of the group of dividing according to different segment, be used for judging whether each user of user profile tabulation exists above-mentioned group number, and according to the group number of user in the group number of the download request end subscriber that obtains and the user list, obtain the bandwidth of user in the tabulation of download request end subscriber and user profile, user in the user profile tabulation is sorted according to amount of bandwidth, and client is returned in the tabulation of the user profile after will optimizing.
12, the system as claimed in claim 1, it is characterized in that: this system also comprises some caching servers, this caching server comprises last transmission module of P2P and local cache administration module, and wherein the last transmission module of P2P is used to the file download module of download request client that the transmission of blocks of files is provided; The local cache administration module is used at local cache blocks of files being preserved and being extracted.
13, the system as claimed in claim 1 is characterized in that:
Described fileinfo is meant: size, the file of uniform resource locator, file are revised the date at last;
Described file feature information is meant: the MD5 characteristic value of being revised the character string that the date is combined in order by size, the file of uniform resource locator, file at last;
Described block identification is meant: the piece sequence number;
The characteristic information of described blocks of files is meant: the MD5 characteristic value of being calculated by blocks of files data and blocks of files length gauge;
Described user ID is meant: user's ID number;
Described user profile is meant: user's ID number, user's Intranet IP address and outer net IP address;
Described user profile tabulation is meant: the combination of a plurality of above-mentioned user profile.
14, a kind of file of realizing quickens the method for downloading, and this method realizes the file download by a centralized indexes server and plurality of client end, it is characterized in that this method comprises the steps:
A, download request client obtain fileinfo and spanned file characteristic information;
B, download request client are carried out piecemeal according to predetermined partition strategy and are obtained block identification;
C, download request client are delivered to the centralized indexes server end with file feature information and block identification, obtain the characteristic information of centralized indexes server end backspace file piece;
D, download request client are delivered to the centralized indexes server end with the characteristic information of blocks of files, obtain the user profile tabulation that the centralized indexes server end returns;
E, download request client are chosen the user and are provided client as download, and provide client to send download request to this download according to this user profile of returning tabulation from this tabulation, provide client that the blocks of files transmission is provided by download;
F, download request client are stored the blocks of files after downloading;
G, download request client are delivered to the centralized indexes server end with the characteristic information and the user ID of the blocks of files of storage, by the centralized indexes server end information of this transmission are stored;
All Files piece after h, download request client will be downloaded merges, and preserves file;
I, download request client are delivered to the centralized indexes server end with fileinfo, by the centralized indexes server end information of transmitting are stored.
15, method as claimed in claim 14 is characterized in that, the user profile tabulation in the described steps d is meant the user profile tabulation through optimization process, and this optimization process may further comprise the steps:
D1, judge the user in the user profile tabulation and whether the download request client user belongs in the same local area network (LAN) or on the same group, if all belong to same local area network (LAN) or on the same group in, then the download request client is returned in this tabulation, if not, then proceed next step;
D2, judge whether the download request client user has the group number of the group of dividing according to different segment,, then the download request client is returned in the user profile tabulation,, then proceed next step if having this group number if do not have this group number;
D3, judge whether the user in the user profile tabulation has described group number, if all do not have described group number, then this list information is returned client, if having at least a user to have this group number, then proceeds next step;
D4, according to the group number of user in download request client user's group number and the user profile tabulation obtain the download request client user tabulate with user profile in bandwidth between user's group, and user profile tabulation arranged by the amount of bandwidth order, thereby finish optimization process.
16, method as claimed in claim 14 is characterized in that, also includes among the described step e: if can not provide client to download from other downloads, download from the Source Site so.
17, method as claimed in claim 14, it is characterized in that, also include among the described step e: the characteristic information that the download request client will download to local blocks of files compares with the characteristic information of the blocks of files that obtains from server end, if it is inconsistent, again download from the Source Site so, if consistent, then carry out step f.
18, method as claimed in claim 14 is characterized in that, described step f also comprises:
F1, the blocks of files after will downloading store file destination into;
F2, the blocks of files after will downloading store in the local cache.
19, method as claimed in claim 14 is characterized in that, also includes between described step f and the g:
Blocks of files in fg1, the download request client deletion local cache space;
Fg2, download request client are delivered to the centralized indexes server end with the characteristic information and the user ID of the blocks of files of deletion;
Fg3, centralized indexes server end are deleted this information according to the characteristic information and the user ID of the blocks of files of the next deletion of client transmission.
20, method as claimed in claim 14 is characterized in that, also includes in the described step g:
The centralized indexes server end transmits the characteristic information of blocks of files and the characteristic information of the blocks of files that other clients are reported to compare according to the download request client, if consistent, then stores, if inconsistent, then returns error message.
21, method as claimed in claim 14 is characterized in that: described predetermined partition strategy is meant:
According to the size of file, determine the numerical value of reference block;
According to the numerical value of this reference block, earlier this document is divided into the blocks of files that several sizes equal this reference block, then with remaining last be not more than the blocks of files of this reference block separately as a blocks of files.
CNB2004100478819A 2004-06-18 2004-06-18 Method and method for realizing document accelerated download Expired - Fee Related CN100459497C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2004100478819A CN100459497C (en) 2004-06-18 2004-06-18 Method and method for realizing document accelerated download

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2004100478819A CN100459497C (en) 2004-06-18 2004-06-18 Method and method for realizing document accelerated download

Publications (2)

Publication Number Publication Date
CN1710857A true CN1710857A (en) 2005-12-21
CN100459497C CN100459497C (en) 2009-02-04

Family

ID=35707045

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100478819A Expired - Fee Related CN100459497C (en) 2004-06-18 2004-06-18 Method and method for realizing document accelerated download

Country Status (1)

Country Link
CN (1) CN100459497C (en)

Cited By (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007147320A1 (en) * 2006-06-14 2007-12-27 Roxbeam Media Network Corporation System and method for buffering real-time streaming content in a peer-to-peer overlay network
WO2008025294A1 (en) * 2006-08-22 2008-03-06 Tencent Technology (Shenzhen) Company Limited A stream media live system, device and method of peer to peer connection
CN100384127C (en) * 2006-01-06 2008-04-23 华为技术有限公司 Downloading user's terminal and its method for downloading shared data
WO2008077328A1 (en) * 2006-12-25 2008-07-03 Tencent Technology (Shenzhen) Company Limited System, method and apparatus that can access a web page element in a web page
CN100418330C (en) * 2006-06-06 2008-09-10 北京北大方正电子有限公司 Network file transmission method based on prediction searching
WO2009046642A1 (en) * 2007-10-09 2009-04-16 Huawei Technologies Co., Ltd. Data distributing method, data distributing system and correlative devices in edge network
WO2009079948A1 (en) 2007-12-26 2009-07-02 Huawei Technologies Co., Ltd. A content buffering, querying method and point-to-point media transmitting system
CN1897588B (en) * 2006-06-21 2010-06-16 北京北大方正电子有限公司 Mixed-mode network file transmitting method and system
CN101159762B (en) * 2007-11-19 2010-07-21 腾讯科技(深圳)有限公司 Method and device of accelerating download of web page contents
CN101132272B (en) * 2006-08-23 2010-07-28 中国科学院计算技术研究所 System supporting downloading and using of distributed encrypted document
CN101192946B (en) * 2006-11-28 2010-08-25 欧阳炳宇 A method and system for improving download efficiency of special P2P built-in terminal
CN101827128A (en) * 2010-04-06 2010-09-08 山东高效能服务器和存储研究院 Method for segmentally downloading and matching files in network transmission
WO2010099715A1 (en) * 2009-03-04 2010-09-10 成都市华为赛门铁克科技有限公司 Method, system, client and data server for data operation
CN101150465B (en) * 2006-09-22 2010-09-15 腾讯科技(深圳)有限公司 A method for obtaining seed information and supernode and common nodes in P2P network
CN101848188A (en) * 2009-03-25 2010-09-29 上海聚力传媒技术有限公司 Method and device for updating data block checking information
CN101090367B (en) * 2007-07-06 2010-10-20 北京搜狗科技发展有限公司 Data transmission method and device in reciprocal network
CN101068173B (en) * 2006-06-08 2010-11-03 腾讯科技(深圳)有限公司 Resource sharing method and system, and server
CN101997781A (en) * 2009-08-25 2011-03-30 中兴通讯股份有限公司 Breakpoint continuous transmission method and system
CN102130962A (en) * 2011-04-06 2011-07-20 上海少思网络科技有限公司 Method for screening network nodes for downloading acceleration based on cloud computing
CN102130928A (en) * 2010-01-19 2011-07-20 腾讯科技(深圳)有限公司 Method and device for downloading data
CN101267383B (en) * 2007-03-14 2011-08-17 中国移动通信集团公司 Data transmission method and system
CN102164115A (en) * 2010-02-22 2011-08-24 中国电信股份有限公司 Method and system for multisource mixing file transmission
CN101631061B (en) * 2008-07-15 2011-08-31 中国移动通信集团公司 Method for informing resource node message and network entity device
CN101437051B (en) * 2008-12-04 2011-09-28 四川长虹电器股份有限公司 Method for downloading network resource
CN102333127A (en) * 2011-10-20 2012-01-25 中兴通讯股份有限公司 Resource downloading method, device and system
CN102387220A (en) * 2011-12-22 2012-03-21 乐视网信息技术(北京)股份有限公司 Offline downloading method and system based on cloud storage
CN101075879B (en) * 2006-06-13 2012-04-25 腾讯科技(深圳)有限公司 Method for downloading data
CN101437044B (en) * 2008-11-28 2012-05-09 中兴通讯股份有限公司 Method and system for downloading file by point-to-point network technique based on sliced sheet
CN102571951A (en) * 2011-12-31 2012-07-11 珠海金山办公软件有限公司 System and method for transferring files
CN102664938A (en) * 2012-04-12 2012-09-12 北京蓝汛通信技术有限责任公司 Method and device for controlling downloading of resources
CN101325579B (en) * 2007-06-11 2012-09-12 上海未来宽带技术及应用工程研究中心有限公司 Method for optimizing connection download of client terminal
CN101330594B (en) * 2007-06-18 2013-02-27 中兴通讯股份有限公司 Method for storing VOD medium of equity network and media demanding system thereof
CN103118277A (en) * 2013-02-22 2013-05-22 北京暴风科技股份有限公司 Video acceleration method
CN103269351A (en) * 2012-12-07 2013-08-28 北京奇虎科技有限公司 File download method and device
WO2014032607A1 (en) * 2012-08-31 2014-03-06 Tencent Technology (Shenzhen) Company Limited File sharing method, terminal and relay server
CN104066106A (en) * 2013-03-22 2014-09-24 上海斐讯数据通信技术有限公司 Communication method and terminal system
CN104426946A (en) * 2013-08-27 2015-03-18 腾讯科技(深圳)有限公司 Method and device for bulk download data processing
CN104539619A (en) * 2014-12-29 2015-04-22 芜湖乐锐思信息咨询有限公司 Data processing system and method for internet online trading
CN104539984A (en) * 2014-12-30 2015-04-22 北京奇艺世纪科技有限公司 Video playing method, device and system
CN104765656A (en) * 2015-04-23 2015-07-08 浪潮电子信息产业股份有限公司 Backup method and device for cold data
CN105491087A (en) * 2014-09-17 2016-04-13 联想(北京)有限公司 File downloading method and device and electronic equipment
CN105635287A (en) * 2015-12-31 2016-06-01 深圳市网心科技有限公司 File transmission system and method
CN106302641A (en) * 2016-07-27 2017-01-04 北京小米移动软件有限公司 A kind of methods, devices and systems of upper transmitting file
CN106412137A (en) * 2016-12-20 2017-02-15 北京并行科技股份有限公司 File downloading system and file downloading method
CN106921682A (en) * 2015-12-24 2017-07-04 百度在线网络技术(北京)有限公司 File uploading method and device
CN109660496A (en) * 2017-10-12 2019-04-19 阿里巴巴集团控股有限公司 Acquisition, resource checksum and the dissemination method of check information, device and electronic equipment
CN110012108A (en) * 2019-04-15 2019-07-12 深圳市网心科技有限公司 Data copy storage method, method for down loading, cloud storage system and relevant apparatus
US10383083B2 (en) 2016-09-18 2019-08-13 Beijing Xiaomi Mobile Software Co., Ltd. Wireless local area network based positioning method and device
CN110661829A (en) * 2018-06-28 2020-01-07 杭州海康威视系统技术有限公司 File downloading method and device, client and computer readable storage medium
CN110891081A (en) * 2019-10-21 2020-03-17 量子云未来(北京)信息科技有限公司 Data sending device, routing device, message announcement device and receiving device
CN111147595A (en) * 2019-12-30 2020-05-12 昆山丘钛微电子科技有限公司 Document downloading method, system, server and client
CN111343225A (en) * 2018-12-19 2020-06-26 北京奇虎科技有限公司 File processing method and device
CN114745371A (en) * 2022-05-09 2022-07-12 湖南快乐阳光互动娱乐传媒有限公司 Point-to-point downloading method, device, equipment and medium
CN115150133A (en) * 2022-06-20 2022-10-04 浙江大华技术股份有限公司 Data transmission method and device and electronic equipment

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003067276A (en) * 2001-08-22 2003-03-07 Nippon Telegr & Teleph Corp <Ntt> Method for interconnecting different p2p file exchange networks and p2p file exchange network system
US20030097299A1 (en) * 2001-11-21 2003-05-22 O'kane Robert Peer-to-peer (P2P) and internet content digital acknowledgement trigger used for file transfer
JP2003219050A (en) * 2002-01-18 2003-07-31 Toshiba Corp Method for downloading system information and master apparatus for phone system
JP2004127189A (en) * 2002-10-07 2004-04-22 Matsushita Electric Ind Co Ltd Gateway device, and system and method for transferring contents

Cited By (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100384127C (en) * 2006-01-06 2008-04-23 华为技术有限公司 Downloading user's terminal and its method for downloading shared data
CN100418330C (en) * 2006-06-06 2008-09-10 北京北大方正电子有限公司 Network file transmission method based on prediction searching
CN101068173B (en) * 2006-06-08 2010-11-03 腾讯科技(深圳)有限公司 Resource sharing method and system, and server
CN101075879B (en) * 2006-06-13 2012-04-25 腾讯科技(深圳)有限公司 Method for downloading data
WO2007147320A1 (en) * 2006-06-14 2007-12-27 Roxbeam Media Network Corporation System and method for buffering real-time streaming content in a peer-to-peer overlay network
CN1897588B (en) * 2006-06-21 2010-06-16 北京北大方正电子有限公司 Mixed-mode network file transmitting method and system
WO2008025294A1 (en) * 2006-08-22 2008-03-06 Tencent Technology (Shenzhen) Company Limited A stream media live system, device and method of peer to peer connection
CN101132272B (en) * 2006-08-23 2010-07-28 中国科学院计算技术研究所 System supporting downloading and using of distributed encrypted document
CN101150465B (en) * 2006-09-22 2010-09-15 腾讯科技(深圳)有限公司 A method for obtaining seed information and supernode and common nodes in P2P network
CN101192946B (en) * 2006-11-28 2010-08-25 欧阳炳宇 A method and system for improving download efficiency of special P2P built-in terminal
WO2008077328A1 (en) * 2006-12-25 2008-07-03 Tencent Technology (Shenzhen) Company Limited System, method and apparatus that can access a web page element in a web page
CN101267383B (en) * 2007-03-14 2011-08-17 中国移动通信集团公司 Data transmission method and system
CN101325579B (en) * 2007-06-11 2012-09-12 上海未来宽带技术及应用工程研究中心有限公司 Method for optimizing connection download of client terminal
CN101330594B (en) * 2007-06-18 2013-02-27 中兴通讯股份有限公司 Method for storing VOD medium of equity network and media demanding system thereof
CN101090367B (en) * 2007-07-06 2010-10-20 北京搜狗科技发展有限公司 Data transmission method and device in reciprocal network
WO2009046642A1 (en) * 2007-10-09 2009-04-16 Huawei Technologies Co., Ltd. Data distributing method, data distributing system and correlative devices in edge network
US8510415B2 (en) 2007-10-09 2013-08-13 Huawei Technologies Co., Ltd Data distribution method, data distribution system and relevant devices in edge network
CN101409706B (en) * 2007-10-09 2011-11-23 华为技术有限公司 Method, system and relevant equipment for distributing data of edge network
JP2010525420A (en) * 2007-10-09 2010-07-22 ▲ホア▼▲ウェイ▼技術有限公司 Data distribution method, data distribution system, and related apparatus in edge network
CN101159762B (en) * 2007-11-19 2010-07-21 腾讯科技(深圳)有限公司 Method and device of accelerating download of web page contents
WO2009079948A1 (en) 2007-12-26 2009-07-02 Huawei Technologies Co., Ltd. A content buffering, querying method and point-to-point media transmitting system
CN101472166B (en) * 2007-12-26 2011-11-16 华为技术有限公司 Method for caching and enquiring content as well as point-to-point medium transmission system
CN101631061B (en) * 2008-07-15 2011-08-31 中国移动通信集团公司 Method for informing resource node message and network entity device
CN101437044B (en) * 2008-11-28 2012-05-09 中兴通讯股份有限公司 Method and system for downloading file by point-to-point network technique based on sliced sheet
CN101437051B (en) * 2008-12-04 2011-09-28 四川长虹电器股份有限公司 Method for downloading network resource
WO2010099715A1 (en) * 2009-03-04 2010-09-10 成都市华为赛门铁克科技有限公司 Method, system, client and data server for data operation
CN101848188A (en) * 2009-03-25 2010-09-29 上海聚力传媒技术有限公司 Method and device for updating data block checking information
CN101997781A (en) * 2009-08-25 2011-03-30 中兴通讯股份有限公司 Breakpoint continuous transmission method and system
CN101997781B (en) * 2009-08-25 2016-01-20 中兴通讯股份有限公司 A kind of breaker point continuous transmission method and system
CN102130928A (en) * 2010-01-19 2011-07-20 腾讯科技(深圳)有限公司 Method and device for downloading data
CN102164115A (en) * 2010-02-22 2011-08-24 中国电信股份有限公司 Method and system for multisource mixing file transmission
CN101827128A (en) * 2010-04-06 2010-09-08 山东高效能服务器和存储研究院 Method for segmentally downloading and matching files in network transmission
CN102130962A (en) * 2011-04-06 2011-07-20 上海少思网络科技有限公司 Method for screening network nodes for downloading acceleration based on cloud computing
CN102333127A (en) * 2011-10-20 2012-01-25 中兴通讯股份有限公司 Resource downloading method, device and system
CN102387220A (en) * 2011-12-22 2012-03-21 乐视网信息技术(北京)股份有限公司 Offline downloading method and system based on cloud storage
CN102571951A (en) * 2011-12-31 2012-07-11 珠海金山办公软件有限公司 System and method for transferring files
CN102664938A (en) * 2012-04-12 2012-09-12 北京蓝汛通信技术有限责任公司 Method and device for controlling downloading of resources
CN102664938B (en) * 2012-04-12 2015-08-05 北京蓝汛通信技术有限责任公司 A kind of resource downloading control method and device
WO2014032607A1 (en) * 2012-08-31 2014-03-06 Tencent Technology (Shenzhen) Company Limited File sharing method, terminal and relay server
CN103269351A (en) * 2012-12-07 2013-08-28 北京奇虎科技有限公司 File download method and device
CN103118277A (en) * 2013-02-22 2013-05-22 北京暴风科技股份有限公司 Video acceleration method
CN103118277B (en) * 2013-02-22 2016-04-06 北京暴风科技股份有限公司 A kind of video acceleration method
CN104066106A (en) * 2013-03-22 2014-09-24 上海斐讯数据通信技术有限公司 Communication method and terminal system
CN104426946A (en) * 2013-08-27 2015-03-18 腾讯科技(深圳)有限公司 Method and device for bulk download data processing
CN104426946B (en) * 2013-08-27 2019-02-22 腾讯科技(深圳)有限公司 Bulk-download data treating method and apparatus
CN105491087B (en) * 2014-09-17 2019-07-26 联想(北京)有限公司 A kind of document down loading method, device and electronic equipment
CN105491087A (en) * 2014-09-17 2016-04-13 联想(北京)有限公司 File downloading method and device and electronic equipment
CN104539619A (en) * 2014-12-29 2015-04-22 芜湖乐锐思信息咨询有限公司 Data processing system and method for internet online trading
CN104539619B (en) * 2014-12-29 2017-10-27 福建爱特点信息科技有限公司 Data processing method for internet online transaction
CN104539984A (en) * 2014-12-30 2015-04-22 北京奇艺世纪科技有限公司 Video playing method, device and system
CN104539984B (en) * 2014-12-30 2018-09-28 北京奇艺世纪科技有限公司 A kind of video broadcasting method, apparatus and system
CN104765656A (en) * 2015-04-23 2015-07-08 浪潮电子信息产业股份有限公司 Backup method and device for cold data
CN106921682A (en) * 2015-12-24 2017-07-04 百度在线网络技术(北京)有限公司 File uploading method and device
CN105635287A (en) * 2015-12-31 2016-06-01 深圳市网心科技有限公司 File transmission system and method
US10694001B2 (en) 2016-07-27 2020-06-23 Beijing Xiaomi Mobile Software Co., Ltd. Method, apparatus and system for uploading a file
CN106302641B (en) * 2016-07-27 2019-10-01 北京小米移动软件有限公司 A kind of methods, devices and systems of upper transmitting file
CN106302641A (en) * 2016-07-27 2017-01-04 北京小米移动软件有限公司 A kind of methods, devices and systems of upper transmitting file
US10383083B2 (en) 2016-09-18 2019-08-13 Beijing Xiaomi Mobile Software Co., Ltd. Wireless local area network based positioning method and device
CN106412137A (en) * 2016-12-20 2017-02-15 北京并行科技股份有限公司 File downloading system and file downloading method
CN106412137B (en) * 2016-12-20 2019-07-09 北京并行科技股份有限公司 A kind of file download system and document down loading method
CN109660496A (en) * 2017-10-12 2019-04-19 阿里巴巴集团控股有限公司 Acquisition, resource checksum and the dissemination method of check information, device and electronic equipment
CN109660496B (en) * 2017-10-12 2021-09-03 阿里巴巴集团控股有限公司 Method and device for acquiring verification information, method and device for verifying and releasing resources and electronic equipment
CN110661829A (en) * 2018-06-28 2020-01-07 杭州海康威视系统技术有限公司 File downloading method and device, client and computer readable storage medium
CN111343225A (en) * 2018-12-19 2020-06-26 北京奇虎科技有限公司 File processing method and device
CN111343225B (en) * 2018-12-19 2024-04-09 三六零科技集团有限公司 File processing method and device
CN110012108A (en) * 2019-04-15 2019-07-12 深圳市网心科技有限公司 Data copy storage method, method for down loading, cloud storage system and relevant apparatus
CN110891081A (en) * 2019-10-21 2020-03-17 量子云未来(北京)信息科技有限公司 Data sending device, routing device, message announcement device and receiving device
CN111147595A (en) * 2019-12-30 2020-05-12 昆山丘钛微电子科技有限公司 Document downloading method, system, server and client
CN114745371A (en) * 2022-05-09 2022-07-12 湖南快乐阳光互动娱乐传媒有限公司 Point-to-point downloading method, device, equipment and medium
CN115150133A (en) * 2022-06-20 2022-10-04 浙江大华技术股份有限公司 Data transmission method and device and electronic equipment

Also Published As

Publication number Publication date
CN100459497C (en) 2009-02-04

Similar Documents

Publication Publication Date Title
CN1710857A (en) Method and method for realizing document accelerated download
US9774558B2 (en) Method and system for inter-social network communications
JP6559802B2 (en) Device identifier dependent operation processing for packet-based data communication
US11449525B2 (en) Facilitating mobile device interaction with an enterprise database system
CN1231028C (en) Distributed system to intelligenly establish sessions between anonymous users over various networks
CN1925462A (en) Cache system
US20130304829A1 (en) Method and system for social media cooperation protocol
CN1272189A (en) Method and system for prefetching information
CN1703048A (en) Web service application protocol and SOAP processing model
CN1852107A (en) Relation information publishing, fetching method and system
CN1605181A (en) Method and system for providing secure access to resources on private networks
CN1460212A (en) Media session framework using protocol independent control module direct and manage application and service servers
KR20140022464A (en) Sharing control system and method for network resources download information
US9961519B1 (en) Facilitating mobile device interaction with an enterprise database system
CN1711784A (en) System and method for sending SMS and text messages
JP2008502233A (en) Method and apparatus for routing communications
CN1581771A (en) Authentication system, server, and authentication method and program
CN1327195A (en) Method and system for accessing information on network
CN1703697A (en) Systems, methods and programming for routing and indexing globally addressable objects and associated business models
CN1755694A (en) Organizing resources into collections to facilitate more efficient and reliable resource access
CN101068243A (en) Interactive system for processing gateway level and service layer information and transmitting and receiving method
US10795966B1 (en) Extracting data sets from external data stores
CN1852150A (en) Personal data searching system and method in network
CN1823492A (en) System and method for services provision in a peer-to-peer environment
CN1402176A (en) Data allocation method and system

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20060127

Address after: 100081 Beijing City, Haidian District Weigongcun District No. 13 Building 1 No. 5

Applicant after: Qianxiangshiji Tech Development (Beijing) Co., Ltd.

Address before: No. 2, No. 45, North Main Street, Haidian District, Beijing, building No. 1506, building No. 2, Xizhimen

Applicant before: Qianxiang-Huanyu Science-Technology Development Co., Ltd.

C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090204

Termination date: 20160618

CF01 Termination of patent right due to non-payment of annual fee