400 likes | 568 Views
Realtime Multimedia Streaming over Internet. Pengjun Pei Dazhen Pan CSE 620 Fall,2001. Overview. Wide Application Video-conference Internet telephony Streaming audio/video players Challenges:Internet is best-effort network Packet loss Bandwidth variation Packet delay variation.
E N D
Realtime Multimedia Streaming over Internet Pengjun Pei Dazhen Pan CSE 620 Fall,2001
Overview • Wide Application • Video-conference • Internet telephony • Streaming audio/video players • Challenges:Internet is best-effort network • Packet loss • Bandwidth variation • Packet delay variation
Content • Video Compression • Congestion Control • Error Control
Video Compression • Various requirement: • Bandwidth • Delay • Loss • VCR like function • Decoding complexity • Intra-frame redundancy & inter-frame redundancy • Non-scalable coding vs Scalable coding
Inter-frame redundancy • MPEG-2: I frame: intra-picture P frame: predicted picture B frame: bi-directional predicted picture MPEG frame dependencies in an MPEG bit stream
Scalable Coding • FGS: fine granularity scalability(proposed to MPEG-4): Bitplanes of enhancement DCT coeffients
Content • Video Compression • Congestion Control • Error Control
Congestion Control • Requirements for multimedia streaming • Relatively constant rate • Low latency for packet delivery • Small latency variance • Timely delivery is more important than complete reliability • Rate control • Rate shaping
TCP/UDP? • TCP • Retransmission mechanism intolerable delays • Multiplicative decrease in case of congestion sharp variation in visual effect • UDP • Unfair to responsive TCP flows • Congestion collapse
Categories of Rate Control • Source-based rate control Source adjusts sending rate Feedback employed Can be applied to both unicast and multicast • Receiver-based rate control Receiver joins layer/channel Used in multicasting scalable video • Hybrid rate control
TCP Friendly Flows • A flow is TCP-friendly if its arrival rate does not exceed the bandwidth of a conformant TCP connection in the same circumstances.
TCP throughput model λ: throughput of a TCP connection MTU: maximum transit unit RTT: Round Trip Time p: packet loss ratio
RAP(Rate Adaptation Protocol) • Proposed by R. Rejaie 1998 • End-to-end architecture
RAP • Decision function • If no congestion is detected, periodically increase the transmission rate • If congestion is detected, immediately decrease the transmission rate • Increase/Decrease algorithm: AIMD • Decision frequency • Smoothed version of one RTT: most recent value of SRTT
RAPDecision function • Mechanisms to detect loss: • Timeout SRTTi = 7/8 * SRTTi + 1/8 * SampleRTT Timeout=μ*SRTT+δ*VarRTT Use transmission history ’coz it isn’t ack-clocked Before sending a new packet, source traverses through the transmission history and detects all timeout losses: WHILE (DepartTimei+Timeout>=CurrTime) IF(Flagi!=Acked) THEN Seqi is lost Detect a burst of loss at once
RAP Decision function(Continued) • Gaps in sequence number(ACK-based) ACK Packet: Acurr:packet being acknowledged N: the last packet before Acurr that was still missing Alast:the last packet before N that was received • Timeout mechanism as a backup for critical scenarios such as when a burst of packets is lost
AIMD in RAP • No-packet loss: • Si = Si + α (step height) • Si = PacketSize/IPGi • IPGi+1 = IPGi*C/( IPGi + C ) • α = Si+1 – Si = PacketSize/C • Upon packet loss: • Si+1 = β*Si • IPGi+1 = IPGi/β • β = 0.5 • IPG:inter-packet-gap
RAP Decision Frequency • Adjust IPG once every round-trip time using most recent value of SRTT Right value of C: • C must be adjusted so that in a steady state, the number of packets transmitted per step is increased by 1. • If IPG is updated once every T seconds and we choose C = T/k, the # of packets sent during each step is increased by k every step. • RAP use k=1 to emulate the TCP window adjust
RAP Fine-grain rate adaptation • Motivation: Make RAP more stable and responsive to transient congestion while still performing the AIMD algorithm at a coarser granularity • Fine-grain feedback: Feedbacki=FRTTi/XRTTi FRTTi,XRTTi: short/long term exponential moving average of RTT samples at the ith adjusting point RTTi+1 = (1 – K)RTTi+K*SampleRTT (KXRTT=0.01 KFRTT=0.9) • Fine-grain adjustment IPGi’ = IPGi * Feedbacki
Binomial Algo • Proposed by D. Bansal 2000 • I: Increase in window as a result of receipt of one window of ACK in a RTT • D:Decrease in window on detection of a loss by the sender • Wt: window size at time t
Properties of Binomial Algo • Any l < 1 has a decrease that is in general less than a multiplicative decrease • TCP Friendly if and only if k + l = 1 and l <= 1 for suitable α and β. • Converge to fairness as long as k > =0, l >= 0, k + l > 0
Ratio of throughput AIMD/Binomial • x:value of k • y:TCP throughput/Binomial throuput
SQRT vs AIMD • SQRT has less oscillatory bandwidth probing
Categories of Rate Control • Source-based rate control Source adjusts sending rate Feedback employed Can be applied to both unicast and multicast • Receiver-based rate control Receiver joins layer/channel Used in multicasting scalable video • Hybrid rate control
Source-based Rate Control for Multicast • Unicast video distribution using multiple point-point connection • Multicast video distribution using point-to-multipoint transmission
Single-Channel Multicast • IVS(INRIA Video-conference System): • Single-channel multicast • Probe-base,use AIMD • Each receiver determine the network status • Source solicits network status info through probabilistic polling to avoid feedback implosion • Compare the fraction of congested receiver with threshold
Multiple-channel multicast • Differentiated service to receivers because each receiver can individually negotiate service parameters with the recourse • Bandwidth inefficiency
Categories of Rate Control • Source-based rate control Source adjusts sending rate Feedback employed Can be applied to both unicast and multicast • Receiver-based rate control Receiver joins layer/channel Used in multicasting scalable video • Hybrid rate control
Receiver-based Rate Control • Typically applied to layered multicast video • Source-based works reasonably well for unicast • Receiver-based targeted at solving heterogeneity problem in the multicast case • Probe-based: • No congestion, receiver probes for available bandwidth by joining layer/channel • When congested,receiver drops a layer
Receiver-based Rate Control • Model-based: • Based on throughput model of TCP • γi:transmission rate of Layer I, L current highest layer • Starts with subscribing base layer(Layer 0), set L=0. • Obtain MTU,RTT, p for a given period, calculate throughput λ . • If λ < γ0 drop base layer and stop receiving video • Else determine L’ ,the largest integer such that
Categories of Rate Control • Source-based rate control Source adjusts sending rate Feedback employed Can be applied to both unicast and multicast • Receiver-based rate control Receiver joins layer/channel Used in multicasting scalable video • Hybrid rate control
Hybrid Rate Control • Targeted at multicast video • Applicable to both layered video and non-layered video • Multiple channels, sender dynamically adjusts the rate for each channel • DSG(Destination Set Grouping) • Multiple streams:same video info with different rate and quality,each sent to an IP multicast group • Receiver chooses a multicast group to join • Source uses feedback to adjust rate for each stream
Rate Shaping • Adapt the rate of compressed video bit-streams to the target rate constraint
Types of rate filter • Codec Filter: perform transcoding between different schemes • Frame-dropping filter: distinguish frame types and drop frames according to importance • Layer-dropping filter: distinguish layers and drop frames according to importance • Frequency filter: discard DCT coefficient of high frequencies
Conclusion • Binomial rate control causes less oscillation to multimedia stream • Current research separates rate control and rate shaping
Main Reference • Deepak Bansal and Hari Balakrishnan ,Binomial Congestion Control Proc. IEEE INFOCOM Conf., Anchorage, AK, April 2001. • S.Floyd, M. Handley,J.Padhye, and J. Widmer, Equation-Based Congestion Control for Unicast Applications, Proc. ACM SIGCOMM’00, pages43-54, Stockholm,Sweden,September 2000 • International Organization for Standardization. Overview of the MPEG-4 Standard,December 1999 • Sally Floyd,Kevin Fall, Promoting the Use of End-to-End Congestion Control in the Internet IEEE/ACM Transaction on Networking,May 1999 • Dapeng Wu,Yiwei Thomas Hou,etc, Streaming Video over the Internet: Approaches and Directions IEEE Transaction on Circuits and System for Video Technology, Vol11,No1,February 2001 • Dapeng Wu, Yiwei Thomas Hou,etc, Transorting real-time video over the Internet:challenges and approaches, Proceedings of the IEEE, vl.88,no. 12, Dec.2000 • R.Padhye,J.Kurose,D.Towsley,and R.Koodi. A Model-based TCP-Friendly Rate Control Protocol. In Proc. IEEE NOSSDAV’99,Basking Ridge,New Jersey,June 1999 • R.Rejaie,M.Handely,and D.Estrin. RAP:An End-to-end Rate-based Congestion Control Mechanism for Realtime Streams in the Internet. In Proc. IEEE Infocom’99,New York,NY,March 1999