3
A Unification of Network Coding and Routing Raymond W. Yeung Institute of Network Coding and Department of Information Engineering The Chinese University of Hong Kong, Hong Kong, China Email: [email protected] Abstract—For a linear network code, the encoding profile is specified by, for every output channel of a node, the set of input channels whose symbols upon which the symbol on the output channel depends. For a given single-source network coding problem, it is of fundamental interest to characterize all feasible encoding profiles of a linear network code that achieves the max- flow min-cut bound. We obtain such a characterization through a refinement of the Jaggi-Sanders algorithm due to Barbero and Ytrehus. Our result imply that the design of linear network codes with various constraints and optimization objectives is equivalent to arranging the maximum flows from the source node to the sink nodes. I. SUMMARY OF RESULTS For single-source network coding, the algorithm by Jaggi and Sanders et al. [1] (henceforth the Jaggi-Sanders algorithm) provides a construction of linear network codes that achieve the max-flow min-cut bound for network information flow. The algorithm guarantees to obtain an optimal code provided that the symbol transmitted on an output channel (an output symbol) of a node can be taken as a linear combination of ALL the symbols transmitted on the input channels (input symbols) of that node. When an output symbol is taken as one of the input symbols, the network coding operation is degenerated into a routing operation that requires no computation. The more input symbols involved in the linear coding operation, the more computation it takes. To avoid confusion, we use “network coding” to mean a linear network coding operation other than just routing. For a linear network code, the encoding profile is specified by, for every output channel of a node, the set of input channels whose symbols upon which the symbol on the output channel depends. For a given single-source network coding problem, it is of fundamental interest to characterize all feasible encoding profiles of a linear network code that achieves the max-flow min-cut bound. We obtain such a characterization through a refinement of the Jaggi-Sanders algorithm due to Barbero and Ytrehus [2]. Our result implies that the design of linear network codes with various constraints (e.g., only certain channels are allowed to perform network coding) and optimization objectives (e.g., to minimize the number of channels that need network coding) is equivalent to arranging flows from the source node to the sink nodes. The rest of the paper is organized as follows. In Section II, we introduce the notations and definitions. The discussion in Section III, which is based on [2], sets up the problem. The main result is presented in Section IV. The paper is concluded in Section V. II. NOTATIONS AND DEFINITIONS A directed acyclic network is represented by a directed acyclic graph G =(E,V ), where E is the set of channels and V is the set of nodes. There can be multiple channels from one node to another node. The sets of input channels and output channels of a node t is denoted respectively by In(t) and Out(t). A pair of channels (d, e) is called an adjacent pair if d In(t) and e Out(t) for some t V . For a node t, the value of a maximum flow from the source node s to node t is denoted by maxflow(t). We follow the formulation and notations for a linear network code on an acyclic network in [3]. There exists a unique source node s in the network that generates a message x =[ x 1 x 2 ··· x ω ] , where x i is a symbol in a finite field F . Accordingly, ω imaginary channels are installed as input channels of node s, forming the set In(s). A symbol in F can be transmitted on each channel. A linear network code can be specified by either the global encoding kernels or the local encoding kernels. The global encoding kernel of a channel e, denoted by f e , is a column ω-vector in F ω , and the local encoding kernel of an adjacent pair of channels (d, e), denoted by k d,e , is a symbol in F . By convention, {f e : e In(s)} form the standard basis of F ω . The linear network code transmits the symbol xf e on every channel e. For a node t, we use V t to denote the vector subspace {f e : e In(t)}. The linear network code is an ω- dimensional linear multicast if dim(V t )= ω for all t such that maxflow(t) ω, i.e., the message vector x can be decoded at every such node t, called a sink node. III. THE LIFE ALGORITHM The LIFE algorithm in [2] (see also [4, Ch. 9]) for con- structing linear network codes that achieve the max-flow min- cut bound is a refinement of the Jaggi-Sanders algorithm. This algorithm, described below, constructs an ω-dimensional linear multicast over a finite field F on an acyclic network with maxflow(t q ) ω for sink nodes t q , 1 q η. A sequence of channels e 1 ,e 2 , ··· ,e l is called a path leading to a node t q if e 1 In(s), e l In(t q ), and (e j ,e j+1 ) is an adjacent pair for all 1 j l 1. For each q, 1 q η, there exist ω edge-disjoint paths P q,1 ,P q,2 , ··· ,P q,ω leading to t q .

