250 likes | 356 Views
Efficient Path Aggregation and Error Control for Video Streaming. OMESH TICKOO, Shiv Kalyanaraman , John Woods Rensselaer Polytechnic Institute (RPI). : “ shiv rpi ”. Sponsors: ARO, DARPA-NMS, Intel. Introduction. Motivation: Video over best-effort Internet
E N D
Efficient Path Aggregation and Error Control for Video Streaming OMESH TICKOO, Shiv Kalyanaraman, John Woods Rensselaer Polytechnic Institute (RPI) : “shiv rpi” Sponsors: ARO, DARPA-NMS, Intel
Introduction • Motivation: Video over best-effort Internet • Broadband => more access bandwidth • End-to-end (E2E) => constraints due to path congestion • Virtual extension of broadband access pipe E2E using multi-paths • Path Diversity: dimensions • Aggregate Capacity • Delay diversity • Loss diversity • Correlations in path performance characteristics • Key: Match inherent content diversity to path diversity
Performance Saturation (even w/ many flows/path) Motivation: Internet Path Congestion limits E2E bandwidth Internet Server Access Link Client Access Link Performance Access Link Speed
Multi-paths? Overlays or peers can provide path diversity even if multi-paths not available natively in the Internet. Issue: diversity of performance (b/w, delay, loss), possible correlations…
Performance Scaling Performance Access Link Speed Smart Multi-path Capacity Aggregation (SMCA): Motivation Path (Flow) Aggregator/ Multiplexer Path (Flow) Aggregator/ De-multiplexer Internet Client Access Link Server Access Link E2E Broadband Virtual Pipe Abstraction!!
High Delay/Jitter Low Capacity Lossy Single path issues: capacity, delay, loss… Time • Network paths usually have: • low e2e capacity, • high latencies and • high/variable loss rates.
Low Perceived Loss High Perceived Capacity Low Perceived Delay/Jitter SMCA: Leverage Diversity!
SMCA: Framework Content Delay Diversity Unit Loss Diversity Unit Network Receive Buffer
SMCA: Delay Diversity Unit High Delay RANK Low Delay RANK Application Data Paths Ranked by Latency
SMCA: Delay Diversity Unit High Delay RANK Low Delay RANK Application Data Paths Ranked by Latency Early deadline packets mapped to low-delay paths
SMCA: Delay Diversity Unit High Delay RANK Low Delay RANK Transmit Queue Paths Ranked by Latency Early deadline packets (in order of rank) mapped to low-delay paths (in order of rank)
SMCA: Delay Diversity Unit High Delay RANK Low Delay RANK Transmit Queue Paths Ranked by Latency Late deadline packets mapped to high-delay paths… Note: these packets leave the sender roughly at the same time as the early-deadline packets
SMCA: Delay Diversity Loss Diversity High Delay Low Delay Transmit Queue Paths Ranked by Latency Consider a delay-based group of paths and the associated packets…
SMCA: Delay Diversity Loss Diversity High Delay Low Delay Transmit Queue Paths Ranked by Latency Consider a delay-based group of paths and the associated packets…
SMCA: Loss Diversity Unit High Loss RANK Low Loss RANK n GOPs Paths Ranked by Loss Rate Re-rank Paths within this group based upon packet loss rates
SMCA: Loss Diversity Unit P B B P High Loss RANK B B I Low Loss RANK n GOPs Paths Ranked by Loss Rate Enlarged View of Packets (with content labels) and Paths
SMCA: Loss Diversity Unit P B B P High Loss RANK B B I Low Loss RANK n GOPs Paths Ranked by Loss Rate Map high priority packets (eg: I-frame packets) to low loss rate rank paths
SMCA: Loss Diversity Unit P B B P High Loss RANK B B I Low Loss RANK n GOPs Paths Ranked by Loss Rate Continue map packets to low loss rank paths based upon priority (Eg: P-frames get the next set of loss-ranked paths)
SMCA: Loss Diversity Unit P B B P High Loss RANK B B I Low Loss RANK n GOPs Paths Ranked by Loss Rate Lowest priority packets get high loss rate paths (within the delay-based group of paths)
SMCA: Loss Diversity Unit + FEC P-FEC I-FEC P B High Loss RANK B P B B I Low Loss RANK n GOPs Paths Ranked by Loss Rate FEC (unequal FEC) for a GOP mapped within the same delay-group, but mapped to the higher loss paths
Num. Of Paths 1 2 3 4 5 PSNR (dB) 20.98 22.48 25.42 26.02 28.04 Content Source Content Sink Table 1. Average PSNR Variation with Number of Paths Background traffic generator Background traffic sink SMCA: Performance with increasing number of Paths
Content Source Content Sink Background traffic generator Background traffic sink Topology to test delay diversity and loss diversity gains 5 paths
Avg. Delay (ms) SMCA PSNR(dB) PT PSNR(dB) OPMS PSNR(dB) 300 21.78 18.73 11.03 100 25.12 24.21 19.19 50 28.32 29.46 24.33 30 30.12 31.63 27.96 Table 3. Gains with Delay Variation SMCA gains with delay diversity SMCA achieves even better performance (than simple multi-path mapping: OPMS) when average delay and jitter is higher
Avg. Loss Prob. SMCA PSNR(dB) PT PSNR(dB) OPMS PSNR(dB) 0.4 22.78 20.31 11.64 0.35 26.32 26.86 18.21 0.1 29.03 29.02 24.43 0.05 29.32 31.82 26.06 Table 2. Gains with Loss Variation SMCA gains with loss diversity SMCA achieves even better performance (than simple multi-path mapping: OPMS) when average loss and loss variations are higher!
Summary • Multi-path performance diversity can be leveraged E2E • Key: must be mapped to content diversity • (Similar to lessons learnt from content-driven unequal FEC protection vs uniform FEC protection) • Ideas: • Map late deadline packets to high latency paths • Map higher priority packets to lower loss rate paths (within a delay-based group of paths) • FEC packets sent on paths different from that of associated content (FEC: lower priority) • Our scheme can scale to handle lots of paths • Possible with p2p networks (eg: 10-100 kbps from single path, but 10s of paths) • Does not require MD coding, or high complexity optimization