WO2009155858A1 - 在互联网中用于高速下载多媒体内容的方法与装置 - Google Patents

在互联网中用于高速下载多媒体内容的方法与装置 Download PDF

Info

Publication number
WO2009155858A1
WO2009155858A1 PCT/CN2009/072413 CN2009072413W WO2009155858A1 WO 2009155858 A1 WO2009155858 A1 WO 2009155858A1 CN 2009072413 W CN2009072413 W CN 2009072413W WO 2009155858 A1 WO2009155858 A1 WO 2009155858A1
Authority
WO
WIPO (PCT)
Prior art keywords
content
downloaded
multimedia
server
user terminal
Prior art date
Application number
PCT/CN2009/072413
Other languages
English (en)
French (fr)
Inventor
张少华
Original Assignee
上海聚力传媒技术有限公司
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 上海聚力传媒技术有限公司 filed Critical 上海聚力传媒技术有限公司
Priority to US13/000,610 priority Critical patent/US20110113124A1/en
Publication of WO2009155858A1 publication Critical patent/WO2009155858A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/48Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • H04L67/1063Discovery through centralising entities

Definitions

  • the present invention relates to a method and apparatus for downloading data in a network, and more particularly to a method and apparatus for downloading multimedia content at high speed in the Internet. Background technique
  • Adobe's Flash Player can play video content compressed by various video compression standards such as H.264 standard, Sorenson H.263 standard or VP6 standard in video. Playing audio content compressed by various audio compression standards such as MP3 standard or AAC standard, and with the advancement of multimedia processing technology, Adobe also announced that it will enable Adobe Flash Player to support more and more multimedia compression standards.
  • Multimedia content compressed based on these standards can be included in a Flash Video (FLV) file or a Flash audio file and stored on the content provider's multimedia server.
  • FLV Flash Video
  • the user uses the Flash player provided by the content provider to download the corresponding Flash video file or the Flash audio file containing the multimedia content to the user terminal locally from the multimedia server provided by the content provider. You can watch it.
  • the general content provider of the FLV provides a certain degree of hiding of the address information of the multimedia content provided by the content provider, including the uniform resource locator (URL) of the FLV file.
  • the general user and the general download software cannot obtain the URL of the FLV file, and cannot directly download the FLV file.
  • the content provider's Flash player is configured by an Action Script to request and download multimedia at the content provider in the form of HTTP (Hypertext Transfer Protocol).
  • HTTP Hypertext Transfer Protocol
  • the FLV file on the server, where the HTTP request contains the URL of the FLV file.
  • the general user and the general download software cannot directly obtain the running information of the active script, so that the URL of the requested FLV file cannot be obtained according to the active script, and the FLV file cannot be downloaded by itself.
  • the existing RealNetworks Realplayer 11 software can obtain the URL of the FLV file played by the player through the Flash Player of the content provider running on the user terminal. Then, Realplayer 11 uses the server/client (C/S) download method to download the FLV file from the multimedia server corresponding to the URL to the specified location in the user terminal.
  • C/S server/client
  • the current download of Realplayer 11 is limited to the above C/S mode, and the download source of the file only includes the multimedia server corresponding to the URL.
  • the present invention proposes to first obtain address information of a multimedia content, and then acquire related information of other network resources having the same multimedia content as the multimedia content according to the address information, and finally according to the Downloading the multimedia content related information of the network resource having the multimedia content
  • a download method for downloading multimedia content to be downloaded from a network to a user terminal in a user terminal wherein the predetermined multimedia server includes the multimedia to be downloaded Content, the address information of the multimedia content to be downloaded on the predetermined multimedia server is hidden, and the downloading method includes The following steps: i. acquiring, in the process of the multimedia player of the user terminal, the multimedia content to be downloaded on the predetermined multimedia server, acquiring the multimedia content to be downloaded in the predetermined multimedia server The address information on the predetermined multimedia server is obtained according to the address information of the multimedia content to be downloaded on the predetermined multimedia server, and the related information of the network resource including the same multimedia content as the multimedia content to be downloaded is acquired; Iii. download the multimedia content to be downloaded according to the related information of the multiple network resources.
  • an auxiliary downloading method for assisting a user terminal to download a multimedia content to be downloaded from a network to the user terminal at a high speed in a first network server, wherein the predetermined multimedia The server includes the multimedia content to be downloaded, and the address information of the multimedia content to be downloaded on the predetermined multimedia server is hidden, and the auxiliary downloading method includes the following steps: 0. Receiving a location from the user terminal Determining the address information of the downloaded multimedia content on the predetermined multimedia server; and obtaining the related information of the multimedia content according to the address information of the multimedia content to be downloaded on the predetermined multimedia server; Providing related information of the multimedia content to the user terminal.
  • an auxiliary downloading method for assisting a user terminal to download a predetermined multimedia content from a network to the user terminal at a high speed in a second network server, wherein the predetermined multimedia server Including the multimedia content to be downloaded, the address information of the multimedia content to be downloaded on the predetermined multimedia server is hidden, and the auxiliary downloading method includes the following steps: I. receiving an alternative from the user terminal The content identification information and the node related information of the user terminal, wherein the content corresponding to the candidate content identification information is the same as the multimedia content to be downloaded; II. acquiring the possession candidate content identification information according to the alternative content identification information Corresponding information of other user terminal nodes of the fragment of the corresponding content; III. transmitting related information of the other user terminal nodes of the fragment having the content corresponding to the alternative content identification information to the user terminal.
  • a downloading device for downloading multimedia content to be downloaded from a network to a user terminal in a user terminal
  • the predetermined multimedia server includes the multimedia content to be downloaded
  • the address information of the multimedia content to be downloaded on the predetermined multimedia server is hidden
  • the downloading device includes: And obtaining, in the process of acquiring, the multimedia content to be downloaded, the multimedia content to be downloaded, in the process of acquiring the multimedia content to be downloaded on the predetermined multimedia server, by the multimedia player of the user terminal, in the predetermined Address information on the multimedia server;
  • the network resource obtaining means configured to obtain, according to the address information of the multimedia content to be downloaded on the predetermined multimedia server, a plurality of the same as the multimedia content to be downloaded
  • the downloading device configured to download the multimedia content to be downloaded according to the related information of the plurality of network resources.
  • the multimedia content can be simultaneously acquired from a plurality of network resources according to the address information, thereby greatly increasing the download speed of the multimedia content.
  • FIG. 1 is a schematic diagram of a network in which a user terminal 10 requests a Flash video FLV-1 located on a multimedia server 20, in accordance with an embodiment of the present invention
  • FIG. 2 is a flowchart of a download method for downloading a Flash video from a network to a user terminal in a user terminal 10 according to an embodiment of the present invention
  • FIG. 3 is a network diagram of a user terminal 10 acquiring Flash video from a plurality of user terminal nodes with the assistance of the first network server 30 and the second network server 40, in accordance with an embodiment of the present invention
  • FIG. 4 is a flowchart of a method for obtaining content identification information corresponding to a URL of the Flash video on the multimedia server 20, with the assistance of the first network server 30, according to an embodiment of the present invention
  • FIG. 5 is a diagram of the user terminal 10 acquiring the fragment containing the content corresponding to the alternative content identification information with the assistance of the second network server 40, according to an embodiment of the present invention.
  • FIG. 6 is a flowchart of a download method for downloading a Flash video from a network to a user terminal in a user terminal 10 according to another embodiment of the present invention
  • FIG. 7 is a schematic diagram of a network in which a user terminal 10 obtains multimedia content from a plurality of multimedia servers with the assistance of a first network server 30 according to another embodiment of the present invention
  • FIG. 8 is another specific embodiment of the present invention.
  • FIG. 9 is a block diagram of a download device for downloading a Flash video from a network to a user terminal in a user terminal 10 according to still another embodiment of the present invention.
  • FIG. 10 is a block diagram of an apparatus for acquiring content identification information corresponding to a URL of the multimedia content on the multimedia server 20 with the assistance of the first network server 30" according to another embodiment of the present invention
  • FIG. 11 is a block diagram of an apparatus for acquiring, by a user terminal 10, related information of other user terminal nodes of a slice of content corresponding to the alternative content identification information, according to the alternative content identification information, according to still another embodiment of the present invention
  • FIG. 12 is a block diagram of a download device for downloading a Flash video from a network to a user terminal in a user terminal 10 according to still another embodiment of the present invention
  • FIG. 13 is a diagram of a downloading device for downloading corresponding multimedia server address information of one or more files of the same Flash video with the assistance of the first web server 30, according to another embodiment of the present invention. block diagram. detailed description
  • FIG. 1 is a schematic diagram of a network in which a user terminal 10 requests to download a Flash video located on a multimedia server 20 according to an embodiment of the present invention.
  • Figure 2 is a representation of the invention in accordance with the present invention.
  • 3 is a schematic diagram of a network in which a user terminal 10 acquires multimedia content from a plurality of network resources with the assistance of a first network server and a second network server, in accordance with an embodiment of the present invention.
  • FIG. 1 is a schematic diagram of a network in which a user terminal 10 requests to download a Flash video located on a multimedia server 20 according to an embodiment of the present invention.
  • Figure 2 is a representation of the invention in accordance with the present invention.
  • 3 is a schematic diagram of a network in which a user terminal
  • FIG. 4 is a flowchart of a method for the user terminal 10 to obtain the content identification information corresponding to the URL of the multimedia content on the multimedia server 20, with the assistance of the first web server 30, according to an embodiment of the present invention.
  • FIG. 5 is a flowchart of a method for acquiring, by the user terminal 10, related information of other user terminal nodes of the fragment of the content corresponding to the alternative content identification information, with the assistance of the second network server 40, according to an embodiment of the present invention.
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS A specific embodiment of the present invention will now be described in detail with reference to Figs.
  • the user 1 attempts to download a Flash video
  • the content provider on the Internet provides the multimedia content to the Internet user in the form of an FLV file
  • the file name is FLV-1.
  • the FLV-1 is on a multimedia server 20 of the content provider 2, such as an HTTP server.
  • the multimedia server 20 can use a partial download function of HTTP to provide a random access download service, that is, a streaming download service, to a user requesting to download the FLV-1.
  • the Internet browser of the user terminal 10 of the user 1 loads the Flash player 101 of the content provider to which the FLV-1 belongs, and the Flash player 101 is set to, for example, an active script, to issue, for example, HTTP based to the FLV-1.
  • the download request includes the URL information of the FLV-1 on the multimedia server 20.
  • the URL address of the FLV-1 on the content provider's multimedia server 20 is hidden, that is, the URL address of the FLV-1 cannot be extracted from the webpage loaded by the Internet browser of the user terminal 10; 10, the state of the active script of the Flash Player 101 cannot be obtained, that is, the URL information of the FLV-1 set in the active script cannot be obtained.
  • the scenario is merely for the sake of example.
  • the present invention is not limited to the multimedia content being a Flash video, and the content provider provides the address information hidden by the HTTP server to the file containing the Flash video, and the user passes the Flash player.
  • step S10 the user terminal 10 acquires the URL of the FLV-1 on the multimedia server 20 in the process in which the Flash player 101 acquires the FLV-1 on the multimedia server 20.
  • the user terminal 10 runs multiple Flash players at the same time, and each Flash player requests its corresponding FLV file and plays it.
  • the user terminal 10 can get all of these requests, but based on these requests it is not possible to determine which one corresponds to the Flash Player 101 request for FLV-1. Since each Flash player generates an event corresponding to the Flash player when a request for the FLV file is issued, the request can be determined by finding the request corresponding to the event generated by the Flash Player 101 in each request. A request for FLV-1 issued by Flash Player 101.
  • step S100 the user terminal 10 loads the Internet browser of the Flash player 101 when the Flash player 101 requests the FLV-1 file on the multimedia server 20.
  • the URL MON layer obtains a corresponding request sent by the browser for one or more FLV files, and acquires information about an event generated by the Flash player 101 to issue a request for FLV-1, wherein the above one or more pairs
  • the corresponding request of the FLV includes a request for FLV-1
  • the request for the FLV-1 contains the URL information of the FLV-1 on the multimedia server 20.
  • step S102 the user terminal 10 determines, as the association request, the one of the acquired one or more requests associated with the related information of the acquired event.
  • step S103 the user terminal 10 obtains the URL information of the Flash video on the predetermined multimedia server according to the association request.
  • the user terminal 10 is only running the Flash player 101'.
  • the player 101 makes a request for the FLV-1 file on the multimedia server 20.
  • the user terminal 10 can obtain the FLV-1 from the request in the multimedia server 20 as long as the URL MON layer of the Internet browser loaded with the Flash player 101 acquires the request issued by the only Flash player.
  • the user terminal 10 can also obtain the HTTP-based request for the FLV-1 file by the Flash player 101 in other manners, for example, Use packet sniffing (Sniff) technology, or perform packet capture on packets sent by the network card.
  • Snoiff Use packet sniffing
  • the specific means of obtaining are numerous, but are all within the scope of the present invention.
  • the user terminal 10 After acquiring the URL of the FLV-1 on the multimedia server 20, in step S11, the user terminal 10 acquires a plurality of Flash videos including the same content as the FLV-1 according to the URL of the FLV-1 on the multimedia server 20.
  • the plurality of network resources including the same Flash video as the FLV-1 include other user terminal nodes and/or the multimedia server 20.
  • the user terminal 10 with the assistance of the first web server 30 and the second web server 40, obtains information for a plurality of other user terminals that have the same files as the FLV-1 content.
  • the user terminal 10 is logically connected to the first network server 30 and the second network server 40 via the Internet, and can communicate with a plurality of other user terminals having the same file as the FLV-1 content via the Internet.
  • step S110 the user terminal 10 obtains the content identification information corresponding to the URL of the FLV-1 on the multimedia server 20.
  • step S110 is as shown in FIG. 4.
  • the user terminal 10 transmits the URL of the FLV-1 acquired in step S10 on the multimedia server 20 to the first web server 30.
  • step S30 the first web server 30 receives the URL of the FLV-1 from the user terminal 10 on the multimedia server 20.
  • the first web server 30 retrieves one or more content identification information corresponding to the URL according to the URL of the FLV-1 on the multimedia server 20.
  • the content identification information corresponds to the Flash video content corresponding to the FLV-1, and may be, for example, an MD5 check code of the FLV-1 file. Since the MD5 check code is different for files with different file contents in a sufficiently large range, the MD5 check code can be used to uniquely identify the Flash video file.
  • the content identification information may also be other information capable of uniquely identifying the multimedia content, such as SHA-1 and the like.
  • the user terminal of the UL download FLV-1 on the multimedia server 20 according to the FLV-1 feeds back the MD5 check code of the FLV-1 file to the first network server 30, the first network server. 30 maintains the MD5 check code in its local form, for example, as a database The corresponding relationship of the URL. Then, in step S31, the first network server 30 queries all the correspondences maintained by it, and acquires this MD5 check code corresponding to the UL of the FLV-1 on the multimedia server 20.
  • the content provider corresponding to the URL may modify or replace the FLV-1 file corresponding to the URL, the MD5 check code of the FLV-1 file corresponding to the URL may be generated.
  • the first web server 30 cannot change the MD5 check code corresponding to the URL maintained by the first web server 30 in real time, so the MD5 check code corresponding to the URL may be one or more than one; and the one or more MD5s
  • the check code may contain the MD5 check code corresponding to the FLV-1 currently being downloaded, and may also not correspond to the FLV-1 currently to be downloaded.
  • the other network server maintains the correspondence between the URL and the MD5 check code
  • the first network server 30 obtains the URL corresponding to the FLV-1 on the multimedia server 20 by querying the other network server. MD5 check code.
  • step S32 the first network server 30 transmits one or more MD5 check codes corresponding to the URL of the FLV-1 acquired in step S31 on the multimedia server 20 to the user terminal 10.
  • step S1102 the user terminal 10 receives one or more MD5 check codes from the first web server 30 corresponding to the URL of the FLV-1 on the multimedia server 20.
  • the user terminal 10 has downloaded the FLV-1 file according to the URL of the FLV-1 on the multimedia server 20 before the download, and obtains the MD5 check code of the FLV-1 file.
  • the correspondence between the URL at the time of downloading and the MD5 check code of the FLV-1 file is retained in the manner of, for example, a mapping table.
  • the user terminal 10 can query the locally maintained URL and the MD5. The check code correspondence is obtained, and an MD5 check code associated with the URL of the FLV-1 on the multimedia server 20 is obtained.
  • the content provider corresponding to the URL may modify or replace the FLV-1 file corresponding to the URL, which may cause the MD5 check code of the FLV-1 file corresponding to the URL to change. . MD5 that causes the user terminal 10 to be saved locally The check code has not corresponded to the current FLV-1.
  • the method for the user terminal 10 to acquire the MD5 check code corresponding to the URL of the FLV-1 on the multimedia server 20 in the step S110 is not limited to the above two examples.
  • step S111 the user terminal 10 determines, according to the one or more MD5 check codes acquired in step S110, the MD5 in which the corresponding FLV content is the same as the content of the FLV-1 that the user terminal 10 is currently requesting to download.
  • the check code is an alternate MD5 check code. Due to the foregoing, the content provider may change the FLV-1 file corresponding to the URL. If the user terminal 10 does not verify the validity of the MD5 check code acquired in S110, it may result in the The FLV file downloaded by the MD5 check code is different from the currently requested FLV-1 file.
  • the user terminal 10 may send the one or more MD5 check codes to the multimedia server 20, and the multimedia server 20 informs the user terminal 10 of the correct MD5 check code.
  • the method by which the user terminal 10 verifies the validity of the MD5 check code is varied and is not limited by the embodiments.
  • step S112 the user terminal 10 acquires information about other user terminal nodes including file fragments corresponding to the candidate MD5 check code.
  • step S112 is as shown in FIG. 5.
  • the user terminal 10 transmits the candidate MD5 check code determined in step S111 and the node information of the user terminal to the second network server 40.
  • step S40 the second network server 40 receives the alternative MD5 check code from the user terminal 10 and the node information of the user terminal 10.
  • the second network server 40 acquires related information of other user terminal nodes that have fragments of the file corresponding to the candidate MD5 check code according to the candidate MD5 check code. Specifically, the second network server 40 maintains information such as the IP address of other user terminal nodes that are downloading or has downloaded the fragment of the file corresponding to the MD5 calibration code in a manner such as a mapping table or a database, and Select the MD5 check code to obtain the address information. Then, in step S42, the second network server 40 transmits the user terminal 10 having the slice of the file corresponding to the candidate MD5 check code, and the IP address information of 10" back to the user terminal 10.
  • step S1122 the user terminal 10 receives the information about the user terminal 10 from the second network server 40 that contains the same file as the FLV-1 file to be downloaded, and 10".
  • the user terminal 10 is in a Distributed Hash Table (DHT) network in the same manner as other user terminal nodes that include file fragments corresponding to the candidate MD5 check code.
  • the user terminal is responsible for a small range of routes and is responsible for storing a small portion of data to enable addressing and storage of the entire DHT network.
  • the user terminal 10 may find other user terminals that download files corresponding to the candidate MD5 check code in the DHT network without relying on the second network server 40, and acquire the user terminals. Node related information.
  • the specific DHT-based solution for obtaining other user terminal information is not of interest to the present invention, and those skilled in the art can implement the function according to the prior art.
  • the method for the user terminal 10 to acquire related information of other user terminal nodes including file fragments corresponding to the MD5 check code in the step S112 is not limited to the two examples mentioned above.
  • the user terminal 10 determines, in a pre-download manner, whether the one or more MD5 check codes obtained in step S110 correspond to the content of the FLV-1 currently being requested to be downloaded: the user terminal 10 first Sending all the obtained MD5 check codes directly to the second network server 40, and the second network server 40 sends the IP address information of each user terminal that has the fragments of the files corresponding to the respective VCD5 check codes back to the user terminal. 10; Next, the user terminal 10 downloads a part of the multimedia content, for example, the first 10K data, from the multimedia network server 20, and downloads corresponding parts of the file corresponding to the respective MD5 check codes from the respective user terminals, for example, the first 10K.
  • the user terminal 10 downloads a part of the multimedia content, for example, the first 10K data, from the multimedia network server 20, and downloads corresponding parts of the file corresponding to the respective MD5 check codes from the respective user terminals, for example, the first 10K.
  • the data is then compared with the corresponding portion of the file corresponding to each MD5 check code downloaded from the multimedia network server 20: MD5 school corresponding to the same file downloaded from the multimedia network server 20
  • the verification code is the correct check code.
  • the user terminal 10 can determine that the user terminals 10' and 10" corresponding to the correct MD5 check code have the same slice of the Flash video as the FLV-1 to be downloaded.
  • step S12 the user terminal 10 simultaneously extracts from the user based on the point-to-point technology based on the plurality of related information of the other user terminal nodes including the fragments of the same Flash video as the FLV-1 acquired in step S11.
  • the terminal 10, and the FLV-1 are downloaded at 10", as shown by the path C in FIG. 3.
  • the specific technical solution for data downloading based on the point-to-point technology is not of interest to the present invention, and those skilled in the art can There is a technology to implement this function.
  • the user terminal 10 can also download the FLV-1 from the multimedia server 20 according to the URL of the FLV-1 obtained in the step S10 on the multimedia server 20, and the user terminal 10 is not based on the point-to-point technology.
  • the user terminal 10 combines the data downloaded from the multimedia server 20 with the data downloaded based on the point-to-point technology into a complete FLV-1 file.
  • the user terminal 10 reports the status information of the currently downloaded FLV-1 to the first network server 30 in step S13, wherein, preferably, the status information includes The MD5 check code of the FLV-1 file downloaded by the user terminal 10.
  • the first web server 30 receives the status information of the currently downloaded FLV-1 reported by the user terminal 10 during the download of the FLV-1.
  • the status information includes an MD5 check code of the FLV-1 file downloaded by the user terminal 10.
  • the first web server 30 creates or updates the URL corresponding to the URL address of the FLV-1 on the multimedia server 20 according to the MD5 check code of the downloaded FLV-1 file reported by the user terminal 10.
  • MD5 check code Specifically, when the user terminal 10 is the first user to download the file at the URL address, the user terminal 10 provides the MD5 check code of the URL and the FLV-1 file to the first network server 30, the first network.
  • the server 30 creates a correspondence between the UL address of the FLV-1 file on the multimedia server 20 and the MD5 check code using a technique such as a database; and when the foregoing, the content provider corresponding to the UL changes the FLV corresponding to the URL.
  • the user terminal 10 downloads the updated FLV-1 according to the URL, and provides the first network server 30 with the MD5 check code of the new FLV-1 file, and the first network.
  • the server 30 updates the MD5 check code corresponding to the URL address of the FLV-1 file on the multimedia server 20 to the MD5 check code of the new FLV-1 file.
  • the user terminal 10 obtains the URL of the FLV-1 on the multimedia server 20, and then obtains the MD5 check code corresponding to the URL, and obtains the fragment of the file corresponding to the MD5 check code according to the MD5 check code.
  • FIG. 6 is a flow chart of a download method for downloading a Flash video from a network to a user terminal in a user terminal 10 according to another embodiment of the present invention.
  • FIG. 7 is a schematic diagram of a network in which a user terminal 10 acquires multimedia content from a plurality of network resources with the assistance of a first network server 30, in accordance with another embodiment of the present invention.
  • FIG. 8 is a flowchart of a method for acquiring, by a user terminal 10, the corresponding multimedia server address information of one or more files identical to the Flash video, with the assistance of the first network server 30, according to another embodiment of the present invention. Figure.
  • the user 1 downloads a Flash video using the user terminal 10, and an HTTP-based multimedia server 20 of the content provider 2 on the Internet presents the Internet user in the form of an FLV file.
  • the Flash video is provided with a file name of FLV-1.
  • the Internet browser of the user terminal 10 of the user 1 loads the Flash player 101 of the content provider to which the FLV-1 belongs, and the Flash player 101 is set to, for example, an active script, to issue, for example, HTTP based to the FLV-1.
  • the download request includes the URL information of the FLV-1 on the multimedia server 20.
  • the URL address of FLV-1 on the content provider's multimedia server 20 is hidden.
  • the present invention is not limited by the scenario, and the same can be applied to other types of multimedia content in which content providers provide address information hiding, and the user can use other methods. The case of carrying the multimedia content hidden by the address information.
  • step S10 the user terminal 10 acquires the URL of the FLV-1 on the multimedia server 20 in the process in which the Flash player 101 acquires the FLV-1 on the multimedia server 20.
  • the specific acquisition method is similar to that in step S10 in the above first embodiment, and details are not described herein again.
  • the user terminal 10 After obtaining the URL of the FLV-1 on the multimedia server 20, in step S1, the user terminal 10 acquires a plurality of Flash videos including the same Flash video as the FLV-1 according to the URL of the FLV-1 on the multimedia server 20.
  • the plurality of network resources including the same Flash video as the FLV-1 include other multimedia servers and/or multimedia servers 20.
  • the user terminal 10 with the assistance of the first web server 30, acquires information for a plurality of other multimedia servers having files of the same video content as the FLV-1.
  • the user terminal 10 is logically connected to the first web server 30 via the Internet, and can communicate with a plurality of other multimedia servers having files of the same video content as the FLV-1 via the Internet.
  • step S110 the user terminal 10 acquires content address information corresponding to the URL of the FLV-1 on the multimedia server 20.
  • step S110 as shown in FIG. 8, in step S1101', the user terminal 10 sends the URL of the FLV-1 acquired in step S10 on the multimedia server 20 to the first web server 30. ,.
  • step S30 the first web server 30 receives the URL of the FLV-1 from the user terminal 10 on the multimedia server 20.
  • the first web server 30 acquires one or more content address information corresponding to the URL according to the URL of the FLV-1 on the multimedia server 20, for example, may be corresponding to some files.
  • the URL on the server In a preferred embodiment, a user terminal has downloaded FLV-1 according to the FLV-1 URL on the multimedia server 20, and has returned the MD5 check code of the FLV-1 file and the URL to the first The web server 30,; and the other one or more user terminals have also downloaded the file at the URL of the corresponding server according to one or more FLV video files of the same content, and the phase
  • the unique identification information of the file of the same content such as the MD5 check code and the one or more corresponding URLs, are fed back to the first web server 30.
  • the first network server 30 maintains the FLV-1 URL on the multimedia server 20 and one or more FLV video files of the same content on the corresponding server in a local manner, for example, according to the same unique identification information.
  • the correspondence of one or more URLs the first web server 30 queries all the correspondences maintained by it, and acquires one or more URLs corresponding to the URL of the FLV-1 on the multimedia server 20.
  • the corresponding content provider of a corresponding URL is likely to change the file corresponding to the URL, the corresponding URL does not actually correspond to FLV-1, but the first web server 30, The corresponding state of the URL and its corresponding URL cannot be automatically updated in real time. Therefore, the first web server 30, the one or more corresponding URLs that are obtained may include one or more URLs corresponding to the FLV-1 currently to be downloaded, and may all not correspond to the FLV-1 currently to be downloaded.
  • the additional network server maintains the correspondence between the URL and one or more corresponding URLs, and the first network server 30 obtains the multimedia with the FLV-1 by querying the other network server.
  • One or more corresponding URLs corresponding to the URLs on the server 20 are provided.
  • step S32 the first web server 30 sends the one or more corresponding URLs corresponding to the URL of the FLV-1 acquired in step S31 on the multimedia server 20 to the user terminal 10.
  • step S1102' the user terminal 10 receives one or more corresponding URLs corresponding to the URL of the FLV-1 on the multimedia server 20.
  • the user terminal 10 has downloaded the URL of the FLV-1 on the multimedia server 20 and the FLV video file of the same content at the URL of the corresponding server prior to the download.
  • the FLV-1 file then, in step S110, the user terminal 10 can query the correspondence between the URL of the FLV-1 on the multimedia server 20 and other corresponding URLs that is locally maintained, and obtain the FLV-1 in the multimedia service.
  • One or more corresponding URLs corresponding to the URL on the server 20 may change the file corresponding to the URL, so that the corresponding URL does not actually correspond to the FLV-1, the user terminal 10 cannot automatically update the real-time update.
  • the one or more corresponding URLs obtained by the user terminal 10 may include one or more URLs corresponding to the FLV-1 currently to be downloaded, and may also not correspond to the FLV-1 currently to be downloaded.
  • step Sill ' the user terminal 10 determines, according to the one or more corresponding URLs obtained in step S110, the same file or the same content as the content of the FLV-1 that the user terminal 10 is currently requesting to download. Multiple URLs are alternate URLs. Due to the foregoing, the content provider may change the FLV-1 file corresponding to the URL. If the user terminal 10 does not verify the validity of the URL obtained in S110, it may result in the URL according to the URL. The file is different from the currently requested FLV-1 file. In the present embodiment, the user terminal 10 determines the multimedia server 20, and 20" files containing the same content as the currently requested FLV-1, and determines that the corresponding URL is an alternate URL.
  • the user terminal 10 can Determining, according to the one or more URLs, a certain number of the same location data in the corresponding file with the URL of the FLV-1 on the multimedia server 20, and determining whether the downloaded data is the same, thereby determining the one or more URLs corresponding to Whether the file corresponds to FLV-1, and then determines the validity of the one or more URLs.
  • the method by which the user terminal 10 verifies the validity of the one or more URLs is varied, and is not Limited by the examples given.
  • step S12 the user terminal 10, according to the multimedia server 20 containing the same Flash video as the FLV-1 acquired in step Sir, and the 20" alternative URL, simultaneously from the multimedia server 20, and 20" Download FLV-1, as shown in path D in Figure ,.
  • the user terminal 10 can also download the FLV-1 from the multimedia server 20 according to the URL of the FLV-1 obtained in the step S10 on the multimedia server 20, and the portion downloaded from the multimedia server 20 and the 20" is as shown in the figure.
  • the path D in 3 is shown.
  • downloading FLV-1 from multiple network resources at the same time greatly speeds up the download of FLV-1.
  • the data downloaded from the multimedia server 20 and the slave multimedia server 20, With 20" downloaded data Synthesize the complete FLV-1 file.
  • the user terminal 10 reports the status information of the current download FLV-1 to the first network server 30 in step S13, where, preferably, the status
  • the information includes a state in which the user terminal 10 downloads the URL on the multimedia server 20 according to one or more corresponding URLs and/or FLV-1 corresponding to the URL of the FLV-1 on the multimedia server 20, and/or MD5 of the FLV-1. Check code.
  • the first network server 30 receives the status information of the current download FLV-1 reported by the user terminal 10 during the process of downloading the FLV-1, wherein, preferably, the status information includes the user terminal 10.
  • the status information includes the user terminal 10.
  • the first web server 30 creates or updates the FLV-1 in the multimedia according to the candidate URL reported by the user terminal 10 and/or the FLV-1 download status on the multimedia server 20.
  • the URL corresponding to the URL address on the server 20.
  • the user terminal 10 downloads the FLV-1 according to the URL address of the FLV-1 on the multimedia server 20, and sends the FLV-1 to the first network server.
  • the MD5 check code of the URL and the FLV-1 file is provided, and the first web server 30 associates all the URLs with the same MD5 check code; and when the foregoing, the content provider changes the FLV corresponding to the URL.
  • the -1 file causes the FLV-1 file corresponding to the URL to be invalid.
  • the user terminal 10 cannot download the FLV-1 according to the URL, the user terminal 10 notifies the first network server 30 of the status that the URL has expired, the first network.
  • the server 30 will delete the association relationship between the invalidated URL and other URLs.
  • FIG. 9 is a block diagram of a download device for downloading Flash video from a network to a user terminal in a user terminal 10, in accordance with still another embodiment of the present invention.
  • FIG. 10 is a diagram of a user terminal 10 acquiring the plurality of users with the assistance of the first web server 30, in accordance with still another embodiment of the present invention.
  • FIG. 11 is a diagram showing another user terminal of the user terminal 10 acquiring the fragment including the content corresponding to the alternative content identification information with the assistance of the second network server 40 according to the alternative content identification information according to another embodiment of the present invention.
  • a block diagram of the device for related information DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS A specific embodiment of the present invention will now be described in detail with reference to Figs. 1, 3, and 9 to 11.
  • the user 1 downloads a Flash video using the user terminal 10, and an HTTP server 20 of the content provider 2 on the Internet provides the Flash video to the Internet user in the form of an FLV file, and the file name is FLV-1.
  • the Internet browser of the user terminal 10 of the user 1 loads the Flash player 101 of the content provider to which the FLV-1 belongs, and the Flash player 101 is set, for example, in the form of an active script, to issue, for example, HTTP based to the FLV-1.
  • a download request containing the URL information of the FLV-1 on the multimedia server 20.
  • the URL address of FLV-1 on the content provider's multimedia server 20 is hidden.
  • the present invention is not limited by the scenario, and the same can be applied to other types of multimedia content in which content providers provide address information hiding, and the user downloads the hidden multimedia content of the address information by other means. .
  • the user terminal 10 includes a downloading apparatus 100 for downloading multimedia content to be downloaded from the network to the user terminal, wherein the downloading apparatus 100 includes the address information acquiring apparatus 1001, and network resources.
  • the device 1002 is acquired and the content download device 1003.
  • the network resource acquisition means 1002 further includes a content identification acquisition means 10021, a content identification determination means 10022 and a node information acquisition means 10023.
  • the address information obtaining means 1001 acquires the URL 0 of the FLV-1 on the multimedia server 20 in the process in which the Flash player 101 acquires the FLV-1 on the multimedia server 20.
  • the user terminal 10 runs multiple Flash players at the same time, and each Flash player requests its corresponding FLV file and plays it.
  • the user terminal 10 can obtain all of these requests, but based on these requests it is not possible to determine which one corresponds to the Flash Player 101 request for FLV-1. Since each Flash player generates an event corresponding to the Flash player when issuing a request for the FLV file, it is found in each Flash Player's request for the corresponding FLV and Flash broadcast.
  • the request corresponding to the event generated by the player 101 can determine the request for the FLV-1 issued by the Flash Player 101.
  • the address information acquiring apparatus 1001 further includes a first obtaining means 10011, a first determining means 10012 and a second obtaining means 10013 (neither of which are shown).
  • the first obtaining means 10011 acquires one or each of the Flash players issued by the URL MON layer of the Internet browser loaded with the Flash player 101.
  • the request for FLV-1 contains the URL information of FLV-1 on the multimedia server 20.
  • the first determining means 10012 determines, as the association request, which of the one or more requests obtained is associated with the related information of the acquired event.
  • the second obtaining means 10013 obtains the URL information of the Flash video on the predetermined multimedia server according to the association request.
  • the user terminal 10 simultaneously runs only the Flash player 101, which requests the FLV-1 file on the multimedia server 20. Then, the address information obtaining means 1001 is loaded with the Internet browser of the Flash player 101.
  • the URL MON layer obtains the request from the only Flash player issued at that time, and obtains the URL of the FLV-1 on the multimedia server 20 from the request.
  • the address information acquiring apparatus 1001 can obtain the HTTP-based request for the FLV-1 file by the Flash player 101, for example, using a packet sniffing technology, or sending a card to the network card. Packets are captured and filtered. The specific means of obtaining are numerous, but are all within the scope of the present invention.
  • the network resource obtaining means 1002 After acquiring the URL of the FLV-1 on the multimedia server 20, the network resource obtaining means 1002 acquires information about a plurality of network resources including the same Flash video as the FLV-1 according to the URL of the FLV-1 on the multimedia server 20. .
  • the plurality of network resources including the same Flash video as the FLV-1 include other user terminal nodes and/or the multimedia server 20.
  • the user terminal 10 is in the first web server 30 and the second With the aid of the web server 40, information of a plurality of other user terminals having files of the same video content as the FLV-1 is acquired. As shown in FIG. 3, the user terminal 10 is logically connected to the first web server 30 and the second web server 40 via the Internet, and can communicate with a plurality of other user terminals having files of the same video content as the FLV-1 via the Internet.
  • the content identification obtaining means 10021 acquires one or more content identification information corresponding to the URL with the assistance of the first web server 30.
  • the content identification obtaining means 10021 further includes an address information transmitting means 100211 and a content identifying receiving means 100212.
  • the auxiliary downloading device 300 of the first network server 30 for assisting the user terminal to download the multimedia content to be downloaded from the network to the user terminal at high speed includes the address information receiving device 3001, the content information acquiring device 3002 and the content information providing device 3003. .
  • the address information transmitting apparatus 100211 transmits the URL of the FLV-1 acquired by the address information acquiring means 1001 on the multimedia server 20 to the first web server 30.
  • the address information receiving means 3001 of the auxiliary downloading means 300 of the first web server 30 receives the URL of the FLV-1 from the user terminal 10 on the multimedia server 20.
  • the content information obtaining means 3002 acquires one or more content identification information corresponding to the URL based on the URL of the FLV-1 on the multimedia server 20.
  • the content identification information corresponds to the Flash video content corresponding to the FLV-1, and may be, for example, an MD5 check code of the FLV-1 file. Since the MD5 check code is different for files with different file contents, it can be used to uniquely correspond to Flash video files.
  • the user terminal that downloads the FLV-1 according to the URL of the FLV-1 on the multimedia server 20 feeds back the URL of the FLV-1 file and the MD5 check code to the first network server 30, first.
  • the web server 30 maintains the correspondence between the URL and the MD5 check code locally, for example, in the form of a database. Then, the content information obtaining means 3002 queries all the correspondences maintained by the content information obtaining means 3002, and acquires the MD5 check code corresponding to the URL of the FLV-1 on the multimedia server 20. However, it is worth noting that because the content provider corresponding to the URL may modify or replace the FLV-1 file corresponding to the URL, the MD5 check code of the FLV-1 file changes, and the first The web server 30 cannot change the MD5 check code corresponding to the URL maintained by the web server 30 in real time, so the MD5 check code corresponding to the URL may be one. And may include more than one; and the one or more MD5 check codes may include the MD5 check code corresponding to the FLV-1 currently to be downloaded, or may not all correspond to the FLV-1 currently to be downloaded.
  • the other network server maintains the correspondence between the URL and the MD5 check code
  • the content information obtaining device 3002 obtains the URL corresponding to the FLV-1 on the multimedia server 20 by querying the other network server. MD5 check code.
  • the content information providing means 3003 transmits one or more MD5 check codes corresponding to the U L of the FLV-1 acquired by the content information acquiring means 3002 on the multimedia server 20 to the user terminal 10.
  • the content identification receiving device 100212 of the downloading device 100 of the user terminal 10 receives one or more MD5 check codes from the first web server 30 corresponding to the URL of the FLV-1 on the multimedia server 20.
  • the user terminal 10 has downloaded the FLV-1 file according to the URL of the FLV-1 on the multimedia server 20 before the download, and obtains the MD5 check code of the FLV-1 file.
  • the correspondence between the URL at the time of downloading and the MD5 check code of the FLV-1 file is saved in the manner of, for example, a mapping table.
  • the content identifier obtaining apparatus 10021 can query the locally maintained URL and the MD5 check code.
  • an MD5 check code associated with the URL of the FLV-1 on the multimedia server 20 is obtained.
  • the content provider corresponding to the URL may modify or replace the FLV-1 file corresponding to the URL, which may cause the MD5 check code of the FLV-1 file corresponding to the URL to change. .
  • the MD5 check code saved locally by the user terminal 10 has not corresponded to the current FLV-1.
  • the method for the content identifier obtaining means 10021 to obtain the MD5 check code corresponding to the URL of the FLV-1 on the multimedia server 20 is not limited to the two examples given above.
  • the content identifier determining apparatus 10022 determines one of the corresponding FLV content and the user terminal 10 according to the one or more MD5 check codes acquired by the content identifier obtaining apparatus 10021.
  • the MD5 check code of the same content of the FLV-1 currently being requested to be downloaded is an alternative MD5 check code. Due to the foregoing, the content provider may change the FLV-1 file corresponding to the URL. If the user terminal 10 does not verify the validity of the MD5 check code acquired by the content identifier obtaining apparatus 10021, then The FLV file downloaded according to the MD5 check code is different from the currently requested FLV-1 file.
  • the node information obtaining means 10023 acquires related information of other user terminal nodes including file fragments corresponding to the candidate MD5 check code.
  • the node information obtaining means 10023 acquires node information with the assistance of the second network server 40.
  • the node information acquiring device 10023 includes a content identification transmitting device 100231 and a node information receiving device 100232.
  • the auxiliary downloading device 400 of the second network server 40 for assisting the user terminal to download the multimedia content to be downloaded from the network to the user terminal at high speed comprises a receiving device 4001, an obtaining device 4002 and a transmitting device 4003.
  • the content identifier sending device 100231 sends the candidate MD5 check code determined by the content identifier determining device 10022 and the node information of the local user terminal to the second network server 40.
  • the receiving device 4001 of the auxiliary downloading device 400 of the second network server 40 receives the candidate MD5 check code from the user terminal 10 and the node information of the user terminal 10, wherein the file corresponding to the candidate MD5 check code is to be downloaded.
  • FLV-1 files have the same file content.
  • the obtaining means 4002 obtains information about other user terminal nodes of the slice having the file corresponding to the candidate MD5 check code according to the candidate MD5 check code.
  • the second network server 40 maintains information such as the IP address of other user terminal nodes that are downloading or has downloaded the fragment of the file corresponding to the MD5 check code in the form of a database or a mapping table, and The MD5 check code acquires other user terminals 10 containing the file corresponding to the candidate MD5 check code, and 10" IP address information.
  • the transmitting device 4003 transmits the user terminal 10 having the slice of the file corresponding to the candidate MD5 check code, and the IP address information of 10" back to the user terminal 10.
  • the node information receiving apparatus 100232 of the user terminal 10 receives the service from the second network The information of the user terminal 10' and 10" of the slice 40 containing the same file as the FLV-1 file to be downloaded.
  • the user terminal 10 is in a Distributed Hash Table (DHT) network with other user terminal nodes that are file fragments corresponding to other candidate MD5 check codes, then Each user terminal is responsible for a small range of routes and is responsible for storing a small portion of data to enable addressing and storage of the entire DHT network.
  • the node information obtaining apparatus 10023 may search for other user terminals that download files corresponding to the candidate MD5 check code in the DHT network without relying on a second network server, and acquire node related of the user terminals. information.
  • the specific DHT-based solution for obtaining other user terminal information is not of interest to the present invention, and those skilled in the art can implement the function according to the prior art.
  • the method in which the node information obtaining means 10023 acquires the related information of other user terminal nodes including the file fragments corresponding to the alternate MD5 check code is not limited to the two examples given above.
  • the content downloading apparatus 1003 extracts related information of other user terminal nodes including the same Flash video fragment as the FLV-1 acquired by the network resource acquiring apparatus 1002, based on the point-to-point technology from the user terminal. 10, and 10" download FLV-1, as shown by path C in Figure 3.
  • the specific technical solution for data download based on point-to-point technology is not of interest to the present invention, and those skilled in the art can The technology implements this function.
  • the content downloading apparatus 1003 can also download the FLV-1 from the multimedia server 20 according to the URL of the FLV-1 obtained in the address information acquiring apparatus 1001 on the multimedia server 20 without the point-to-point technology.
  • the user terminal 10, and the 10" downloaded portion are as shown by path D in FIG.
  • the content downloading means 1003 combines the data downloaded from the multimedia server 20 with the data downloaded based on the point-to-point technology into a complete FLV-1 file.
  • the downloading device 100 of the user terminal 10 further includes a reporting device 1004.
  • the auxiliary downloading device 300 of the first web server 30 further includes a first report receiving The device 3004 and the content identification management device 3005.
  • the reporting device 1004 reports the status information of the currently downloaded FLV-1 to the first network server 30, wherein, preferably, the status information includes the MD5 check of the FLV-1 file downloaded by the user terminal 10. code.
  • the first report receiving device 3004 of the first network server 30 receives the status information of the current download FLV-1 reported by the user terminal 10 during the process of downloading the FLV-1, wherein, preferably, the status information includes the user terminal 10. Download the MD5 checksum of the FLV-1 file.
  • the content identification management means 3005 creates or updates an MD5 check code corresponding to the URL address of the FLV-1 on the multimedia server 20 based on the MD5 check code of the downloaded FLV-1 file reported by the user terminal 10. Specifically, when the user terminal 10 is the first user to download the file, the user terminal 10 downloads the FLV-1 according to the UL address of the FLV-1 on the multimedia server 20, and provides the FLV- to the first network server 30.
  • the MD5 check code of the file, the content identifier management device 3005 creates a correspondence between the URL address and the MD5 check code using a technique such as a database; and when the foregoing, the content provider corresponding to the UL changes the UL corresponding
  • the user terminal 10 downloads the updated FLV-1 according to the URL, and provides the new network server 30 with a new one.
  • the MD5 check code of the FLV-1 file, the content identifier management device 3005 updates the MD5 check code corresponding to the URL address of the FLV-1 file on the multimedia server 20 to the MD5 check code of the new FLV-1 file. .
  • the downloading device 100 of the user terminal 10 obtains the URL of the FLV-1 on the multimedia server 20, and obtains the MD5 check code corresponding to the URL, and obtains the MD5 check code according to the MD 5 check code.
  • Other user terminals that are fragmented of the corresponding file, and download the FLV-1 technical solution from the other user terminal based on the point-to-point technology.
  • a technical solution for downloading a Flash video according to still another aspect of the present invention will be described below.
  • Figure 12 is a block diagram of a download device for downloading Flash video from a network to a user terminal in a user terminal 10 in accordance with yet another embodiment of the present invention.
  • 13 is a downloading device for acquiring corresponding multimedia server address information of one or more files of the same Flash video as the first web server 30, with the assistance of the first web server 30, according to another embodiment of the present invention. Block diagram.
  • the user 1 downloads a Flash video using the user terminal 10, and an HTTP server 20 of the content provider 2 on the Internet provides the Flash to the Internet user in the form of an FLV file.
  • Video with a file name of FLV-1.
  • the Internet browser of the user terminal 10 of the user 1 loads the Flash player 101 of the content provider to which the FLV-1 belongs, and the Flash player 101 is set to, for example, an active script, to issue, for example, HTTP based to the FLV-1.
  • the download request includes the URL information of the FLV-1 on the multimedia server 20.
  • the URL address of FLV-1 on the content provider's multimedia server 20 is hidden.
  • the present invention is not limited by the scenario, and the same can be applied to other types of multimedia content in which content providers provide address information hiding, and the user downloads the hidden multimedia content of the address information by other means. .
  • the user terminal 10 includes a downloading device 100 for downloading the multimedia content to be downloaded from the network to the user terminal, wherein the downloading device 100 includes the address information acquiring device 1001, and the network resource acquiring device 1002. And the content downloading device 1003.
  • the network resource obtaining means 1002 further includes a content address obtaining means 10021 and a content address determining means 10022.
  • the address information acquiring means 1001 acquires the U L of the FLV-1 on the multimedia server 20 in the process in which the Flash player 101 acquires the FLV-1 on the multimedia server 20.
  • the specific acquisition process is similar to the address information obtaining apparatus 1001 in the third embodiment above, and details are not described herein again.
  • the network resource obtaining means 1002 After acquiring the URL of the FLV-1 on the multimedia server 20, the network resource obtaining means 1002 acquires, according to the URL of the FLV-1 on the multimedia server 20, a plurality of network resources including the same Flash video as the FLV-1. information.
  • the plurality Network resources including the same Flash video as FLV-1 include other multimedia servers and/or multimedia servers 20.
  • the content address obtaining means 10021 acquires information of a plurality of other multimedia servers having files of the same video content as the FLV-1.
  • the user terminal 10 is logically connected to the first network server 30 via the Internet, and can communicate with a plurality of other multimedia servers having files of the same video content as the FLV-1 via the Internet.
  • the content address obtaining means 10021 further includes an address information transmitting means 10021 and a content address receiving means 100212.
  • the address information transmitting apparatus 100211 transmits the URL of the FLV-1 acquired on the multimedia server 20 in the address information acquiring apparatus 1001 to the first web server 30.
  • the address information receiving means 3001 of the first network server 30 receives the URL of the FLV-1 from the user terminal 10 on the multimedia server 20.
  • the content information obtaining means 3002 acquires one or more content address information corresponding to the URL according to the URL of the FLV-1 on the multimedia server 20, for example, a URL of the one or more files on the corresponding server.
  • a user terminal has downloaded FLV-1 according to the FLV-1 URL on the multimedia server 20, and has returned the MD5 check code of the FLV-1 file and the URL to the first The web server 30; and the other one or more user terminals have also downloaded the file according to one or more FLV video files of the same content at the URL of the corresponding server, and the unique identification information of the file of the same content, for example, MD5 school
  • the verification code and one or more corresponding URLs are fed back to the first web server 30.
  • the first network server 30 maintains, on the local basis, a URL of the FLV-1 on the multimedia server 20 and one or more FLV video files of the same content on the corresponding server in a local manner, for example, according to the same unique identification information. Or the correspondence of multiple URLs.
  • the content information obtaining means 3002 queries all the correspondences maintained by it, and acquires one corresponding to the URL of the FLV-1 on the multimedia server 20. Or multiple URLs.
  • the content information obtaining means 3002 may obtain one or more corresponding URLs corresponding to the FLV-1 currently to be downloaded, and may also not correspond to the FLV-1 currently to be downloaded.
  • the additional network server maintains the correspondence between the URL and one or more corresponding URLs, and the content information obtaining apparatus 3002 obtains the multimedia with the FLV-1 by querying the other network server.
  • the content information providing means 3003 transmits one or more corresponding URLs corresponding to the URL of the FLV-1 acquired by the step content information obtaining means 3002' on the multimedia server 20 to the user terminal 10.
  • the content address receiving device 100212 of the user terminal 10 receives one or more corresponding URLs corresponding to the URL of the FLV-1 on the multimedia server 20.
  • the user terminal 10 has downloaded the URL of the FLV-1 on the multimedia server 20 and the FLV video file of the same content at the URL of the corresponding server prior to the download.
  • the FLV-1 file, the content address obtaining means 10021 can query the correspondence between the URL of the FLV-1 on the multimedia server 20 and other corresponding URLs maintained by the local, for example, a mapping table, and obtain the FLV-1.
  • One or more corresponding URLs corresponding to the UL on the multimedia server 20 can query the correspondence between the URL of the FLV-1 on the multimedia server 20 and other corresponding URLs maintained by the local, for example, a mapping table.
  • the content address obtaining means 10021 may obtain one or more corresponding URLs corresponding to the FLV-1 currently to be downloaded, and may also not correspond to the FLV-1 currently to be downloaded. Then, the content address determining means 10022 determines one or more of the contents of the FLV-1 in which the corresponding file is currently requested to be downloaded according to one or more corresponding URLs obtained by the content address obtaining means 10021.
  • the URL is an alternate URL.
  • the content provider may change the FLV-1 file corresponding to the URL. If the user terminal 10 does not verify the validity of the obtained URL by the content address obtaining apparatus 10021, it may result in The file for this URL is different from the currently requested FLV-1 file.
  • the content address determining means 10022 determines the multimedia server 20, and 20" files containing the same content as the currently requested FLV-1, and determines that the corresponding URL is an alternate URL.
  • the content downloading apparatus 1003 acquires the multimedia server 20 including the same Flash video as the FLV-1 according to the network resource acquiring apparatus 1002, and downloads from the multimedia server 20 and 20" simultaneously with the 20" alternative URL.
  • FLV-1 is shown as path D in Figure ⁇ .
  • the content downloading device 1003 can also download the FLV-1 from the multimedia server 20 according to the address information obtaining device 1001, and download the FLV-1 from the multimedia server 20 without downloading from the multimedia server 20 and 20". Partly, as shown by path D in Figure 7.
  • downloading FLV-1 from multiple network resources at the same time greatly speeds up the download of FLV-1.
  • the data and downloads from the multimedia server 20 are downloaded.
  • the multimedia server 20, combined with 20" downloaded data, is combined into a complete FLV-1 file.
  • the download device 100 of the user terminal 10 further includes a reporting device 1004.
  • the auxiliary download device 300 of the first web server 30 further includes a second report receiving device 3004, and a content address management device 3005.
  • the reporting device 1004 reports the status information of the current download FLV-1 to the first network server 30.
  • the status information includes the user terminal 10 according to the FLV-1.
  • the second report receiving device 3004 receives the status information of the current download FLV-1 reported by the user terminal 10 during the process of downloading the FLV-1.
  • the status information includes the user terminal 10 according to the above and the FLV- 1 URL corresponding to the multimedia server 20 One or more corresponding URLs and/or a state in which FLV-1 is downloaded at the URL on the multimedia server 20, and/or an MD5 check code of FLV-1.
  • the content address management means 3005 creates or updates the URL address on the multimedia server 20 with the FLV-1 based on the candidate URL reported by the user terminal 10 and/or the state in which the FLV-1 is downloaded on the multimedia server 20.
  • the corresponding URL Specifically, when the user terminal 10 is the first user to download the file on a certain URL, the user terminal 10 provides the first web server 30 with the MD5 check code of the URL and the FLV-1 file, and the content address.
  • the management device 3005 associates all the URLs with the same MD5 check code; and when the content provider changes the FLV-1 file corresponding to the URL, the FLV-1 file corresponding to the URL has expired, and the user terminal 10 When the FLV-1 cannot be downloaded according to the URL, the user terminal 10 notifies the first web server 30 that the URL has expired, and the content address management device 3005 deletes the association relationship between the invalid UL and other URLs.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Library & Information Science (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)

