On Network Coding Based Multirate Video Streaming in Directed Networks Xu Chenguang Xu Yinlong Zhan Cheng Wu Ruizhe Wang Qingshan Department of Computer Science & Technology, University of Science & Technology of China Anhui Province-MOST Key Co-Lab of High Performance Computing and Its Applications, Hefei, 230026 P.R.China. [email protected] [email protected] {zhanchen, rzwu, wangqs}@mail.ustc.edu.cn coding (or cumulative layered coding) [3-6], in which the source encodes the data stream into different layers called base layer and enhancement layers. These layers are arranged such that the most important layer is placed at the beginning followed by the parts with successively lower importance. Each receiver subscribes to a subset of layers according to its bandwidth. The decoding of the data can be partial, and the more layer be decoded, the better of the quality of multimedia streaming. One important property of layered coding is that, the decoding of higher layer data depends on that of all the lower layers. So receiver can not make use of Layer k data unless it receives all the data from Layer 1 to Layer k. With network coding [1, 7], the intermediate nodes between source and receivers encode the incoming packets into some new ones to outgoing links, and the original file is decoded at receivers. The work of Ahlswede et al. [2] shows that, based on network coding, the broadcast capacity can be achieved, in which each receiver in the same multicast session can be given a rate equal to the minimum of the maximum flow from the source to all the receivers. Li et al. [1] then proved that linear coding usually suffices in achieving the broadcast capacity. A striking example is illustrated in Fig. 1. All links in Fig. 1 are with the same capacity 1. The max-flow rate from S to either T1 or T2 is 2. If network coding is permitted, both T1 and T2 can get a rate of 2. As shown in Fig.1, two distinct unit rate incoming flows, a and b, are encoded at node W, using the + operation (XOR) defined in the Galois Field GF (2). The encoded flow, with a rate of 1, is then sent to both T1 and T2. At last, both receivers can recover the two original flows, a and b, from the two flows they received. But T1 and T2 cannot get a rate of 2 simultaneously, if merely store-and forward routing is permitted. This paper focuses on network coding based layered multirate video streaming in directed networks,

Abstract This paper focuses on network coding based multirate multimedia streaming in directed networks and aims at maximizing the total layers received by all receivers, which directly determine the quality of video streaming. We consider the property of layered coding in video streaming and propose the Layer Separated Network Coding Scheme (LSNC) for layered video streaming. Two algorithms OLSNC and SLSNC are proposed for LSNC based video streaming, where OLSNC achieves an optimal solution, while SLSNC is a polynomial time approximation algorithm. Simulation results show that LSNC is an efficient network coding scheme for multirate multimedia streaming, and the aggregated number of received layers of both OLSNC and SLSNC is very close to the theoretical upper bound in all configurations analyzed.

1. Introduction In recent years, with the rapid growth in computer processing power and network bandwidth, new multimedia applications, such as video conferencing, Internet TV, distance learning, media on demand, etc, become popular. These applications involve real-time video distribution and commonly several receivers. Since unicast transmission of the same data to multiple receivers is a waste of network resource, multicasting multimedia streams over Internet is preferred for bandwidth-efficient real-time multipoint applications. Due to the heterogeneity of the Internet, receivers in the same multicast session may have different bandwidth. So unirate multicasting is not efficient for it may overwhelm some receivers or starve other ones, and multirate multicasting is a preferred mode for distributing large volumes multimedia data. One approach to achieve multirate multicasting is layered

1-4244-1338-6/07/$25.00/©2007 IEEE

332

graphs, and proposed a distributed algorithm. Perhaps, N. Sundaram et al.’s work [10] is most similar to this paper. They considered the heterogeneity of receivers in multimedia streaming and proposed an algorithm, Heterogeneous Receiver Rate Estimate (HERE). HERE firstly partitions the set of receivers into some subsets R1,…Rk, such that receivers in the same subset have the same maxflows from the source, and then allocates link bandwidth based on the solution of an LP problem to maximize the total rates of receivers. At last, HERE uses LIF algorithm [8] to achieve the broadcast capacity of multicast, in which each receiver in the multicast session can be given a rate equal to the minimum of the maximum flow from the source to all the receivers. However, higher rate doesn’t necessarily mean larger number of the aggregate layers of receivers. Neither LIF nor HERE considers the different priority of packets in different layers of multimedia streaming, which may incur the ineffective bandwidth allocation of a receiver being allocated bandwidth for higher layer data without receiving some lower layer data. For the network coding based multirate multicast, it has been proved in [12] that if the finite field F is sufficiently large, all the receivers can be allocated to a rate equals to its maxflow from the source. But as for the multimedia streaming, where different packets have different priorities and decoding of higher layer packets depends on the decoding of lower layer packets, there are some cases, in which it is impossible to make each receiver receive and decode as many layers as what its maxflow from the source permits. For example in Fig. 2, S is the source, T1, T2, T3 are receivers, the capacity of each link is 1, so the maxflows from S to T1, T2, T3 are 1, 1, 2 respectively. If the media streaming originated at S is composed of two layers, Layer 1 and Layer 2, both with a rate of 1, due to the delay constraints of video streaming, T3 cannot receive packets of Layer 2 in the case of T1 and T2 both receiving the packets from Layer 1, otherwise T1 or T2 can not decode any layer of packets.

