CN105431835A - Defragmentation of adaptive streaming segment files in a content delivery network - Google Patents
Defragmentation of adaptive streaming segment files in a content delivery network Download PDFInfo
- Publication number
- CN105431835A CN105431835A CN201480044754.5A CN201480044754A CN105431835A CN 105431835 A CN105431835 A CN 105431835A CN 201480044754 A CN201480044754 A CN 201480044754A CN 105431835 A CN105431835 A CN 105431835A
- Authority
- CN
- China
- Prior art keywords
- node
- segment file
- segment
- manifest document
- storer
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/2885—Hierarchically arranged intermediate devices, e.g. for hierarchical caching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/1724—Details of de-fragmentation performed by the file system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5681—Pre-fetching or pre-delivering data based on network characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
An edge node (33), a parent node (32), and a method in a Content Delivery Network (CDN) (30) configured to utilize adaptive streaming to deliver a piece of electronic content to requesting clients. The content includes a plurality of segment files referenced by an associated manifest document (12), and the nodes are configured to defragment an incomplete piece of content and ensure that a copy stored in each node contain, ail segment files referenced by the manifest document Bach node analyzes the manifest document and the segment files stored in its cache memory (89) to determine whether any segment files referenced by the manifest document are absent from the memory, if so, the node pulls the absent segment files from another node (94) in the CDN to complete the piece of content. The defragmentation may be performed during a period of minimum, network usage to minimize network impact and within a popularity time window to ensure timely storage of the defragmented content in each node.
Description
the cross reference of related application
The application requires the U.S. Provisional Application No.61/831 submitted on June 6th, 2013 according to 35U.S.C. § 119 (e), the senior interest of 908, is disclosed by reference and be intactly attached to herein.
Technical field
The disclosure relates to communication system.More particularly instead of as restriction, specific embodiment of the present disclosure in content distributing network (CDN) for the node of the server distributing electronic content to whole CDN and method.
Background technology
Content distributing network (CDN) is generally by distributing complete file to operate across the node (server) forming distributing network.Be called the request of central server manipulation to file of redirector, and responded by different Uniform Resource Identifiers (URI) (being redirected) returning given file.In other cases, domain name system (DNS) server can adopt the different IP addresses of the given host name of the URI of file to respond.Centralized management software can be determined the best mode of file distributing to the edge of CDN based on the external data of such as popularity, network congestion or other factors and so on.
Sometimes the adaptive streaming transmission being called adaptive bitrate stream transmission is in most applications based on the technology of HTML (Hypertext Markup Language) (HTTP), and this technology is used for carrying out streaming multimedia by large-scale distributed http network.Source of media detects the bandwidth sum CPU capacity of user in real time, and uses the quality that correspondingly can adjust video flowing with multiple bit rate to the multi-rate codec that single source video is encoded.This generally causes minimum buffering, fast start time and good experience to high-end to be connected with low side.
More particularly, with multiple bit rate, source contents is encoded, and each stream in different bit rates stream is segmented into the small-sized segment file of the content reaching the several seconds when comprising.Segment file size can change according to specific implementation, but it is in the scope of 2 to 10 seconds that segment file is in length usually.Inventory file provides the information relevant from the section of available stream, its different bit rate and stream to streaming client.Upon start, client-requested is from the segment file of lowest bitrate stream.If client terminal to discover speed of download is greater than the bit rate being downloaded segment file, then client is by the segment file of request from the next one more high bit rate.After a while, if the speed of download of client terminal to discover segment file is lower than the bit rate of this segment file, and therefore network throughput is degenerated, then client-requested more low bit rate segment file.
Summary of the invention
Due to framework and the mechanism of adaptive streaming transmission, when client visits adaptive streaming transferring content via CDN, there is possibility large as follows: the server at edge will become burst, that is, they will the imperfect copy of preservation content.Node (Edge Server) at the edge of CDN can provide perhaps many single sections file to client.When client is to the second edge server request content, the first Edge Server and the second Edge Server all can preserve the imperfect set of the segment file quoted by the inventory associated.This causes the burst of media, thus attempts causing poor efficiency and complementary network load when pulling the whole set of segment file from single Edge Server in client.
When Edge Server does not preserve the copy of institute's request segment file, they must pull institute's request segment file from father node, such as region server.Although this generally makes father node preserve the complete copy of institute's request segment file, do not ensure that the set of complete list section will reside on father node for all announced bit rates.When client is to the part of same Edge Server request adaptive streaming transmission inventory instead of whole segment files thus when causing the imperfect copy of whole inventory section set, burst occurs.The client changing bit rate within adaptive streaming transmission architecture further can increase this burst on Edge Server.
As solution, specific embodiment of the present disclosure be provided in utilize adaptive streaming transferring content CDN within " defragmentation " system and method.This system and method guarantees that Edge Server preserves the complete copy of whole inventory section set.In addition, this " defragmentation " method that can control occurred in the time of low network utilisation, and the method can consider the expectation needs to content, so as to avoid segment file can not requested time unnecessarily prepare segment file in advance.
In one embodiment, the disclosure is for a kind of method, fringe node wherein in CDN determines whether the segment file of local cache that quoted by manifest document, that be not present in fringe node, and if then fringe node pulls non-existent segment file from another node CDN, such as its father node or another fringe node.Before pulling non-existent segment file from another node, fringe node can determine that current time is within the minimum life cycle of Internet resources.Fringe node also can be determined, the inventory popularity time is within window threshold value and makes to prepare segment file in time during request segment file for client.When at fringe node high speed buffer memory during all segment files, fringe node completes to its defragmentation of his father's node report.
If be not present in the local cache of father node to the segment file that its father node is asked by fringe node yet, then father node pulls non-existent segment file from the more upper level node CDN, non-existent segment file is stored in the local cache of father node, and gives request fringe node by file transfers.Like this, the segment file that father node high-speed cache or storage are asked by sub-fringe node, and fill up the blank in the segment file set of father node.Once all sub-fringe node of father node has reported them completed its defragmentation, father node with regard to the segment file that contrasts its high-speed cache to check its oneself inventory, to determine whether still there is non-existent segment file, and if then pull (one or more) non-existent segment file from more upper level node.When at father node high speed buffer memory during all segment files, father node reports completing of its defragmentation to more upper level node.This method is upwards propagated by CDN, until all nodes have reported its state through defragmentation through defragmentation to more high-rise.
Embodiment disclosed herein describes the method performed in fringe node, father node and fringe node and father node.
Embodiment for a kind of in the fringe node of CDN for guaranteeing that the storer of fringe node comprises the method for all segment files quoted by the manifest document associated.The method comprises the following steps: the segment file stored in the manifest document of analyzing and associating and the storer of fringe node, to determine whether have segment file not to be present in the storer of fringe node in the segment file quoted by the manifest document associated; And once define the segment file of storer that quoted by the manifest document associated, that be not present in fringe node, just pull non-existent segment file from another node CDN, and pulled segment file is stored in the storer of fringe node.
Another embodiment is for the fringe node of a kind of CDN, and it is configured to utilize adaptive streaming to transmit and transmits one section of digital content to requesting client, and wherein this section of digital content comprises the multiple segment files quoted by the manifest document associated.Fringe node is configured to guarantee that the storer of fringe node comprises all segment files quoted by the manifest document associated.Fringe node comprises processor, its moving calculation machine programmed instruction, thus make the segment file that stores in the manifest document of fringe node analyzing and associating and the storer of fringe node, to determine whether have segment file not to be present in the storer of fringe node in the segment file quoted by the manifest document associated, and once define the segment file of storer that quoted by the manifest document associated, that be not present in fringe node, just pull non-existent segment file from another node CDN, and pulled segment file is stored in the storer of fringe node.
Another embodiment is for the father node of a kind of CDN, and it is configured to provide one section of digital content to multiple child node, transmits being distributed to requesting client further to utilize adaptive streaming.This section of digital content comprises the multiple segment files quoted by the manifest document associated, and father node is configured to guarantee that the storer of father node comprises all segment files quoted by the manifest document associated.Father node comprises processor, its moving calculation machine programmed instruction, thus make the segment file that father node is asked to each loading in multiple child node by each child node, wherein when institute's request segment file is not present in the storer of father node, father node is configured to pull institute's request segment file from the more upper level node CDN, send institute's request segment file to request child node, and institute's request segment file is stored in the storer of father node.Father node also determines that multiple child node has all reported its manifest document and completed, and responsively, the segment file stored in the manifest document of analyzing and associating and the storer of father node, to determine whether that the segment file quoted by the manifest document associated still is not present in the storer of father node.Once define the segment file of storer that quoted by the manifest document associated, that be not still present in father node, father node just pulls non-existent segment file from the more upper level node CDN, and is stored in father node by pulled segment file.
The various Edge Servers " burst " that the disclosure is guaranteed to ask the client of adaptive streaming transferring content not make the segment file for obtaining content and they is redirected to.Disclosed node and method operate during enabling the peak usage time of CDN when processing adaptive streaming transferring content effectively.Utilize the CDN of disclosed node and the method acquisition network bandwidth to utilize the efficiency of aspect, thus produce better client experience.Prediction loading aspect based on the factor of such as content popularit etc. is guaranteed and strengthens efficient resource to use.
Accompanying drawing explanation
In next part, the example embodiment with reference to the accompanying drawings describes the disclosure, in the accompanying drawings:
Fig. 1 is the illustrated examples of the burst of master control inventory when segment file is stored in the different fringe nodes of CDN;
Fig. 2 is the illustrative embodiments of the example embodiment of method for determining the existing and non-existent inventory segment file in the local cache memory of node;
Fig. 3 is the process flow diagram of the example embodiment of the method for the section defragmentation illustrated in CDN;
Fig. 4 illustrates the process flow diagram by the step of the example embodiment of the child node in CDN, section scrap cleaning method performed by such as Edge Server;
Fig. 5 illustrates the process flow diagram by the step of the example embodiment of the father node in CDN, section scrap cleaning method performed by such as region server; And
Fig. 6 is the simplified block diagram of the example embodiment of the CDN node configured according to the disclosure.
Embodiment
In the following detailed description, set forth a large amount of detail, to provide thorough understanding of the present disclosure.But, one skilled in the art will appreciate that even without these details, also can implement the disclosure.In other cases, do not describe well-known method, process, assembly and circuit in detail, in order to avoid impact is to understanding of the present disclosure.Disclosed system can such as be realized by one or more processors of the computer program instructions that the combination of hardware or hardware and software, such as run memory device store.
Initial it should be noted that term " coupling ", " connections ", " electrical connection " and other similarly the situation being used for usually representing electricity/electronics connection in this article interchangeably such as to state.Similarly, when first instance sends to/from second instance electricity and/or receives (no matter being by wired or wireless means) information signal (no matter comprising voice messaging or non-speech data/control information), first instance is considered to carry out " communication " with second instance (or multiple second instance), and has nothing to do with the type (analog or digital) of those signals.Be also noted that, various accompanying drawing (comprising component drawings) shown and described herein only in order to illustration purpose, and is not drawn in proportion.
Fig. 1 is the illustrated examples of the burst of master control inventory 12 when segment file 11a-11j is stored in the different Edge Servers of CDN.When the master control inventory 12 of film X is distributed by CDN, the segment file quoted by master control inventory such as can be distributed to multiple region server from source server, and it is used as the parent server of son or Edge Server.Also can utilize other distribution methods, such as, on consolidated network layer, be distributed to node from node.When Edge Server from father to child node or when pulling the inventory segment file of film X from other Edge Servers, the set that resides in the segment file on each Edge Server can be changed into burst.In Fig. 1, dark shadow region illustrates segment file that quoted by manifest document, that be not present in each Edge Server.
Fig. 2 is existing in the local cache memory for determining fringe node and the illustrative embodiments of the example embodiment of the method for non-existent inventory segment file.Manifest document comprises the list of the segment file quoting the digital content forming complete segment.Fringe node analyzes manifest document and institute's memory paragraph file by following operation: read manifest document to identify which segment file is quoted by manifest document, determine which segment file is present in the storer of fringe node, and the segment file of existence and list are compared identify which segment file does not exist.Each segment file has assigned URL(uniform resource locator) (URL), if and segment file is confirmed as the storer not being present in fringe node, then fringe node use the URL of non-existent segment file to or from another node request CDN or pull non-existent segment file.In one embodiment, another node is the father node of fringe node, and it can be the region of CDN, country or source server.Like this, fringe node fills the non-existent segment file quoted by specific inventory or sub-manifest document.
Fig. 3 is the process flow diagram of the example embodiment of the method for the section defragmentation illustrated in CDN30.In this embodiment, the URI that CDN redirector server 31 is configured to the client-requested to content " to be redirected " region server 32 or Edge Server 33 obtains for section.In addition, CDN redirector server 31 communicates with existing system (not shown), with ask popularity tolerance, score, weight or other measure together with but be not limited to geographical location information, thus determine the popularity of the content of particular segment.As a supplement or substitute, CDN redirector server can use its oneself redirected history to determine which content is qualified as popular content.
" minimum use time frame " also can be informed to child node by CDN redirector server 31 or another server, " minimum use time frame " be Internet resources be determined to be near low use level day time scope.This minimum use time frame can be determined by CDN redirector server or by another node within CDN.In an embodiment of the present disclosure, before node starts defragmentation process, first node determines that current time is within minimum use time frame.
Child node provides service by father node, and during defragmentation process, the request from child node is propagated by father node, to meet the request to inventory section.Also the father node lacking institute request segment file can pull non-existent segment file from more upper level node, such as national server 34, preserves institute's request segment file, and by institute's request segment file transfer to asking child node.Propagated by this, the segment file that father node buffer memory or storage are asked by one or more child node.
Fig. 4 is the process flow diagram of the step of the example embodiment of the section scrap cleaning method illustrated performed by the child node in CDN or fringe node, such as Edge Server.Surround the method step frame instruction circulation surround step, until such as analyzed all inventories or pulled all non-existent segment files from father node.
In the various time interval, each node within CDN can determine whether current time falls within the minimum use time frame of node.Do not provide the node calculating time frame voluntarily can send request to the father node of node, CDN redirector server or another server, to determine its minimum use time frame.Therefore, in step 41, fringe node checks that defragmentation wakes timer up, and it makes fringe node determine whether current time is within the minimum life cycle of the Internet resources within CDN in step 42.Can the minimum life cycle of computational grid resource voluntarily if fringe node can calculate voluntarily, if and can not calculate voluntarily, then fringe node receives the information of the minimum life cycle of the Internet resources be identified within CDN from another server its father node, redirector server 31 or CDN.If current time is not within the minimum life cycle of the Internet resources within CDN, then the method forwards step 43 to, wherein skip over defragmentation to this fringe node, and the method turns back to step 41.When determining that in step 42 current time is within the minimum life cycle of the Internet resources within CDN, the method forwards step 44 to, frame window when wherein fringe node retrieves all the elements popularity from redirector server 31.Then the method enters circulation 45.
Circulation 45 comprises transmits process performed by inventory for each adaptive streaming associated with the segment file stored in the local cache memory of fringe node.In step 46, whether fringe node determination current time is within the popularity time window threshold value of analyzed specific list.This is carried out guaranteeing that the digital content of complete segment may be available during request segment file in client.If current time is not within popularity time window threshold value, then the method forwards step 47 to, and wherein fringe node skips over that specific list.When determining that in step 46 current time is within the popularity time window threshold value of analyzed specific list, the method forwards step 48 to, and wherein fringe node reads master control inventory file.Then the method enters circulation 49.
Circulation 49 comprises for the process performed by every sub-inventory in master control inventory.In step 51, fringe node reads the URL of segment file from particular child inventory.Then the method enters circulation 52.
Circulation 52 comprises for the process performed by each URL in analyzed particular child inventory.In step 53, whether fringe node determination particular segment file is present in the cache memory of fringe node.If so, then fringe node skips over the URL of that segment file in step 54, and forwards next segment file to.This process proceeds for each segment file quoted by sub-inventory, and when quoted segment file is confirmed as the local cache memory not being present in fringe node, the method forwards step 55 to, and wherein fringe node utilizes the URL of non-existent segment file from the father node of another CDN node, such as fringe node or another fringe node to pull non-existent segment file.The segment file that fringe node buffer memory pulls from another CDN node.When for each adaptive streaming transmission inventory in high-speed cache, for every sub-inventory in master control inventory and when having performed circulation 45,49 and 52 for each URL in every sub-inventory, all segment files should be present in the local cache memory of fringe node.
Once verify that all segment files of all inventories are present in the local cache memory of fringe node in step 56, the method just forwards step 57 to, and wherein fringe node completes to his father's node report defragmentation.
Fig. 5 illustrates the process flow diagram by the step of the example embodiment of the father node in CDN, section scrap cleaning method performed by such as region server.The frame of step surrounding the method again indicate circulation surround step, until such as analyzed all inventories or pulled all non-existent segment files from more upper level node.
In step 61, father node checks that defragmentation wakes timer up, and it makes father node determine whether current time is within the minimum life cycle of the Internet resources within CDN in step 62.Can the minimum life cycle of computational grid resource voluntarily if father node can calculate voluntarily, if and can not calculate voluntarily, then father node is from more upper level node or the information of minimum life cycle receiving the Internet resources be identified within CDN from the redirector server 31 CDN.If current time is not within the minimum life cycle of the Internet resources within CDN, then the method forwards step 63 to, wherein skip over defragmentation to this father node, and the method turns back to step 61.
When determining that in step 62 current time is within the minimum life cycle of the Internet resources within CDN, the method forwards step 64 to, and wherein father node determines whether its all child node has reported its defragmentation and completed.As mentioned above, during the process of child node being carried out to defragmentation, father node can pull non-existent file from more upper level node, and in the cache memory of father node, fill any non-existent file.Therefore, if not its whole child node has reported its defragmentation and completes, then father node is in the step 65 sleep threshold time, to wait for that its whole child node reports that its defragmentation completes.Then the method turns back to step 62, to guarantee that current time is still within the minimum life cycle of the Internet resources within CDN.When determine in step 64 all child nodes reported its defragmentation complete time, the method forwards step 66 to, frame window when wherein father node retrieves all the elements popularity from redirector server 31.Then the method enters circulation 67.
Circulation 67 comprises transmits process performed by inventory for each adaptive streaming associated with the segment file stored in the local cache memory of father node.In step 68, whether father node determination current time is within the popularity time window threshold value of analyzed specific list.This is carried out guaranteeing that the digital content of complete segment may be available during request segment file in client.If current time is not within popularity time window threshold value, then the method forwards step 69 to, and wherein father node skips over that specific list.When determining that in step 68 current time is within the popularity time window threshold value of analyzed specific list, the method forwards step 71 to, and wherein father node reads master control inventory file.Then the method enters circulation 72.
Circulation 72 comprises for the process performed by every sub-inventory in master control inventory.In step 73, father node reads the URL of segment file from particular child inventory.Then the method enters circulation 74.
Circulation 74 comprises for the process performed by each URL in analyzed particular child inventory.Father node reads the master control of given content and sub-inventory segment file, to determine whether that the segment file quoted by inventory is not present in the local cache memory of father node.Therefore, in step 75, whether father node determination particular segment file is present in the cache memory of father node.If so, then father node skips over the URL of that segment file in step 76, and forwards next segment file to.This process proceeds for each segment file quoted by sub-inventory, and when quoted segment file is confirmed as the local cache memory not being present in father node, the method forwards step 77 to, wherein father node utilize the URL of non-existent segment file from another CDN node, such as more upper level node or another father node to pull non-existent segment file.The segment file that father node buffer memory pulls from another CDN node.When for each adaptive streaming transmission inventory in high-speed cache, for every sub-inventory in master control inventory and when having performed circulation 67,72 and 74 for each URL in every sub-inventory, all segment files should be present in father node.
Father node can perform these operations for each inventory of every section of content of supplying within CDN/sub-inventory or only for those inventories of preparing within father node.When father node has been determined to have pulled all segment files of every section of content, each bit rate from more high-rise or another CDN node in step 78, method forwards step 79 to, wherein father node to its more upper level node send the message that completes of defragmentation of instruction father node.
Fig. 6 is the simplified block diagram of the example embodiment of the CDN node 81 configured according to the disclosure.The computer program instructions of function such as by processor 82 run memory 83 stores of CDN node controls.Defragmentation wakes timer 84 up and current time is supplied to comparing unit 85, and current time and minimum use time frame 86 compare by it.If current time is within minimum use time frame, then current time and inventory popularity time window threshold value 87 also compare by comparing unit.If current time is within inventory popularity time window threshold value, then " it is feasible for starting defragmentation process " is informed to segment file reader 88 by comparing unit.
Segment file reader 88 reads segment file from cache memory 89.URL reader 91 reads the URL of each segment file quoted by the manifest document associated, and they is supplied to and there is not file identification device 92.There is not one or more the quoted segment file that the identification of file identification device is not present in local cache memory, and send to communication unit 93 institute's request URL that (one or more) associate.Communication unit can be another CDN node 94 of such as father node by (one or more) institute request URL being sent to, and sends the one or more requests to segment file.(one or more) institute request segment file is returned to communication unit by another CDN node, and they send to high-speed cache 89 for storage by it.Subsequently, segment file reader 88 reads segment file from high-speed cache, and there is not file identification device 92 and determine that at this moment all segment files quoted by the manifest document associated are present in high-speed cache.There is not file identification device and then " defragmentation process completes " is informed to communication unit." defragmentation process of CDN node completes " is then informed to the father node 94 of CDN node by communication unit 93.
The additional functional of dotted line instruction when CDN node 81 is also father node in Fig. 6.As described in above composition graphs 5, after comparing unit 85 determines that current time is within minimum use time frame 86, father node determines whether its (one or more) child node 95 has all reported that its defragmentation process completes.Once (one or more) child node has all reported that its defragmentation completes, comparing unit 85 has just been continued by following operation: determine whether current time is within inventory popularity time window threshold value 87.If so, then the defragmentation process of father node is initiated.
The those skilled in the art benefiting from the instruction presented in the accompanying drawing of above description and association will expect amendment of the present disclosure and other embodiments.Therefore, should be understood that the disclosure is not limited to disclosed specific embodiment, and amendment and other embodiments are estimated to comprise within the scope of the present disclosure.Although can adopt concrete term herein, they only use with general and descriptive sense, instead of the object for limiting.Correspondingly, the scope of patented subject matter should not be confined to any one in above-described concrete exemplary teachings, but is limited by following claims.
Claims (22)
1. in the fringe node (33) of content distributing network (CDN) (30) for guaranteeing that the storer (89) of described fringe node comprises a method for all segment files quoted by the manifest document associated (12), described method comprises the following steps:
Analyze (49,72) the described segment file stored in the described storer (89) of the manifest document (12) of described association and described fringe node, to determine whether have segment file not to be present in the described storer of described fringe node in the described segment file quoted by the manifest document of described association; And
Once define the segment file of described storer that quoted by the manifest document of described association, that be not present in described fringe node, just pull (55 from another node described CDN, 77) described non-existent segment file, and pulled segment file is stored in the described storer of described fringe node.
2. the method for claim 1, wherein, the described step that another node described in from described CDN pulls described non-existent segment file comprises from the father node (32) of described fringe node or pulls described non-existent segment file from another fringe node (33).
3. the method for claim 1, wherein, the manifest document of described association comprises the list (21) of the described segment file quoting the digital content forming the complete segment associated with described manifest document, and the described step of the manifest document and described segment file of analyzing described association comprises:
Read the manifest document of (48,71) described association, to identify which segment file is formed the digital content of described complete segment;
Determine which segment file is present in the described storer of described fringe node; And
The segment file of described existence and described list are compared (53,75), to identify which segment file is not present in the described storer of described fringe node.
4. method as claimed in claim 3, wherein, the described list (21) of quoting the described segment file of the digital content forming described complete segment also indicates each URL(uniform resource locator) (URL) listing segment file, and comprises from the described step that another node described pulls described non-existent segment file:
Determine the described URL of (51,73) each non-existent segment file; And
Send the described URL of described non-existent segment file to another node described in the request to each non-existent segment file.
5. method as claimed in claim 4, wherein, when multiple segment files that the manifest document by described association is quoted are not present in the described storer of described fringe node, the described step sending the described URL of each non-existent segment file to described father node comprises:
The described URL of described multiple non-existent segment file is compiled in single request; And
The request to multiple non-existent segment file is sent to another node described.
6. the method for claim 1, also be included in analysis (49,72), before the manifest document of described association and described segment file, determine that (42,62) current time is within the minimum life cycle of the Internet resources within described CDN.
7. method as claimed in claim 6, wherein, if described fringe node can calculate voluntarily, calculate the minimum life cycle of described Internet resources voluntarily, if and can not calculate voluntarily, then described fringe node is from father node (32) or the information receiving the minimum life cycle of the described Internet resources be identified within described CDN from the redirector server (31) described CDN.
8. method as claimed in claim 6, also be included in analysis (49,72) before described manifest document and described segment file, determine (46,68) described current time is within inventory popularity time window threshold value, to guarantee that the digital content of described complete segment may ask during described segment file to be available in client.
9. method as claimed in claim 8, wherein, described fringe node receives from the redirector server (31) described CDN the information identifying described inventory popularity time window threshold value.
10. the method for claim 1, also comprises all segment files quoted by the manifest document of described association to father node (32) report (57,79) and is stored in the described storer of described fringe node (33).
The fringe node (33 of 11. 1 kinds of content distributing networks (CDN) (30), 81), it is configured to utilize adaptive streaming to transmit and transmits one section of digital content to requesting client, wherein said one section of digital content comprises the multiple segment files quoted by the manifest document associated (12), wherein said fringe node is configured to guarantee that the storer (89) of described fringe node comprises all segment files quoted by the manifest document of described association, wherein said fringe node comprises processor (82), its moving calculation machine programmed instruction, thus make described fringe node:
Analyze (49,72) the described segment file stored in the described storer (89) of the manifest document of described association and described fringe node, to determine whether have segment file not to be present in the described storer of described fringe node in the described segment file quoted by the manifest document of described association; And
Once define the segment file of described storer that quoted by the manifest document of described association, that be not present in described fringe node, just from another node (32 described CDN, 33,94) (55 are pulled, 77) described non-existent segment file, and pulled segment file is stored in the described storer of described fringe node.
12. fringe nodes as claimed in claim 11, wherein, described fringe node is configured to from the father node (32,94) of described fringe node or pulls described non-existent segment file from another fringe node (33,94).
13. fringe nodes as claimed in claim 11, are also configured to determine that current time was within the minimum life cycle of the Internet resources (86) within described CDN before the described manifest document of analysis and described segment file.
14. fringe nodes as claimed in claim 13, also be configured to determine that described current time is within inventory popularity time window threshold value (87), to guarantee that the digital content of described complete segment may ask during described segment file to be available in described request client.
15. fringe nodes as claimed in claim 11, the rear all segment files quoted by the manifest document of described association to described father node report (57,79) be also configured to pulling described non-existent segment file from father node are stored in the described storer of described fringe node.
The father node (32 of 16. 1 kinds of content distributing networks (CDN) (30), 81), it is configured to multiple child node (33, 94, 95) one section of digital content is provided to be distributed to requesting client further to utilize adaptive streaming to transmit, wherein said one section of digital content comprises the multiple segment files quoted by the manifest document associated (12), wherein said father node is configured to guarantee that the storer (89) of described father node comprises all described segment file quoted by the manifest document of described association, wherein said father node comprises processor (82), its moving calculation machine programmed instruction, thus make described father node:
To the segment file that each loading in described multiple child node is asked by each child node, wherein when institute's request segment file is not present in the described storer of described father node, described father node is configured to from the more upper level node (34 described CDN, 94) (55 are pulled, 77) described institute request segment file, send described institute request segment file to described request child node, and described institute request segment file is stored in the described storer (89) of described father node;
Determine that described multiple child node has all reported its manifest document and completed;
In response to determining that described multiple child node has all reported its manifest document and completed, analyze (49,72) the described segment file stored in the manifest document of described association and the described storer of described father node, to determine whether that the segment file quoted by the manifest document of described association is not still present in the described storer of described father node; And
Once define the segment file of described storer that quoted by the manifest document of described association, that be not still present in described father node, described in just from described CDN, more upper level node pulls (55,77) described non-existent segment file, and pulled segment file is stored in described father node.
17. father nodes as claimed in claim 16, wherein, the manifest document of described association comprises the list (21) of the described segment file quoting the digital content forming described complete segment, and described father node is configured to by reading (51, 73) manifest document of described association is to identify which segment file is formed the digital content of described complete segment, by determining which segment file is present in the described storer of described father node, and by the segment file of described existence and described list are compared (53, 75) to identify which segment file is not present in the described storer of described father node, analyze the described segment file stored in the manifest document of described association and the described storer of described father node.
18. father nodes as claimed in claim 17, wherein, the described list (21) of quoting the described segment file of the digital content forming described complete segment also indicates each URL(uniform resource locator) (URL) listing segment file, and described father node is configured to the described URL by determining each non-existent segment file, and by sending the described URL of described non-existent segment file in the request to each non-existent segment file to described more upper level node, (55,77) described non-existent segment file is pulled from described more upper level node.
19. father nodes as claimed in claim 18, wherein, when multiple segment files that the manifest document by described association is quoted are not present in the described storer of described father node, described father node is configured to the described URL of described multiple non-existent segment file to be compiled in single request, and sends the request to multiple non-existent segment file to described more upper level node.
20. father nodes as claimed in claim 16, also be configured to determine that (42,62) current time is within the minimum life cycle of the Internet resources (86) within described CDN determining that described multiple child node has all reported before its manifest document completes.
21. father nodes as claimed in claim 20, also be configured in analysis (49,72) before the described segment file stored in the manifest document of described association and described father node, determine (46,68) described current time is within inventory popularity time window threshold value (87), to guarantee that the digital content of described complete segment may ask during described segment file to be available in client.
22. father nodes as claimed in claim 16, all segment files being also configured to be quoted to described more upper level node report (57,79) by described manifest document are stored in the described storer of described father node.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361831908P | 2013-06-06 | 2013-06-06 | |
US61/831908 | 2013-06-06 | ||
US13/923,005 US20140365613A1 (en) | 2013-06-06 | 2013-06-20 | Defragmentation of adaptive streaming segment files in a content delivery network |
US13/923005 | 2013-06-20 | ||
PCT/IB2014/061995 WO2014195906A2 (en) | 2013-06-06 | 2014-06-05 | Defragmentation of adaptive streaming segment files in a content delivery network |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105431835A true CN105431835A (en) | 2016-03-23 |
Family
ID=52008667
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480044754.5A Pending CN105431835A (en) | 2013-06-06 | 2014-06-05 | Defragmentation of adaptive streaming segment files in a content delivery network |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP3005176A4 (en) |
CN (1) | CN105431835A (en) |
CA (1) | CA2914603A1 (en) |
WO (1) | WO2014195906A2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111327651A (en) * | 2018-12-14 | 2020-06-23 | 华为技术有限公司 | Resource downloading method, device, edge node and storage medium |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109995851B (en) * | 2019-03-05 | 2021-11-26 | 东南大学 | Content popularity prediction and edge caching method based on deep learning |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1628452A (en) * | 2002-05-17 | 2005-06-15 | 都科摩欧洲通信技术研究所有限公司 | De-fragmentation of transmission sequences |
CN1777880A (en) * | 2002-02-14 | 2006-05-24 | 塞维斯公司 | Managed object replication and delivery |
CN1980113A (en) * | 2005-12-07 | 2007-06-13 | 三星电子株式会社 | Method and apparatus for transmitting and receiving content on distributed storage system |
US20070276836A1 (en) * | 2006-05-08 | 2007-11-29 | Manjirnath Chatterjee | Method for Synchronizing Software Application and User Data for Asynchronous Client-Server and Peer to Peer Computer Networks |
US20090055506A1 (en) * | 2002-04-26 | 2009-02-26 | Hudson Michael D | Centralized selection of peers as media data sources in a dispersed peer network |
US20100088269A1 (en) * | 2008-10-02 | 2010-04-08 | International Business Machines Corporation | Dispersal and retrieval of data fragments in a peer-to-peer data backup and archival network |
US20110083144A1 (en) * | 2009-10-06 | 2011-04-07 | Bocharov John A | Integrating continuous and sparse streaming data |
CN102185880A (en) * | 2011-03-08 | 2011-09-14 | 天脉聚源(北京)传媒科技有限公司 | Video live-broadcast load equalizing method and video live-broadcast load equalizing system |
CN102479155A (en) * | 2010-11-30 | 2012-05-30 | 国际商业机器公司 | Method and system for memory overload management applied in network application server system |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7133905B2 (en) * | 2002-04-09 | 2006-11-07 | Akamai Technologies, Inc. | Method and system for tiered distribution in a content delivery network |
-
2014
- 2014-06-05 WO PCT/IB2014/061995 patent/WO2014195906A2/en active Application Filing
- 2014-06-05 EP EP14808390.0A patent/EP3005176A4/en not_active Withdrawn
- 2014-06-05 CN CN201480044754.5A patent/CN105431835A/en active Pending
- 2014-06-05 CA CA2914603A patent/CA2914603A1/en not_active Abandoned
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1777880A (en) * | 2002-02-14 | 2006-05-24 | 塞维斯公司 | Managed object replication and delivery |
US20090055506A1 (en) * | 2002-04-26 | 2009-02-26 | Hudson Michael D | Centralized selection of peers as media data sources in a dispersed peer network |
CN1628452A (en) * | 2002-05-17 | 2005-06-15 | 都科摩欧洲通信技术研究所有限公司 | De-fragmentation of transmission sequences |
CN1980113A (en) * | 2005-12-07 | 2007-06-13 | 三星电子株式会社 | Method and apparatus for transmitting and receiving content on distributed storage system |
US20070276836A1 (en) * | 2006-05-08 | 2007-11-29 | Manjirnath Chatterjee | Method for Synchronizing Software Application and User Data for Asynchronous Client-Server and Peer to Peer Computer Networks |
US20100088269A1 (en) * | 2008-10-02 | 2010-04-08 | International Business Machines Corporation | Dispersal and retrieval of data fragments in a peer-to-peer data backup and archival network |
US20110083144A1 (en) * | 2009-10-06 | 2011-04-07 | Bocharov John A | Integrating continuous and sparse streaming data |
CN102479155A (en) * | 2010-11-30 | 2012-05-30 | 国际商业机器公司 | Method and system for memory overload management applied in network application server system |
CN102185880A (en) * | 2011-03-08 | 2011-09-14 | 天脉聚源(北京)传媒科技有限公司 | Video live-broadcast load equalizing method and video live-broadcast load equalizing system |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111327651A (en) * | 2018-12-14 | 2020-06-23 | 华为技术有限公司 | Resource downloading method, device, edge node and storage medium |
Also Published As
Publication number | Publication date |
---|---|
CA2914603A1 (en) | 2014-12-11 |
WO2014195906A3 (en) | 2015-04-16 |
WO2014195906A2 (en) | 2014-12-11 |
EP3005176A4 (en) | 2017-01-25 |
EP3005176A2 (en) | 2016-04-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10616294B2 (en) | System and method for streaming content from multiple servers | |
US8732237B2 (en) | Interaction-based update delivery for user generated content | |
WO2017016292A1 (en) | Method of allocating video transcoding resource and system utilizing same | |
CN108429701B (en) | Network acceleration system | |
US9313015B2 (en) | HTTP-based synchronization method and apparatus | |
US20140165119A1 (en) | Offline download method, multimedia file download method and system thereof | |
CN108173774B (en) | Client upgrading method and system | |
TWI505682B (en) | Remote management system with adaptive session management mechanism | |
CN110430274A (en) | A kind of document down loading method and system based on cloud storage | |
CN105847381A (en) | Scheduling method and device for content server | |
CN105340245B (en) | For being adapted to the method and corresponding terminal that are configured as the downloading behavior of the client terminal of receiving multimedia content | |
CN105743945B (en) | Document down loading method and system based on switching loading source | |
CN102281190A (en) | Networking method for load balancing apparatus, server and client access method | |
CN107113337B (en) | Method and system for network content delivery | |
CN101237429A (en) | Stream media living broadcasting system, method and device based on content distribution network | |
CN102158518B (en) | Data transmission method in content distribution network (CDN), network node and system | |
US20200320154A1 (en) | A webpage loading method, webpage loading system and server | |
US9270748B2 (en) | Method for content delivery involving a policy database | |
CN103401946A (en) | HTTP (hyper text transfer protocol) uploading acceleration method and system | |
CN103826139A (en) | CDN system, watching server and streaming media data transmission method | |
CN100377522C (en) | OMA download realizing method in content distributing network | |
CN109995824B (en) | Task scheduling method and device in peer-to-peer network | |
CN105431835A (en) | Defragmentation of adaptive streaming segment files in a content delivery network | |
CN105306520A (en) | Method for operating a cache and corresponding cache | |
CN105450771A (en) | Information push and information push optimization methods, servers and systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160323 |
|
RJ01 | Rejection of invention patent application after publication |