Description

在互联网中用于高速下载多媒体内容
的方法与装置 技术领域
本发明涉及在网络中用于下载数据的方法与装置, 尤其涉及在互联 网中高速下载多媒体内容的方法与装置。 背景技术
目前, 由于互联网技术和多媒体处理技术的迅速发展, 使得通过互 联网传输多媒体内容愈加方便, 因而内容提供商在互联网上提供了越来 越多的多媒体内容, 也有越来越多的用户依赖于互联网这一新媒介收听 收看多媒体内容。 例如, 目前, Adobe公司的 Flash播放器(Adobe Flash Player )在视频方面可以播放由 H.264标准、 Sorenson H.263标准或 VP6 标准等多种视频压缩标准所压缩的视频内容, 在音频方面可以播放由 MP3标准或 AAC标准等多种音频压缩标准所压缩的音频内容, 同时, 随着多媒体处理技术的进步, Adobe公司也宣称将使 Adobe Flash Player 支持越来越多的多媒体压缩标准。 基于这些标准压缩的多媒体内容可以 包含于 Flash视频 (Flash Video, 简称 FLV )文件或 Flash音频文件中, 存放在内容提供商的多媒体服务器上。 用户收看多媒体内容时, 在其用 户终端上使用内容提供商提供的 Flash播放器, 从内容提供商提供的多 媒体服务器上将包含该多媒体内容的相应 Flash视频文件或 Flash音频文 件下载到用户终端本地, 即可进行收看。
目前, 由于基于 FLV的多媒体内容越来越丰富, 用户越来越多地希 望将 FLV 自由地下载到本地, 以便随时进行观看。 而一般的提供 FLV 的内容提供商对其提供的多媒体内容的地址信息, 包括 FLV文件的统一 资源定位符 (URL )等, 进行了一定程度地隐藏。 一般用户及一般下载 软件无法获得 FLV文件的 URL, 而无法直接下载该 FLV文件。 例如, 内容提供商的 Flash播放器经过活动脚本(Action Script ) 的配置, 以 HTTP (超文本传输协议) 的方式请求并下载处于内容提供商的多媒体 服务器上的 FLV文件,其中该 HTTP请求中包含了该 FLV文件的 URL。 但是一般用户和一般下载软件无法直接获得活动脚本的运行信息, 从而 无法根据活动脚本获取请求 FLV文件的 URL, 而无法自行下载 FLV文 件。
因而, 为了使一般用户能够方便地将被隐藏了地址信息的多媒体内 容, 例如被隐藏了 URL的 FLV文件快速地下载到本地, 必须解决两个 技术问题:
1. 高效、准确地获取 FLV文件所在其服务器上的地址,例如 URL;
2. 根据该地址, 高速地将所需的 FLV文件从互联网上下载到用 户本地。
现有的 RealNetworks公司的 Realplayer 11软件能够通过用户终端 运行的内容提供商的 Flash播放器, 获取到该播放器播放的 FLV文件的 URL。 而后, Realplayer 11 采用服务器 /客户端 ( C/S ) 的下载方式, 从 该 URL对应的多媒体服务器上将该 FLV文件下载到用户终端中的指定 位置。 但是, 目前的 Realplayer 11的下载限制在上述的 C/S方式下, 该 文件的下载来源仅包含该 URL对应的多媒体服务器。
可以看出, 现有技术能够获取到 FLV解决前述的技术问题 1。 而对 于技术问题 2来说, 现有技术则依赖于 C/S下载方式的"尽力而为", 下 载速度无法得到保证。 发明内容
为了同时解决的上述技术问题 1与 2, 本发明提出, 首先获取到多 媒体内容的地址信息, 而后根据该地址信息获取其他拥有与该多媒体内 容相同的多媒体内容的网络资源的相关信息, 最后根据多个拥有该多媒 体内容的网络资源的相关信息下载该多媒体内容
具体地, 根据本发明的第一方面, 提供了一种在用户终端中将待下 载的多媒体内容从网络上下载到本用户终端的下载方法, 其中, 预定的 多媒体服务器包含所述待下载的多媒体内容, 所述待下载的多媒体内容 在所述预定的多媒体服务器上的地址信息是隐藏的, 该下载方法包括如 下步骤: i.在所述用户终端的多媒体播放器获取处于所述预定的多媒体 服务器上的所述待下载的多媒体内容的过程中, 获取所述待下载的多媒 体内容在所述预定的多媒体服务器上的地址信息; ii.根据所述待下载的 多媒体内容在所述预定的多媒体服务器上的地址信息, 获取多个包含与 所述待下载的多媒体内容相同的多媒体内容的网络资源的相关信息; iii. 根据所述多个网络资源的相关信息 , 下载所述待下载的多媒体内容。
根据本发明的第二个方面, 提供了一种在第一网络服务器中用于辅 助用户终端将待下载的多媒体内容从网络上高速下载到所述用户终端 的辅助下载方法, 其中, 预定的多媒体服务器包含所述待下载的多媒体 内容, 所述待下载的多媒体内容在所述预定的多媒体服务器上的地址信 息是隐藏的, 该辅助下载方法包括如下步驟: 0.接收来自所述用户终 端的所述待下载的多媒体内容在所述预定的多媒体服务器上的地址信 息; p.根据所述待下载的多媒体内容在所述预定的多媒体服务器上的地 址信息, 获取所述多媒体内容的相关信息; q. 将所述多媒体内容的 相关信息提供给所述用户终端。
根据本发明的第三个方面, 提供了一种在第二网络服务器中用于辅 助用户终端将预定的多媒体内容从网络上高速下载到所述用户终端的 辅助下载方法, 其中, 预定的多媒体服务器包含所述待下载的多媒体内 容, 所述待下载的多媒体内容在所述预定的多媒体服务器上的地址信息 是隐藏的, 该辅助下载方法包括如下步骤: I. 接收来自所述用户终端的 备选内容标识信息和所述用户终端的节点相关信息, 其中备选内容标识 信息对应的内容与所述待下载的多媒体内容相同; II.根据所述备选内容 标识信息, 获取拥有备选内容标识信息对应的内容的分片的其它用户终 端节点的相关信息; III. 将所述拥有备选内容标识信息对应的内容的分 片的其它用户终端节点的相关信息发送给所述用户终端。
根据本发明的第四个方面, 提供了一种在用户终端中将待下载的多 媒体内容从网络上下载到本用户终端的下载装置, 其中, 预定的多媒体 服务器包含所述待下载的多媒体内容, 所述待下载的多媒体内容在所述 预定的多媒体服务器上的地址信息是隐藏的, 该下载装置包括: 地 址信息获取装置, 用于在所述用户终端的多媒体播放器获取处于所述预 定的多媒体服务器上的所述待下载的多媒体内容的过程中, 获取所述待 下载的多媒体内容在所述预定的多媒体服务器上的地址信息; 网络资源 获取装置, 用于^^据所述待下载的多媒体内容在所述预定的多媒体服务 器上的地址信息 , 获取多个包含与所述待下载的多媒体内容相同的多媒 体内容的网络资源的相关信息; 下载装置, 用于才艮据所述多个网络资源 的相关信息, 下载所述待下载的多媒体内容。
通过使用根据本发明的方法或装置, 具有如下优点:
1.能够准确地获取到地址信息隐藏的待下载的多媒体内容的地址信
# ·
2. 能够根据该地址信息,从多个网络资源处同时获取该多媒体内 容, 极大地提高该多媒体内容的下载速度。 附图说明
通过参照附图阅读以下所作的对非限制性实施例的详细描述, 能够 更容易地理解本发明的特征、 目的和优点。 其中, 相同或相似的附图标 记代表相同或相似的元件(装置)。
图 1 为根据本发明一个具体实施例, 用户终端 10请求位于多媒体 服务器 20上的 Flash视频 FLV-1的网络示意图;
图 2为根据本发明一个具体实施例, 用户终端 10中将 Flash视频从 网络上下载到本用户终端的下载方法的流程图;
图 3是根据本发明一个具体实施例, 用户终端 10在第一网络服务 器 30和第二网络服务器 40的辅助下,从多个用户终端节点处获取 Flash 视频的网络示意图;
图 4是根据本发明一个具体实施例, 用户终端 10在第一网絡服务 器 30的辅助下, 获取该 Flash视频在多媒体服务器 20上的 URL所对应 的内容标识信息的方法流程图;
图 5是根据本发明一个具体实施例, 用户终端 10在第二网络服务 器 40 的辅助下, 获取包含备选内容标识信息对应的内容的分片的其它 用户终端节点的相关信息的方法流程图;
图 6为根据本发明另一个具体实施例, 在用户终端 10中将 Flash视 频从网络上下载到本用户终端的下载方法的流程图;
图 7是根据本发明另一个具体实施例,用户终端 10在第一网络服务 器 30,的辅助下, 从多个多媒体服务器处获取多媒体内容的网络示意图; 图 8是才艮据本发明另一个具体实施例,用户终端 10在第一网络服务 器 30,的辅助下获取与所述 Flash视频相同的一个或多个文件在其对应的 多媒体服务器的地址信息的方法流程图;
图 9为根据本发明再一个具体实施例, 用户终端 10中将 Flash视频 从网络上下载到本用户终端的下载装置的框图;
图 10是根据本发明再一个具体实施例, 用户终端 10在第一网络服 务器 30"的辅助下获取该多媒体内容在多媒体服务器 20上的 URL所对 应的内容标识信息的装置的框图;
图 11是根据本发明再一个具体实施例, 用户终端 10根据备选内容 标识信息, 获取包含备选内容标识信息对应的内容的分片的其它用户终 端节点的相关信息的装置的框图;
图 12为才艮据本发明又一个具体实施例, 在用户终端 10中将 Flash 视频从网络上下载到本用户终端的下载装置的框图;
图 13是根据本发明又一个具体实施例, 用户终端 10在第一网络服 务器 30,的辅助下获取与该 Flash视频相同的一个或多个文件的在其对应 的多媒体服务器地址信息的下载装置的框图。 具体实施方式
下面将参照图 1至图 8, 从系统方法的角度对本发明的具体实施例 进行详述。 第一实施例
图 1 为才艮据本发明一个具体实施例, 用户终端 10请求下载位于多 媒体服务器 20上的 Flash视频的网络示意图。 图 2为根据本发明一个具 体实施例, 用户终端 10中将 Flash视频从网络上下载到本用户终端的下 载方法的流程图。 图 3是根据本发明一个具体实施例, 用户终端 10在 第一网絡服务器和第二网络服务器的辅助下, 从多个网络资源处获取多 媒体内容的网络示意图。 图 4是根据本发明一个具体实施例, 用户终端 10在第一网络服务器 30的辅助下获取该多媒体内容在多媒体服务器 20 上的 URL所对应的内容标识信息的方法流程图。 图 5是根据本发明一 个具体实施例, 用户终端 10在第二网络服务器 40的辅助下, 获取包含 备选内容标识信息对应的内容的分片的其它用户终端节点的相关信息 的方法流程图。 下面参照图 1至图 5, 对本发明的一个具体实施例进行 详述。
如图 1所示, 本实施例中, 用户 1试图下载一个 Flash视频, 某个 互联网上的内容提供商以 FLV文件的形式向互联网用户提供该多媒体 内容, 其文件名为 FLV-1。 一般来说, 该 FLV-1处于该内容提供商 2的 一个例如 HTTP服务器的多媒体服务器 20上。 该多媒体服务器 20可以 使用 HTTP的部分下载 (partial download ) 功能, 向请求下载该 FLV-1 的用户提供随机接入( random access ) 式的下载服务, 即流式的下载服 务。 用户 1的用户终端 10的互联网浏览器加载了 FLV-1所属的内容提 供商的 Flash播放器 101, 该 Flash播放器 101以例如活动脚本的方式被 设置为可以向该 FLV-1发出例如基于 HTTP的下载请求, 该下载请求中 包含该 FLV-1在多媒体服务器 20上的 URL信息。 同时, FLV-1在该内 容提供商的多媒体服务器 20上的 URL地址是隐藏, 也就是说, 从用户 终端 10的互联网浏览器载入的网页中无法提取到 FLV-1的 URL地址; 用户终端 10也无法获取到 Flash播放器 101的活动脚本的状态, 即无法 获取到活动脚本中设置的 FLV-1 的 URL信息。 本领域一般技术人员可 以明白, 这个场景仅仅是为了举例, 本发明并不限于多媒体内容为 Flash 视频,内容提供商通过 HTTP服务器提供地址信息隐藏的包含的该 Flash 视频的文件, 用户通过 Flash播放器下载 URL隐藏的 Flash视频文件的 例子, 本发明同样可以适用于内容提供商提供地址信息隐藏的其他类型 多媒体内容, 用户通过其他方式下载该地址信息隐藏的多媒体内容的情 首先, 在步骤 S10中, 用户终端 10在 Flash播放器 101获取处于多 媒体服务器 20上的 FLV-1的过程中, 获取 FLV-1在多媒体服务器 20上 的 URL。
具体的, 在一个实施例中, 用户终端 10同时运行着多个 Flash播放 器, 各个 Flash播放器都在请求其对应的 FLV文件并进行播放。 用户终 端 10 可以获取到这所有请求, 但是根据这些请求中是无法确定究竟哪 个一个是对应于 Flash播放器 101对 FLV-1的请求。由于各个 Flash播放 器在发出对 FLV文件的请求时, 会产生与该 Flash播放器对应的事件, 所以只要在各个请求中找到与 Flash播放器 101产生的事件相应的那个 请求, 就可以确定该请求为 Flash播放器 101发出的对 FLV-1的请求。
具体实现方法如下, 在步骤 S100 (图中未使出) 中, 用户终端 10 在 Flash播放器 101对处于多媒体服务器 20上的 FLV- 1文件进行请求时, 在加载着 Flash播放器 101的互联网浏览器的 URL MON层获取浏览器 发出的对一个或多个 FLV文件的对应请求, 并获取由 Flash播放器 101 发出对 FLV-1的请求所产生的事件的相关信息, 其中, 上述对一个或多 个 FLV的对应请求包括对 FLV-1的请求, 该对 FLV-1的请求包含 FLV-1 在多媒体服务器 20上的 URL信息。 而后, 在步骤 S102 (图中未使出) 中, 用户终端 10 将获取到的一个或多个请求中与获取到的事件的相关 信息相关联的那个请求确定为关联请求。 接着, 在步驟 S103 (图中未使 出) 中, 用户终端 10根据该关联请求, 获取该 Flash视频在该预定的多 媒体服务器上的 URL信息。
在另一个实施例中,用户终端 10同时只运行着该 Flash播放器 101 ' 该播放器 101对处于多媒体服务器 20上的 FLV-1文件进行请求。 那么 用户终端 10 只要在加载着 Flash播放器 101 的互联网浏览器的 URL MON层获取当时发出的唯——个 Flash播放器发出的请求,就可以从该 请求中获取到 FLV-1在多媒体服务器 20上的 URL。
本领域一般技术人员可以明白, 用户终端 10也可以采用其他方式 获取 Flash播放器 101发出对 FLV-1文件的基于 HTTP的请求, 例如采 用数据包嗅探(Sniff)技术, 或对网卡发出的数据包进行抓包过滤。 具 体的获取手段不胜列举, 但是都处于本发明的保护范围之内。
在获取到 FLV-1在多媒体服务器 20上的 URL后, 在步骤 S11中, 用户终端 10根据该 FLV-1在多媒体服务器 20上的 URL,获取多个包含 与 FLV-1 内容相同的 Flash视频的网络资源的相关信息。 其中, 在本实 施例中, 该多个包含与 FLV-1相同的 Flash视频的网络资源包括其它用 户终端节点和 /或多媒体服务器 20。
在一个优选的实施例中, 用户终端 10在第一网络服务器 30与第二 网络服务器 40的辅助下, 获取多个拥有与 FLV-1 内容相同的文件的其 他用户终端的信息。 如图 3所示, 用户终端 10通过互联网与第一网络 服务器 30与第二网络服务器 40逻辑相连, 并且可以通过互联网与多个 拥有与 FLV-1内容相同的文件的其他用户终端进行通信。
具体的, 在步骤 S110中, 用户终端 10获取到该 FLV-1在多媒体服 务器 20上的 URL所对应的内容标识信息。
在一个实施例中, 步骤 S110如图 4所示, 在步骤 S1101 中, 用户 终端 10将在步骤 S10中获取到的 FLV-1在多媒体服务器 20上的 URL 发送给第一网络服务器 30。
随后, 在步骤 S30中, 第一网络服务器 30接收到来自用户终端 10 的 FLV-1在多媒体服务器 20上的 URL。
而后, 在步骤 S31 中, 第一网络服务器 30根据 FLV-1在多媒体服 务器 20上的 URL, 莰取一个或多个与该 URL对应的内容标识信息。 具 体的, 该内容标识信息与 FLV- 1所对应的 Flash视频内容对应, 例如 , 可以是该 FLV-1文件的 MD5校验码。 由于在足够大的范围内, 对于文 件内容不同的文件, 其 MD5校验码是不同的, 所以 MD5校验码可以用 来唯一地标识 Flash视频文件。 本领域技术人员应明白, 该内容标识信 息也可以其他能够唯一标识多媒体内容的信息, 如 SHA-1等等。在一个 优选的实施例中 ,根据该 FLV-1在多媒体服务器 20上的 U L下载 FLV-1 的用户终端将该 FLV-1文件的 MD5校验码反馈给第一网络服务器 30, 第一网络服务器 30在其本地以例如数据库的方式维护该 MD5校验码与 该 URL的对应关系。 那么, 在步骤 S31中, 第一网络服务器 30查询其 维护的所有对应关系, 获取与 FLV-1在多媒体服务器 20上的 U L对应 的这一 MD5校验码。 但是, 值得注意的是, 由于该 URL对应的内容提 供商有可能对该 URL对应的 FLV-1文件的进行修改或替换, 就会导致 该 URL当前对应的 FLV-1文件的 MD5校验码发生变化, 而第一网络服 务器 30不能实时地改变其维护的该 URL对应的 MD5校验码, 所以该 URL对应的 MD5校验码可能是一个, 也可能包括多个; 并且这一个或 多个 MD5校验码可能包含与当前待下载的 FLV-1对应的 MD5校验码, 也可能全都与当前待下载的 FLV- 1不对应。
可选的,另外的阿络服务器维护了 URL与 MD5校验码的对应关系, 则第一网络服务器 30通过向该另外的网络服务器查询,获取到与 FLV-1 在多媒体服务器 20上的 URL对应的 MD5校验码。
接着, 在步骤 S32中, 第一网络服务器 30将步骤 S31 中获取到的 FLV-1在多媒体服务器 20上的 URL对应的一个或多个 MD5校验码发送 给用户终端 10。
而后, 在步骤 S1102 中, 用户终端 10接收到来自第一网络服务器 30的与 FLV- 1在多媒体服务器 20上的 URL对应的一个或多个 MD5校 验码。
以上的用户终端 10与第一网络服务器 30交互的过程如图 3中的路 径 A所示。
在一个变化的实施例中, 用户终端 10 在本次下载之前曾经根据该 FLV-1在多媒体服务器 20上的 URL下载过该 FLV-1文件, 并获取到了 该 FLV-1文件的 MD5校验码, 同时以例如映射表等方式保留了当时下 载时的该 URL与该 FLV-1文件的 MD5 校验码的对应关系,那么,在步 骤 S110中, 用户终端 10可以查询其本地维护的 URL与 MD5校验码对 应关系, 得到与该 FLV-1在多媒体服务器 20上的 URL相关的 MD5校 验码。 但是, 值得注意的是, 由于该 URL对应的内容提供商有可能对 该 URL对应的 FLV-1文件的进行修改或替换, 就会导致该 URL对应的 FLV-1文件的 MD5校验码发生变化。使得用户终端 10本地保存的 MD5 校验码已经与当前的 FLV-1不对应了。
本领域技术人员可以明白, 在 S110步骤中用户终端 10获取 FLV-1 在多媒体服务器 20上的 URL所对应的 MD5校验码的方法并不限于以 上所举的两个示例。
然后,在步骤 S111中, 用户终端 10根据在步骤 S110中获取到的一 个或多个 MD5校验码,确定其中对应 FLV内容与本用户终端 10当前正 在请求下载的 FLV-1的内容相同的 MD5校验码为备选 MD5校验码。 由 于前述的, 内容提供商有可能对该 URL对应的 FLV-1文件的进行变更 的原因, 如果用户终端 10不对 S110中获取到的 MD5校验码的有效性 进行验证, 那么可能会导致根据该 MD5校验码下载的 FLV文件与当前 请求的 FLV-1文件不同。 在一个实施例中, 用户终端 10可以将该一个 或多个 MD5校验码发送给多媒体服务器 20,由多媒体服务器 20告知用 户终端 10正确的 MD5校验码。 本领域技术人员应明白, 用户终端 10 验证 MD5校验码的有效性的方法是多种多样的, 并不受所举的实施例 所限。
继而, 在步骤 S112中, 用户终端 10获取包含备选 MD5校验码对 应的文件分片的其它用户终端节点的相关信息。
在一个实施例中, 步骤 S112如图 5所示, 在步骤 S1121中, 用户终 端 10将在步骤 S111 中确定的备选 MD5校验码和本用户终端的节点信 息发送给第二网络服务器 40。
接着, 在步骤 S40中, 第二网络服务器 40接收来自用户终端 10的 备选 MD5校验码和用户终端 10的节点信息。
随后, 在步骤 S41 中, 第二网络服务器 40根据备选 MD5校验码, 获取拥有备选 MD5校验码对应的文件的分片的其它用户终端节点的相 关信息。 具体的, 第二网络服务器 40 以例如映射表或数据库的方式维 护了所有正在下载或已经下载了该 MD5校 码对应的文件的分片的其 他用户终端节点的 IP地址等信息, 并在根据备选 MD5校验码获取到含 地址信息。 而后, 在步骤 S42 , 第二网络服务器 40将拥有备选 MD5校验码对 应的文件的分片的用户终端 10,与 10"的 IP地址信息发送回用户终端 10。
在步骤 S1122中, 用户终端 10接收到来自第二网络服务器 40的包 含与待下载的 FLV-1 文件具有相同的文件的分片的用户终端 10,与 10" 的相关信息。
以上的用户终端 10与第二网络服务器 40交互的过程如图 3中的路 径 B所示。
在另一个实施例中, 用户终端 10与其他包含备选 MD5校验码对应 的文件分片的其它用户终端节点同处于一个分布式哈希表 (Distributed Hash Table, 简称 DHT)网络中, 那么各个用户终端负责一个小范围的路 由, 并负责存储一小部分数据, 从而实现整个 DHT网络的寻址和存储。 在这种情况下, 在步骤 S112中, 用户终端 10可以不依赖于第二网络服 务器 40,自行在 DHT网络中寻找到下载备选 MD5校验码对应的文件的 其他用户终端, 获取这些用户终端的节点相关信息。 具体的基于 DHT 技术的获取其他用户终端信息的方案并不是本发明所关注的, 本领域技 术人员可以根据现有技术实现该功能。
本领域技术人员可以明白, 在 S112步驟中用户终端 10获取包含备 选 MD5校验码对应的文件分片的其它用户终端节点的相关信息的方法 并不限于以上所举的两个示例。
在一个变化的实施例中,用户终端 10采用预下载的方式确定在步骤 S110 中获取到的一个或多个 MD5 校验码是否与当前正在请求下载的 FLV-1的内容对应: 用户终端 10首先直接将获取到的所有 MD5校验码 发送给第二网络服务器 40,第二网絡服务器 40将拥有与各] VCD5校验码 对应的文件的分片的各个用户终端的 IP地址信息发送回用户终端 10; 接着, 用户终端 10分别从多媒体网络服务器 20上下载该多媒体内容的 一部分, 例如前 10K的数据, 并从各个用户终端下载与各个 MD5校验 码对应的文件的相应部分, 例如前 10K的数据, 而后对多媒体网络服务 器 20上下载的部分与各个 MD5校验码对应的文件的相应部分进行比 较: 与多媒体网络服务器 20上下载的部分相同的文件所对应的 MD5校 验码就是正确的校验码。 用户终端 10可以确定与该正确的 MD5校验码 对应的用户终端 10'与 10"存有与待下载的 FLV-1相同的 Flash视频的分 片。
接着,在步骤 S12中,用户终端 10根据在步驟 S11中获取到的多个 包含与 FLV-1相同的 Flash视频的分片的其他用户终端节点的相关信息, 基于点到点技术同时从该用户终端 10,与 10"处下载 FLV-1 ,如图 3中的 路径 C所示。 具体的基于点到点技术进行数据下载的技术方案并不是本 发明所关注的, 本领域技术人员可以根据现有技术实现该功能。 同时, 用户终端 10也可以根据步骤 S10中获得的 FLV- 1在多媒体服务器 20上 的 URL, 从多媒体服务器 20上下载 FLV-1中没有基于点到点技术从用 户终端 10,和 10"下载的部分, 如图 3中的路径 D所示。 如此而来, 从 多个网络资源处同时下载 FLV-1大大地加快了下载 FLV-1的速度。最后, 用户终端 10将从多媒体服务器 20上下载的数据与基于点到点技术下载 的数据组合成完整的 FLV-1文件。
在一个优选的实施例中, 用户终端 10在下载 FLV-1文件的过程中, 在步骤 S13里, 向第一网络服务器 30汇报当前下载 FLV-1的状态信息, 其中, 优选的, 状态信息包括用户终端 10下载的 FLV-1文件的 MD5校 验码。
而后, 在步驟 S33中, 第一网络服务器 30接收到用户终端 10在下 载 FLV-1的过程中汇报来的当前下载 FLV-1的状态信息。其中,优选的, 状态信息包括用户终端 10下载的 FLV-1文件的 MD5校验码。
接着, 在步骤 S34中, 第一网络服务器 30才艮据用户终端 10汇报来 的下载的 FLV-1文件的 MD5校验码, 创建或更新与 FLV-1在多媒体服 务器 20上的 URL地址对应的 MD5校验码。 具体的, 在用户终端 10是 第一个在该 URL地址上下载该文件的用户时, 用户终端 10向笫一网络 服务器 30提供了该 URL与 FLV-1文件的 MD5校验码, 第一网络服务 器 30使用例如数据库等技术创建该 FLV-1文件在多媒体服务器 20上的 U L地址与该 MD5校验码的对应关系; 而当前述的, 该 U L对应的内 容提供商更改该 URL对应的 FLV-1文件继而导致该 URL对应的 FLV-1 文件的 MD5校验码发生变化后, 用户终端 10根据该 URL下载了更新 后的 FLV-1 , 并向第一网络服务器 30提供了新的 FLV-1文件的 MD5校 验码, 则第一网络服务器 30更新与该 FLV-1文件在多媒体服务器 20上 的 URL地址所对应的 MD5校验码为新的 FLV-1文件的 MD5校验码。 以上描述了用户终端 10获取 FLV-1在多媒体服务器 20上的 URL, 继而获取到该 URL对应的 MD5校验码, 根据该 MD5校验码获取拥有 该 MD5校验码对应的文件的分片的其他用户终端, 并基于点到点技术 从该其他用户终端处下载 FLV-1的技术方案。 下面将描述根据本发明另 一方面的下载 Flash视频的技术方案。 第二实施例
图 6为根据本发明另一个具体实施例, 在用户终端 10中将 Flash视 频从网络上下载到本用户终端的下载方法的流程图。 图 7是根据本发明 另一个具体实施例, 用户终端 10在第一网络服务器 30,的辅助下, 从多 个网络资源处获取多媒体内容的网络示意图。 图 8是根据本发明另一个 具体实施例, 用户终端 10在第一网络服务器 30,的辅助下获取与所述 Flash视频相同的一个或多个文件的在其对应的多媒体服务器地址信息 的方法流程图。
与前述的第一实施例类似的, 如图 1所示, 用户 1使用用户终端 10 下载一个 Flash视频, 互联网上的内容提供商 2的一个基于 HTTP的多 媒体服务器 20以 FLV文件的形式向互联网用户提供该 Flash视频,其文 件名为 FLV-1。用户 1的用户终端 10的互联网浏览器加载了 FLV-1所属 的内容提供商的 Flash播放器 101 , 该 Flash播放器 101以例如活动脚本 的方式被设置为可以向该 FLV-1发出例如基于 HTTP的下载请求, 该下 载请求中包含该 FLV-1在多媒体服务器 20上的 URL信息。但是, FLV-1 在该内容提供商的多媒体服务器 20上的 URL地址是隐藏。 本领域一般 技术人员可以明白, 本发明并不受该场景所限, 其同样可以适用于内容 提供商提供地址信息隐藏的其他类型多媒体内容, 用户通过其他方式下 载该地址信息隐藏的多媒体内容的情形。
如图 6所示,首先,在步骤 S10,中,用户终端 10在 Flash播放器 101 获取处于多媒体服务器 20上的 FLV-1的过程中, 获取 FLV-1在多媒体 服务器 20上的 URL。 具体的获取方法与以上第一实施例中步骤 S10中 的类似, 在此不再赘述。
在获取到 FLV-1在多媒体服务器 20上的 URL后, 在步骤 S 1 Γ中, 用户终端 10根据 FLV-1在多媒体服务器 20上的 URL,获取多个包含与 FLV-1相同的 Flash视频的网络资源的相关信息。 其中, 在本实施例中, 该多个包含与 FLV-1相同的 Flash视频的网络资源包括其它多媒体服务 器和 /或多媒体服务器 20。
在一个优选的实施例中, 用户终端 10在第一网络服务器 30,的辅助 下, 获取多个拥有与 FLV-1相同视频内容的文件的其它多媒体服务器的 信息。 如图 7所示, 用户终端 10通过互联网与第一网络服务器 30,逻辑 相连, 并且可以通过互联网与多个拥有与 FLV-1相同视频内容的文件的 其它多媒体服务器进行通信。
其中, 在步骤 S110,中, 用户终端 10获取该 FLV-1在多媒体服务器 20上的 URL所对应的内容地址信息。
在一个实施例中, 步骤 S110,如图 8所示, 在步骤 S1101'中, 用户 终端 10将在步骤 S10,中获取到的 FLV-1在多媒体服务器 20上的 URL 发送给第一网络服务器 30,。
随后, 在步骤 S30,中, 第一网络服务器 30,接收到来自用户终端 10 的 FLV-1在多媒体服务器 20上的 URL。
而后, 在步驟 S31,中, 第一网络服务器 30,根据 FLV-1在多媒体服 务器 20上的 URL, 获取一个或多个与该 URL对应的内容地址信息, 例 如, 可以是某些文件的在相应的服务器上的 URL。 在一个优选的实施例 中, 一个用户终端已经根据该 FLV-1在多媒体服务器 20上的 URL下载 了 FLV-1 , 并已将该 FLV-1文件的 MD5校验码及该 URL反馈给第一网 络服务器 30,; 而其他的一个或多个用户终端也已经根据一个或多个相 同内容的 FLV视频文件在相应服务器的 URL下载了该文件, 并将该相 同内容的文件的唯一标识信息例如 MD5校验码以及该一个或多个相应 的 URL反馈给第一网絡服务器 30,。 则第一网络服务器 30,根据相同的 唯一标识信息, 在其本地以例如数据库的方式维护该 FLV-1在多媒体服 务器 20上的 URL与一个或多个相同内容的 FLV视频文件在相应服务器 上的一个或多个 URL的对应关系。 那么, 在步骤 S31,中, 第一网络服 务器 30,查询其维护的所有对应关系, 获取到与 FLV-1在多媒体服务器 20上的 URL对应的一个或多个 URL。 但是, 值得注意的是, 由于某个 对应 URL的相应的内容提供商有可能对 URL对应的文件进行更改, 使 得该对应 URL实际上已经与 FLV-1不对应了, 但是第一网络服务器 30, 不能自动随之实时地更新该 URL与其对应的 URL的对应状态。 所以, 第一网络服务器 30,获取到的该一个或多个对应 URL可能包含与当前待 下载的 FLV-1 对应的一个或多个 URL, 也可能全都与当前待下载的 FLV-1不对应。
在另一个实施例中,另外的网絡服务器维护了该 URL与一个或多个 对应 URL的对应关系, 则第一网络服务器 30,通过向该另外的网络服务 器查询, 获取到与 FLV-1在多媒体服务器 20上的 URL对应的一个或多 个对应 URL。
接着, 在步骤 S32,中, 第一网络服务器 30,将在步骤 S31,中获取到 的 FLV-1在多媒体服务器 20上的 URL对应的一个或多个对应 URL发 送给用户终端 10。
然后, 在步骤 S1102'中, 用户终端 10接收到 FLV-1在多媒体服务 器 20上的 URL对应的一个或多个对应 URL。
以上的用户终端 10与第一网络服务器 30,交互的过程如图 7中的路 径 A,所示。
在一个变化的实施例中, 用户终端 10 在本次下载之前曾经根据该 FLV-1在多媒体服务器 20上的 URL, 以及一个或多个相同内容的 FLV 视频文件在相应服务器的 URL, 下载过该 FLV-1 文件, 那么, 在步骤 S110,中, 用户终端 10可以查询其本地维护的该 FLV-1在多媒体服务器 20上的 URL与其他对应 URL的对应关系,得到与该 FLV-1在多媒体服 务器 20上的 URL对应的一个或多个对应 URL。 但是, 由于某个对应 URL的相应的内容提供商有可能对 URL对应的文件进行更改, 使得该 对应 URL实际上已经与 FLV-1不对应了, 但是用户终端 10不能自动随 之实时地更新该 URL与 FLV-1在多媒体服务器 20上 URL的对应状态。 所以, 用户终端 10获取到的该一个或多个对应 URL可能包含与当前待 下载的 FLV-1 对应的一个或多个 URL, 也可能全都与当前待下载的 FLV-1不对应。
然后, 在步骤 Sill '中, 用户终端 10根据在步骤 S110,中获取到的 一个或多个对应 URL, 确定其中对应文件与本用户终端 10当前正在请 求下载的 FLV-1的内容相同的一个或多个 URL为备选 URL。 由于前述 的, 内容提供商有可能对该 URL对应的 FLV-1文件的进行变更的原因, 如果用户终端 10不对 S110,中获取到的 URL的有效性进行验证, 那么 可能会导致根据该 URL的文件与当前请求的 FLV-1文件不同。 在本实 施例中, 用户终端 10 确定多媒体服务器 20,与 20"含有与当前请求的 FLV-1相同内容的文件, 并确定相应的 URL为备选 URL。 在一个实施 例中, 用户终端 10可以根据该一个或多个 URL与 FLV-1在多媒体服务 器 20上的 URL下载对应文件中一定数量的相同位置的数据, 并判断其 下载的数据是否相同, 以此判断该一个或多个 URL对应的文件是否与 FLV-1对应, 继而判断该一个或多个 URL的有效性。 本领域技术人员应 明白, 用户终端 10验证该一个或多个 URL的有效性的方法是多种多样 的, 并不受所举的实施例所限。
接着, 在步骤 S12,中, 用户终端 10根据在步骤 Sir中获取到的包 含与 FLV-1相同的 Flash视频的多媒体服务器 20,与 20"的备选 URL,同 时从多媒体服务器 20,与 20"处下载 FLV-1 , 如图 Ί中的路径 D,所示。 同时, 用户终端 10也可以根据步骤 S10,中获得的 FLV-1在多媒体服务 器 20上的 URL,从多媒体服务器 20上下载 FLV-1中没有从多媒体服务 器 20,与 20"下载的部分, 如图 3中的路径 D所示。 如此而来, 从多个 网络资源处同时下载 FLV-1大大地加快了下载 FLV-1的速度。 最后, 从 多媒体服务器 20上下载的数据与从多媒体服务器 20,与 20"下载的数据 组合成完整的 FLV-1文件。
在一个优选的实施例中, 用户终端 10在下载 FLV-1文件的过程中, 在步骤 S13,里,向第一网络服务器 30,汇报当前下载 FLV-1的状态信息, 其中, 优选的, 状态信息包括用户终端 10根据与 FLV-1在多媒体服务 器 20上的 URL对应的一个或多个对应 URL和 /或 FLV-1在多媒体服务 器 20上 URL进行下载的状态, 和 /或 FLV-1的 MD5校验码。
而后, 在步骤 S33,中, 第一网络服务器 30,接收到用户终端 10在下 载 FLV- 1的过程中汇报来的当前下载 FLV-1的状态信息,其中,优选的, 状态信息包括用户终端 10根据上述与 FLV-1在多媒体服务器 20上的 URL对应的一个或多个对应 URL和 /或 FLV-1在多媒体服务器 20上 URL 进行下载的状态, 和 /或 FLV-1的 MD5校验码。
接着, 在步骤 S34,中, 第一网络服务器 30,根据用户终端 10汇报来 的备选 URL和 /或 FLV-1在多媒体服务器 20上 URL进行下载的状态, 创建或更新与 FLV-1在多媒体服务器 20上的 URL地址对应的 URL。具 体的, 在用户终端 10是在某个 URL上第一个下载该文件的用户时, 用 户终端 10根据 FLV-1在多媒体服务器 20上的 URL地址下载该 FLV-1 , 并向第一网络服务器 30,提供了该 URL与 FLV-1文件的 MD5校验码, 第一网络服务器 30,将 MD5校验码相同的所有 URL相关联; 而当前述 的, 某内容提供商更改其 URL对应的 FLV-1文件, 导致该 URL对应的 FLV-1文件已经失效, 用户终端 10根据该 URL无法下载 FLV-1时, 用 户终端 10将该 URL已经失效的状态告知第一网络服务器 30,, 第一网 络服务器 30,则将删掉该失效 URL与其他 URL的关联关系。 以上从系统方法的角度对本发明的具体实施例进行详述。 第三实施例
图 9为根据本发明再一个具体实施例, 用户终端 10中将 Flash视频 从网絡上下载到本用户终端的下载装置的框图。 图 10是根据本发明再 一个具体实施例, 用户终端 10在第一网络服务器 30的辅助下获取该多 媒体内容在多媒体服务器 20上的 URL所对应的内容标识信息的装置的 框图。 图 11是根据本发明再一个具体实施例, 用户终端 10根据备选内 容标识信息, 在第二网络服务器 40 的辅助下获取包含备选内容标识信 息对应的内容的分片的其它用户终端节点的相关信息的装置的框图。 下 面参照图 1, 图 3 , 图 9至图 11 , 对本发明的一个具体实施例进行详述。
如图 1所示, 用户 1使用用户终端 10下载一个 Flash视频, 互联网 上的内容提供商 2的一个 HTTP服务器 20以 FLV文件的形式向互联网 用户提供该 Flash视频, 其文件名为 FLV-1。 用户 1的用户终端 10的互 联网浏览器加载了 FLV-1所属的内容提供商的 Flash播放器 101 ,该 Flash 播放器 101以例如活动脚本的方式被设置为可以向该 FLV-1发出例如基 于 HTTP的下载请求, 该下载请求中包含该 FLV- 1在多媒体服务器 20 上的 URL信息。 但是, FLV-1在该内容提供商的多媒体服务器 20上的 URL地址是隐藏。 本领域一般技术人员可以明白, 本发明并不受该场景 所限, 其同样可以适用于内容提供商提供地址信息隐藏的其他类型多媒 体内容, 用户通过其他方式下载该地址信息隐藏的多媒体内容的情形。
本实施例中, 如图 9所示, 用户终端 10 包含用于将待下载的多媒 体内容从网络上下载到本用户终端的下载装置 100,其中,下载装置 100 包括地址信息获取装置 1001, 网络资源获取装置 1002与内容下载装置 1003。 网络资源获取装置 1002进一步包括内容标识获取装置 10021 , 内 容标识确定装置 10022与节点信息获取装置 10023。
首先, 地址信息获取装置 1001在 Flash播放器 101获取处于多媒体 服务器 20上的 FLV-1 的过程中, 获取 FLV-1在多媒体服务器 20上的 URL0
具体的, 在一个实施例中, 用户终端 10同时运行着多个 Flash播放 器, 各个 Flash播放器都在请求其对应的 FLV文件并进行播放。 用户终 端 10 可以获取到这所有请求, 但是根据这些请求中是无法确定究竟哪 个一个是对应于 Flash播放器 101对 FLV-1的请求。由于各个 Flash播放 器在发出对 FLV文件的请求时, 会产生与该 Flash播放器对应的事件, 所以只要在各个 Flash播放器对相应 FLV的各个请求中找到与 Flash播 放器 101产生的事件相应的那个请求, 就可以确定该请求为 Flash播放 器 101发出的对 FLV-1的请求。
在本实施例中, 地址信息获取装置 1001 进一步包括第一获取装置 10011 , 第一确定装置 10012与第二获取装置 10013 (图中均未示出)。 在 Flash播放器 101对处于多媒体服务器 20上的 FLV-1文件进行请求时, 第一获取装置 10011在加载着 Flash播放器 101的互联网浏览器的 URL MON层获取各个 Flash播放器发出的对一个或多个 FLV文件的对应请 求, 并获取由 Flash播放器 101发出对 FLV-1的请求所产生的事件的相 关信息,其中,上述对一个或多个 FLV的对应请求包括对 FLV-1的请求, 该对 FLV-1的请求包含 FLV-1在多媒体服务器 20上的 URL信息。而后, 第一确定装置 10012将确定获取到的一个或多个请求中与获取到的事件 的相关信息相关联的那个请求为关联请求。 接着, 第二获取装置 10013 根据所述关联请求, 获取所述 Flash视频在所述预定的多媒体服务器上 的 URL信息。
在另一个实施例中,用户终端 10同时只运行着该 Flash播放器 101 , 该播放器 100对处于多媒体服务器 20上的 FLV- 1文件进行请求。 那么 地址信息获取装置 1001在加载着 Flash播放器 101 的互联网浏览器的
URL MON层获取当时发出的唯 个 Flash播放器发出的请求,从该请 求中获取到 FLV-1在多媒体服务器 20上的 URL。
本领域一般技术人员可以明白, 地址信息获取装置 1001 可以采用 其他方式获取 Flash播放器 101发出对 FLV-1文件的基于 HTTP的请求, 例如采用数据包嗅探 ( Sniff)技术, 或对网卡发出的数据包进行抓包过 滤。 具体的获取手段不胜列举, 但是都处于本发明的保护范围之内。
在获取到 FLV-1在多媒体服务器 20上的 URL后, 网络资源获取装 置 1002根据 FLV-1在多媒体服务器 20上的 URL,获取多个包含与 FLV-1 相同的 Flash视频的网络资源的相关信息。 其中, 在本实施例中, 该多 个包含与 FLV-1相同的 Flash视频的网络资源包括其它用户终端节点和 / 或多媒体服务器 20。
在一个优选的实施例中, 用户终端 10在第一网络服务器 30与第二 网络服务器 40的辅助下, 获取多个拥有与 FLV-1相同视频内容的文件 的其他用户终端的信息。 如图 3所示, 用户终端 10通过互联网与第一 网络服务器 30与第二网络服务器 40逻辑相连, 并且可以通过互联网与 多个拥有与 FLV-1相同视频内容的文件的其他用户终端进行通信。
在一个实施例中, 如图 10所示, 内容标识获取装置 10021在第一 网络服务器 30 的辅助下获取一个或多个与该 URL对应的内容标识信 息。内容标识获取装置 10021进一步包括地址信息发送装置 100211与内 容标识接收装置 100212。 第一网络服务器 30的用于辅助用户终端将待 下载的多媒体内容从网络上高速下载到所述用户终端的辅助下载装置 300包括地址信息接收装置 3001, 内容信息获取装置 3002与内容信息 提供装置 3003。
首先, 地址信息发送装置 100211将地址信息获取装置 1001获取到 的 FLV-1在多媒体服务器 20上的 URL发送给第一网络服务器 30。
随后, 第一网络服务器 30的辅助下载装置 300的地址信息接收装 置 3001接收到来自用户终端 10的 FLV- 1在多媒体服务器 20上的 URL。
而后, 内容信息获取装置 3002根据 FLV-1在多媒体服务器 20上的 URL, 获取一个或多个与该 URL对应的内容标识信息。 具体的, 该内 容标识信息与 FLV-1所对应的 Flash视频内容对应,例如,可以是该 FLV-1 文件的 MD5校验码。 由于 MD5校验码对于文件内容不同的文件是不同 的, 所以可以用来唯一地对应 Flash视频文件。 在一个优选的实施例中 , 根据该 FLV-1在多媒体服务器 20上的 URL下载 FLV- 1的用户终端将该 FLV-1文件的 URL与 MD5校验码反馈给第一网络服务器 30, 第一网络 服务器 30在其本地以例如数据库的方式维护该 URL与该 MD5校验码 的对应关系。 那么, 内容信息获取装置 3002 查询其维护的所有对应关 系 , 获取到与 FLV-1在多媒体服务器 20上的 URL对应的这一 MD5校 验码。 但是, 值得注意的是, 由于该 URL对应的内容提供商有可能对 该 URL对应的 FLV-1文件的进行修改或替换, 就会导致 FLV-1文件的 MD5校验码发生变化, 而第一网络服务器 30不能实时地改变其维护的 该 URL对应的 MD5校验码,所以该 URL对应的 MD5校验码可能是一 个, 也可能包括多个; 并且这一个或多个 MD5校验码可能包含与当前 待下载的 FLV- 1对应的 MD5校验码,也可能全都与当前待下载的 FLV-1 不对应。
可选的 ,另外的网络服务器维护了 URL与 MD5校验码的对应关系 , 则内容信息获取装置 3002通过向该另外的网络服务器查询, 获取到与 FLV-1在多媒体服务器 20上的 URL对应的 MD5校验码。
接着, 内容信息提供装置 3003将内容信息获取装置 3002获取到的 FLV-1在多媒体服务器 20上的 U L对应的一个或多个 MD5校验码发送 给用户终端 10。
而后, 用户终端 10的下载装置 100的内容标识接收装置 100212接 收到来自第一网络服务器 30的与 FLV-1在多媒体服务器 20上的 URL 对应的一个或多个 MD5校验码。
以上的用户终端 10与第一网络服务器 30交互的过程如图 3中的路 径 A所示。
在一个变化的实施例中, 用户终端 10 在本次下载之前曾经根据该 FLV-1在多媒体服务器 20上的 URL下载过该 FLV-1文件, 并获取到了 该 FLV-1文件的 MD5校验码, 同时以例如映射表的方式保存了当时下 载时的该 URL与该 FLV-1文件的 MD5 校验码的对应关系,那么, 内容 标识获取装置 10021可以查询其本地维护的 URL与 MD5校验码对应关 系, 得到与该 FLV-1在多媒体服务器 20上的 URL相关的 MD5校验码。 但是, 值得注意的是, 由于该 URL对应的内容提供商有可能对该 URL 对应的 FLV-1 文件的进行修改或替换, 就会导致该 URL对应的 FLV-1 文件的 MD5校验码发生变化。 使得用户终端 10本地保存的 MD5校验 码已经与当前的 FLV-1不对应了。
本领域技术人员可以明白, 内容标识获取装置 10021获取 FLV-1在 多媒体服务器 20上的 URL所对应的 MD5校验码的方法并不限于以上 所举的两个示例。
然后, 内容标识确定装置 10022根据内容标识获取装置 10021获取 到的一个或多个 MD5校验码, 确定其中对应 FLV内容与本用户终端 10 当前正在请求下载的 FLV-1的内容相同的 MD5校验码为备选 MD5校验 码。 由于前述的, 内容提供商有可能对该 URL对应的 FLV-1文件的进 行变更的原因, 如果用户终端 10不对内容标识获取装置 10021获取到 的 MD5校验码的有效性进行验证,那么可能会导致根据该 MD5校验码 下载的 FLV文件与当前请求的 FLV-1文件不同。
继而, 节点信息获取装置 10023获取包含备选 MD5校验码对应的 文件分片的其它用户终端节点的相关信息。
在一个实施例中, 如图 11所示, 节点信息获取装置 10023在第二网 络服务器 40 的辅助下获取节点信息。 其中, 节点信息获取装置 10023 包括内容标识发送装置 100231与节点信息接收装置 100232。 第二网络 服务器 40 的用于辅助用户终端将待下载的多媒体内容从网络上高速下 载到所述用户终端的辅助下载装置 400 包括接收装置 4001, 获取装置 4002与发送装置 4003。
具体的, 内容标识发送装置 100231 将在内容标识确定装置 10022 确定的备选 MD5校验码和本用户终端的节点信息发送给第二网络服务 器 40。
接着, 第二网络服务器 40的辅助下载装置 400的接收装置 4001接 收来自用户终端 10的备选 MD5校验码及用户终端 10的节点信息, 其 中备选 MD5校验码对应的文件与待下载的 FLV-1文件具有相同的文件 内容。
随后, 获取装置 4002根据备选 MD5校验码, 获取拥有备选 MD5 校验码对应的文件的分片的其它用户终端节点的相关信息。 具体的, 第 二网络服务器 40 以数据库或映射表的方式维护所有正在下载或已经下 载了该 MD5校验码对应的文件的分片的其他用户终端节点的 IP地址等 信息, 并在 据备选 MD5校验码获取到含有该备选 MD5校验码对应的 文件的其他用户终端 10,与 10"的 IP地址信息。
而后, 发送装置 4003将拥有备选 MD5校验码对应的文件的分片的 用户终端 10,与 10"的 IP地址信息发送回用户终端 10。
用户终端 10的节点信息接收装置 100232接收到来自第二网络服务 器 40的包含与待下载的 FLV-1文件具有相同的文件的分片的用户终端 10'与 10"的相关信息。
以上的用户终端 10与第二网络服务器 40交互的过程如图 3中的路 径 B所示。
在另一个实施例中, 用户终端 10与与其他包含备选 MD5校验码对 应的文件分片的其它用户终端节点同处于一个分布式哈希表 (Distributed Hash Table, 简称 DHT)网络中, 那么各个用户终端负责一个小范围的路 由, 并负责存储一小部分数据, 从而实现整个 DHT网络的寻址和存储。 在这种情况下, 节点信息获取装置 10023可以不依赖于一个第二网络服 务器, 自行在 DHT网络中寻找到下载备选 MD5校验码对应的文件的其 他用户终端, 获取这些用户终端的节点相关信息。 具体的基于 DHT技 术的获取其他用户终端信息的方案并不是本发明所关注的, 本领域技术 人员可以根据现有技术实现该功能。
本领域技术人员还可以明白, 节点信息获取装置 10023获取包含备 选 MD5校验码对应的文件分片的其它用户终端节点的相关信息的方法 并不限于以上所举的两个示例。
接着, 内容下载装置 1003根据在网络资源获取装置 1002获取到的 多个包含与 FLV-1相同的 Flash视频的分片的其他用户终端节点的相关 信息, 基于点到点技术同肘从该用户终端 10,与 10"处下载 FLV-1 , 如图 3中的路径 C所示。 具体的基于点到点技术进行数据下载的技术方案并 不是本发明所关注的, 本领域技术人员可以根据现有技术实现该功能。 同时, 内容下载装置 1003也可以根据地址信息获取装置 1001中获得的 FLV-1在多媒体服务器 20上的 URL, 从多媒体服务器 20上下载 FLV-1 中没有基于点到点技术从用户终端 10,和 10"下载的部分,如图 3中的路 径 D所示。 如此而来, 从多个网络资源处同时下载 FLV-1大大地加快了 下载 FLV-1的速度。 最后, 内容下载装置 1003将从多媒体服务器 20上 下载的数据与基于点到点技术下载的数据组合成完整的 FLV-1文件。
在一个优选的实施例中,用户终端 10的下载装置 100还包括汇报装 置 1004。 第一网络服务器 30的辅助下载装置 300还包括第一汇报接收 装置 3004和内容标识管理装置 3005。
汇报装置 1004在下载 FLV-1文件的过程中, 向第一网络服务器 30 汇报当前下载 FLV-1的状态信息, 其中, 优选的, 状态信息包括用户终 端 10下载的 FLV-1文件的 MD5校验码。
而后, 第一网络服务器 30的第一汇报接收装置 3004接收到用户终 端 10在下载 FLV-1的过程中汇报来的当前下载 FLV-1的状态信息, 其 中, 优选的, 状态信息包括用户终端 10下载的 FLV-1文件的 MD5校验 码。
接着, 内容标识管理装置 3005 根据用户终端 10 汇报来的下载的 FLV-1文件的 MD5校验码, 创建或更新与 FLV-1在多媒体服务器 20上 的 URL地址对应的 MD5校验码。 具体的, 在用户终端 10是第一个下 载该文件的用户时, 用户终端 10根据 FLV-1在多媒体服务器 20上的 U L地址下载该 FLV- 1 , 并向第一网络服务器 30提供了 FLV-1文件的 MD5校验码, 则内容标识管理装置 3005使用例如数据库等技术创建该 URL地址与该 MD5校验码的对应关系; 而当前述的, 该 U L对应的内 容提供商更改该 U L对应的 FLV-1文件 ,继而导致该 URL对应的 FLV-1 文件的 MD5校验码发生变化后, 用户终端 10根据该 URL下载了更新 后的 FLV-1 , 并向第一网络服务器 30提供了新的 FLV-1文件的 MD5校 验码, 则内容标识管理装置 3005更新与该 FLV- 1文件在多媒体服务器 20上的 URL地址所对应的 MD5校验码为新的 FLV- 1文件的 MD5校验 码。
以上描述了用户终端 10的下载装置 100获取 FLV-1在多媒体服务器 20上的 URL, 并获取到该 URL对应的 MD5校验码, 才艮据该 MD 5校验 码获取拥有该 MD5校验码对应的文件的分片的其他用户终端, 并基于 点到点技术从该其他用户终端处下载 FLV-1的技术方案。 下面将描述根 据本发明又一方面的下载 Flash视频的技术方案。 第四实施例
图 12为才艮据本发明又一个具体实施例, 在用户终端 10 中将 Flash 视频从网絡上下载到本用户终端的下载装置的框图。 图 13 是根据本发 明又一个具体实施例, 用户终端 10在第一网络服务器 30,的辅助下获取 与所述 Flash视频相同的一个或多个文件的在其对应的多媒体服务器地 址信息的下载装置的框图。
与前述的第三实施例类似的, 如图 1所示, 用户 1使用用户终端 10 下载一个 Flash视频, 互联网上的内容提供商 2的一个 HTTP服务器 20 以 FLV文件的形式向互联网用户提供该 Flash视频,其文件名为 FLV-1。 用户 1的用户终端 10的互联网浏览器加载了 FLV-1所属的内容提供商 的 Flash播放器 101 , 该 Flash播放器 101以例如活动脚本的方式被设置 为可以向该 FLV-1发出例如基于 HTTP的下载请求, 该下载请求中包含 该 FLV-1在多媒体服务器 20上的 URL信息。 但是, FLV-1在该内容提 供商的多媒体服务器 20上的 URL地址是隐藏。 本领域一般技术人员可 以明白, 本发明并不受该场景所限, 其同样可以适用于内容提供商提供 地址信息隐藏的其他类型多媒体内容, 用户通过其他方式下载该地址信 息隐藏的多媒体内容的情形。
本实施例中, 用户终端 10 包含用于将待下载的多媒体内容从网络 上下载到本用户终端的下载装置 100,, 其中, 下载装置 100,包括地址信 息获取装置 1001,, 网络资源获取装置 1002,与内容下载装置 1003,。 网 絡资源获取装置 1002,进一步包括内容地址获取装置 10021,与内容地址 确定装置 10022,。
如图 12所示, 首先, 地址信息获取装置 1001,在 Flash播放器 101 获取处于多媒体服务器 20上的 FLV-1的过程中, 获取 FLV-1在多媒体 服务器 20上的 U L。 具体的获取过程与以上第三实施例中地址信息获 取装置 1001类似, 在此不再赘述。
在获取到 FLV-1在多媒体服务器 20上的 URL后, 网络资源获取装 置 1002,根据 FLV-1在多媒体服务器 20上的 URL,获取多个包含与 FLV- 1 相同的 Flash视频的网络资源的相关信息。 其中, 在本实施例中, 该多 个包含与 FLV-1相同的 Flash视频的网络资源包括其它多媒体服务器和 / 或多媒体服务器 20。
在一个优选的实施例中, 内容地址获取装置 10021,在第一网络服务 器 30,的辅助下, 获取多个拥有与 FLV-1相同视频内容的文件的其它多 媒体服务器的信息。 如图 7所示, 用户终端 10通过互联网与第一网络 服务器 30,逻辑相连, 并且可以通过互联网与多个拥有与 FLV-1相同视 频内容的文件的其它多媒体服务器进行通信。
优选地,如图 13所示, 内容地址获取装置 10021,进一步包括地址信 息发送装置 10021 Γ与内容地址接收装置 100212,。 第一网络服务器 30, 的用于辅助用户终端将待下载的多媒体内容从网络上高速下载到所述 用户终端的辅助下载装置 300,包括地址信息接收装置 300Γ , 内容信息 获取装置 3002,与内容信息提供装置 3003'。
首先, 地址信息发送装置 100211,将在地址信息获取装置 1001,中获 取到的 FLV-1在多媒体服务器 20上的 URL发送给第一网络服务器 30,。
随后, 第一网络服务器 30,的地址信息接收装置 3001,接收到来自用 户终端 10的 FLV-1在多媒体服务器 20上的 URL。
而后, 内容信息获取装置 3002,根据 FLV-1在多媒体服务器 20上的 URL, 获取一个或多个与该 URL对应的内容地址信息, 例如, 一个或 多个文件的在相应的服务器上的 URL。 在一个优选的实施例中, 一个用 户终端已经根据该 FLV-1在多媒体服务器 20上的 URL下载了 FLV-1 , 并已将该 FLV-1 文件的 MD5校验码及该 URL反馈给第一网络服务器 30; 而其他的一个或多个用户终端也已经根据一个或多个相同内容的 FLV视频文件在相应服务器的 URL下载了该文件, 并将该相同内容的 文件的唯一标识信息例如 MD5校验码以及一个或多个对应的 URL反馈 给第一网络服务器 30。则第一网络服务器 30根据相同的唯一标识信息, 在其本地以例如数据库的方式维护该 FLV-1 在多媒体服务器 20 上的 URL与一个或多个相同内容的 FLV视频文件在相应服务器上的一个或 多个 URL的对应关系。 那么, 内容信息获取装置 3002,查询其维护的所 有对应关系, 获取到与 FLV-1在多媒体服务器 20上的 URL对应的一个 或多个 URL。 但是, 值得注意的是, 由于某个对应 URL的相应的内容 提供商有可能对 URL对应的文件进行更改, 使得该对应 URL实际上已 经与 FLV-1 不对应了, 但是第一网络服务器 30,不能自动随之实时地更 新该 URL与其其对应 URL的对应状态。所以, 内容信息获取装置 3002, 获取到的该一个或多个对应 URL可能包含与当前待下载的 FLV-1对应 的一个或多个 URL, 也可能全都与当前待下载的 FLV-1不对应。
在另一个实施例中,另外的网络服务器维护了该 URL与一个或多个 对应 URL的对应关系, 则内容信息获取装置 3002,通过向该另外的网络 服务器查询, 获取到与 FLV-1在多媒体服务器 20上的 U L对应的一个 或多个对应 URL。
接着, 内容信息提供装置 3003,将步骤内容信息获取装置 3002'获取 到的 FLV-1在多媒体服务器 20上的 URL对应的一个或多个对应 URL 发送给用户终端 10。
而后, 用户终端 10的内容地址接收装置 100212,接收到 FLV- 1在多 媒体服务器 20上的 URL对应的一个或多个对应 URL。
以上的用户终端 10与第一网络服务器 30交互的过程如图 7中的路 径 A,所示。
在一个变化的实施例中, 用户终端 10 在本次下载之前曾经根据该 FLV-1在多媒体服务器 20上的 URL, 以及一个或多个相同内容的 FLV 视频文件在相应服务器的 URL, 下载过该 FLV-1文件, 那么, 内容地址 获取装置 10021,可以查询其本地以例如映射表等方式维护的该 FLV-1在 多媒体服务器 20上的 URL与其他对应 URL的对应关系,得到与该 FLV-1 在多媒体服务器 20上的 U L对应的一个或多个对应 URL。 但是, 值得 注意的是, 由于某个对应 U L的相应的内容提供商有可能对 URL对应 的文件进行更改, 使得该对应 URL实际上已经与 FLV-1 不对应了, 但 是用户终端 10不能自动随之实时地更新该 URL与其对应 URL的对应 状态。 所以, 内容地址获取装置 10021,获取到的该一个或多个对应 URL 可能包含与当前待下载的 FLV-1对应的一个或多个 URL,也可能全都与 当前待下载的 FLV-1不对应。 然后, 内容地址确定装置 10022,根据内容地址获取装置 10021,中获 取到的一个或多个对应 URL, 确定其中对应文件与本用户终端 10当前 正在请求下载的 FLV-1的内容相同的一个或多个 URL为备选 URL。 由 于前述的, 内容提供商有可能对该 URL对应的 FLV-1文件的进行变更 的原因, 如果用户终端 10不对内容地址获取装置 10021,获取到的 URL 的有效性进行验证, 那么可能会导致根据该 URL 的文件与当前请求的 FLV-1文件不同。 在本实施例中, 内容地址确定装置 10022,确定多媒体 服务器 20,与 20"含有与当前请求的 FLV-1相同内容的文件,并确定相应 的 URL为备选 URL。
接着, 内容下载装置 1003,根据网络资源获取装置 1002,获取到的包 含与 FLV-1相同的 Flash视频的多媒体服务器 20,与 20"的备选 URL,同 时从多媒体服务器 20,与 20"处下载 FLV- 1, 如图 Ί中的路径 D,所示。 同时, 内容下载装置 1003,也可以根据地址信息获取装置 1001,获得的 FLV-1在多媒体服务器 20上的 URL, 从多媒体服务器 20上下载 FLV-1 中没有从多媒体服务器 20,与 20"下载的部分, 如图 7中的路径 D所示。 如此而来, 从多个网络资源处同时下载 FLV-1大大地加快了下载 FLV-1 的速度。 最后, 从多媒体服务器 20上下载的数据与从多媒体服务器 20, 与 20"下载的数据组合成完整的 FLV- 1文件。
在一个优选的实施例中,在一个优选的实施例中, 用户终端 10的下 载装置 100还包括汇报装置 1004,。 第一网络服务器 30的辅助下载装置 300还包括第二汇报接收装置 3004,和内容地址管理装置 3005,。
用户终端 10在下载 FLV-1文件的过程中, 汇报装置 1004,向第一网 络服务器 30,汇报当前下载 FLV-1 的状态信息, 其中, 优选的, 状态信 息包括用户终端 10根据与 FLV-1在多媒体服务器 20上的 URL对应的 一个或多个对应 URL和 /或 FLV-1在多媒体服务器 20上 URL进行下载 的状态, 和 /或 FLV-1的 MD5校验码。
而后, 第二汇报接收装置 3004,接收到用户终端 10在下载 FLV-1的 过程中汇报来的当前下载 FLV-1的状态信息, 其中, 优选的, 状态信息 包括用户终端 10根据上述与 FLV-1在多媒体服务器 20上的 URL对应 的一个或多个对应 URL和 /或 FLV-1在多媒体服务器 20上 URL进行下 载的状态, 和 /或 FLV-1的 MD5校验码。
接着, 内容地址管理装置 3005,根据用户终端 10汇报来的备选 URL 和 /或 FLV-1在多媒体服务器 20上 URL进行下载的状态,创建或更新与 FLV-1在多媒体服务器 20上的 URL地址对应的 URL。 具体的, 在用户 终端 10是第一个在某个 URL上下载该文件的用户时, 用户终端 10向 第一网絡服务器 30,提供了该 URL与 FLV-1文件的 MD5校验码, 内容 地址管理装置 3005,将 MD5校验码相同的所有 URL相关联; 而当前述 的, 某内容提供商更改其 URL对应的 FLV-1文件, 导致该 URL对应的 FLV-1文件已经失效, 用户终端 10根据该 URL无法下载 FLV-1时, 用 户终端 10将该 URL已经失效的状态告知第一网络服务器 30,, 内容地 址管理装置 3005,则将删掉该失效 U L与其他 URL的关联关系。
尽管在附图和前述的描述中详细阐明和描述了本发明, 应认为该阐 明和描述是说明性的和示例性的, 而不是限制性的; 本发明不限于所上 述实施方式。
那些本技术领域的一般技术人员可以通过研究说明书、 公开的内容 及附图和所附的权利要求书, 理解和实施对披露的实施方式的其他改 变。 在权利要求中, 措词 "包括,, 不排除其他的元素和步骤, 并且措辞 "一个,, 不排除复数。 在发明的实际应用中, 一个零件可能执行权利要 求中所引用的多个技术特征的功能。 权利要求中的任何附图标记不应理 解为对范围的限制。