and aims at maximizing the total number of layers received by all receivers, which directly determines the quality of video streaming. Considering the property of layered coding, we propose the Layer Separated Network Coding (LSNC) scheme for multirate multimedia streaming. An optimal algorithm OLSNC, which is based on Integer Linear Programming (ILP) and is not time efficient for large scale network, will be given for LSNC. We also propose a polynomial time approximation algorithm LSNC. Simulation results show that LSNC is an efficient network coding scheme for multirate multimedia streaming, and the aggregated number of received layers of both OLSNC and SLSNC is very close to the theoretical upper bound in all configurations analyzed. a

S

b b

a W

b

a+b

a a+b T1

a+b T2

Figure 1. An example of network coding The rest of this paper is organized as follows. We will review the related works in Section 2 and give our network model and problem statement in Section 3. In Section 4, we will present the LSNC scheme, and propose two algorithms for LSNC based multirate video streaming. Simulation results will be presented in Section 5. In Section 6, we will discuss the impact of cyclic on LSNC based video streaming. At last, Section 7 serves as conclusions.

2. Related Work There are some studies on network coding based multirate multicasting. R. Koetter and M. Medard [7] derived algebraic conditions for the existence of network coding scheme given different data needs of the heterogeneous receivers. R.W. Yeung et al. [12] proposed a code scheme such that all the nodes in the same multicast session can get a rate equal to its own maxflow from the source node in directed acyclic networks. Li et al. [9] consider the network coding based heterogeneous multicast problem in undirected

S

T2

T1 T3

Figure 2. An example of one receiver can not decode as many layers as what its maxflow from the source permits

333

each receiver, we assume that the layer of each receiver is stable, and will not change during the video streaming.

3. Network Model and Problem Statement The network is modeled as a weighted directed graph G(V, E, C), where V is the set of network nodes and E is the set of weighted directed edges between nodes. We denote C(u, v) as the weight on the directed edge (u, v), which represents the available bandwidth from u to v. v0∈V is the source node, which generates a multimedia stream and R⊆V is the set of receivers. The stream is encoded as a set of layers {Layer 1, Layer 2,…Layer k}, and a receiver can decode packets of layer m unless it can receive all the packets from Layer 1 to Layer m. The rate for Layer l is rl for 1 ≤ l ≤ k. For convenience, we say receiver v is of Layer k only when v can correctly decode the packets of Layer k, which means that v needs to receive all the packets from Layer 1 to Layer k. The objective is to maximize the aggregate number of layers of all receivers, which directly determines the quality of video streaming.

Based on the assumptions above, we will give the network coding scheme for multirate video streaming

4. Video Streaming Based on Network Coding In this section, we will give two algorithms for network coding based multimedia streaming. In contrast to the network coding scheme used in [10], which allows packets from different layers to be encoded together, we adopt the Layer Separated Network Coding (LSNC) scheme in multimedia streaming, in which only packets from the same layer are encoded together. The advantages of LSNC are that: (1) As a special case of network coding, LSNC has the advantage of network coding, and can enhance the aggregate rates of receivers, which is beneficial for the improvement of the quality of multimedia streaming for receivers. (2) In LSNC, link bandwidth in the networks is allocated for each layer. The ineffective bandwidth allocation in which a receiver is allocated bandwidth for higher layer data without receiving some lower layer data can be reduced by carefully allocating bandwidth for each layer. (3) Since only packets in the same layer can be encoded together, and the packets in the same layer have the same size, to pad the shorter packets with zeros [11, 13] is unnecessary. Based on the LSNC scheme, we will propose two algorithms, Optimal Layer Separated Network Coding (OLSNC) and Sub-optimal Layer Separated Network Coding (SLSNC), for video streaming. OLSNC depending on the solution of an ILP problem can theoretically achieve the optimal result of LSNC, in which the aggregate number of layers of all receivers is maximized. But OLSNC is not time efficient for large scale networks due to the computing complexity of the ILP problem. So we also design a polynomial approximation algorithm SLSNC. The advantage of SLSNC is that it is time efficient, while achieving a good performance.

