IPTV media distribution technology-Proxy Cache

Source: Internet
Author: User

Abstract: media distribution technology plays a key role in ensuring the service quality of IPTV services. CDN (Content Delivery Network) technology has been widely used in Web services. However, unlike traditional Web Services, IPTV needs to distribute a large amount of video data, the traditional CDN technology cannot fully meet the needs of IPTV services. This article introduces the Proxy Cache Technology Applied to IPTV Video Stream Distribution.
Key words IPTV Media Stream Distribution hierarchical encoding segmented Cache

1. Overview

Since its own TV business, people are not satisfied with passively receiving TV programs. Users always want to get their favorite TV programs as they wish. This is not hard to understand why people wanted to use MTV in 1980s; people wanted to use the video-on-demand service in 1990s; people wanted to use the Internet Protocol TV (IPTV) service in recent years. In fact, in a sense, IPTV is a continuation of the VOD service in 1990s.

The beginning of VOD. People want to provide time-shift TVs for their favorite TV programs so that they can watch movies or TV programs very comfortably at home. The basic idea is to store the content in the memory while developing the distribution network to provide access and deliver the video content. The original business promoter came from the radio and television business provider and the film publisher. However, unfortunately, due to the current technical conditions (the expected bearer network was a broadband ISDN Based on the ATM Technology) the required infrastructure cost is much higher than the demand for VOD services. In this way, the development of VOD is slow for a period of time. In addition to opening up some VOD services on some local networks, most of VOD services stay at the research and experimental level. At the same time, the emergence of web services brings people the joy of using web services to obtain text information.

With the emergence of digital cameras, the enhancement of storage system capabilities, the increase of network transmission bandwidth, and the enhancement of Mobile Phone terminal capabilities, the transmission of network video information has become one of the hot topics of attention. The difference with VOD in 1990s is that the network video Bearer Network is an IP network, and the user's display terminal is also extended to include TV terminals, computers, mobile phones, etc. The video delivery method is also expanded from the pure "push" method of broadcast TV to the "push" mode of the original TV and the "pull" mode of VOD. You can obtain program information as needed. That is to say, IPTV will provide video information to users just like text information provided by Web Services.

Although IPTV mainly provides video information to users, due to the increasing business forms and types of user terminals of IPTV services, this makes it impossible for service providers to provide services to a large number of users with different terminal capabilities at the same time with a single source of information. This article introduces a Proxy Cache Technology for video content distribution in IPTV services.

2. IPTV service quality requirements

Because the content of a video program is large, it takes a long time to download all the program information if you use the download and playback method, therefore, when providing services, you cannot use the post-download playback method. Instead, you must use a method similar to the existing broadcast and television playback method. That is to say, you can play the video simultaneously when downloading the video, from the user's point of view, it means downloading and playing. The IPTV service mainly provides the live broadcasting and on-demand media information services. For the live broadcast mode, the video stream cannot be interrupted during playback, and users can switch between multiple programs during playback. The switching time must be within a relatively short time range. For the VOD business, you can find the desired program and control the program (including fast forward, fast return, and pause ), at the same time, it is required that the video program information to be played be smooth without obvious interruptions.

With regard to the current development status of video encoding technology, the network transmission bandwidth required to enable real-time online video program information is usually measured in megabits per second. IPTV services primarily provide bidirectional asymmetric video information. Users and service providers communicate with each other in Client/Server mode. In this way, if multiple users view the video program information stored in a video memory at the same time, they have high requirements on the input and output of the storage server and the bandwidth requirements of the communication network. For this reason, IPTV services usually use technologies similar to the current CDN to cache video program information to edge facilities close to users to reduce the pressure on the primary video storage server and the communication network. However, video information is usually larger than text information. If you cache all video information to edge storage devices, this will result in a waste of storage facilities, at the same time, because users use terminals with different capabilities, the service provider is required to provide video information with different transmission rates. Using proxy caching technology becomes an important means to solve the problem of media stream transmission on the Internet.

3. Proxy Cache Technology Overview

3.1 system structure assisted by media stream Proxy Cache

Figure 1 shows the media stream delivery system in proxy mode. In this system, media streams are delivered using RTP, RTCP, and RTSP.

