270 likes | 407 Views
Experience with Control Mechanisms for Packet Video in the Internet. J-C. Bolot and T. Turletti. Presented by Michael Wong Course 18-845, 4/25/00. Outline. Introduction Rate control mechanisms Loss control mechanisms Limitations and outlook Conclusion. Conventional Video.
E N D
Experience with Control Mechanisms for Packet Video in the Internet J-C. Bolot and T. Turletti Presented by Michael Wong Course 18-845, 4/25/00
Outline • Introduction • Rate control mechanisms • Loss control mechanisms • Limitations and outlook • Conclusion
Conventional Video • Rate of video sequence vary rapidly with time • Constant capacity channel • Solution: Vary video quality according to scene complexity so as to keep output rate approx. constant • Rate control based on buffer feedback
Best effort service • Offer channel with characteristics: • Available bandwidth, end-to-end delay and loss • Dependent on other connections in the network • Difficult to determine a priori
Approach 1 • Provide performance guarantees at network level • Requires specific resource allocation and/or reservation mechanisms • Not widely deployed
Approach 2 • Adapt application behavior to network characteristics • Also applicable to network with explicit resource allocation and reservation
Focus • End-to-end delay requires elaborate queuing disciplines • Delay control with adaptive playout algorithms is a well understood problem • Adapt to available bandwidth and loss • Rate control mechanisms • Error control mechanisms
Rate control mechanisms • Examples of source-based control: • TCP – Adjust window size based on network congestion • CATV – Local buffer capacity • WAN – Feedback information on state of network
Difficulties • Characteristics of channel is time varying • Variations dependent on other traffic sources • The “channel” is a heterogeneous multicast tree
Rate adjustment • Parameters for block-based transform video encoding • Frame sampling rate (PQ mode) • Quantization levels (PR mode) • Movement detection threshold (PR mode) • User specifies mode and max_rate
Packets sent using Real-Time Transport Protocol (RTP) Feedback carried by RTCP packets as Receiver Reports (RR) 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |V=2|P|X| CC |M| PT | sequence number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | timestamp | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | synchronization source (SSRC) identifier | +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ | contributing source (CSRC) identifiers | | .... | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Feedback collection
Rate control algorithm • Maximum output rate is controlled by linear increase/multiplicative decrease algorithm: If Congestion max_rate := max(max_rate/GAIN, MIN_RATE) Else if NoCongestion max_rate := min(max_rate + INC, MAX_RATE)
Observations • Algorithm can be used in PQ or PR mode • Rate control vs. window control in TCP • Rate adjustments do not match window adjustments in TCP • No good values of Congestion, NoCongestion, GAIN, and INC.
Rate control (cont’d) • Analytic models of TCP, bandwidth equ of a TCP connection [23], • MTU = maximum packet size • rtt = mean round trip time • p = mean packet loss rate
Limitations • Feedback explosion • Probabilistic sampling scheme in IVS • Scaled feedback scheme of RTCP • Heterogeneity problem • Convert loss rates into a global loss rate • Average or highest loss rate
Experimental evaluation Unicast over INRIA Slow CPU
Experimental Evaluation (cont’d) One Source Three Sources
Loss control mechanisms • Lost packets degrade video quality • Intracoded frames sent at regular intervals • Approaches to loss control: • Reduce the time between intra-coded blocks of image • Intra-code and transmit only blocks that change the most • Use intra- and inter-frame coding (IVS)
Loss control (cont’d) • Destination recovery • Recover at destination using loss concealment techniques (i.e. spatial and temporal interpolation) • Forward Error Correction (FEC)-based error control mechanisms
Loss control using FEC • Redundant data about packet n – k in packet n is made up of macroblocks (MB) • MBs are stored at lower definition • Feedback mechanism is used to control the amount of redundant information sent by source
Limitations and Outlook • Source-based control mechanisms • Heterogeneity of network exhibit widely different characteristics • Either low capacity participants are overwhelmed or • High capacity participants receive low quality video
Solutions • Video gateways • Layered coding • Encode video with a layered or hierarchical coding scheme • Receivers join one or more multicast groups suited to network conditions • “Shared learning” to prevent load explosion
Solutions (cont’d) • Replace join experiments by an explicit estimation at each receiver of equ • Find the largest integer L s.t. • Advantages • TCP-friendly • Does not rely on active probing • Does not require shared learning
Conclusion • Prevents real-time UDP apps from swamping Internet and TCP • Rate adjustment algorithm and rate parameters unclear • Scalability issues with heterogeneous multicast groups • No minimum quality guarantees