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

2 downloads 302 Views 453KB Size Report
The advantages of LSNC are that: (1) As a ... has the advantage of network coding, and can enhance ..... Crowcroft, "XOR
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)

Suggest Documents