[go: up one dir, main page]

CN107645475B - File resource distribution system and method in heterogeneous network - Google Patents

File resource distribution system and method in heterogeneous network Download PDF

Info

Publication number
CN107645475B
CN107645475B CN201610581926.3A CN201610581926A CN107645475B CN 107645475 B CN107645475 B CN 107645475B CN 201610581926 A CN201610581926 A CN 201610581926A CN 107645475 B CN107645475 B CN 107645475B
Authority
CN
China
Prior art keywords
network
peer
file
messages
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201610581926.3A
Other languages
Chinese (zh)
Other versions
CN107645475A (en
Inventor
肖志明
刘炜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Cloud Entropy Network Technology Co Ltd
Original Assignee
Shanghai Cloud Entropy Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Cloud Entropy Network Technology Co Ltd filed Critical Shanghai Cloud Entropy Network Technology Co Ltd
Priority to CN201610581926.3A priority Critical patent/CN107645475B/en
Publication of CN107645475A publication Critical patent/CN107645475A/en
Application granted granted Critical
Publication of CN107645475B publication Critical patent/CN107645475B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

The application discloses a file resource distribution system and method in a heterogeneous network, which comprises a content transmission network, a peer-to-peer network and a playing end. The content transmission network is used for providing multimedia files; the peer-to-peer network comprises a directory server, a push server, a tracking server and a plurality of terminal nodes, the peer-to-peer network is connected to the content transmission network, the push server can ask for a multimedia file from the content transmission network, the push server divides the multimedia file and outputs file blocks, then fountain coding programs are carried out on the file blocks and a plurality of coded messages and message files are output, and the push server sends the coded messages to the terminal nodes; the playing end is connected with the content transmission network and the peer-to-peer network and sequentially downloads the file blocks for playing; when downloading each file block, the playing end preferentially obtains the coded message from the terminal node of the peer-to-peer network, if the coded message quantity obtained from the peer-to-peer network does not exceed a restoration threshold value within a certain time, the playing end obtains the uncoded message of the file block from the content transmission network; when the total amount of the coded/uncoded messages received by the playing end meets the restoring threshold value, restoring the received coded messages into file blocks.

Description

File resource distribution system and method in heterogeneous network
Technical Field
The present application relates to distribution of file resources in a network, and in particular, to a system and method for distributing file resources in a heterogeneous network.
Background
With the rapid increase of network bandwidth, it is no longer a problem to smoothly play multimedia files such as video and audio files through the network. In order to save bandwidth and speed downloading, network providers often provide multimedia files to be viewed in a content delivery network (content delivery network) manner. The CDN mainly classifies a downloading client group of the multimedia files by means of multiple servers and client locations.
The CDN in the prior art can play a role of offloading. However, when the number of clients downloaded in the same area increases, the CDN server in the area cannot distribute the download request to other servers. The download speed of the same area is also pulled down.
In addition to the CDN described above, manufacturers also segment multimedia files into multiple file segments and transmit the file segments to different clients through Peer-to-Peer (Peer-to-Peer) network. Each client also provides different pieces of files to other clients in addition to downloading. Although the peer-to-peer network provides the downloaded service in a decentralized manner, the seed amount of the multimedia file in the peer-to-peer network, if small, will lengthen the time to complete the download or increase the pause in the play.
The networks of the two architectures have respective advantages, and network resources of the two architectures can be combined. Generally, the commercial cost of a content distribution network is much higher than that of a peer-to-peer network, and the key point in combining the two networks is to acquire as much content as possible from the peer-to-peer network, thereby reducing the demand on the content distribution network. However, the traditional peer-to-peer network caches in the nodes in a file segment manner, different segments of the same file are not uniformly distributed, and the seed resource is often insufficient when the file is played, so that the demand probability of the content distribution network is increased.
Disclosure of Invention
The technical problem to be solved by the present application is to provide a file resource distribution system in a heterogeneous network, where a client can select download resources of multimedia files from multiple networks with different architectures, and on the premise of ensuring smooth playing, the requirement for a content distribution network is reduced as much as possible to save cost.
The file resource distribution system in the heterogeneous network comprises a content transmission network, a peer-to-peer network and a playing end. The content transmission network is used for providing multimedia files and is provided with a plurality of edge servers, and the edge servers are used for transmitting the multimedia files and segmenting the multimedia files into a plurality of uncoded messages; the peer-to-peer network comprises a directory server, a push server, a tracking server (tracker) and a plurality of terminal nodes (seeds), the peer-to-peer network is connected to the content transmission network, the push server asks for a multimedia file from any edge server, the push server divides the multimedia file into a plurality of file blocks (chunks) and outputs the file blocks into a plurality of uncoded messages (pieces), the push server performs a fountain coding program on the uncoded messages to output a plurality of coded messages, and the push server assigns the coded messages to the corresponding terminal nodes; the playing end network is connected with the content transmission network and the peer-to-peer network, and downloads the file blocks one by one for playing; when the playing end downloads the file block, the playing end preferentially obtains the encoded messages from the terminal nodes of the peer-to-peer network, after the critical time, the playing end does not obtain the number of the encoded messages which meet the reduction threshold from the peer-to-peer network, and the playing end obtains the uncoded messages from the edge server of the content transmission network; wherein, the total number of the coded message and the uncoded message exceeds the recovery threshold, the playing end recovers the coded message and the uncoded message into the document block according to the received coded message and the uncoded message.
In order to solve the above problem, the present application further discloses a file resource distribution method in a heterogeneous network, where a client may select a download resource of a multimedia file from a plurality of networks with different architectures.
The file resource distribution method in the heterogeneous network comprises the following steps: connecting a plurality of terminal nodes to a peer-to-peer network, and respectively connecting a playing end to a content transmission network and the peer-to-peer network; any playing terminal asks for a multimedia file from a tracking server of the peer-to-peer network; determining, by the trace server, whether the multimedia file exists in the peer-to-peer network; if the multimedia file does not exist in the peer-to-peer network, the tracking server enables the pushing server to download the multimedia file to the content transmission network, and the multimedia file is divided into a plurality of file blocks; dividing each file block into a plurality of uncoded messages; the push server performs a fountain coding procedure on the uncoded messages and outputs a plurality of coded messages to a plurality of terminal nodes; if the multimedia file exists in the peer-to-peer network, returning a terminal node with the encoded message to the playing end; the playing end sends a downloading request of the multimedia file to the terminal node, and the encoded messages of the multimedia file are downloaded in sequence; the playing end judges whether the quantity of the received coded messages accords with a restoration threshold value or not in the critical time; if the number of the coded messages meets the reduction threshold, reducing the obtained coded messages into file blocks of the multimedia file by the playing end; if the playing end does not obtain the number of the coded messages which accord with the restoration threshold value from the peer-to-peer network, the playing end obtains the uncoded messages from the edge server of the content transmission network until the total number of the coded messages and the uncoded messages exceeds the restoration threshold value; the playing end restores the obtained encoded message and the obtained unencoded message into a file block of the multimedia file.
Compared with the prior art, the application can obtain the following technical effects:
1) compared with the network streaming video playing in the prior art, the method has the advantages that the terminal node caches the coding segments instead of the original file segments. The coding segments are different from each other, so that the repeated caching of different terminal nodes is avoided, the bandwidth of all the terminal nodes can be fully utilized, the requirement on a content distribution network is reduced, and the cost is reduced.
2) According to the method and the device, the data volume of each file block cache coding segment at each terminal node is far lower than that of the original file block, and the cache space of the terminal node is greatly saved. Or more multimedia files may be cached in the same space.
3) According to the method and the device, when resources are insufficient or the transmission speed is low in the peer-to-peer network, the uncoded segments can be applied to the content distribution network to download, so that the watching experience of a user is guaranteed.
4) The method and the device for managing the hot file cache are used for uniformly managing the cache in the peer-to-peer network, and can actively push the coding segments of the hot file to the idle nodes or actively complement the holes in the file cache, so that the number of terminal nodes of the hot file is increased. Or the node is required to delete the cold file cache so as to improve the cache utilization rate of the terminal node.
Drawings
The accompanying drawings, which are included to provide a further understanding of the application and are incorporated in and constitute a part of this application, illustrate embodiment(s) of the application and together with the description serve to explain the application and not to limit the application.
Fig. 1A is a schematic diagram of a network architecture according to an embodiment of the present application.
FIG. 1B is a diagram illustrating a hardware structure of a playing end according to an embodiment of the present application.
FIG. 1C is a diagram illustrating a hardware architecture of a content delivery network according to an embodiment of the present application.
Fig. 1D is a schematic hardware architecture diagram of a peer-to-peer network according to an embodiment of the present application.
FIG. 1E is a diagram illustrating the segmentation of file blocks and uncoded messages according to an embodiment of the present application.
Fig. 2A is a schematic operation flow chart according to an embodiment of the present application.
Fig. 2B is a schematic diagram of an initial connection of a playing end according to an embodiment of the present application.
Fig. 2C is a schematic diagram of a peer-to-peer network with multimedia files.
Detailed Description
Embodiments of the present application will be described in detail with reference to the drawings and examples, so that how to implement technical means to solve technical problems and achieve technical effects can be fully understood and implemented.
Please refer to fig. 1A, which is a schematic diagram of a network architecture according to an embodiment of the present application. The file resource distribution system 100 in the heterogeneous network according to an embodiment of the present application includes a playing terminal 110, a content transmission network 120, and a peer-to-peer network 130. The playing terminal 110 is connected to a Content Delivery Network (CDN) 120 and a Peer-to-Peer network (Peer-to-Peer) 130 through a network. The playing end 110 may be, but is not limited to, a personal computer, a notebook computer, a mobile phone, a tablet device, or the like. The playing terminal 110 may be connected to the content transmission network 120 and the peer-to-peer network 130 by means of a wired network or a wireless network.
Please refer to fig. 1B, which is a schematic diagram of a hardware structure of a playing end according to an embodiment of the present application. The playing terminal 110 further includes a first processing unit 111, a first network unit 112 and a first storage unit 113. The first processing unit 111 is electrically connected to the first network unit 112 and the first storage unit 113. The first processing unit 111 is used to run a network multimedia distribution program 114. The first storage unit 113 stores therein a network multimedia distribution program 114, an encoded message 115, and a fountain encoding program 116. The first network unit 112 is used for transmitting network packets of the content transmission network 120 and the peer-to-peer network 130. The playing terminal 110 issues a request for downloading the multimedia file to the peer-to-peer network 130.
Please refer to fig. 1C, which is a schematic diagram of a hardware architecture of a content transmission network according to an embodiment of the present application. The content transmission network 120 of an embodiment of the present application includes a multimedia source 121 and an edge server 122. The edge server 122 is network connected to the multimedia source 121. The multimedia source 121 is used for providing multimedia files to the edge server 122, and the multimedia source 121 also provides playing information to the playing terminal 110. The multimedia source 121 may be an external network resource, or a server in the content transmission network 120. The multimedia files include, but are not limited to, video files, audio files, or pictures. The playing terminal 110 can select the multimedia file to be viewed (or listened to) according to the playing information. The edge server 122 is used for receiving the multimedia file and providing the multimedia file for the player 110 to download.
Please refer to fig. 1D, which is a schematic diagram illustrating a hardware architecture of a peer-to-peer network according to an embodiment of the present application. The peer-to-peer Network 130 includes a transparent server 131 (STUN), a directory server 132(index server), a trace server 133 (tracker), a push server 134(push server), and a plurality of terminal nodes 135 (seed).
The through-network server 131 is used to determine what type of network the terminal playing terminal 110 and each terminal node 135 are located in. Generally, network address penetration is mostly applied in private networks, such as: a company, a home, or an internet cafe, etc. The through-network server 131 determines the type of network address penetration of the local intranet according to the intranet type information responded by the broadcast end 110 and the terminal node 135. The network address penetration can be divided into four classes, 1. OPEN (OPEN _ OR _ FULL _ CORE), 2.IP address RESTRICTED (IP _ RESTRICTED), 3.IP address and PORT number RESTRICTED (IP _ PORT _ RESTRICTED), 4. Symmetric (SYMMETRIC). For clarity, the following table is organized herein based on whether the four types of network address penetrations described above are penetrable:
if the playback end 110 (or the terminal node 135) is located in the public network, a network connection can be established with the above types. The directory server 132 is used to register existing multimedia files in the peer-to-peer network 130, delete multimedia files, modify the message files of each end node 135 (described in more detail below), or query the message files of any end node 135.
The trace server 133 is used for maintaining a session of the playing end 110, providing a playlist of the playing end 110, and responding to a seed list of the playing end 110. The trace server 133 records the geographical location of each end node 135, the number of downloads and content type of the encoded message 115, the online time, the network throughput, the list of all cached files for the operator and end nodes. The trace server 133 assembles a playlist according to the playable multimedia files and provides the playlist to the connected player 110 at regular time. The tracking server 133 will periodically update the seed stored by each player 110, the seed is the downloaded information of the encoded message 115 of the multimedia file after passing through the fountain coding program 116, or the encoded message 115 that the push server pushed to the node.
Each of the players 110 may store a plurality of partial segments of different multimedia files, and thus each player 110 may store at least one seed. The tracking server 133 will also perform clustering and grouping on the broadcasting terminals 110 in different geographic locations, and record the online time of each broadcasting terminal 110. In addition, the trace server 133 periodically pushes the encoded message 115 to the end node 135 or requests the end node 135 to delete the expired encoded message 115. In other words, when the download heat of the multimedia file is too low, the tracking server 133 may request the partial end nodes 135 to delete the encoded message 115.
The push server 134 requests the multimedia file 310 from the edge server 122, and the push server 134 slices and outputs the multimedia file 310 into multiple file chunks 320 (chunks). The push server 134 further segments each file block 320 into a plurality of unencoded messages 330 (pieces). Please refer to fig. 1E, which is a schematic diagram illustrating a segmentation of a file block and an uncoded message according to an embodiment of the present application. On the left side of fig. 1E, the content transport network 120 receives the multimedia file 310 and transmits it to the push server 134, and on the right side, the un-encoded message 330 and Fountain Code (Fountain Code) processing in the push server 134 is represented.
For example, the push server 134 segments a file block 320 into a plurality of unencoded messages 330 (assumed to be k segments), such that the size of each unencoded message 330 is 1/k file blocks 320. The push server 134 then performs fountain codes 116(fountain codes) on the unencoded messages 330 for each file block and outputs a plurality of encoded messages 115. The push server 134 generates a different encoded message 115 for each end node 135. In other words, each file block 320 generates a plurality of encoded messages 115 and a message file recording the encoded messages 115. The encoded message 115 is assigned by the push server 134 to the appropriate end node 135. The push server 134 will send the appropriate encoded message 115 to the end node 135 according to the network type of the transparent server 131 and the end node 135, so as to prevent the end nodes 135 that cannot penetrate from each other from being the seeds of each other.
The terminal node 135 is network-connected to the transparent server 131, the directory server 132, the push server 134, the trace server 133, and the transparent server 131. The end node 135 comprises a second processing unit 1351, a second network unit 1352 and a second storage unit 1353. The second processing unit 1351 is electrically connected to the second network unit 1352 and the second storage unit 1353. The second storage unit 1353 stores the encoded message 115. The terminal node 135 sends an intranet type detection request to the web server 131 and receives an intranet type message returned by the web server 131. The terminal node 135 then sends a network information request, the information related to the encoded message 115 stored in the network information request and the intranet type message to the tracking server 133 through the second network unit 1352.
The end node 135 periodically requests an action task from the trace server 133, the action task including pushing the encoded message 115 and deleting the encoded message 115. When the tracking server 133 receives the request for pushing the encoded message 115, the tracking server 133 assigns the appropriate push server 134 according to the aforementioned conditions, and connects the end node 135 with the selected push server 134. After the terminal node 135 connects to the push server 134, the terminal node 135 will retrieve the corresponding encoded message 115 from the push server 134 and store it in the second storage unit 1353. The playing terminal 110 may download the multimedia file 310 to be viewed to the terminal node 135 or the content transmission network 120. Please refer to fig. 2A, which is a schematic operational flowchart of an embodiment of the present application. The resource distribution of the multimedia file 310 in the present application comprises the following steps:
step S210: connecting a plurality of terminal nodes to a peer-to-peer network, and respectively connecting a playing end to a content transmission network and the peer-to-peer network;
step S220: any playing terminal asks for a multimedia file from a tracking server of the peer-to-peer network;
step S230: determining, by the trace server, whether the multimedia file exists in the peer-to-peer network;
step S231: if the multimedia file does not exist in the peer-to-peer network, the tracking server enables the pushing server to download the multimedia file to the content transmission network, and the multimedia file is divided into a plurality of file blocks;
step S232: dividing each file block into a plurality of uncoded messages; the push server performs a fountain coding procedure on the uncoded messages and outputs a plurality of coded messages to a plurality of terminal nodes;
step S233: if the multimedia file exists in the peer-to-peer network, returning a terminal node with the encoded message to the playing end;
step S240: the playing end sends a downloading request of the multimedia file to the terminal node, and the encoded messages of the multimedia file are downloaded in sequence;
step S250: the playing end judges whether the quantity of the received coded messages accords with a restoration threshold value or not in the critical time;
step S251: if the number of the coded messages meets the reduction threshold, reducing the obtained coded messages into file blocks of the multimedia file by the playing end;
step S252: if the playing end does not obtain the number of the coded messages which accord with the restoration threshold value from the peer-to-peer network, the playing end obtains the uncoded messages from the edge server of the content transmission network until the total number of the coded messages and the uncoded messages exceeds the restoration threshold value;
step S260: the playing end restores the obtained encoded message and the obtained unencoded message into a file block of the multimedia file.
First, the broadcasting end 110 is respectively connected to the content transmission network 120 and the peer-to-peer network 130 through a network (as shown in fig. 2B), and the terminal node 135 is connected to the peer-to-peer network 130. At the same time, the broadcasting end 110 and the terminal node 135 send an intranet type detection request to the transparent network server 131. The through-network server 131 determines the type of the through-network address according to the type detection requirement of the intranet. Then, the end node 135 sends a network information request to the trace server 133, so that the trace server 133 can record the information related to the encoded message 115 of each end node 135 (or the broadcast end 110) and the intranet type message.
After completing the above steps, the end node 135 requests an action task from the push server 134 through the trace server 133, wherein the action task includes actions of pushing the encoded message 115 and deleting the encoded message 115. . If the tracking server requests to push the encoded message 115 corresponding to the multimedia file 310 to the terminal node 135, the terminal node 135 can directly download the corresponding encoded message 115 through the push server 134 (as shown in FIG. 2C).
The push server 134 issues a request to download the multimedia file 310 to the content delivery network 120 (as shown in fig. 1D). When the edge server 122 of the content transmission network 120 receives the download request from the push server 134, the edge server 122 provides the original file (or the missing file blocks 320) of the corresponding multimedia file 310 to the push server 134 (as shown in fig. 1E). The push server 134 fountain encodes the multimedia file 310 and outputs a plurality of encoded messages 115.
The fountain code 116 performs a data slicing process on the file blocks 320 obtained by the push server 134, so that each file block 320 can be further sliced into a plurality of uncoded messages 330. If each file block 320 is divided into k uncoded messages 330, fountain coding the k uncoded messages 330 may output n coded messages 115, where n is the number of end nodes 135 that need the file. The playing end 110 can restore the corresponding file block 320 by only acquiring k encoded messages 115 from the n encoded messages 115. The push server 134 assigns each encoded message 115 to a respective end node 135.
When the playing terminal 110 sends a request for downloading the multimedia file 310 to the peer-to-peer network 130, the tracking server 133 first performs step S230 to determine whether the requested multimedia file 310 exists (as shown in fig. 1D). If the multimedia file 310 exists, the trace server 133 sends the seed list of the terminal node 135 that acquired the segment of the multimedia file 310 to the playing side 110. The cast end 110 issues a request to download the encoded message 115 to the corresponding end node 135 based on the record of the seed list. In addition, when the playing end 110 stores the encoded message 115 of the multimedia file 310, there may be a "hole" in its cache due to the possible actions of terminating the playing or jumping the playing by the user. Meaning that the multimedia file 310 has cached the encoded messages 115 of some file blocks 320 at the end node 135, but has failed to cache the encoded messages 115 of other file blocks 320. The trace server 133 may instruct some end nodes 135 to fill the holes or delete the excess buffer for some holes, ensuring that the multimedia files 310 buffered in the peer-to-peer network 130 each contain the encoded message 115 for each file block 320 of the multimedia file 310.
The playing end 110 downloads the encoded message 115 of each file block 320 and records the number of the downloaded encoded messages 115 and the elapsed time in real time. If the playing end 110 is within the threshold time, the encoded messages 115 meeting the threshold number are received. The broadcast end 110 fountain codes the received encoded message 115 and outputs the corresponding file block 320.
If the threshold time has elapsed, the playing end 110 still does not obtain a sufficient amount of encoded messages 115. The cast terminal 110 will send a download request to the content transmission network 120 for the unencoded message 330. The playing end 110 still counts whether the total amount of the un-encoded message 330 and the encoded message 115 meets the recovery threshold in the process of receiving the un-encoded message 330. When the total amount of the uncoded message 330 and the coded message 115 is greater than the recovery threshold, the playing end 110 recovers the fountain code according to the received uncoded message 330 and the coded message 115 and outputs the corresponding file block 320. The fountain code described above is characterized in that: the number of encoded messages 115 and unencoded messages 330 received by the playing end 110 need not be equal to the total number of encoded messages 115 generated by the file block 320, and the file block 320 can be restored back if the number meets the restoration threshold. If the number of encoded messages 115 that exceeds the restore threshold is greater, the probability of restoring the file block 320 is increased.
The following is a request from the playing end 110 to the content transmission network 120 to provide the un-encoded message 330 of the corresponding segment according to the un-downloaded encoded message 115. Assume that the playing end 110 needs to obtain X encoded messages 115 to restore the file block 320, however, only Y encoded messages 115 (and Y is smaller than X) are received. The cast 110 is therefore still missing the unencoded messages 330 of (X-Y) encoded messages 115. The cast end 110 requests the missing unencoded message 330 from the content transmission network 120. For example, if a file block 320 is 10000 bytes, then a file block 320 may be output as 10 unencoded messages 330 (1000 bytes each). When the playback end 110 lacks 2 un-encoded messages 330 in the third file block 320, the playback end 110 can add a segment of "Range: bytes ═ 20000-. After the edge server 122 receives the segment, it will call the un-encoded message 330 to the playing end 110.
In addition, the present application can determine whether to request the content transmission network 120 to download the un-encoded message 330 according to the total amount of the encoded messages 115 and the terminal node 135 connected to the playing terminal 110. In other words, when the total amount of encoded messages 115 that can be provided by all the end nodes 135 is less than the recovery threshold, the playing end 110 can go to the content transmission network 120 without passing through the critical time and request the remaining amount of unencoded messages 330. If a file block 320 outputs 120 encoded messages 115 (or unencoded messages 330). The cast end 110 needs to receive 100 encoded messages 115 to restore the file block 320. When the terminal node 135 connected to the playing terminal 110 can only provide 80 encoded messages 115, the playing terminal 110 can forward to the content transmission network 120 before the critical time is reached and request to download the remaining 20 unencoded messages 330. The playing end 110 can restore the file block 320 by only acquiring the encoded messages 115 and the unencoded messages 330 that meet the restoration threshold number.
After the playing end 110 of the present application restores the encoded message 115 into the multimedia file 310, the playing end 110 outputs the multimedia file 310 as at least one new encoded message 115 through the fountain coding process 116. The playing peer 110 stores the new encoded message 115 in the first storage unit 113, and instructs the tracking server 133 to record the playing peer 110 as the new terminal node 135. In addition to the existing terminal node 135, a new terminal node 135 can be created when a new player 110 downloads the associated encoded message 115. Thus, the number of the terminal nodes 135 can grow with the downloading of the playing terminal 110, thereby increasing the activity of the seed and the downloading speed.
Unlike the cache generated by pushing the file, the cache generated by playing may generate a hole due to the viewing behavior of the user. The trace server will instruct the nodes to fill up the holes or delete the cache, ensuring that the cached files in the peer-to-peer network each contain the encoded information for each chunk of the file.
The device corresponds to the description of the method flow, and for the deficiency, reference is made to the description of the method flow, which is not repeated. The foregoing description shows and describes several preferred embodiments of the present application, but as aforementioned, it is to be understood that the application is not limited to the forms disclosed herein, but is not to be construed as excluding other embodiments and is capable of use in various other combinations, modifications, and environments and is capable of changes within the scope of the inventive concept as expressed herein, commensurate with the above teachings, or the skill or knowledge of the relevant art. And that modifications and variations may be effected by those skilled in the art without departing from the spirit and scope of the application, which is to be protected by the claims appended hereto.