[IEEE 2012 Information Theory and Applications Workshop (ITA) - San Diego, CA, USA (2012.02.5-2012.02.10)] 2012 Information Theory and Applications Workshop - A unification of network

Embed Size (px)

Citation preview

Page 1: [IEEE 2012 Information Theory and Applications Workshop (ITA) - San Diego, CA, USA (2012.02.5-2012.02.10)] 2012 Information Theory and Applications Workshop - A unification of network

A Unification of Network Coding and RoutingRaymond W. Yeung∗

∗Institute of Network Coding and Department of Information EngineeringThe Chinese University of Hong Kong, Hong Kong, China

Email: [email protected]

Abstract—For a linear network code, the encoding profile is

specified by, for every output channel of a node, the set of

input channels whose symbols upon which the symbol on the

output channel depends. For a given single-source network coding

problem, it is of fundamental interest to characterize all feasible

encoding profiles of a linear network code that achieves the max-

flow min-cut bound. We obtain such a characterization through

a refinement of the Jaggi-Sanders algorithm due to Barbero and

Ytrehus. Our result imply that the design of linear network codes

with various constraints and optimization objectives is equivalent

to arranging the maximum flows from the source node to the sink

nodes.

I. SUMMARY OF RESULTS

For single-source network coding, the algorithm by Jaggiand Sanders et al. [1] (henceforth the Jaggi-Sanders algorithm)provides a construction of linear network codes that achievethe max-flow min-cut bound for network information flow.The algorithm guarantees to obtain an optimal code providedthat the symbol transmitted on an output channel (an outputsymbol) of a node can be taken as a linear combination of ALLthe symbols transmitted on the input channels (input symbols)of that node.

When an output symbol is taken as one of the inputsymbols, the network coding operation is degenerated into arouting operation that requires no computation. The more inputsymbols involved in the linear coding operation, the morecomputation it takes. To avoid confusion, we use “networkcoding” to mean a linear network coding operation other thanjust routing.

For a linear network code, the encoding profile is specifiedby, for every output channel of a node, the set of input channelswhose symbols upon which the symbol on the output channeldepends. For a given single-source network coding problem, itis of fundamental interest to characterize all feasible encodingprofiles of a linear network code that achieves the max-flowmin-cut bound.

We obtain such a characterization through a refinement ofthe Jaggi-Sanders algorithm due to Barbero and Ytrehus [2].Our result implies that the design of linear network codes withvarious constraints (e.g., only certain channels are allowed toperform network coding) and optimization objectives (e.g., tominimize the number of channels that need network coding)is equivalent to arranging flows from the source node to thesink nodes.

The rest of the paper is organized as follows. In Section II,we introduce the notations and definitions. The discussion inSection III, which is based on [2], sets up the problem. The

main result is presented in Section IV. The paper is concludedin Section V.

II. NOTATIONS AND DEFINITIONS

A directed acyclic network is represented by a directedacyclic graph G = (E, V ), where E is the set of channelsand V is the set of nodes. There can be multiple channelsfrom one node to another node. The sets of input channels andoutput channels of a node t is denoted respectively by In(t)and Out(t). A pair of channels (d, e) is called an adjacentpair if d ∈ In(t) and e ∈ Out(t) for some t ∈ V . For anode t, the value of a maximum flow from the source node sto node t is denoted by maxflow(t).

We follow the formulation and notations for a linear networkcode on an acyclic network in [3]. There exists a uniquesource node s in the network that generates a messagex = [x1 x2 · · · xω ] , where xi is a symbol in a finitefield F . Accordingly, ω imaginary channels are installed asinput channels of node s, forming the set In(s). A symbolin F can be transmitted on each channel.

A linear network code can be specified by either the globalencoding kernels or the local encoding kernels. The globalencoding kernel of a channel e, denoted by fe, is a columnω-vector in Fω , and the local encoding kernel of an adjacentpair of channels (d, e), denoted by kd,e, is a symbol in F . Byconvention, {fe : e ∈ In(s)} form the standard basis of Fω .

The linear network code transmits the symbol x fe on everychannel e. For a node t, we use Vt to denote the vectorsubspace �{fe : e ∈ In(t)}�. The linear network code is an ω-dimensional linear multicast if dim(Vt) = ω for all t such thatmaxflow(t) ≥ ω, i.e., the message vector x can be decodedat every such node t, called a sink node.