Claims

权 利 要 求 书
1.一种在用户终端中将待下载的多媒体内容从网络上下载到本用户 终端的下载方法, 其中, 预定的多媒体服务器包含所述待下载的多媒体 内容, 所述待下载的多媒体内容在所述预定的多媒体服务器上的地址信 息是隐藏的, 该下载方法包括如下步骤:
1.在所述用户终端的多媒体播放器获取处于所述预定的多媒体服务 器上的所述待下载的多媒体内容的过程中, 获取所述待下载的多媒体内 容在所述预定的多媒体服务器上的地址信息;
ii. 根据所述待下载的多媒体内容在所述预定的多媒体服务器上 的地址信息, 获取多个包含与所述待下载的多媒体内容相同的多媒体内 容的网络资源的相关信息;
iii. 根据所述多个网络资源的相关信息, 下载所述待下载的多媒体 内容。
2.根据权利要求 1所述的下载方法, 其特征在于, 所述步骤 i还包 括:
-在所述多媒体播放器对处于所述预定的多媒体服务器上的所述待 下载的多媒体内容的进行请求时, 获取所述用户终端发出的对一个或多 个内容的对应请求, 并获取由所述多媒体播放器发出对所述待下载的多 媒体内容的请求所产生的事件的相关信息, 其中, 所述对一个或多个内 容的对应请求包括对所述待下载的多媒体内容的请求, 该对所述待下载 的多媒体内容的请求包含所述待下载的多媒体内容在所述预定的多媒 体服务器上的地址信息;
-确定获取到的所述一个或多个请求中与获取到的所述事件的相关 信息相关联的那个请求为关联请求;
-根据所述关联请求, 获取所述待下载的多媒体内容在所述预定的 多媒体服务器上的地址信息。
3.根据权利要求 1或 2所述的下载方法, 其特征在于, 所述步骤 ii 进一步包括'. HI 根据所述待下载的多媒体内容在所述预定的多媒体服务器上的 地址信息, 获取一个或多个与所述待下载的多媒体内容在所述预定的多 媒体服务器上的地址信息对应的内容标识信息;
ii2.根据所述一个或多个内容标识信息,确定各个内容标识信息中的 对应内容与所述待下载的多媒体内容相同的内容标识信息为备选内容 标识信息;
H3. 根据所述备选内容标识信息,获取包含备选内容标识信息对应 的内容的分片的其它用户终端节点的相关信息;
并且, 所述步骤 iii还包括:
-根据所述其它用户终端节点的相关信息, 基于点到点技术从所述 其它用户终端节点处下载所述待下载的多媒体内容。
4.根据权利要求 3所述的方法, 其特征在于, 所述步骤 ii3包括:
-将所述备选内容标识信息与本用户终端的节点相关信息发送给预 定的第二网絡服务器;
-接收所述第二网络服务器发送来的, 包含与所述待下载的多媒体 内容相同的内容的分片的其它用户终端节点的相关信息。
5.根据权利要求 3或 4所述的下载方法, 其特征在于, 所述网络资 源包括所述其它用户终端节点和 /或所述预定的多媒体服务器。
6.根据权利要求 3所述的下载方法,其特征在于,所述步骤 iil包括: -将所述待下载的多媒体内容在所述预定的多媒体服务器上的地址 信息发送给预定的第一网络服务器;
-接收来自所述第一网络服务器的一个或多个与所述待下载的多媒 体内容在所述预定的多媒体服务器上的地址信息对应的内容标识信息。
7.根据权利要求 3所述的下栽方法, 其特征在于, 所述方法还包括: v.在下载所述待下载的多媒体内容的过程中, 向所述第一网络服务 器汇报当前获得所述待下载的多媒体内容的状态信息, 其中, 所述状态 信息包括所述待下载的多媒体内容的标识信息。
8.根据权利要求 1或 2所述的下载方法, 其特征在于, 所述步驟 ii 包括: iil, 根据所述待下载的多媒体内容在所述预定的多媒体服务器上 的地址信息, 获取一个或多个与所述待下载的多媒体内容在所述预定的 多媒体服务器上的地址信息相关的内容地址信息, 其中所述内容地址信 息包括其对应内容在相应内容服务器上的地址信息;
ϋ2' 根据所述一个或多个内容地址信息,确定所述各个内容地址信 息中的对应内容与所述待下载的多媒体内容相同的一个或多个内容地 址信息为备选内容地址信息;
并且, 所述步骤 iii还包括:
-根据所述一个或多个备选内容地址信息, 从对应的内容服务器上 下载所述待下载的多媒体内容。
9.根据权利要求 8所述的下载方法, 其特征在于, 所述网络资源包 括所述一个或多个备选内容地址信息对应的内容服务器和 /或所述预定 的多媒体服务器。
10. 根据权利要求 8所述的下载方法, 其特征在于, 所述步骤 iil, 还包括:
-将所述待下载的多媒体内容在所述预定的多媒体服务器上的地址 信息发送给预定的第一网络服务器;
-接收来自所述第一网络服务器的, 一个或多个与所述待下载的多 媒体内容在所述预定的多媒体服务器上的地址信息相关的内容地址信 白
11. 根据权利要求 8所述的下载方法, 其特征在于, 所述下载方法 还包括:
v.在下载所述待下载的多媒体内容的过程中, 向所述第一网络服务 器汇报当前获得所述待下载的多媒体内容的状态信息, 其中, 所述状态 信息包括所述用户终端根据所述一个或多个内容地址信息和 /或所述待 下载的多媒体内容在所述预定的多媒体服务器上的地址信息进行下载 的状态。 ―
12. 一种在第一网络服务器中用于辅助用户终端将待下载的多媒 体内容从网络上高速下载到所述用户终端的辅助下载方法, 其中, 预定 的多媒体服务器包含所述待下载的多媒体内容, 所述待下载的多媒体内 容在所述预定的多媒体服务器上的地址信息是隐藏的, 该辅助下载方法 包括如下步骤:
0.接收来自所述用户终端的所述待下载的多媒体内容在所述预定的 多媒体服务器上的地址信息;
p.根据所述待下载的多媒体内容在所述预定的多媒体服务器上的地 址信息, 获取所述多媒体内容的相关信息;
q.将所述多媒体内容的相关信息提供给所述用户终端。
13. 根据权利要求 12所述的辅助下载方法, 其特征在于, 所述步 骤 p包括:
-根据所述待下载的多媒体内容在所述预定的多媒体服务器上的地 址信息 , 获取一个或多个与所述待下载的多媒体内容在所述预定的多媒 体服务器上的地址信息对应的内容标识信息。
14. 根据权利要求 13所述的辅助下载方法, 其特征在于, 还包括: s.接收所述用户终端在所述待下载的多媒体内容的获取过程中汇报 来的当前获得所述待下载的多媒体内容的状态信息, 其中, 所述状态信 息包括所述用户终端下载的所述待下载的多媒体内容的标识信息;
t.根据所述用户终端汇报来的所述待下载的多媒体内容的标识信 息, 创建或更新与所述待下载的多媒体内容在所述预定的多媒体服务器 上的地址信息对应的内容标识信息。
15. 根据权利要求 12所述的辅助下载方法, 其特征在于, 所述步 骤 p包括:
-根据所述待下载的多媒体内容在所述预定的多媒体服务器上的地 址信息 , 获取一个或多个与所述待下载的多媒体内容在所述预定的多媒 体服务器上的地址信息对应的内容地址信息, 其中所述内容地址信息包 括其对应内容在相应内容服务器上的地址信息。
16. 根据权利要求 15所述的辅助下载方法, 其特征在于, 还包括: s,. 接收所述用户终端在所述待下载的多媒体内容的获取过程中 汇报来的当前获得所述待下载的多媒体内容的状态信息, 其中, 所述状 态信息包括所述用户终端根据所述一个或多个内容地址信息和 /或所述 待下载的多媒体内容在所述预定的多媒体服务器上的地址信息进行下 载的状态;
t,. 根据所述用户终端汇报来根据所述一个或多个内容地址信息 和 /或所述待下载的多媒体内容在所述预定的多媒体服务器上的地址信 息进行下载的状态, 创建或更新与所述待下载的多媒体内容在所述预定 的多媒体服务器上的地址信息对应的内容地址信息。
17. 一种在第二网络服务器中用于辅助用户终端将预定的多媒体 内容从网络上高速下载到所述用户终端的辅助下载方法, 其中, 预定的 多媒体服务器包含所述待下载的多媒体内容, 所述待下载的多媒体内容 在所述预定的多媒体服务器上的地址信息是隐藏的, 该辅助下载方法包 括如下步骤:
I.接收来自所述用户终端的备选内容标识信息和所述用户终端的节 点相关信息, 其中备选内容标识信息对应的内容与所述待下载的多媒体 内容相同;
II. 根据所述备选内容标识信息, 获取拥有备选内容标识信息对应 的内容的分片的其它用户终端节点的相关信息;
III. 将所述拥有备选内容标识信息对应的内容的分片的其它用户终 端节点的相关信息发送给所述用户终端。
18. 一种在用户终端中将待下载的多媒体内容从网络上下载到本 用户终端的下载装置, 其中, 预定的多媒体服务器包含所述待下载的多 媒体内容, 所述待下载的多媒体内容在所述预定的多媒体服务器上的地 址信息是隐藏的, 该下载装置包括:
-地址信息获取装置, 用于在所述用户终端的多媒体播放器获取处 于所述预定的多媒体服务器上的所述待下载的多媒体内容的过程中, 获 取所述待下载的多媒体内容在所述预定的多媒体服务器上的地址信息;
- 网络资源获取装置, 用于根据所述待下载的多媒体内容在所述预 定的多媒体服务器上的地址信息, 获取多个包含与所述待下载的多媒体 内容相同的多媒体内容的网络资源的相关信息; -下载装置, 用于才艮据所述多个网络资源的相关信息, 下载所述待 下载的多媒体内容。
19. 根据权利要求 18所述的下载装置, 其特征在于, 所述地址信 息获取装置包括:
-第一获取装置, 用于在所述多媒体播放器对处于所述预定的多媒 体服务器上的所述待下载的多媒体内容的进行请求时, 获取所述用户终 端发出的对一个或多个内容的对应请求, 并获取由所述多媒体播放器发 出对所述待下载的多媒体内容的请求所产生的事件的相关信息, 其中, 所述对一个或多个内容的对应请求包括对所述待下载的多媒体内容的 请求, 该对所述待下载的多媒体内容的请求包含所述待下载的多媒体内 容在所述预定的多媒体服务器上的地址信息;
- 第一确定装置, 用于确定获取到的所述一个或多个请求中与获取 到的所述事件的相关信息相关联的那个请求为关联请求;
-第二获取装置, 用于根据在所述关联请求, 获取所述待下载的多 媒体内容在所述预定的多媒体服务器上的地址信息。
20. 根据权利要求 18或 19所述的下载装置, 其特征在于, 所迷网 络资源获取装置进一步包括:
- 内容标识获取装置, 用于根据所述待下载的多媒体内容在所述预 定的多媒体服务器上的地址信息, 获取一个或多个与所述待下载的多媒 体内容在所述预定的多媒体服务器上的地址信息对应的内容标识信息;
- 内容标识确定装置, 用于才艮据所述一个或多个内容标识信息, 确 定各个内容标识信息中的对应内容与所述待下载的多媒体内容相同的 内容标识信息为备选内容标识信息;
-节点信息获取装置, 用于获取包含备选内容标识信息对应的内容 的分片的其它用户终端节点的相关信息;
并且, 所述下载装置还用于:
-根据所述其它用户终端节点的相关信息, 基于点到点技术从所述 其它用户终端节点处下载所述待下载的多媒体内容。
21. 根据权利要求 20所述的下载装置, 其特征在于, 所述节点信 息获取装置包括:
- 内容标识发送装置, 用于将所述备选内容标识信息与本用户终端 的节点相关信息发送给预定的第二网络服务器;
-节点信息接收装置, 用于接收所述第二网络服务器发送来的, 包 含与所述待下载的多媒体内容相同的内容的分片的其它用户终端节点 的相关信息。
22. 根据权利要求 20所述的下载装置, 其特征在于, 所述网络资 源包括所述其它用户终端节点和 /或所述预定的多媒体服务器。
23. 根据权利要求 20所述的下载装置, 其特征在于, 所述内容标 识获取装置包括:
-地址信息发送装置, 用于将所述待下载的多媒体内容在所述预定 的多媒体服务器上的地址信息发送给预定的第一网络服务器;
- 内容标识接收装置, 用于接收来自所述第一网络服务器的一个或 多个与所述待下载的多媒体内容在所述预定的多媒体服务器上的地址 信息对应的内容标识信息。
24. 根据权利要求 20所述的下载装置, 其特征在于, 还包括:
- 第一汇报装置, 用于在获取所述待下载的多媒体内容的过程中, 向所述第一网络服务器汇报当前获得所述待下载的多媒体内容的状态 信息, 其中, 所述状态信息包括所述待下载的多媒体内容的标识信息。
25. 根据权利要求 18或 19所述的下载装置, 其特征在于, 所述网 络资源获取装置包括:
- 内容地址获取装置, 用于根据所述待下载的多媒体内容在所述预 定的多媒体服务器上的地址信息, 获取一个或多个与所述待下载的多媒 体内容在所述预定的多媒体服务器上的地址信息相关的内容地址信息, 其中所述内容地址信息包括其对应内容在相应内容服务器上的地址信
- 内容地址确定装置, 用于根据所述一个或多个内容地址信息, 确 定所述各个内容地址信息中的对应内容与所述待下载的多媒体内容相 同的一个或多个内容地址信息为备选内容地址信息; 并且, 所述下载装置还用于:
-根据所述一个或多个备选内容地址信息, 从对应的内容服务器上 获取所述待下载的多媒体内容。
26. 根据权利要求 25所述的下载装置, 其特征在于, 所述网络资 源包括所述一个或多个备选内容地址信息对应的内容服务器和 /或所述 预定的多媒体服务器。
27. 根据权利要求 25所述的下载装置, 其特征在于, 所述内容地 址获取装置还包括:
-地址信息发送装置, 用于将所述待下载的多媒体内容在所述预定 的多媒体服务器上的地址信息发送给预定的第一网络服务器;
- 内容地址接收装置, 用于接收来自所述第一网络服务器的, 一个 或多个与所述待下载的多媒体内容在所述预定的多媒体服务器上的地 址信息相关的内容地址信息。
28. 根据权利要求 25所述的下载装置, 其特征在于, 还包括:
- 第二汇报装置, 用于在获取所述待下载的多媒体内容的过程中, 向所述第一网络服务器汇报当前获得所述待下载的多媒体内容的状态 信息, 其中, 所述状态信息包括所述用户终端 所述一个或多个内容 地址信息和 /或所述待下载的多媒体内容在所述预定的多媒体服务器上 的地址信息进行下载的状态。
29. 一种在第一网络服务器中用于辅助用户终端将待下载的多媒 体内容从网络上高速下载到所述用户终端的辅助下载装置, 其中, 预定 的多媒体服务器包含所述待下载的多媒体内容, 所述待下载的多媒体内 容在所述预定的多媒体服务器上的地址信息是隐藏的 , 该辅助下载装置 包括:
-地址信息接收装置, 用于接收来自所述用户终端的所述待下载的 多媒体内容在所述预定的多媒体服务器上的地址信息;
- 内容信息获取装置, 用于根据所述待下载的多媒体内容在所述预 定的多媒体服务器上的地址信息, 获取所述多媒体内容的相关信息;
- 内容信息提供装置, 用于将所述多媒体内容的相关信息提供给所 述用户终端。
30. 根据权利要求 29所述的辅助下载装置, 其特征在于, 所述内 容信息获取装置还用于:
根据所述待下载的多媒体内容在所述预定的多媒体服务器上的地 址信息, 获取一个或多个与所述待下载的多媒体内容在所述预定的多媒 体服务器上的地址信息对应的内容标识信息。
31. 根据权利要求 30所述的辅助下载装置, 其特征在于, 还包括: - 第一汇报接收装置, 用于接收所述用户终端在所述待下载的多媒 体内容的获取过程中汇报来的当前获得所述待下载的多媒体内容的状 态信息, 其中, 所述状态信息包括所述用户终端下载的所述待下载的多 媒体内容的标识信息;
- 内容标识管理装置, 用于根据所述用户终端汇报来的所述待下载 的多媒体内容的标识信息, 创建或更新与所述待下载的多媒体内容在所 述预定的多媒体服务器上的地址信息对应的内容标识信息。
32. 根据权利要求 29所述的辅助下载装置, 其特征在于, 所述内 容信息获取装置还用于:
根据所述待下载的多媒体内容在所述预定的多媒体服务器上的地 址信息, 获取一个或多个与所述待下载的多媒体内容在所述预定的多媒 体服务器上的地址信息对应的内容地址信息, 其中所述内容地址信息包 括其对应内容在相应内容^^务器上的地址信息。
33. 根据权利要求 32所述的辅助下载装置, 其特征在于, 还包括: -第二汇报接收装置, 用于接收所述用户终端在所述待下载的多媒 体内容的获取过程中汇报来的当前获得所述待下载的多媒体内容的状 态信息, 其中, 所述状态信息包括所述用户终端才队据所述一个或多个内 容地址信息和 /或所述待下载的多媒体内容在所述预定的多媒体服务器 上的地址信息进^ "下载的状态;
- 内容地址管理装置, 用于根据所述用户终端汇报来根据所述一个 或多个内容地址信息和 /或所述待下载的多媒体内容在所述预定的多媒 体服务器上的地址信息进行下载的状态, 创建或更新与所述待下载的多 媒体内容在所述预定的多媒体服务器上的地址信息对应的内容地址信
34. 一种在第二网络服务器中用于辅助用户终端将预定的多媒体 内容从网络上高速下载到所述用户终端的辅助下载装置, 其中, 预定的 多媒体服务器包含所述待下载的多媒体内容, 所述待下载的多媒体内容 在所述预定的多媒体服务器上的地址信息是隐藏的, 该辅助下载装置包 括:
-接收装置, 接收来自所述用户终端的备选内容标识信息和所述用 户终端的节点相关信息, 其中备选内容标识信息对应的内容与所述待下 载的多媒体内容相同;
- 节点信息获取装置, 根据所述备选内容标识信息, 获取拥有备选 内容标识信息对应的内容的分片的其它用户终端节点的相关信息;
- 节点信息发送装置, 将所述拥有备选内容标识信息对应的内容的 分片的其它用户终端节点的相关信息发送给所述用户终端。
35. 一种用户终端, 其特征在于, 包括权利要求 18至 28中任一项 所述的下载装置。
36. 一种网络服务器, 其特征在于, 包括根据权利要求 29至 33所 述的辅助下载装置。
37. 一种网络服务器, 其特征在于, 包括根据权利要求 34所述的 辅助下载装置。
38. 一种计算机存储介质, 其特征在于, 该介质上存储了可被计算 机读取并运行以执行根据权利要求 1至 11中任一项所述的下载方法的计 算机程序。
PCT/CN2009/072413 2008-06-25 2009-06-23 在互联网中用于高速下载多媒体内容的方法与装置 WO2009155858A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US13/000,610 US20110113124A1 (en) 2008-06-25 2009-06-23 Method and device for downloading multimedia contents at high speed in the internet

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN200810039592.2A CN101616166B (zh) 2008-06-25 2008-06-25 在互联网中用于高速下载多媒体内容的方法与装置
CN200810039592.2 2008-06-25