Claims (12)

1. A file resource distribution system in a heterogeneous network, wherein at least one client can select a download resource of a multimedia file from a plurality of networks with different architectures, the file resource distribution system in the heterogeneous network comprising:
a content delivery network for providing a multimedia file, said content delivery network having a plurality of edge servers for transmitting said multimedia file and segmenting said multimedia file into a plurality of unencoded messages;
a peer-to-peer network, including a directory server, a push server, a tracker server (tracker server), and a plurality of terminal nodes (seeds), the peer-to-peer network being connected to the content transmission network, the push server requesting the multimedia file from any of the edge servers, the push server segmenting the multimedia file and outputting the multimedia file as a plurality of file blocks (chunks), and then segmenting the file blocks into a plurality of uncoded messages (raw messages), the push server performing a fountain coding procedure on the plurality of uncoded messages for outputting a plurality of coded messages (coded messages), the push server assigning the plurality of coded messages to the corresponding terminal nodes; and
a playing terminal, which is connected with the content transmission network and the peer-to-peer network through a network and downloads file blocks one by one for playing; the playing end preferentially obtains the encoded messages from the plurality of terminal nodes of the peer-to-peer network every time the playing end downloads the file block, after a critical time, the playing end does not obtain the number of the encoded messages which meet a restoration threshold from the peer-to-peer network, and the playing end obtains the unencoded messages from the edge server of the content transmission network;
if the total number of the encoded messages and the uncoded messages exceeds the restoration threshold, the playing end restores the encoded messages and the uncoded messages into the file block according to the received encoded messages and the received uncoded messages.
2. The file resource distribution system in a heterogeneous network of claim 1, wherein the push server generates a different encoded message for each of the end nodes.
3. The system for distributing file resources in a heterogeneous network according to claim 1, wherein the trace server is connected to the plurality of terminal nodes and the playing end, the trace server is configured to maintain a session of the playing end and respond to a seed list of the playing end, and the trace server records a geographical location, an online time, a network throughput and a cached file list of each terminal node, a download time and a content type of each multimedia file.
4. The system for distributing file resources in a heterogeneous network according to claim 3, wherein the peer-to-peer network further comprises a transparent network Server (STUN), the terminal node sends an intranet type detection request to the transparent network server and receives an intranet type message returned by the transparent network server, and the broadcast end sends the intranet type detection request to the transparent network server and receives the intranet type message returned by the transparent network server.
5. The system according to claim 4, wherein the end node periodically sends a network information request to the trace server, the network information request records the information related to the stored encoded message and the intranet-type message.
6. The system of claim 1, wherein the tracking server periodically determines to push the encoded message corresponding to the multimedia file to the end node or to request the end node to delete the expired encoded message.
7. The system for distributing file resources in a heterogeneous network according to claim 1, wherein after the playing end restores the encoded messages to the multimedia file, the playing end outputs the multimedia file as at least one new encoded message through the fountain encoding procedure, stores the new encoded message in a storage unit, and causes the trace server to record the playing end as a new end node of the multimedia file.
8. The file resource distribution system in a heterogeneous network according to claim 7, wherein for the encoded messages whose sequence is stored by the terminal node incomplete, the trace server causes the terminal node to either fill in an incomplete part of the encoded messages or delete the incomplete encoded messages.
9. The file resource distribution system in a heterogeneous network according to claim 1, wherein said directory server is used for registering the multimedia file already existing in said peer-to-peer network, deleting the multimedia file, modifying or querying the multimedia file for communication.
10. A method for distributing file resources in a heterogeneous network is characterized in that at least one client can select a download resource of a multimedia file from a plurality of networks with different architectures, and the method for distributing the file resources in the heterogeneous network comprises the following steps:
connecting a plurality of terminal nodes to a peer-to-peer network, and respectively connecting a playing end to a content transmission network and the peer-to-peer network;
any one of the playing terminals asks for a multimedia file from a tracing server of the peer-to-peer network;
determining, by the trace server, whether the multimedia file exists in the peer-to-peer network;
if the multimedia file does not exist in the peer-to-peer network, the tracking server enables a pushing server to download the multimedia file to the content transmission network and divides the multimedia file into a plurality of file blocks;
dividing each file block into a plurality of uncoded messages;
the push server performs a fountain coding procedure on the uncoded message and outputs a plurality of coded messages to the plurality of terminal nodes;
if the multimedia file exists in the peer-to-peer network, returning a terminal node list with the encoded message to the playing end;
the playing end sends a downloading request of the multimedia file to the terminal node, and the encoded messages of the multimedia file are downloaded in sequence;
the playing end judges whether the quantity of the received coded messages meets a restoration threshold value or not in a critical time;
if the number of the coded messages meets the restoration threshold, the playing end restores the obtained coded messages into file blocks of the multimedia file; and
if the playing end does not obtain the number of the coded messages meeting a restoration threshold from the peer-to-peer network, the playing end obtains the uncoded messages from an edge server of the content transmission network until the total number of the coded messages and the uncoded messages exceeds the restoration threshold; and the playing end restores the obtained encoded message and the obtained unencoded message into a file block of the multimedia file.
11. The method for file resource distribution in a heterogeneous network according to claim 10, wherein the step of meeting the restore threshold further comprises: if the total amount of the encoded messages of the terminal node connected to the playing terminal is less than the restoration threshold, the playing terminal may obtain the unencoded messages of the file blocks of the multimedia file from the content transmission network before the critical time.
12. The method for distributing file resources in a heterogeneous network according to claim 10, wherein the step of restoring the encoded message to the multimedia file further comprises:
after the playing end restores the encoded messages to the multimedia file, the playing end outputs the multimedia file as at least one new encoded message through the fountain encoding program; and
and storing the new encoded message into a storage unit of the playing end, and enabling the tracking server to record the playing end as a new terminal node.
CN201610581926.3A 2016-07-22 2016-07-22 File resource distribution system and method in heterogeneous network Expired - Fee Related CN107645475B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610581926.3A CN107645475B (en) 2016-07-22 2016-07-22 File resource distribution system and method in heterogeneous network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610581926.3A CN107645475B (en) 2016-07-22 2016-07-22 File resource distribution system and method in heterogeneous network