Basic Assumptions: 1. We assume that the number of packets generated by the source node is stable for each time unit, which means that the number of packets generated in unit time for each layer is constant and packets of the same layer are of the same size. Similar to the methods used in [13], we divide the video streaming into several time non-overlap generations, with each generation occupying Δ consecutive time units. And network coding can only be operated on packets belonging to the same time generation. The parameter Δ is configurable, and can be selected to satisfy some delay constraints, which is out of the scope of this paper. 2. For the same video layers, a higher bandwidth link and a larger buffer usually lead to high video reception data rate and lower loss, which will make the multimedia streaming more stable. But in this paper, we assume that the buffer is large enough and the link state is stable, so that the process of multimedia streaming is stable. 3. We assume that there are no cycles in the directed networks, so that LIF algorithm can be used directly to achieve a broadcast capacity of multicast for each layer. As for the directed networks with cycles, the delay incurred in transmission and processing becomes part of the consideration of network coding [12], which makes network coding more difficult. We will discuss the case of directed cyclic networks later in this paper. 4. We assume that the layer rate allocation is fixed and will not change during the video streaming. For

A. Algorithm OLSNC The network model is the same as described in Section 3. Without loss of generality, we let V= {v0, v1, v2,…vn}, and R= {v1, v2,…vm}, where V is the set of all network nodes and R is the set of receivers. The video streaming is composed of k layers {Layer 1, Layer 2,…Layer k}, and the rate for Layer l is rl. For convenience, we let rk+1=∞. Denote Maxflow(vi) as the

334

maxflow from the source node v0 to vi∈R. OLSNC is described as follows.

each link, which guarantee that the aggregate link bandwidth allocated for each layer doesn’t exceed the bandwidth of the link.

OLSNC 1) Compute Maxflow(vi) for each vi∈R. For each vi∈R, if Maxflow(vi)


satisfies

j =1

rj ≤ Maxflow( vi ) <

OL ( vi ) +1

∑ j =1

Theorem 1. OLSNC always achieves the optimal solution of LSNC for multirate multimedia streaming, in which the aggregate number of layers of all receivers is maximized. Proof: Firstly, we need to prove the correctness of OLSNC, which can be seen from the following facts: 1) OLSNC always has a feasible solution, for the layer of each receiver is at least 0. 2) For each link, the aggregate bandwidth allocated for each layer doesn’t exceed the bandwidth of the link, which can be guaranteed by the constraints (6) in the ILP problem. 3) As for each Layer l with allocated bandwidth Yijl on each link, the constraints (3), (4), (5) can guarantee that for ∀ vi∈Rl, vi can get a rate of rl for the Layer l at the end of step(5) in algorithm OLSNC. Secondly, for any feasible solution for LSNC, we consider the bandwidth allocated for each Layer l, and let Yijl equal to the bandwidth allocated on (vi, vj) for Layer l in the solution. The bandwidth allocated on each link should guarantee that each receiver of with a layer above l can get a rate of rl of the data on Layer l, so constraints of (3), (4), (5) in the ILP problem can all be satisfied, and we let the corresponding αil =1 in the ILP problem. At last the aggregate bandwidth allocated for all layers cannot exceed the capacity on each link. It can be seen that, for any feasible solution of LSNC, the constraints (1) ~ (6) of the ILP problem can all be satisfied. As the ILP problem tries to maximize the aggregate number of layers of all receivers, OLSNC can always get an optimal solution of LSNC for multirate video streaming.

rj , compute

OL(vi) for each vi∈R. 3) Solve the ILP problem below to determine Yijl for (vi, vj) ∈E, 1≤ l ≤ k, which is the bandwidth allocated for each Layer l on link (vi, vj), and also determine the parameters αij for vi∈R and 1≤ j ≤OL(vi), which identify whether vi can receive Layer j. 4) Gl(Vl, El) is the subgraph for Layer l, 1≤ l≤ k, with Vl=V, El=E. For (vi, vj) ∈El, Cl(vi, vj)= Yijl, and Rl={vi|vi∈R, αil =1} is the set of receivers that can receive Layer l. Packets belonging to Layer l are delivered in Gl. 5) For each Gl, 1≤ l ≤ k, ∀ vi∈Rl, we make each node in Rl get a rate of rl, by LIF[8]. m OL ( vi )

∑∑α

Maximize

i =1

j =1

ij

Subject to

αi1 ≥ αi 2 , αi 2 ≥ αi 3 ,...,αiOL(v ) −1 ≥ αiOL(v ) for vi ∈ R

(1)

αij = 0 or 1 for vi ∈ R,1 ≤ j ≤ OL(vi )

(2)

i



(l , t ) ij

x

{ j |( vi , v j )∈E}





{ j |( v j , vi )∈E}

