Multiple Sender Distributed Video Streaming
300 likes | 472 Vues
Multiple Sender Distributed Video Streaming. Nguyen, Zakhor IEEE Transactions on Multimedia April 2004. Agenda. Motivation Proposed Approach Rate Allocation Algorithm Packet Partition Algorithm Experimental Results Conclusion. Motivation.
Multiple Sender Distributed Video Streaming
E N D
Presentation Transcript
Multiple Sender Distributed Video Streaming Nguyen, Zakhor IEEE Transactions on Multimedia April 2004
Agenda • Motivation • Proposed Approach • Rate Allocation Algorithm • Packet Partition Algorithm • Experimental Results • Conclusion
Motivation • Addresses the problem of video streaming over best effort, packet-switched networks. • Streaming of video requires high bit rates. • Packet loss and delay due to network congestion.
Aim of the proposed approach • Increase throughput in order to meet the high bit rate demands. • Reduce the probability of packet loss.
Proposed approach • Simultaneous video streaming from multiple senders to a single receiver. • Employs a receiver driven protocol • The distributed streaming protocol consists of a Rate Allocation Algorithm (RAA) and a Packet Partition Algorithm (PPA)
Assumption • The bandwidth bottleneck is not at the last hop.
Rate Allocation Algorithm (RAA) • Run at the receiver. • Determines the optimal sending rate for each sender. • Uses information about available network bandwidth, channel characteristics. • Receiver can also redistribute rates among existing senders.
Packet Partition Algorithm (PPA) • Run at the senders. • Ensures that every packet is sent by one and only one sender.
RAA : A closer look • Goal of RAA is to “determine how to split the total video rate among M senders in order to minimize the probability of packet loss.” • Used in conjunction with Forward Error Correction (FEC).
FEC • Used at the receiver side for recovering lost packets. • A FEC block consists of a number of packets. • N packets in a block, K data packets, N-K redundant packets. • For recovery, any K packets in a block must be received.
RAA (contd.) • RAA used with FEC reduces packet loss as compared to single route streaming.
RAA (contd.) • Notations: N : Total no. of packets in FEC block K: No. of data packets in FEC block NA : Number of packets sent by sender A in a FEC block NB : Number of packets sent by sender B in a FEC block
Rate Allocation Formula • We seek to minimize the probability of irrecoverable loss given by NA + NB j C(K,N0,N1)= ∑ ∑ P(A,i, NA)P(B,j-i,NB) j =N–K+1 i=0
Packet Partition Algorithm (PPA) • Goal of the PPA is to “determine which packets should be sent by which senders in order to prevent duplicate packets and minimize start up delay.”
Minimization of start-up delay in PPA • In Kazaa, senders send contiguous blocks of data. Duplication of packets cannot occur. • In PPA, senders send interleaved packets. Reduces start-up delay, but packets may be duplicated.
Avoiding Packet Duplication in PPA • Each sender independently arrives at the same decision as to which packet to send next. • All senders use the same information to choose the next packet to send. • This information is sent to all senders by the receiver.
How PPA works • The receiver sends identical control packets to all senders. • The control packet contains RTT of all senders. Sending rate for all senders. Starting sequence number.
How PPA works (contd.) • Each of the senders uses the information in the control packet to compute the estimated arrival time for packet k • The time difference between the arrival and playback time of packet k is then computed. • The sender that maximizes this time difference is chosen to send packet k
Irrecoverable loss probability for various FEC levels as a function of bad times
Optimal sending rate for route A as a function of bad times for route B
Irrecoverable loss probability ratio as a function of average bad time of route B
Irrecoverable probability as a function of sending rate of sender A
Conclusion • Inaccuracy in parameter estimation can skew the results. • Cannot protect against packet loss in case of coinciding congestion intervals on different routes.