III. THE LIFE ALGORITHM

The LIFE algorithm in [2] (see also [4, Ch. 9]) for con-structing linear network codes that achieve the max-flow min-cut bound is a refinement of the Jaggi-Sanders algorithm. Thisalgorithm, described below, constructs an ω-dimensional linearmulticast over a finite field F on an acyclic network withmaxflow(tq) ≥ ω for sink nodes tq, 1 ≤ q ≤ η.

A sequence of channels e1, e2, · · · , el is called a pathleading to a node tq if e1 ∈ In(s), el ∈ In(tq), and (ej , ej+1)

is an adjacent pair for all 1 ≤ j ≤ l−1. For each q, 1 ≤ q ≤ η,there exist ω edge-disjoint paths Pq,1, Pq,2, · · · , Pq,ω leadingto tq .

Page 2: [IEEE 2012 Information Theory and Applications Workshop (ITA) - San Diego, CA, USA (2012.02.5-2012.02.10)] 2012 Information Theory and Applications Workshop - A unification of network

For a channel e, let

Ae = {(q, i) : e is on path Pq,i},

where 0 ≤ |Ae| ≤ η. For a channel e �∈ In(s), let e ∈ Out(t)and

π(e) = {e� ∈ In(t) : e� is the predecessor of e onpath Pq,i for some (q, i) ∈ Ae}.

In other words, π(e) is the set of channels in In(t) thatimmediately precede e on some paths passing through e.

The following procedure assigns a global encoding kernelfe for every channel e in the network according to a fixedupstream-to-downstream order so that dim(Vtq ) = ω for 1 ≤q ≤ η.

{// By definition, the global encoding kernels of the// ω imaginary channels form the standard// basis of Fω .

for (q = 1; q ≤ η; q ++)

for (i = 1; i ≤ ω; i++)

eq,i = the imaginary channel initiating path Pq,i;// This initializes eq,i. Subsequently, eq,i will be// dynamically updated by moving down path Pq,i

// until it finally becomes a channel in In(tq).for (every node t, in the upstream-to-downstream order){

for (every channel e ∈ Out(t)){

// Since the nodes t are chosen in an upstream-// to-downstream order, if (q, i) ∈ Ae, then// eq,i ∈ In(t) by induction, so that feq,i ∈ Vπ(e).// Then feq,i �∈ �{feq,j : j �= i}�, and therefore// feq,i ∈ Vπ(e)\�{feq,j : j �= i}�.

if (|Ae| = 0), thenfe = 0;

elsechoose a vector w in Vπ(e) such thatw /∈ � {feq,j : j �= i}� for every (q, i) ∈ Ae;

fe = w;// It suffices to take |F | ≥ max(2, |Ae|).// To see the existence of such a vector w, let// dim(Vπ(e)) = ν. Then,// dim(Vπ(e) ∩ � {feq,j : j �= i}�) ≤ ν − 1

// for every (q, i) ∈ Ae since// feq,i ∈ Vπ(e)\�{feq,j : j �= i}�.// Thus for |Ae| ≥ 2,// |Vπ(e) ∩ (∪(q,i)∈Ae

�{feq,j : j �= i}�)|// ≤ |Ae||F |ν−1 − 1 < |F |ν = |Vt|.

for (every (q, i)) ∈ Ae

eq,i = e;}

}}

Remark In deriving the upper bound on the required fieldsize when |Ae| ≥ 2, 1 is subtracted from the union boundbecause two vector subspaces intersect at the origin. When|Ae| = 1, the proof goes through without subtracting 1.

From the above discussion, we see that the encoding for chan-nel e only needs to be taken as a suitable linear combinationof the inputs on the channels in π(e). When |π(e)| = 1,routing suffices. We also see that it suffices to use F such that|F | ≥ maxe�∈In(s) max(2, |Ae|). This gives a sharper boundon the field size compared with the Jaggi-Sander algorithm,which requires |F | ≥ η.

IV. NECESSITY OF LIFE

Definition 1: Let C be an ω-dimensional linear multicast Cover a finite field F on an acyclic network with maxflow(tq) ≥ω for sink nodes tq, 1 ≤ q ≤ η. For e �∈ In(s), let e ∈ Out(t)and

B(e) = {d ∈ In(t) : kd,e �= 0},

