120 likes | 244 Vues
This research explores clustering methods for source/channel rate allocations in receiver-driven multicast systems constrained by a limited number of streams. Key questions include the optimal size of streaming groups to efficiently serve receivers, the design of the streams, and how receivers can choose among them. The study assumes uniform bitrate streams and leverages Forward Error Correction (FEC) to enhance reliability. By simulating various packet erasure channels, we identify clustering algorithms that yield optimal allocations, allowing efficient data transmission and improved receiver experience.
E N D
Clustering of Source/Channel Rate Allocations for Receiver-driven Multicast under a Limited Number of Streams Philip A. Chou, Microsoft Research Kannan Ramchandran, UC Berkeley
Distribution over channels ClusteringReceivers Space of associatedchannels • Questions to be answered: • How large should M be to serve “most” receivers well? • How can we design the collection of M streams? • How can a receiver decide which of the M streams to use? • We will assume streams are all at the same bitrate. • Redundancy is provided by FEC. source parity 1 2 … M
Existing FEC Systems 100Kbps 100Kbps 100Kbps 100Kbps • Commercial systems (e.g., Windows Media) use systematic Reed-Solomon code to produce N-K parity packets for every K source packets • The parameters (N,K) are chosen to match the packet loss characteristics for the channel source source parity source parity source parity K N for more reliable channels for less reliable channels
Existing FEC Systems 100Kbps 100Kbps 100Kbps 100Kbps • Priority Encoding Transmission (PET, Albanese et al., 1996) is similar, but it allows K to change across source layers with different importance. K1 parity parity parity source source source K2 K3 N
PET packetization • Property: recover layer i iffreceive ≥Ki packets (out of N) • Albanese et al. (1996) use 3 layers (I,P,B), don’t optimize • Davis & Danskin (1996) optimize Ki s for any number of layers for minimum distortion • Mohr, Riskin, & Ladner (1999) assume fine grain scalability (e.g., SPIHT) and adjust breakpoints using greedy search • Puri & Ramchandran (1999) optimize breakpoints using O(N) algorithm
Optimal Stream for a Known Channel • Wolog assume N layers, layer i =1,…,N coded with Ki=i. • Let R=(R0,R1,…,RN) be breakpoint vector, where R0 ≡ 0 and R1,…,RN index the last byte in layers 1,…,N respectively. • Let D(R0), D(R1), …, D(RN) be the corresponding vector of distortions if R0, R1,…, RN source bytes are recovered. • Let q=(q0,q1,…,qN) be probability mass vector, whereqk=Pr{1stk of N layers recovered}=Pr{k of N packets received}. • The effect of any stationary packet erasure channel on the receiver’s expected distortion is through q=(q0,q1,…,qN). D(R0) OperationalD(R) function D(R1) D(RN) R R0 R1 RN
Expected Distortion and Rate • Expected Distortion is • Transmission rate (bytes per GOF) is where ak=N/(k(k+1)) for k=1,…,N-1 and aN=1. • Finding R=(R0,R1,…,RN)that minimizes D(R) s.t. R(R) ≤R* can be found by minimizing D(R)+lR(R) for some l>0 using the O(N) algorithm of Puri & Ramchandran.
Optimal Stream for a Collection of Channels • Let {qq} be a collectionof channels indexed byq Є L over which thereis a distribution n. • Expected distortion of PET packetization R for channel qq is • Overall expected distortion (w.r.t. n) is • Hence to min D(R) s.t. R(R) ≤R*, find q=∫qq and use P&R. n L q
Multiple Optimal Streamsfor a Collection of Channels • Start with M streams with PETpacketizations R1,…,RM. • Let m(q) be stream numberto which receiver withchannel qq should subscribe. • Optimal m(q) (minimizing overall expected distortion) is m(q) = argminmDq(Rm) = argminm∑ qq,kD(Rm,k), which induces partition cells Lm={q:m(q)=m}. • Optimal PET packetization Rm for cell Lm is which can be solved by the Puri-Ramchandran algorithm. • Repeat. n 2 1 L M …
Simulation Setup • We simulate collection ofiid packet erasure channelswith N=40, q ~ Beta(1,b),mean m=1/(1+b)=.10,.15,.20. • We assume D(R)=A2-2cR,R = #bytes per GOF, R*=7/c. • Find clusters with M=1,2,4,8,16,32. Beta(1,1/m-1) distribution
Conclusion • We have presented a clustering algorithm that finds the set of M streams having source/channel rate allocations (PET packetizations) that optimally covers the space of packet erasure channels under an arbitrary distribution • “nearest neighbor” performed by N-dim dot product • “centroid” is performed by O(N) algorithm • For typical (?) distribution of channels, 4 streams can gain 4 out of a possible 5 dB (i.e., loses only 1 dB compared to an infinite number of streams).