Publications (2)

Publication Number Publication Date
CN107645475A CN107645475A (en) 2018-01-30
CN107645475B true CN107645475B (en) 2019-12-27

Family

ID=61109502

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610581926.3A Expired - Fee Related CN107645475B (en) 2016-07-22 2016-07-22 File resource distribution system and method in heterogeneous network

Country Status (1)

Country Link
CN (1) CN107645475B (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11695855B2 (en) 2021-05-17 2023-07-04 Margo Networks Pvt. Ltd. User generated pluggable content delivery network (CDN) system and method
US11860982B2 (en) 2022-05-18 2024-01-02 Margo Networks Pvt. Ltd. Peer to peer (P2P) encrypted data transfer/offload system and method
US11930439B2 (en) 2019-01-09 2024-03-12 Margo Networks Private Limited Network control and optimization (NCO) system and method
US12062068B2 (en) 2021-05-04 2024-08-13 Margo Networks Pvt. Ltd. Oneapp system and method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101267379A (en) * 2007-03-14 2008-09-17 中国电信股份有限公司 Uniform content carrying and dispatching system based on P2P and CDN
CN102404378A (en) * 2010-09-07 2012-04-04 成都索贝数码科技股份有限公司 A streaming media distribution transmission network system
CN103023928A (en) * 2013-01-11 2013-04-03 乐视网信息技术(北京)股份有限公司 P2P (peer-to-peer) node matching system and method
CN105306969A (en) * 2015-09-02 2016-02-03 越亮传奇科技股份有限公司 Adaptive streaming media processing system and method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100094970A1 (en) * 2008-10-15 2010-04-15 Patentvc Ltd. Latency based selection of fractional-storage servers

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101267379A (en) * 2007-03-14 2008-09-17 中国电信股份有限公司 Uniform content carrying and dispatching system based on P2P and CDN
CN102404378A (en) * 2010-09-07 2012-04-04 成都索贝数码科技股份有限公司 A streaming media distribution transmission network system
CN103023928A (en) * 2013-01-11 2013-04-03 乐视网信息技术(北京)股份有限公司 P2P (peer-to-peer) node matching system and method
CN105306969A (en) * 2015-09-02 2016-02-03 越亮传奇科技股份有限公司 Adaptive streaming media processing system and method

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Scalable and Reliable Live Streaming Service through Coordinating CDN and P2P;Zhi Hui Lu、Xiao Hong Gao、Si Jia Huang、Yi Huang;《2011 IEEE 17th International Conference on Parallel and Distributed Systems》;20120103;第581-588页 *
基于P2P视频点播技术的流媒体平台设计与开发;李海明、徐敬黎、燕飞;《计算机与现代化》;20110430(第4期);第57-60页 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11930439B2 (en) 2019-01-09 2024-03-12 Margo Networks Private Limited Network control and optimization (NCO) system and method
US12062068B2 (en) 2021-05-04 2024-08-13 Margo Networks Pvt. Ltd. Oneapp system and method
US11695855B2 (en) 2021-05-17 2023-07-04 Margo Networks Pvt. Ltd. User generated pluggable content delivery network (CDN) system and method
US11860982B2 (en) 2022-05-18 2024-01-02 Margo Networks Pvt. Ltd. Peer to peer (P2P) encrypted data transfer/offload system and method

Also Published As

Publication number Publication date
CN107645475A (en) 2018-01-30

Similar Documents

Publication Publication Date Title
US8880650B2 (en) System and method for storing streaming media file
US10321199B2 (en) Streaming with optional broadcast delivery of data segments
US20220103630A1 (en) Methods and systems for processing data requests
Guo et al. P2Cast: peer-to-peer patching scheme for VoD service
US9497035B2 (en) Method, device, and system for playing media based on P2P
US20140250230A1 (en) Media manifest file generation for adaptive streaming cost management
CN101764831B (en) A streaming media data sharing method, sharing system and streaming media node
CN102547478B (en) Triggered slice on-demand system and method of streaming media based on CDN (Content Distribution Network)
US20140165119A1 (en) Offline download method, multimedia file download method and system thereof
CN110022482B (en) Video broadcasting method, video service system and storage medium
CN102694831B (en) Mobile terminal streaming compensation data method and system, content distributing network
CN107645475B (en) File resource distribution system and method in heterogeneous network
CN103348691A (en) Method, device and system for delivering live telecast content
US12363390B2 (en) Video file storage prediction process for caches in video servers
KR101743228B1 (en) Streaming apparatus and method thereof, streaming service system using the streaming apparatus and computer readable recording medium
TW201234194A (en) Data stream management system for accessing mass data
CN112312162B (en) A video server for transmitting video streams
US10750248B1 (en) Method and apparatus for server-side content delivery network switching
WO2023061060A1 (en) Audio and video code stream scheduling method, system, medium and electronic apparatus
EP3868071B1 (en) Distributed state recovery in a system having dynamic reconfiguration of participating nodes
CN111131843A (en) A system and method for live broadcasting
CN103561013A (en) Streaming media data distributing system
Cheng et al. Peer-assisted view-dependent progressive mesh streaming
CN106330953A (en) An intelligent router device, server device and data processing method thereof
US10750216B1 (en) Method and apparatus for providing peer-to-peer content delivery

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20191227

Termination date: 20210722