x

(l , t ) ji

i

=0

for i ≠ t , i ≠ 0, vt ∈ R, 1 ≤ l ≤ OL(vt )

(3)



x

= αil * rl

for vi ∈ R, 1 ≤ l ≤ OL(vi )

(4)



x0(lj, t ) = αtl ∗ rl

for vt ∈ R,1 ≤ l ≤ OL(vt )

(5)

{ j |( v j , vi )∈E}

{ j |( v0 , v j )∈E}

(l , i ) ji

An example of the execution of OLSNC is illustrated in Fig.3. Consider the networks shown in Figure3 (a) with the link capacities as shown. S is the source node T1, T2 are the receivers, and the multimedia stream is composed of three layers all with rates of 1. Figure 3(b), (c), (d) are the three subgraphs G1, G2, G3 gained before step (5) in OLSNC with the bandwidth allocated on each link. In G1, the maxflow for T1 and T2 are 1, so T1 and T2 can achieve a multicast rate of 1 for Layer 1 by LIF. In the same way, T1 and T2 can both receive Layer 2 in G2, while only T2 can receive Layer 3 in G3. And the aggregate number of layers received is 5. Figure 3(e) shows the optimal multicast tree, and the aggregate number of layers is 3. Figure 3(f) shows the optimal multicast without network coding, and the aggregate number of layers is 4, from which we can see the advantage of network coding over store-and forward routing.

Yijl ≥ xij(l , t ) for (vi , v j ) ∈ E, vt ∈ R,1 ≤ l ≤ OL(vt )

∑Y

l ij

≤ C (vi , v j )

(6)

l

The ILP problem for OLSNC

Constraints (1) and (2) in the ILP problem are the constraints for layer allocation. For receiver vi, if vi can receive and decode Layer j, αij =1, else αij=0. Constraints (1) also avoid the ineffective transmission of layers in which higher layer is allocated to a receiver which missing some lower layers. Constraints (3), (4), (5) are flow balance constraints for nonreceivers, receivers, and source node. Finally, constraints (6) are the link bandwidth constraints for

335

S

1

2 2

1

1

1

T2

(a) S

0

T1

0.5

0.5 T2

(b)

0.5

T1 {L1}

{L1, L2}

S

0 T1

{L1}

1 (d)

T2

T1

{L1, L2} {L1, L2}

{L2}

{L1, L2} (e)

{L1, L2}

{L1, L2}

{L1, L2}

0

1

T2

(c)

{L1} 0

0.5

0.5

0.5

{L1, L2}

1

0

0.5 0.5

S

1

0.5

0.5

0.5

0.5

S

0.5

0.5

0.5

2

T1

0.5

0.5

2

1

S

0.5

T2

T1

T2

(f)

Figure 3. An example of OLSNC and optimal multicast without network coding B. Algorithm SLSNC OLSNC is mainly based on the solution of the ILP problem. If the number of receiving nodes is very large, OLSNC is not time efficient (E.g. when the number of receivers is 20 and the number of layers is 5, the worst case execution time of OLSNC is over 10 hours.). So a polynomial time algorithm is needed. We will propose an approximation algorithm, SLSNC, for the LSNC based multiate multimedia streaming, and the main idea of SLSNC is that we allocate the bandwidth for each layer from low to high with a greedy scheme, in which after the allocation of bandwidth for each layer, we try to maximize the aggregate maxflows of receivers for the rest higher layers. The details of SLSNC are shown as follows.

5)For (vi, vj) ∈E, C(vi, vj)= C(vi, vj)− Yijl, l=l+1; } M a xim ize

v t ∈T



{ j |( vi , v j )∈ E }

x ij( l , t ) −



{ j |( v j , vi )∈ E }

x (jil , t ) = 0

fo r ∀ v i ∈ T , v t ∈ T , t ≠ i , i ≠ 0

(1)



x (jtl , t )

= rl

fo r ∀ v t ∈ T

(2)



x 0( l j, t ) = rl

fo r ∀ v t ∈ T

(3)

{ j |( v j , vt )∈ E } { j |( v0 , v j )∈ E }

Y ijl ≥ x ij( l , t ) fo r ∀ v t ∈ T , ( v i , v j ) ∈ E { j |( vi , v j )∈ E }

1)T=R, l=1, rk+1=0; While ((T≠Ф) && ( l ≤k)) { 2)For all vi∈T, if Maxflow(vi)
f tl + 1

S u b ject to



SLSNC

∑*

x ij( l +1, t ) −



{ j |( v j , vi )∈ E }

x (jil +1, t ) = 0

fo r ∀ v i ∈ T * , v t ∈ T * , t ≠ i , i ≠ 0



x (jtl +1, t )



