KR20100055296A - System and method for sequential multimedia streaming using redirected url of distributed contents - Google Patents
System and method for sequential multimedia streaming using redirected url of distributed contents Download PDFInfo
- Publication number
- KR20100055296A KR20100055296A KR1020080114297A KR20080114297A KR20100055296A KR 20100055296 A KR20100055296 A KR 20100055296A KR 1020080114297 A KR1020080114297 A KR 1020080114297A KR 20080114297 A KR20080114297 A KR 20080114297A KR 20100055296 A KR20100055296 A KR 20100055296A
- Authority
- KR
- South Korea
- Prior art keywords
- client
- content
- streaming
- node
- segments
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23106—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234345—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements the reformatting operation being performed only on part of the stream, e.g. a region of the image or a time segment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/437—Interfacing the upstream path of the transmission network, e.g. for transmitting client requests to a VOD server
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/858—Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
- H04N21/8586—Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot by using a URL
Abstract
Description
The present invention relates to a multimedia streaming service. More specifically, the multimedia content to provide a streaming service is divided into several segments, distributed and stored in a cache server of multiple nodes, and a node receiving a streaming request from a client redistributes the distributed stored content. When a redirected URL is returned to a client, the present invention relates to a system and method for sequentially receiving content streaming from each cache server by using a redirected URL.
With the development of internet technology, a streaming service that receives multimedia content such as video or animation through the internet in real time is being activated. Streaming refers to a technique of playing in real time while buffering a certain amount of the entire file, unlike a download method of playing after receiving all multimedia content files. Since the rest is continuously transmitted while playing back the buffered part, it is called 'streaming' because the transmitted data is treated as if it were a continuous, continuous stream of water. Such streaming services include real time broadcast services or video on demand services.
Meanwhile, with the explosive increase in video content including user created contents (UCC), Internet traffic has been increasing rapidly in recent years. The growth rate of Internet bandwidth (supply) is not able to keep pace with the growth rate of Internet traffic (demand). In 2007 alone, global Internet traffic grew 75 percent, but Internet bandwidth grew only 44 percent.
As a way to solve the shortage of Internet bandwidth, CDN (content delivery network) technology is attracting attention. CDN technology is a technology that can utilize the internet network more efficiently by using active traffic distribution to increase average network utilization and lower peak traffic. According to the CDN technology, the content provider replicates the content to be provided to the client to a plurality of locally distributed servers, and when requested by the client, the content provider can receive the content from the optimal server.
In the case of streaming services, a technology for dividing a large amount of multimedia content into several segments and distributing and storing them in multiple nodes (including a cache server) is already known. According to this, distributed storage of streaming data can distribute the load of the entire system and efficiently use data storage space.
However, since the conventional distributed storage streaming technology is a method in which a specific node receiving a client's streaming request takes segments from adjacent nodes and transmits the segments to the client, a streaming session is established only between the specific node and the client receiving the client's request. Therefore, there is a problem that the quality of streaming service is deteriorated when the load of the corresponding node or the network between the server and the client is not good.
Accordingly, the present invention is to solve the conventional problems, in the content distributed storage multimedia streaming service to prevent the load concentration on the node receiving the client's streaming request, even if the network condition between the server and the client quality of streaming service To provide a multimedia streaming system and method that can prevent degradation.
In order to achieve this object, the present invention provides a sequential multimedia streaming system and method using the redirected URL of the distributed stored content.
A sequential multimedia streaming system according to the present invention includes a content provider for providing multimedia content, a plurality of nodes distributed locally and distributed between the content provider and a plurality of clients, each of which is provided with at least one node. And a cache server, wherein the multimedia content is divided into at least two segments and distributed and stored in different cache servers distributed to at least two nodes. The first node receiving the streaming request from the client among the nodes generates and returns a redirected URL of the content specifying the distributed storage location of the segments to the client, and uses the redirected URL to the client. When streaming requests are sequentially received from the cache servers, which are distributed and store the segments, the segments are sequentially streamed to the client.
In the sequential multimedia streaming system of the present invention, the cache servers may be given different IP addresses, the segments may be given different file names, and the redirected URL may be assigned to the cache server. Can be generated by combining an IP address with the filename of the segment.
The apparatus may further include an index server provided at each node to store an IP address of the cache server and a file name of the segment, and the index server may include the IP address of the cache server and the segment at the first node. You can provide the file name of.
In addition, each of the segments may be redundantly stored in at least two or more of the nodes.
On the other hand, the sequential multimedia streaming method according to the present invention is distributed geographically distributed between the content provider and the plurality of clients providing the multimedia content, a plurality of nodes each of which stores the segment in which the multimedia content is divided in a cache server Receiving a streaming request from the client at a first node, generating and returning to the client a redirected URL of the content specifying a distributed storage location of the segments; And streaming the segments sequentially to the client by the cache servers storing the segments in a sequential request for streaming from the client using a redirected URL.
In the sequential multimedia streaming method of the present invention, the cache servers may be given different IP addresses, the segments may be given different file names, and the redirected URL may be assigned to the cache server. Can be generated by combining an IP address with the filename of the segment.
In addition, each of the nodes may further comprise an index server for storing the IP address of the cache server and the file name of the segment, the first node to generate the redirected URL when a streaming request from the client comes In order to receive the index server, the IP address of the cache server and the file name of the segment may be provided.
In addition, each of the segments may be redundantly stored in at least two or more of the nodes.
The present invention distributes and stores the divided content segments in a cache server of several nodes, and when the node receiving the client's streaming request returns the redirected URL of the content to the client, the client uses the redirected URL to cache the multiple nodes. Since the content is sequentially streamed from the servers, there is an advantage that can prevent the load concentration on a particular node.
In addition, the present invention, by storing the divided content segments in two or more nodes redundantly, even if the network state between the server and the client of a particular node can receive streaming using another node that stores the same content segment, There is an advantage that can prevent degradation of quality.
Hereinafter, with reference to the accompanying drawings will be described in detail an embodiment of the present invention. In describing the embodiments, descriptions of technical contents that are well known in the art to which the present invention pertains and are not directly related to the present invention will be omitted. This is to more clearly communicate without obscure the core of the present invention by omitting unnecessary description. In addition, like reference numerals designate like or corresponding elements throughout the accompanying drawings.
1 is a view schematically showing the configuration of a multimedia streaming system according to the present invention, Figure 2 is a view showing the configuration of the multimedia streaming system and the content distribution storage method according to an embodiment of the present invention.
Referring to FIG. 1, in the multimedia streaming system of the present invention, a plurality of nodes are locally distributed and distributed between a content provider CP and a plurality of clients C1, C2, C3, C4, C5,..., Cn. N1, N2, N3, ..., Nn).
Content provider (CP) is a server that stores the original of the multimedia content to provide a streaming service, also called an origin server (origin server), multimedia server, content server. The content provider CP distributes and stores a copy of the multimedia content in each node N1, N2, N3, ..., Nn according to a predetermined content distribution storage policy. Multimedia content includes UCC and other video content, online education, mass media content such as movies, broadcasts, music, recording and live broadcast content.
As shown in FIG. 2, each node N1, N2, N3,..., Nn has one or more cache servers CS11, CS12, CS21, CS22. The multimedia content MC is divided into several segments S1, S2, S3, S4,... And distributed in a cache server of several nodes. That is, each segment is distributed and stored in different cache servers, which are distributed and stored in at least two nodes.
The segmentation of the multimedia content MC is performed according to a predetermined predetermined rule, and the content division rule may be determined in various ways such as a frame unit, a time unit, a capacity unit, and the like. In addition, the content division rule may be determined differently for each content type or may be determined collectively regardless of the content type. In addition, the content partitioning rule may be determined in proportion to the storage capacity of each node or may be determined regardless of the node storage capacity. Multiple description coding may be used, for example, when dividing multimedia content into segments.
Each node N1, N2, N3, ..., Nn is given a different IP address, and the cache servers CS11, CS12, CS21, CS22 of each node are also given different IP addresses. Also, different file names are assigned to the divided content segments S1, S2, S3, and S4. Table 1 below is an example of IP addresses and file names of content segments of a node and a cache server.
In addition, each node (N1, N2, N3, ..., Nn) further comprises an index server (IS1, IS2), the IP address of the node as shown in Table 1, the IP address of the cache server, The file name of the content segment is stored in the index server. In addition, the index server may further store nodes or cache servers and other information about the content.
Meanwhile, the client C1 includes one or more buffers B1 that receive streaming data and temporarily store the streaming data. The client C1 encompasses various electronic devices capable of receiving, decoding and playing streaming data. For example, the client C1 may be a computer, a set top box, a personal digital assistant (PDA), a mobile phone, a game machine, an MP3 player, or the like.
Next, a multimedia streaming method according to an embodiment of the present invention will be described with reference to FIG. 3. From the following description, the configuration of the above-described multimedia streaming system will also be clearer.
When the client C1 makes a streaming request to a specific node, one of the cache servers CS11 and CS12 of the node N1 receives the streaming request of the client C1 (step S1). Hereinafter, the specific node N1 and the cache server CS11 that have received the streaming request of the client C1 will be referred to as a first node and a first cache server, respectively, to distinguish them from other nodes and other cache servers.
Upon receiving the streaming request from the client C1, the first cache server CS11 requests distributed storage information of the corresponding content from the index server IS1 provided in the first node N1 (step S2). That is, the segments in which the content is divided are distributed and request the IP addresses of the cache servers and the file names of the segments.
The index server I1 provides distributed storage information of the corresponding content, that is, IP addresses of the cache servers and file names of the content segments, to the first cache server CS11 (step S3). For example, if the content (movie.mpg) requested by the client C1 for streaming is divided into S1 to S4 and distributed to cache servers CS11 to CS22 as illustrated in Table 1, the index server IS1 IP addresses of the corresponding cache servers (123.456.789.11 to 123.456.789.22) and file names of the content segments (movie01.mpg to movie04.mpg) are sent to the first cache server CS11.
Receiving distributed storage information of the content from the index server IS1, the first cache server CS11 combines the IP addresses of the cache servers and the file names of the content segments to generate a redirected URL of the content, and generates the client C1. ) (Step S4). The redirected URL of the content designates a distributed storage location of the divided segments. The following is an example of the redirected URL of the content.
123.456.789.11/contents/movie01.mpg
123.456.789.12/contents/movie02.mpg
123.456.789.21/contents/movie03.mpg
123.456.789.22/contents/movie04.mpg
The client C1 sequentially requests streaming to each of the cache servers CS11, CS12, CS21, and CS22 using the redirected URL received from the first node N1 (steps S5, S7, S9, and S11). In response to the client request, each cache server CS11, CS12, CS21, CS22 sequentially streams the content to the client C1 (steps S6, S8, S10, and S12).
That is, when the client C1 requests streaming to the first cache server CS11 using the redirected URL of the content (step S5), a streaming session is established between the client C1 and the first cache server CS11. Streaming is performed for the first content segment S1 connected and stored in the first cache server CS11 (step S6). To perform streaming, the cache servers CS11, CS12, CS21, and CS22 of each node N1 and N2 have a real-time streaming protocol (RTSP) of IETF RFC2326 and a real-time transport protocol of IETF RFC3550. ) / RTCP (RTP control protocol) is supported.
The client C1 starts playback while buffering the content segment sent by the first cache server CS11. When the content segment transmission from the first cache server CS11 is completed, the client C1 ends the streaming session with the first cache server CS11 and plays back to the second cache server CS12 while playing the buffered portion. Is requested (step S7). Accordingly, a streaming session is connected between the client C1 and the second cache server CS12 and streaming for the second content segment S2 is performed (step S8).
In this manner, content streaming is performed sequentially from the cache servers CS11 and CS12 of the first node N1, and then content streaming is sequentially performed from the cache servers CS21 and CS22 of the next node N2. . In this way, streaming is sequentially performed from multiple nodes, thereby effectively preventing a load from being concentrated on a specific node.
Meanwhile, according to the present invention, the divided content segments are duplicated and stored in two or more nodes, so that even if the network state between the server and the client of a specific node is not good, streaming may be performed using another node in which the same content segment is stored. This will be described below with reference to FIG. 4. 4 is a diagram illustrating a configuration of a multimedia streaming system and a distributed content storage method according to another embodiment of the present invention.
The multimedia content MC is divided into several segments S1, S2, S3, S4,... And distributed in a cache server of several nodes, each segment being redundantly stored in at least two different nodes. For example, in FIG. 4, the first segment S1 and the second segment S2 are connected to the cache servers CS11 and CS12 of the first node N1 and the cache servers CS21 and CS22 of the second node N2. The third segment S3 and the fourth segment S4 are simultaneously stored in the cache servers CS21 and CS22 of the second node N2 and the cache servers CS31 and CS32 of the third node N3. do.
Therefore, if the network condition between the client server C1 and the cache servers CS21 and CS22 of the second node N2 is not good, the third segment S3 and the fourth segment S4 are connected to the second node N2. Streaming is performed from the cache servers CS31 and CS32 of the third node N3, not from the cache servers CS21 and CS22. To this end, each node or cache server is provided with a function for identifying a network state, and when the cache server generates a redirected URL of content to be returned to the client, the network state is reflected.
In this case, the redirected URL of the above-described content may be generated as follows.
123.456.789.11/contents/movie01.mpg
123.456.789.12/contents/movie02.mpg
123.456.789.31/contents/movie03.mpg
123.456.789.32/contents/movie04.mpg
As described above, the specification and the drawings have been described with respect to the preferred embodiments of the present invention, although specific terms are used, it is only used in a general sense to easily explain the technical details of the present invention and to help the understanding of the invention. It is not intended to limit the scope of the present invention. It is to be understood by those skilled in the art that other modifications based on the technical idea of the present invention are possible in addition to the embodiments disclosed herein.
The present invention can be usefully used for various multimedia streaming services that appear in various forms such as video contents, online education, mass media such as movies, broadcasts, music, recording and live broadcast contents, and IPTV, including UCC.
1 is a view schematically showing the configuration of a multimedia streaming system according to the present invention.
2 is a diagram illustrating a configuration of a multimedia streaming system and a distributed content storage method according to an embodiment of the present invention.
3 is a flowchart illustrating a multimedia streaming method according to an embodiment of the present invention.
4 is a diagram illustrating a configuration of a multimedia streaming system and a distributed content storage method according to another embodiment of the present invention.
<Description of main parts of drawing>
CP: Content Provider
N1, N2, N3,... , Nn: node
C1, C2, C3, C4, C5,... , Cn: Client
MC: Multimedia Content
S1, S2, S3, S4: Content Segment
CS11, CS12, CS21, CS22, CS31, CS32: Cache Server
IS1, IS2, IS3: Index Server
B1: buffer
Claims (8)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080114297A KR20100055296A (en) | 2008-11-17 | 2008-11-17 | System and method for sequential multimedia streaming using redirected url of distributed contents |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080114297A KR20100055296A (en) | 2008-11-17 | 2008-11-17 | System and method for sequential multimedia streaming using redirected url of distributed contents |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20100055296A true KR20100055296A (en) | 2010-05-26 |
Family
ID=42279795
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080114297A KR20100055296A (en) | 2008-11-17 | 2008-11-17 | System and method for sequential multimedia streaming using redirected url of distributed contents |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20100055296A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016010229A1 (en) * | 2014-07-16 | 2016-01-21 | 김재경 | Operating method of client and server for streaming service |
-
2008
- 2008-11-17 KR KR1020080114297A patent/KR20100055296A/en not_active Application Discontinuation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016010229A1 (en) * | 2014-07-16 | 2016-01-21 | 김재경 | Operating method of client and server for streaming service |
KR20160009322A (en) * | 2014-07-16 | 2016-01-26 | 김재경 | Operating method of client and server for streaming service |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20100055297A (en) | System and method for simultaneous multimedia streaming using redirected url of distributed contents | |
US8966097B1 (en) | Fractional redundant distribution of media content | |
US10148716B1 (en) | Dynamic generation of video manifest files | |
US8880650B2 (en) | System and method for storing streaming media file | |
KR101104729B1 (en) | System and Method for Multimedia Streaming of Distributed Contents Using Optimal Way of Acquiring Segments | |
RU2636123C2 (en) | Device for provision of content, method of providing contents, program, and system of giving content | |
JP5932987B2 (en) | Location and extraction of segmented content | |
US8230100B2 (en) | Variable fidelity media provision system and method | |
US20110191439A1 (en) | Media content ingestion | |
US20090007196A1 (en) | Method and apparatus for sharing media files among network nodes with respect to available bandwidths | |
US20120254456A1 (en) | Media file storage format and adaptive delivery system | |
TWI424322B (en) | Data stream management system for accessing mass data | |
US20230017663A1 (en) | Video file storage prediction process for caches in video servers | |
CN100486330C (en) | Method for realizing flow media server supporting long-distance storage mode | |
WO2001022688A9 (en) | Method and system for providing streaming media services | |
KR101088022B1 (en) | Multimedia Streaming System and Method of Distributed Contents Based on User's Preference by VCR Function Control | |
KR101128293B1 (en) | System and Method for Multimedia Streaming of Distributed Contents Using Node Switching Based on Cache Segment Acquisition Time | |
KR20040088868A (en) | Apparatus and method for deliverying digital contents | |
US9386056B1 (en) | System, method and computer readable medium for providing media stream fragments | |
KR20100055296A (en) | System and method for sequential multimedia streaming using redirected url of distributed contents | |
KR20100059117A (en) | Streaming system and cache server for distributed multimedia contents and method for streaming contents | |
KR101137248B1 (en) | System and Method for Multimedia Streaming of Distributed Contents Using Mobile Agent | |
KR101112572B1 (en) | System and Method for Multimedia Streaming of Distributed Contents Using Node Switching Based on Cache Segment Quantity | |
KR100797389B1 (en) | The cluster based streaming system and method using multiple description coding | |
US11811838B1 (en) | Generation of unique presentation of media content |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
N231 | Notification of change of applicant | ||
E601 | Decision to refuse application |