The basic idea of using proxy cache is that the user (client)'s control information and media delivery information are transmitted through two different channels. The media stream server transmits media information to the user (client) according to the control information instructions. The user uploads the control information to the Media Proxy. If the Media Proxy Cache stores the media content that the user wants, the proxy directly delivers the information stored in the cache to the cache space of the user (client). The cache space receives the media information and passes it to the player for playback. If no information is required by the user in the cache proxy, send the command to the server request to transmit the corresponding media information. Based on different cache proxy policies, the server directly transmits media information to the proxy's switch or stores it in the cache proxy's cache, the cache then transmits the media stream information to the user through the switch.

Figure 1 media stream delivery system using proxy

3.2 cache proxy technology

In terms of the cache proxy technology, the media information is cached in the cache proxy and then transmitted to the user. However, due to the large amount of video media information, if the cache proxy is used as a server backup, the requirements for cache proxy will be too high, which will inevitably increase the cost of service providers. At the same time, because the CTR of different program content users is not the same, it is unnecessary to cache all media content in the same way. Therefore, currently, the proxy cache is usually used to store all the popular content, while some of the media content with a small amount of broadcast traffic is cached. But how to determine what needs to be cached and how long the cache takes has become a topic of research and discussion by researchers. The existing cache algorithms mainly include proxy caching for homogeneous clients and proxy caching for different quality clients.

3.3 proxy cache for homogeneous clients

Currently, most Proxy Cache technologies are applicable to homogeneous clients with the same or similar configurations and capabilities after the proxy. In this way, the media information of the same version can meet all requests from homogeneous clients for the same content, and have the same requirements on the bandwidth of the client connected to the network and the playing capability of the client. Even so, you can store the content of a program in the proxy cache and manage the information that has been stored in the proxy cache (how to place and replace the stored information) it is still a challenging issue. Different algorithms bring about different service quality and different consumption of proxy resources. This article mainly introduces four types of proxy caching algorithms currently studied: Variable interval caching, prefix caching, segmented caching, and variable speed caching.

3.3.1 variable interval Cache

The variable interval caching algorithm caches media information at variable intervals for continuous access to streaming media. The algorithm is implemented as follows: When two clients request the same media content to the same proxy cache within a period of time, according to the request of the first client, the proxy cache sends a request to the Media Server and sends the received media information to the first requester. It also stores the media information in the proxy cache, when requests from the second client arrive, the proxy cache can directly send the media information stored in the cache to the second requester, after the media information is sent to the second requester, the proxy cache then releases the media information. In this way, the Media Server only needs to transmit the media information once through the backbone network to serve the two clients. This reduces the backbone network bandwidth, reduces the waiting time for the second requestor, and improves the service quality. When multiple clients request the same media information within a certain period of time, they can request the media information from the Media Server and store it in the proxy cache, based on the subsequent request sent by the requestor to the corresponding requestor, the media information is released when the media information is sent to the last requestor. In this way, the proxy cache is required to send media information only when the first client requests media information from the Media Server, and subsequent clients only need to obtain media information from the proxy cache. Depending on the time interval from the first client to the last client that requests the same media information, the media information must be kept at different intervals in the proxy cache, when the interval is the same as the playback time of the entire program, all information about the Requested program is retained in the proxy cache. During a program livestream, you usually need to store all the information of the program in the proxy cache.

3.3.2 prefix Cache

In the previous algorithm, the transmission bandwidth of the backbone network is reduced, and the initial playback speed of the later requestor is improved. However, the start playback time of the first requestor is not reduced. If you store the start part of each program in the proxy cache before there is a user request, when the first client requests media information, it can also increase its initial speed. At the same time, the proxy cache requests subsequent content from each media server. This is the basic idea of prefix cache algorithms.

When using the prefix cache algorithm, you must consider the Length of program content that should be cached in the proxy cache. Considering that the client needs to smoothly play the media content, the proxy cache must at least store the information that is sufficient for the client to play after receiving the subsequent media information from the proxy server to the Media Server for a period of time. When the storage space of the proxy cache is relatively rich, you can store the prefix information as long as possible.

3.3.3 segment Cache

The prefix cache algorithm mainly solves the problem of initial response speed, in which a media information segmentation problem is hidden. The prefix itself means that the media information is divided into different segments. In the subsequent request process of the proxy cache from the Media Server, the request or sending must be segmented based on the characteristics of the media information. In particular, for live streaming businesses, the client must perform fast forward and return operations, which means that information must be added to the media information segment. This also requires that the media information itself be segmented.