x 0( l j+1, t ) = f tl +1

{ j |( v j , vt )∈ E } { j |( v0 , v j )∈ E }

= f tl + 1

(4)

fo r ∀ v t ∈ T * (5) fo r ∀ vt ∈ T *

(6)

Z ijl + 1 ≥ x ij( l + 1, t ) fo r v t ∈ T * , ( v i , v j ) ∈ E Y ijl + Z ijl + 1 ≤ C ( v i , v j )

fo r ( v i , v j ) ∈ E

The LP problem for SLSNC

336

(7 )

In SLSNC, we allocate the bandwidth for each layer from Layer 1 to Layer k. As for each Layer l, we firstly compute the maxflows of the nodes in the receivers set T, and update T and T*, where T* is the set of receivers for which Layer l+1 is permitted by the maxflows from the source. The bandwidth allocation for Layer l is based on the solution of the LP problem with the objective of maximizing the aggregate maxflows of the nodes in T*. In the LP problem, constraints (1), (2), (3), are flow balance constraints, which guarantee that when allocate bandwidth for Layer l, all the nodes in T can get a rate of rl. Constraints (4), (5), (6) are used to compute the maxflows for nodes in T*. Constraints (7) are the link capacity constraints. Note that for each layer the link capacity is updated after the bandwidth allocation in SLSNC. Obviously, SLSNC is an approximation algorithm for LSNC, but SLSNC is of polynomial time, and is time efficient when the number of receivers is large.

Scheme. In flat rate scheme, all layers have identical rates. As for the simulation, we let the ri=1, 1 ≤ i ≤ 5, and correspondingly the capacity of each link is uniformly distributed between 0 and 3. 2) Exponential scheme. In this scheme, rk=r1*2k-1. As for the simulation, we let r1=1, r2=2, r3=4, r4=8, r5=16, and correspondingly the capacity of each link is uniformly distributed between 0 and 20. Performance Metrics We define Layer Received Ratio described below as the criterion for performance analysis.

∑ AC(vi ) LRRk = ∑ OL(vi ) v ∈R,OL(v ) =k vi ∈R,OL(vi ) =k

i

i

and

∑ AC(vi ) LRR = ∑ OL(vi ) v ∈R vi ∈R

i

where OL(vi) is the maximum available layers of vi permitted by the maxflow of vi from the source as described in algorithm OLSNC, and AC(vi) is the actual received layers of vi after the execution of the algorithm(e.g. OLSNC, SLSNC). LRRk represents the relative streaming quality of the receivers whose maximum available layer permitted by the maxflow is k, and LRR represents the overall relative streaming quality of receivers.

5. Performance Evaluation In this section will give the simulation results of OLSNC and SLSNC. The simulation environment is described as follows: Network Topology The directed acyclic network G (V, E) consists of 11 nodes with V= {v0, v1,…v10}, where v0 is the source node and v1,v2,…v10 are all viewed as receivers. The edge set E is alternative between E1 and E2, which are described as below.

In the simulations, we consider two network topologies as mentioned above, and for each topology we consider two rate allocation schemes with the corresponding capacity distribution on each link. For each network topology and rate allocation scheme, the simulations are run 1000 times, and we calculate the weighted average of LRR1~LRR5 as well as LRR. We compare the performance of OLSNC, SLSNC, and ROME [14] in Fig.4 (a), (b), (c), (d) and Table 1. From Fig.4 and Table 1 we can see the performance of OLSNC and SLSNC and Rome. In all configurations, for each Layer l the LRRl of OLSNC and SLSNC is very close to 1 or even equals to 1, which means that the results of both OLSNC and SLSNC are very close to the theoretical upper bounds. Considering what we have shown that there are some cases, in which it is impossible to make each receiver receive and decode as many layers as what its maxflow from the source permits (in Section 2), the performance of OLSNC and SLSNC is excellent, which indicates that LSNC is an efficient network coding scheme for multirate multimedia streaming and SLSNC is an efficient approximation algorithm of LSNC. What’s interesting in the simulation results is that in topology 2 with flat rate scheme (as shown in Fig.4 (c)), the LRR3 of OLSNC is lower than SLSNC.

E1 = {(vi , v j ) | i < j}, E2 = {(vi , v j ) | 0 < j − i ≤ 2} Obviously either E=E1 denoted as topology 1 or E=E2 denoted as topology 2, G is directed acyclic. If E=E1, for receiver vj, vj has j incoming links, and the network bandwidth for each receiver is abundant. If E=E2, for receiver vj, vj has at most 2 incoming links, and the network bandwidth for each receiver is relatively insufficient. We will adopt the above two network topologies to analyze the performance of OLSNC and SLSNC. The distribution of the capacity on each link is also alternative: (i) The capacity of each link is uniformly distributed between 0 and 3. (ii) The capacity of each link is uniformly distributed between 0 and 20. The choice of capacity distribution is based on the layer rate allocation scheme below. Layer Rate Allocation Scheme The video streaming generated at the source is composed of 5 layers, Layer 1 ~ 5. We will adopt two layer rate allocation schemes in the simulation. 1) Flat