Publications (1)

Publication Number Publication Date
WO2009155858A1 true WO2009155858A1 (zh) 2009-12-30

Family

ID=41444039

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2009/072413 WO2009155858A1 (zh) 2008-06-25 2009-06-23 在互联网中用于高速下载多媒体内容的方法与装置

Country Status (3)

Country Link
US (1) US20110113124A1 (zh)
CN (1) CN101616166B (zh)
WO (1) WO2009155858A1 (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103905915B (zh) * 2010-12-15 2017-06-16 北京小度互娱科技有限公司 在线视频嗅探下载方法及装置
CN103259819B (zh) * 2012-02-20 2017-12-15 腾讯科技(深圳)有限公司 文件共享的方法及系统
CN102929971B (zh) * 2012-10-15 2015-07-01 长春指南针科技有限公司 一种多媒体信息播放方法和系统
CN103686430A (zh) * 2013-12-24 2014-03-26 中国联合网络通信集团有限公司 视频文件获取方法及装置
CN104601535B (zh) * 2014-05-08 2017-12-15 腾讯科技(深圳)有限公司 视频处理方法和系统
WO2016057188A1 (en) 2014-10-09 2016-04-14 Wrap Media, LLC Active receipt wrapped packages accompanying the sale of products and/or services
US9600594B2 (en) 2014-10-09 2017-03-21 Wrap Media, LLC Card based package for distributing electronic media and services
US9600803B2 (en) 2015-03-26 2017-03-21 Wrap Media, LLC Mobile-first authoring tool for the authoring of wrap packages
CN105653648A (zh) * 2015-12-28 2016-06-08 北京金山安全软件有限公司 一种文件获取方法、装置及电子设备
CN105763893A (zh) * 2016-01-15 2016-07-13 北京傲游天下科技有限公司 一种下载页面播放器中播放的视频方法
CN106980537B (zh) 2016-03-15 2019-02-01 平安科技(深圳)有限公司 云计算环境中删除云主机的方法和系统
CN108174244A (zh) * 2017-12-29 2018-06-15 深圳Tcl新技术有限公司 文件映射方法、映射服务器、电视及存储介质
US11095958B2 (en) * 2019-04-12 2021-08-17 Clipkick, Inc. Systems and methods of universal video embedding
WO2021248466A1 (zh) * 2020-06-12 2021-12-16 深圳市欢太科技有限公司 文件分发方法、装置、电子设备和计算机可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006114216A (ja) * 2005-12-02 2006-04-27 Sony Corp 再生システム、再生方法
CN101094389A (zh) * 2007-07-24 2007-12-26 杭州华三通信技术有限公司 视频下载方法、视频服务器及监控中心系统
KR20080002416A (ko) * 2006-06-30 2008-01-04 주식회사 케이티프리텔 착신 단말로의 멀티미디어 데이터 제공 방법 및 장치

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040230500A1 (en) * 2003-02-21 2004-11-18 Satosi Imago Service providing apparatus, user terminal, service providing method, service utilizing method, computer-readable recording medium recorded with a service providing program, and computer-readable recording medium recorded with a service utilizing program
US7698459B2 (en) * 2006-03-16 2010-04-13 Tellabs Operations, Inc. Method and system for identifying a device address
US20080005027A1 (en) * 2006-06-14 2008-01-03 John Jason Gentry Mullins System and methods for transmission of media files across a telephone, internet, intranet, satellite, cable or combination network to avoid unpaid digital file sharing or copying
US8122488B2 (en) * 2007-05-18 2012-02-21 Yangaroo, Inc. Media file distribution system and method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006114216A (ja) * 2005-12-02 2006-04-27 Sony Corp 再生システム、再生方法
KR20080002416A (ko) * 2006-06-30 2008-01-04 주식회사 케이티프리텔 착신 단말로의 멀티미디어 데이터 제공 방법 및 장치
CN101094389A (zh) * 2007-07-24 2007-12-26 杭州华三通信技术有限公司 视频下载方法、视频服务器及监控中心系统

Also Published As

Publication number Publication date
US20110113124A1 (en) 2011-05-12
CN101616166B (zh) 2014-08-06
CN101616166A (zh) 2009-12-30

Similar Documents

Publication Publication Date Title
WO2009155858A1 (zh) 在互联网中用于高速下载多媒体内容的方法与装置
JP5951071B2 (ja) プル・モード及びプッシュ・モードを組み合わせるシステム及び方法
US11019170B2 (en) Methods and systems for caching data communications over computer networks
US10321199B2 (en) Streaming with optional broadcast delivery of data segments
JP5442131B2 (ja) 記述ファイルに基づいた個別データ通信
US20100115613A1 (en) Cacheable Mesh Browsers
JP5902820B2 (ja) ピアツーピアコンテンツ配信システムにおけるピアによって受信されたコンテンツの完全性の確認
CN103813185B (zh) 一种分段节目快速分发的方法、服务器及客户端
CN102118323A (zh) 内容分发网络服务器及内容下载方法
WO2014114086A1 (zh) 超文本传输协议直播流内容分发方法、系统及设备
CA2981693C (en) Reception apparatus, transmission apparatus, and data processing method
JP6614154B2 (ja) 受信装置、送信装置、およびデータ処理方法
US20150074234A1 (en) Content system and method for chunk-based content delivery
JPWO2017014034A1 (ja) 受信装置、送信装置、およびデータ処理方法
CN102256181A (zh) 互联网内容访问方法及相关装置
JP2012505583A (ja) ファイル修復配信モードを要求する方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09768783

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 13000610

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09768783

Country of ref document: EP

Kind code of ref document: A1