A 3G streaming media rate control algorithm based on RTCP feedback

Publisher:悠闲时光Latest update time:2011-03-26 Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

Abstract: In 3G streaming media services, buffer data overflow seriously affects the multimedia picture quality and the smoothness of media playback, and reduces the user's perceived satisfaction with streaming media services. In order to solve this problem, according to the feedback mechanism proposed by 3GPP PSS, a 3G streaming media rate control algorithm based on RTCP feedback information is described. Computer simulation proves that the algorithm not only effectively prevents buffer data overflow, but also ensures the transmission efficiency and avoids buffer data underload, thus achieving high-quality streaming media services.
Keywords: RTCP feedback; network buffer overflow; client buffer underflow; rate control0

Introduction
The third generation of mobile wireless communication transmission technology can provide 384Kb/s transmission bandwidth in outdoor environments and up to 2Mb/s indoors, so the 3G system can carry high-quality mobile streaming media services. With the increasing demand of mobile users for video-on-demand services and the large-scale promotion of 3G networks by operators, streaming multimedia services have gradually developed into the most important mobile value-added services. However, the time-varying characteristics of wireless links and the functional limitations of mobile terminals have greatly challenged the quality of streaming media services. Research shows that buffer data underflow usually causes freezing of the picture, interruption of user playback and frequent data buffering, while overflow will discard the received data packets that exceed the buffer capacity limit, thereby increasing the packet loss rate, damaging the media picture quality, and seriously affecting the user's satisfaction with the perceived quality of the service. If the
streaming media server can adjust the streaming media sending rate in time according to the current usage of the cached data, it can achieve storage control of the cached data, thereby avoiding buffer data overflow. This paper describes a streaming media rate control algorithm based on RTCP feedback information, which can effectively achieve the above goals, realize uninterrupted and smooth playback of streaming media services, and improve the perceived quality of users.

1. RTCP feedback mechanism
The 3GPP PSS specification provides a complete point-to-point streaming media structure framework based on mobile networks, as shown in Figure 1.

a.JPG
The server implements streaming media content packaging and sends it to the user terminal via the all-IP network composed of the public Internet and the mobile core network. In the core network, the network cache generally exists in the SGSN or RNC, and its role is to cope with the throughput changes of the wireless link. During the media session, RTP provides end-to-end real-time transmission function, but does not guarantee the quality of service, while RTCP provides feedback on the current network status and data reception quality. Based on this information, the server can implement data transmission control for changes in network status. In this feedback mechanism, the client generates RTCP RR (RTCP Receiver Report) and the server generates RTCP SR (RTCP Sender Report). They provide information such as packet loss rate, interval jitter, maximum received packet sequence number and maximum sent packet sequence number. The 3GPP PSS specification also defines the NADU (Next Application Data Unit) feedback package to describe the terminal capabilities and provide information on the client cache status. The three main parts of NADU are:
Play-out Delay (PD), which is the time difference between the scheduled play time of the next application data unit and the time to generate the NADU packet.
Next Sequence Number (NSN), which is the sequence number of the next data packet to be decoded in the cache.
Available buffer space (Free Buffer Space, FBS), which reflects the size of the current available buffer space.
The feedback process based on RTCP is shown in Figure 2. After the server and the client complete the session establishment, the server starts the streaming media transmission process, and the RTP protocol is responsible for the transmission of media data from the server to the client. The client puts the statistical packet loss rate, the maximum received packet sequence number (HRSN), the playback delay, the available cache space, and the packet sequence number (NSN) to be sent to the decoder into the corresponding parameter fields in the RTCP SR and NADU to form an RTCP mixed packet. The RTCP mixed packet is periodically sent to the server to estimate the network status and the occupancy status of the client cache space. The server can also use the statistical value of the sent packet sequence number and the HRSN in the RTCP RR to judge the cache status on the SGSN or RNC, adjust the sending rate of the data packet, and realize the sending rate control.

d.JPG