337

ROME

OLSNC

ROME

SLSNC

1

1

0.8

0.8

0.6

0.6

0.4

0.4

0.2

0.2

0

LRR1

LRR3

0

LRR5

(a) E=E1, flat rate ROME

OLSNC

SLSNC

ROME

1

0.8

0.8

0.6

0.6

0.4

0.4

0.2

0.2 LRR1

LRR3

LRR3

SLSNC

LRR5

(b) E=E1, exponential

1

0

LRR1

OLSNC

0

LRR5

(c) E=E2, flat rate

LRR1

OLSNC

LRR3

SLSNC

LRR5

(d) E=E2, exponential

Figure 4. LRRk comparison between OLSNC, SLSNC and ROME Table 1. Simulation results of LRR for OLSNC, SLSNC and ROME E=E1 Flat Rate

ROME OLSNC SLSNC

0.9361 1.0000 1.0000

E=E1, Exponential

0.9560 1.0000 1.0000

This is due to the fact that, to achieve the optimal result of LSNC, OLSNC may sacrifice the streaming quality of some receivers with low available layers. While for SLSNC, the bandwidth is allocated from low layer to high layer, and the low layers are more likely to be transmitted. As for the total performance, as shown in Table 1, the LRR of OLSNC is higher than that of SLSNC. We can also see from Fig.4 and Table 1 that the advantages of SLSNC and OLSNC over ROME are more manifest in topology 2 (E=E2) with flat rate scheme. Because in topology 2 (E=E2) with flat rate scheme the bandwidth for each receiver is relatively insufficient so advantage of network coding based bandwidth allocation is more significant. In contrast, in topology 1(E=E1) with abundant bandwidth, receivers are of high probability to receive all 5 layers without network coding. For example the average maxflow of nodes in topology 1(E=E1) with flat scheme is about 12, but a rate of 5 is sufficient for receiving all 5 layers. So

338

E=E2, Flat Rate

E=E2, Exponential

0.7276 0.9987 0.9941

0.9573 0.9982 0.9923

there is little space for improvement by network coding. Another phenomenon that can be seen from Fig.4 and Table 1 is that the advantages of OLSNC and SLSNC over ROME are more manifest in flat rate scheme. One of the reasons is that in exponential scheme, the bandwidth cost for receiving an extra layer (especially the high layers) is much more than that of flat scheme. So it is of low possibility for OLSNC and SLSNC to gain one more layer than ROME from the advantage of network coding over store-and-forward routing. In addition, the performance of ROME is very good in exponential rate scheme (LRR>95%). Even though the results of OLSNC and SLSNC are very close to the upper bounds, the improvement is little.

6. Discussions on Cyclic We have assumed that there is no cyclic in the directed networks and proposed two algorithms (OLSNC and SLSNC) for LSNC based multirate video

streaming. In both OLSNC and LSNC, we use the LIF [8] algorithm to achieve the broadcast capacity of multicast for each layer. But as for the directed networks with cyclic, the innovative packets caused by cyclic make network coding more difficult [12]. One of the solutions as mentioned in [2, 8] is to convert the cyclic graph into an acyclic graph. So in OLSNC or SLSNC, we may convert the cyclic graph into an acyclic graph (with the method in [2]) before using LIF to achieve the multicast rate for each layer. But this converting is at the cost of decreasing multicast rate on each layer [2]. Another solution is to use Random Linear Coding (RLC). In RLC, the non-innovative packets caused by cyclic don’t change the subspace from which outgoing vectors are randomly generated, so non-innovative information doesn’t effect the transmission of innovative packets [13]. In OLSNC and SLSNC, we may use RLC rather than LIF to achieve the broadcast capacity for multicast on each layer. The disadvantage of RLC is that it may incur the transmission of non-innovative packets, which is a waste of network bandwidth. Though when the finite field from which all coding coefficients are chosen is large, all receivers can decode the packets from source with high probability [14], we need to reserve some capacities in OLSNC and SLSNC for the retransmission of packets in case of non-innovative packets transmission if RLC is used.

would like to thank the anonymous reviewers for their numerous constructive suggestions which improved the quality and presentation of this paper.

