220 likes | 361 Vues
This paper presents a novel approach to bounded delay scheduling that considers packet dependencies in real-time video streaming. The complexity of video streams, characterized by bursty traffic and interdependent packets, necessitates efficient scheduling algorithms to ensure timely delivery. We explore deadline scheduling strategies, focusing on maximizing the completion of video frames while addressing challenges such as FIFO queuing and burst sizes. Through simulations, we assess the performance of various scheduling algorithms, identifying key factors for optimizing throughput and reducing packet loss. Our findings open avenues for improving real-time streaming protocols.
E N D
Bounded Delay Scheduling with Packet Dependencies Michael Markovitch Joint work with Gabriel Scalosub Department of Communications Systems Engineering Ben-Gurion University
Real Time Video Streaming Sandvine, “Global Internet phenomena report – 1H 2013”
Real Time Video Streaming • Video streams are comprised of frames • Bursty traffic • Video frames can be large (>>1500B) • Fragmentation • Interdependency between different packets • Dropping some packets -> drop frame • Packets MUST arrive in a timely manner
Current situation & Related work • Best practices: • DiffServ AF queue for video streams • Admission control (average throughput) • Number of streams can be large • Average throughput < channel access rate • Overlapping bursts >> momentary channel rate • Related work • FIFO queuing with dependencies • Deadline scheduling without dependencies [MPR, 2011] [MPR, 2012] [EHMPRR, 2012] [KPS, 2013] [SML, 2013] [EW, 2012] [AMS, 2002]
Deadline scheduling • Every packet has a deadline • Focus on scheduling • Queue size assumed unbounded • More information (than FIFO)
Buffer and Traffic Model • Single non-FIFO queue of infinite size (one hop) • Discrete time: • Every packet : • One of multiple packets in a frame • Has arrival time, deadline, size and value • Goal: Maximize value of completed frames Arrival substep Delivery substep Cleanup substep Packets arrive • One packet delivered Packets may be dropped
Buffer and Traffic Model • Frames of uniform size – k • No redundancy • Packets of uniform size and value – WLG k = 12
Buffer and Traffic Model • Uniform slack – d • Packets can be scheduled on arrival Deadline(p) Arrival(p) d Arrival sequence t t schedule d
Buffer and Traffic Model • Finite burst size – b b Arrival sequence t
Buffer and Traffic Model • Recap: • Frames of uniform size - • Uniform slack – d • Finite burst size – b • No redundancy • Packets of uniform size and value – WLG 1 • Goal: Maximize number of completed frames • NP-hard off-line problem
Competitive analysis • Worst case performance of online algorithms • – instance • – problem
A proactive greedy algorithm • Ensures completion of at least one frame • Holds packets of only one frame Arrival substep Delivery substep Cleanup substep Packets arrive • One packet delivered Packets may be dropped
Proactive greedy - example Arrival sequence Proactive greedy schedule
Proactive greedy – competitiveness • Competitive ratio – • Details in the paper • Not far off from the lower bound
Greedy algorithm - analysis • Competitive ratio – • Details in the paper • We have a matching lower bound • Reminder: • For proactive greedy –
What about the deadlines? • Deadlines not used explicitly • Bad news? • Worst case performance matches lower bound • Good news • There is space for more interesting algorithms • Improve general performance • How can deadlines be utilized? • Several approaches presented in the paper
Simulation • Three online algorithms: • “Vanilla” greedy algorithm • Greedy algorithm with slack tie breaker • Opportunistic algorithm • And the best current offline approximation
Simulation • Simulation details: • Average throughput = channel access rate • 50 streams at 30FPS • Each stream starts at a random time • Between 0 and 33ms • Random (short) time between successive packets • “jitter” between packets of a single frame
To sum up • First work considering both deadline scheduling and packet dependencies • Very simplified model • Yet hard • Improvements to the model • Non uniform slack • Randomization • Redundancy
Questions? • markomic@post.bgu.ac.il