2 Sending rate control algorithm
When the client sends a service request to the server, the server configures the connection attributes for the client through the RTSP protocol, obtains the network cache and client cache Nmax and Cmax, and completes the establishment of the streaming media session. After the session is established, the server divides and packages the media content, marks the sequence number. And sends it to the client. Let the size of the i-th data packet be Si. When the sequence number of the first data packet sent by the server at the initial moment of the session is ISN=O, the amount of data sent in time t for N data packets is. After the server receives the RTCP feedback from the client, it can know the packet sequence number HRSN received by the client when the RTCP RR report is generated, and the locally recorded sending packet sequence number, that is, the maximum packet sequence number HTSN currently sent. The difference between the sequence number HTSN and the HRSN represents the number of data packets being transmitted in the network. Assuming that these data packets are temporarily stored in the network cache, the current network cache storage state can be estimated as:
f.JPG
Therefore, the server can obtain the network cache state by the above formula every time it receives an RTCP feedback packet. The data packets received by the client are pre-stored in the terminal cache, and then sent to the decoder for decoding and playback in the order of timestamps. The delay between the client generating NADU feedback and the scheduled playback time of the data packet with sequence number NSN is tPD, the time when the server receives RTCP feedback is tRR, and the scheduled playback time of the data packet with sequence number i is the timestamp Ti, so there is a time offset toff:
g.JPG
This time offset is the time from the generation to the reception of the NADU packet in the RTCP feedback, and also takes into account the situation of playback pause or data buffering. The server can measure the current client cache free space at time t (t>tRR) after receiving the feedback packet:
h.JPG
Where: FBS is the cache available space of NADU feedback; TNSN+toff is the actual decoding time of the data packet NSN. Since formula (3) does not take into account the data packets that the server has sent but the client has not received, the above formula is modified as follows:
i.JPG
Using formula (1) and formula (4), the server should make the following judgment before sending the next data packet i=HTSN+1:
j.JPG
When the above two formulas are true at the same time, it means that the network cache and the client cache still have surplus to receive new data packets, and it is safe for the server to continue to send new data packets. Otherwise, the server suspends sending until the conditions in the above formula are true. Considering the effectiveness of the transmission rate control, the following correction is made to equation (5):
k.JPG
Where: Nthrehold, Cthrehold are safety thresholds. This threshold can ensure that the cache data will not overflow due to the inability to judge the transmission conditions in time before the new RTCP feedback arrives. It can also be seen from equations (1) and (4) that the Ncurr estimate is slightly high and the Cfree estimate is slightly low. This is done to more effectively prevent the occurrence of frequent network cache data overflow and mobile terminal data underflow.

3 Algorithm simulation
According to the above algorithm, Matlab simulation is used to encode the media content with a duration of 42 s at a rate of 57 Kb/s and divide it into 360 packets on the server side. The maximum bandwidth on the wireless link is 64 Kb/s, and there is a 5 s interruption during the link data transmission process. The maximum value of the cache on the SGSN or RNC is 160 Kb, the maximum value of the client cache is 320 Kb, and there is a 3 s pre-buffer before the media application. The safety thresholds Nthrehold and Cthrehold are set to 95% and 90% of the maximum value respectively. The sending interval of the client RTCP feedback packet is 1 s. If the server does not control the sending rate, the amount of data in the network cache and the client cache is shown in Figure 3 and Figure 4. The client cache begins to overflow at around 41 s, and the network cache increases sharply and overflows due to the interruption of the wireless link between 45 and 50 s. Figure 5 shows the sending rate of the server.

b.JPG

The server based on the RTCP feedback control algorithm can timely estimate the cache status and control the sending rate, and can effectively prevent the cache data from overflowing even if the wireless link is interrupted. As can be seen from Figures 6 and 7, the amount of data in the network cache and the client cache is always controlled within their storage capacity. When the wireless link is interrupted, the server suspends data transmission when it finds that the amount of data in the network cache exceeds the safety threshold. Its transmission rate is shown in Figure 8. Since the 320 Kb terminal cache can store 5.6 s of 57 Kb/s media content, it can theoretically withstand a 5 s wireless link interruption. As can also be seen from Figure 7, the algorithm takes into account the data transmission efficiency, makes more reasonable use of the terminal cache space, ensures that data underflow does not occur during the media application process, and avoids the impact of link interruption on playback smoothness.

c.JPG

4 Conclusion
The 3G streaming media rate control algorithm described in this article is based on the RTCP RR and NADU feedback information in the 3GPP PSS specification to prevent network cache and terminal cache data from being underloaded. From the simulation results, the algorithm can not only avoid buffer data overflow, but also keep the terminal buffer full of data, effectively resisting the impact caused by the deterioration or complete interruption of the wireless link. If the algorithm is combined with adaptive streaming and stream thinning technology, it can better achieve smooth playback of 3G multimedia and improve the user's perceived quality of the service.

Reference address:A 3G streaming media rate control algorithm based on RTCP feedback

Previous article:How do ESD devices solve all protection problems?
Next article:Design of intelligent residual current electrical fire monitoring detector

Latest Industrial Control Articles
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号