The segmented cache algorithm is a widely used algorithm in academic circles. Based on different purposes, the segmented cache algorithms are divided into exponential segmentation and slow segmentation ", exponential segmentation divides information into segments of different lengths based on the distance between the content and the starting point. The longer the segment, the larger the length, this is mainly used by the proxy cache to quickly adjust the cached content and discard large pieces of media information as needed. The basic idea of "Slow segmentation" is to segment media information as late as possible, and to segment media information after collecting as much statistics as possible, in this way, it is best to reduce bandwidth requirements and improve service quality.

The biggest benefit of multipart caching is that it can be transmitted at a variable bit rate. For this reason, it is also suggested that the most exciting part of content information be obtained for segmentation based on the opinions of the content provider, then, the client provides these highlights when viewing the content at the beginning, and the user determines whether to continue watching the selected content or directly jumps to the content that he thinks is the most beautiful.

3.3.4 rate-based Cache

The above three algorithms cache data in chronological order to reduce the pressure on network bandwidth, without considering the changes in network transmission bandwidth requirements caused by the differences in the amount of information at different times after Media Information encoding. The basic idea of the rate-based Cache algorithm is to view the information of different rates in different time periods from the timeline, and store partial information of the same rate in the Media Server, the agent caches some information about the change rate. In this way, media information will be transmitted at an equal rate between the Proxy Cache and the Media Server, the proxy cache combines the received constant rate media information with the media information that has been cached in the Variable Rate section of the proxy cache and sends it to the client to meet the player's continuous playback requirements.

3.4 proxy cache for different quality clients

The proxy cache described in 3.3 is applicable to clients with the same speed and format. IPTV services can be provided to clients that use different access networks and have different device configurations. In this case, to meet the needs of clients with different capabilities, the Media Server needs to store multiple backups of the same content in different formats suitable for the network speed, which consumes a lot of storage and network resources. To solve this problem, the hierarchical encoding method emerged. This algorithm encodes media information by layer, stores layer encoding with important information in the proxy cache, and stores other layer information in the media server. For clients with low-speed requirements, the proxy cache can directly send the stored information to meet their needs. For clients with high-speed requirements, the proxy cache can first send the stored information to the client, and then request the information of other layers from the Media Server to the client to meet the client's requirements on Information speed and format. Currently, media information is usually divided into 2 ~ Layer 3. The optimal layering method is still under study.

Generally, it can be applied to the encoding rate with a large speed range, for example, the MPEG-4 mostly uses the hierarchical encoding algorithm. The biggest advantage is that clients with different transmission rates and display formats use different combinations of different layers of information to save storage space and transmission bandwidth.

3.5 Proxy Cache on overlapping Networks

Currently, most Internet operators suffer from the use of video download software similar to BT on the network. The transmission of Multi-to-one video information consumes a large amount of network resources, resulting in network congestion. According to relevant statistics, BT download information currently occupies a large proportion of the total amount of information on the Internet. In terms of implementation mechanism, using peertopeer for video information transmission is also a Proxy Cache. In the peertopeer environment, each client is a server and a client. From the perspective of proxy cache, because the information stored by the client comes from the same media server, in this sense, each client acts as a proxy cache.

The peertopeer environment is usually a loosely coupled environment. Each client can leave or prohibit access from other clients without notifying other clients. This will inevitably affect the service quality. If peertopeer is configured on the second layer of proxy cache, and the first layer of proxy cache is completed by a fixed Proxy Cache configured by the service provider, in this way, the service quality can be improved, and the resources of the proxy cache of the service provider can be saved.

4. Conclusion

IPTV services are currently a hot issue in the industry, although the current transmission bandwidth of the IP network has reached a certain level and has the ability to transmit information such as video information that requires high bandwidth. However, it is still a big challenge to deliver video information to meet users' needs when providing unicast video services. Proxy Cache Technology already has many applications on the CDN used by Web Services. However, compared with text information, the live video service itself has a large amount of information, high transmission bandwidth requirements, and high interaction requirements. The Proxy Cache Technology Used for web services cannot be simply applied to VOD services. Specific algorithms are required to save storage and transmit resources. This article briefly introduces the Proxy Cache algorithm currently in use or in the research phase. These algorithms are usually designed for a specific scenario. They are not exclusive and are complementary. They can be used at the same time or in different application environments. Currently, the commercial Proxy Cache usually uses relatively simple algorithms to achieve simple purposes. Proxy Cache algorithms are still under development. The smooth development of these technologies and their application in IPTV services will be conducive to the healthy development of IPTV services.

 

Transferred fromHttp://www.sansky.net/article/2007-08-10-iptv-cdn.html

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.