where kd,e is the local encoding kernel from channel d tochannel e. {B(e)} is called the encoding profile of C.

Theorem 1: For any linear multicast C with encoding profile{B(e)}, there exists a linear multicast C� with encoding profile{π(e)} that can be constructed by the LIFE algorithm such thatπ(e) ⊂ B(e) for all e �∈ In(s).Proof Consider the given linear multicast C and fix q. Finda basis of Fω in {fd : d ∈ In(tq)}, and let the correspondingchannels be e1, e2, · · · , eω . Now construct a subnetwork whosenodes are the nodes of the original network. Initially, thesubnetwork consists of the channels e1, e2, · · · , eω . Includea new channel e� in the subnetwork if e� ∈ B(e) for somechannel e already in the subnetwork. Repeat the process untilno channel can be added to the subnetwork. Then in theresulting subnetwork, if e �∈ In(s) is in the subnetwork, thenso are e� ∈ B(e).

Consider the subcode of C defined on this subnetwork withthe global and local encoding kernels inherited from the orig-inal linear multicast. For this subcode, since fe1 , fe2 , · · · , feωis a basis of Fω , the max-flow between source node sand sink node tq on the subnetwork is at least equal toω [3, Theorem 19.10]. Then there exists edge-disjoint pathsPq,1, Pq,2, · · · , Pq,ω in the subnetwork, where each of thesepaths starts at an imaginary channel and ends at one of thechannels {e1, e2, · · · , eω}. In particular, for any e �∈ In(s) onpath Pq,i, its predecessor is in B(e).

Apply the above to every q. Then for each 1 ≤ q ≤ η,we have a set of edge-disjoint paths Pq,1, Pq,2, · · · , Pq,ω thatstart from the imaginary channels and end at sink node tq ,and {π(e)} can be defined as in Section III. For these η setsof edge-disjoint paths, since the predecessor of a channel e �∈In(s) on any path Pq,i, where (q, i) ∈ Ae, is in B(e), we seethat π(e) ⊂ B(e). By applying the LIFE algorithm to these ηsets of edge-disjoint paths, we obtain a network code C� withencoding profile {π(e)}.

Page 3: [IEEE 2012 Information Theory and Applications Workshop (ITA) - San Diego, CA, USA (2012.02.5-2012.02.10)] 2012 Information Theory and Applications Workshop - A unification of network

V. DISCUSSION

The results in this paper convert the problem of determiningthe existence of a network code with a given encoding profileinto the combinatorial problem of arranging flows from thesource node to the sink nodes. Consequently, any optimizationof a linear network coding design related to the encodingprofile can be tackled through arranging flows from the sourcenode to the sink nodes.

For a given single-source network coding problem, if theLIFE algorithm cannot find a routing solution, then thereexists none. This can be useful for establishing the necessityof network coding in certain network multicast problems. In[5], the results in the current paper are used for identifyingregenerating codes for distributed data storage that require nonetwork coding.

ACKNOWLEDGMENT

The author would like to thank Kenneth Shum, SidharthJaggi, and Zongpeng Li for the useful discussions, andAngela Barbero and Øyvind Ytrehus for pointing out thereference. This work was partially supported by a grant fromthe University Grants Committee of the Hong Kong SpecialAdministrative Region, China (Project No. AoE/E-02/08).

REFERENCES

[1] S. Jaggi, P. Sanders, P. A. Chou, M. Effros, S. Egner, K. Jain, andL. Tolhuizen, “Polynomial time algorithms for multicast network codeconstruction,” IEEE Trans. Info. Theory, IT-51: 1973-1982, 2005.

[2] A. I. Barbero and Ø. Ytrehus, ”Heuristic algorithms for small fieldmulticast encoding,” IEEE Information Theory Workshop, Chengdu,China, Oct 22-26, 2006.

[3] R. W. Yeung, Information Theory and Network Coding, Springer, 2008.[4] A. I. Barbero and Ø. Ytrehus, ”An introduction to network coding for

acyclic and cyclic networks,” in Selected Topics in Information andCoding Theory, I. Woundgang, S. Misra, and S. C. Misra, Ed., WorldScientific, 2010.

[5] K. Shum and Y. Hu, “Repair-by-transfer in distributed storage system,”2012 Information Theory and Applications Workshop, San Diego, Feb5- 10, 2012.