9. References [1] S-Y. R. Li, R. W. Yueng, and N. Cai, "Linear network coding," IEEE Transactions on Information Theory, vol. 49, no.2, pp. 371.381, Feb. 2003. [2] R. Ahlswede, N. Cai, S-Y. R. Li, and R. W. Yueng, "Network information flow," IEEE Transactions on Information Theory, vol. 46, no. 4, pp. 1204.1216, July 2000. [3] S. McCanne, V. Jacobson, and M. Vetterli, "Receiverdriven layered multicast," in Proceedings of ACM SIGCOMM 96, Aug.1996. [4] X. Li, S. Paul, and M. Ammar, "Layered video multicast with retransmissions (lvmr): Evaluation of hierarchical rate control," in Proceedings of IEEE INFOCOM 1998, Mar. 1998. [5] K. Kar, S. Sarkar, and L. Tassiulas, "Optimization based rate control for multirate multicast," in Proceedings of IEEE INFOCOM 2001, Apr. 2001. [6] S. Bajaj, L. Breslau, and S. Shenker, "Uniform versus priority dropping for layered video," in Proceedings of ACM SIGCOMM 98, Sept. 1998. [7] R. Koetter and M. Medard, "An algebraic approach to network coding," IEEE Transactions on Networking, vol. 11, no. 5, pp. 782-795, Oct. 2003. [8] P. Sanders, S. Egner, and L. Tolhuizen, "Polynomial time algorithms for network information flow," in Proc. 15th ACM Symp. Parallel. Algorithms and Architectures (SPAA), San Diego, CA, Jun. 2003, pp. 286–294. [9] Z. Li, B. Li, "Efficient and distributed computation of maximum multicast rates," in IEEE INFOCOM 2005, Volume. 3, page(s): 1618- 1628. [10] N. Sundaram, P. Ramanathan, and S. Banerjee, "Multirate media stream using network coding," in Proceedings of 43rd Annual Allerton Conference on Communication, Control, and Computing, September, 2005. [11] S. Katti, H. Rahul, W. Hu, D. Katabi, M. Medard and J. Crowcroft, "XORs in The Air: Practical Wireless Network Coding," in ACM SIGCOMM 2006. [12] R.W. Yeung, S.-YR Li, N. Cai, and Z. Zhang, "Theory of Network Coding," Now Publishers Inc, 2005. [13] P. A. Chou, Y. Wu, and K. Jain, "Practical network coding," in Proc. 41st Annual Allerton Conference on Communication, Control, and Computing, Monticello, IL, Oct. 2003. [14] J. Yang, "Deliver multimedia streams with flexible QoS via a multicast DAG," in Proc. 23rd International Conference on Distributed Computing System (ICDCS) 2003, pp126-135. [15] T. Ho, M. Medard, M. Effros, and D. Karger, "On Randomized Network Coding," in Proc. 41st Allerton Annual Conference on Communication, Control and Computing, October 2003.

7. Conclusions In this paper, we adopt the Layer Separated Network Coding scheme for efficient multirate multimedia streaming. Two algorithms say OLSNC and SLSNC are proposed for LSNC based video streaming, in which OLSNC achieve an optimal result, and SLSNC gets a sub-optimal result of LSNC but of polynomial time. Simulation results show that LSNC is an efficient network coding scheme for multirate multimedia streaming, and OLSNC and SLSNC both have good performances. Though LSNC has been proved to be efficient for video streaming, whether LSNC can theoretically achieve the best result of Linear Network Coding based multirate multimedia streaming is still an open problem. Another challenge problem is network coding based multirate video streaming in undirected networks, and we will work on it as our future work. We also want to design distributed algorithms for LSNC which can handle the dynamic environments.

8. Acknowledgements This work is supported by the National Nature Science Foundation of China (No. 60533020). We

339

On Network Coding Based Multirate Video Streaming in ... - CiteSeerX

The advantages of LSNC are that: (1) As a ... has the advantage of network coding, and can enhance ..... Crowcroft, "XORs in The Air: Practical Wireless Network.

453KB Sizes 2 Downloads 361 Views

Recommend Documents

On Network Coding Based Multirate Video Streaming in ...
Department of Computer Science & Technology, University of Science & Technology of China ... Network Coding Scheme (LSNC) for layered video streaming. ...... Conference on Distributed Computing System (ICDCS) 2003, pp126-135.

Multirate Media Streaming Using Network Coding
missions using layered source coding are generally used to deliver data streams to heterogeneous receivers. Network .... Illustration of network coding. that the ...

Opportunistic Network Coding for Video Streaming over Wireless
Jun 11, 2007 - coding to improve throughput in a wireless mesh network. .... together into a single packet, called the network code.1 The ...... services”, 2005.

A Block-Based Video-Coding Algorithm Focusing on ...
[15] Shanableh, T. and M. Ghanbari, “Heterogeneous video transcoding to lower spatio-temporal resolutions and different encoding formats,” IEEE trans. on multimedia, 2(2), 101–110, 2000. [16] Shi, Y.Q. and H. Sun, Image and Video Compression fo

Mixed-Resolution Wyner-Ziv Video Coding Based on Selective Data ...
restore the interpolated portions for the spatial domain DVC. In this paper, we ... adaptive line dropping so-called selective data pruning (SDP). SDP is a simple ...

Mixed-Resolution Wyner-Ziv Video Coding Based on Selective Data ...
restore the interpolated portions for the spatial domain DVC. In this paper, we ... adaptive line dropping so-called selective data pruning (SDP). SDP is a simple ...

PATTERN BASED VIDEO CODING WITH ...
1The pattern-based video coding (PVC) outperforms the H.264 through better ..... partitioning for video coding,” IEEE Int. Conference on Acoustics,. Speech, and ...

MULTI-VIDEO SUMMARIZATION BASED ON VIDEO-MMR
we propose a criterion to select the best combination of parameters for Video-MMR. ... Marginal Relevance can be used to construct multi-document summaries ... is meaningful to compare Video-MMR to human choice. In a video set, 6 videos ...

PATTERN BASED VIDEO CODING WITH ... - Semantic Scholar
quality gain. ... roughly approximate the real shape and thus the coding gain would ..... number of reference frames, and memory buffer size also increases.

Custom Implementation: Streaming & Video-on-Demand ...
of the company's departments wanted to be able to see in real time how many users were ... and helped the client - by working directly with their Software. Development department - to implement the required counterpart in their site using the ... wel

Custom Implementation: Streaming & Video-on-Demand ...
Real time user monitoring according to cable operator. With the public release of the platform, it was crucial for both the developers and sales teams to monitor real time cable TV providers information among other data so as to detect possible error

Custom Implementation: Streaming & Video-on-Demand ...
(Playboy TV, Venus, Penthouse,. Sextreme and Brazzers) decided to create for their clients in Latin. America. ❏ Buenos Aires, Argentina. ❏ www.hotgo.tv.Missing:

ON SECONDARY TRANSFORMS FOR SCALABLE VIDEO CODING ...
Email: 1asaxena,[email protected] ... layer prediction residue in scalable video coding (SVC). ... form scheme for coding the “IntraBL residue”.

A Survey on Video Streaming and Efficient Video Sharing In Cloud ...
Leveraging the cloud computing technology, we propose a new mobile video streaming framework ... [9] [10] [11] [12] [13] Users want to maintain control of their.

On Practical Service-Based Computing in Distributed ... - CiteSeerX
to be inefficient, with a huge, and increasing, number of data signals .... However, technology for modeling and analyzing functions at .... it is a wired network of ECUs (in-car wireless devices ..... by the advantages we mention above. In Figure ..

On the Flow Anonymity Problem in Network Coding
proposed Source Authentication Scheme using Network Coding. (SANC). .... propound a signature mechanism that provides data integrity for the packet mixed ...

Network-Adaptive Video Coding and Transmission - (AMP) Lab ...
1. INTRODUCTION. The technology for delivering ubiquitous high bandwidth multimedia services, such as voice with video, will soon become a reality.

Distributed PageRank Computation Based on Iterative ... - CiteSeerX
Oct 31, 2005 - Department of Computer. Science. University of California, Davis. CA 95616, USA .... sults show that the DPC algorithm achieves better approx-.

Heuristic Scheduling Based on Policy Learning - CiteSeerX
production systems is done by allocating priorities to jobs waiting at various machines through these dispatching heuristics. 2.1 Heuristic Rules. These are Simple priority rules based on information available related to jobs. In the context of produ

On Linear Network Coding
simply routed packets. As network coding matures, questions of code construction and of connections between network coding and traditional coding theory are ...

Wireless Network Coding via Modified 802.11 MAC/PHY - CiteSeerX
Quality of Service (QoS). Cross-layer approaches that seek to optimize aggregate network throughput based on adapting parameters from the physical or MAC layers have proven to be effective in this regard. Recently, Network Coding. (NC) has attracted

On Linear Network Coding
California Institute of Technology. Pasadena, CA 91125. {jaggi , effros}@caltech.edu. Tracey C. Ho, Muriel Mйdard. Dept. of Electrical Engineering.

Spatiotemporal Video Segmentation Based on ...
The biometrics software developed by the company was ... This includes adap- tive image coding in late 1970s, object-oriented GIS in the early 1980s,.

On Practical Service-Based Computing in Distributed ... - CiteSeerX
automotive embedded systems and build on our experience in ... description of our ongoing work for practical SBC in automotive ... software engineering researchers in the past few years ..... services provides individual vendors a degree of.