_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ITW2002, Bangalore, India Oct. 20-25,2002

Network Coding and Error Correction Ning Cai! Univeraitat Bielefeld Fakultat fur Mathematik

Postfach 100131 33501 Bielefeld, Germany munish~ece.iisc.ernet.in

Raymond W. Yeung Department of Information Engineering The Chinese University of Hong Kong Shatin, N,T. Hong Kong, China http://www.ie.cuhk.edu.hk/people/raymond.php b,

Abstract We introduce network errorcorrecting codes for error correction when a source message is transmitted to a set of receving nodes on a network. The usual approach in existing networks, namely link-by-link error correction, is a special case of network error correction. The netw~rk generalizations ~f the Hamming bound and the Gilbert-Varshamov bound are derived. 1. WHAT IS NETWORK CODING? An acyclic communication network is represented by a finite directed graph 9 = (V, £), where V is the set of nodes in the network and £ is the set of edges in 9 which represent the communication channels. An edge from node a to node b is denoted by (a, b). We call node a (node b) the input node (output, node) of edge (a, b), and we call edge (a, b) an input (output) edge of node b (node a). In the network, a message taken from an alphabet Z is generated by an information source at a node s E V I referred to as the source node, We call the set 2 the source alphabet and the message generated the source message. The source message is transmitted through the network to each node u E U for some U C V, and each node in U is referred to as a sink node. Let R(a,b) be the maximum number of symbols from an alphabet X that can be transmitted on the channel (a, b). R(a,b) is also referred to as the capacity (in the sense of graph theory) of edge (a, b). Define R = {R(a,b): (a, b) E To simplify our discussion, we assume that R(a,b) are (nonnegative) integers. for all (a,b) E E, Such a net";ork can be described alternatively by a graph in which all the edges have capacity 1 and there can be multiple edges between a pair of nodes. Specifically, if R(a,b) = r > 1, we represent the channel (a, b) by r edges of capacity 1, denoted by (a, b)(l), (a, b)(2),... , (a,b)(r), instead of by the single edge (a, b) of capapcity r. In the rest of the paper, we will denote the edge set for such a representation by E", With a slight abuse of notation, we will use (a, b) to refer to one of the channels in E: from node a to node b. We will denote a network described above by (g, s,U, R). For the time being, let us assume that all the channels are error-free. Network coding, which refers

0-7803-7629-3/02/$10,00

© 2002 IEEE

b,

\ b 1+ b 2

S

I

b,

2

b,

U2

Figure 1: A network coding example. to coding at the nodes in a network, may allow more information to be transmitted than what would be possible by routing alone [1]. In fact, routing is a special case of network coding. To illustrate the advantage of network coding, we con-

sider the network in Fig. I. Suppose X = {O, I}. Two bits, bl and b" are transmitted from node s to both nodes UI and with coding at node 3, Here '+' denotes modulo 2 addition. At node UI (U2), the bit b2 (btl can be recovered from the received bits bl (b2 ) and bi + bz- It is easy to verify that if coding is not allowed at node 3, then the above cannot be achieved. Denote by maxflow( s, u) the maximum flow between node s and node u, where u E U. The following fundamental theorem was proved in [1].

u"

Theorem 1 It is possible to transmit a source message with alphabet Z in a network 9 from source node s to sink nodes u E U if and only if

n.

1Ning Cai was with The Chinese University of Hong Kong when this work was done.

UI

b,

log 121:0; n,

(1)

where n = minuEu maxflow(s, u) (logarithms are in the base IXI).

Subsequently, it was proved in [2] by a vector space approach (to be discussed in Section IV) that it suffices to consider linear network codes. More recently, Koetter and Medard [3J developed an algebraic approach to network coding which allows them to obtain the main results in [2] with certain enhancement. In particular, they showed that there exists a static network code such that the source message can be recovered by all the sink nodes with some edges in the network deleted as long as the condition (1) holds in the resulting network. Along another direction, the authors [4] have introduced a model which incorporates network coding and 119

information security. Specifically, a collection of subsets of channels in the network is given, and a wiretapper is allowed to access anyone (but not more than one) of these subsets without being able to obtain any information about the source message. This model includes secret sharing [5J as a special case. In this work, we presented a construction of secure linear network codes provided a certain graph-theoretic sufficient condition is satisfied. In the rest of the present paper, we consider the situation that the channels in the network are not necessarily error-free. We will introduce the notion of network error correction, and derive lower and upper bounds on the size of the source alphabet for given error-correcting capability of the code. The conventional approach in exisiting networks, namely link-by-link error correction, is a special case of network error correction.

nodes c such that (c, a) E r +(a) have already encoded and sent their codewords. That is, node a has received a sequence x'·(o,.) in .1"(0.0) sent by node c from each of its input edge (c, a) E I'+(a) before it encodes. Thus node a is able to encode the information it receives into the codewords ¢(a,b) (x,(",) , (c, a) E I' +(a)) and send them to nodes b on the output edges (a, b) E I'_ (a). Communication ends at the last node in the order whose out-degree must be zero by definition. Thus a function 1>(a,b) from Z to .1"(0 .• ) for each (a, b) E E is introduced in the natural way by such a scheme. Obviously, these functions introduced do not depend on the choice of the linear extension. For a sink node u E U, we write pu(z) (1)(a,u) , (a, u) E I'+ (u)). Thus for a given code, the output of every edge is uniquely determined by the source message z if no error occurs (errors will be defined below). Then a code {¢(a,b) : (a, b) E E} is uniquely decodable, or simply decodable, if pu(z) oJ pu(z') for all z oJ z' and all u E U. We now consider the situation that the channels in the network are not necessarily error-free, i.e., a channel's output may be different from its input. A useful way to think of errors in a channel is that they are "applied" to the input upon transmission. Since the nodes in the network transmit according to a certain coding order we can think of the errors in the network being applied to the channel inputs according to the same coding order. An error is said to occur if an output symbol of a channel is different from the corresponding input symbol. Thus if a codeword consisting of more than one symbol is sent on a channel, multiple errors can occur. A r-error is said to occur (in the network) if the total number of errors occur in all the channels is equal to T.

=

II. NETWORK ERROR CORRECTION We first begin by defining a network code. Later on we will show how such a code can be designed so that it can be used for errorcorrection. Basically, the source message is protected by the network code from distributed errors occurring in different channels in the network. Let (9, s,U, R) be a given acyclic communication network. Then the directed graph g = (V, £) naturally defines a partial order x (:=,,) on the node set V (edge set t:) i.e., for a.b E V ((a, c), (b,d) E E), a:=' b ((a,c):=,,(b,d)) if and only if there is path from a to b (from (a, c) to (b, d)). A partial order can be extended to a (total) order, and the extension, called a linear extension of the partial order in combinatorics, is usually not unique. Let us call an order on V a legal coding order, or simply a coding order, if it is a linear extension of :j. Let r+(a) = {(c,a): (c,a) E E} and r_(a) = {(a, b) : (a, b) E E} be the sets of input and output edges of node Definition 1 A network code is t-error-correcting if it a, respectively. We also call [I'+(a)1 the in-degree and can correct allr-errors for r ~ t, i.e., if the total number [T-(a)1 the out-degree of node a. Without loss of general- of errors in the network is at most t, then the source ity, we can always assume that the in-degree of the source message can be recovered by all the sink nodes u E U. node s is 0 and all other nodes have positive in-degree because a non-source node with no input edge cannot obtain III. THE HAMMING BOUND information from the network, and so it is useless for communication and can be deleted from the edge set. Under Upon defining a t-error-correcting code for an acyclic netthis assumption, a coding order always starts with the work (g, s,U, R) in the last section, we present in this source node s. Let Z be the source alphabet and X be a section upper bounds on the source alphabet, i.e., IZI. finite set that serves as the code alphabet for the network. For a given code ¢ = {¢(a,b): (a,b) E E} and a set Let r(a,b) ~ R(a,b) for (a, b) E E be positive integers. of channels B, let us denote by out(¢, t, B, z) the set of A network code for the network (g, s,U, R) is a family all possible output sequences of the channels in the set of functions {¢(a,b) : (a, b) E E} such that ¢(5,b) : Z - t B (with length L(a,b)EB R(a,b)) when z is source message .1"'0.0) and ¢(a,b) : Il(c,a)Er +(a) .1"(0,.) - t .1"'0.0) if a is and at most t errors occur in the network. For A, B C V not the source node s, such that A U B = V, define Communication over the network with the code defined above may be realized in a coding order as follows. The cut(A,B) = {(a,b) E £: a EA and b E B}. nodes in V encode and send codewords according to this order. The source node s first encodes the source mes- We say that eut(A, B) is a cut between nodes sand u if sage z E Z into ¢(5,b)(Z) for all (s,b) E r _(s) and then sEA and u E B. The quantity L(a,bIEcu'(A,B) R(a,b) is sends the values of ¢(s,b)(Z) to their output nodes b via called the volume of eut(A, B). For a sink node u E U, channels (s, b). Then the second node in the order (whose denote by c(s, u) the minimum volume of a cut between s input edges must be from node s by definition) encodes. and u, which by the max-flow min-cut theorem in graph According to this scheme, when a node a encodes, all theory is equal to maxflow(s, u). I

120

and in the case that the code is linear,

Observat.lon 1 For,o t-error-correcting network code ¢, for any cut(A, B) between the source node s and any sink node u, aut(, t, cut(A, B), z)

121 ::; L(n, t, q), where q = 1,1'1 and A(n, t, q) and L(n, t, q) are the size of an optimal classical q-ary t-error-correcting code of length n and the size of an optimal classical linear q-ary t-errorcorrecting code of length n, respectively.

n aut(, t, cut(A, B), z') = 0 (2)

for all z;z' E 2 such that z

i' z',

Based on this observation, by showing that for all sinks u E U, any cut(A, B) between s and u with volume m (say), and all z E Z,

laut(, t, cut(A, B), z)1 :::

~ (7) (q -

1)',

(3)

An acyclic network is called regular if min., c(s, u) = min., rg(s, u). By means of the max-flow min-cut theorem, it is not difficult to see that the bounds given in Theorem 3 are tight for regular networks with a single sink. IV. THE GILBERT-VARSHAMOV BOUND

we can prove the following sphere-packing bound, or the Hamming bound. Theorem 2 (Hamming Bound) Let (9,s,U,1?) bean acyclic network and n = minaEu c( s, u). Let the code alphabet X be q-ary, i.e., 1,1'1 = q. If there exists a terror-correctinq code on (9, s,U, 1?) for an information source with alphabet Z, then

121<- "t

L...t=O

qn

(~)( t q

_1)'

Although the RHS of (3) is exactly equal to the volume of a sphere in xm with radius t, (3) by no means imply that out( , t, cut( A, B), z) contains a sphere in X m with center at (f(a,b)(Z), (a, b) E cut (A, Bll and radius t. _If this is true, then together with Observation 1, {((a,b)(z),(a,b) E cut(A,B)) : z E Z} would form a classical t-error-correcting code in X m . However, it turns out that this is actually the case when cut(A, B) satisfies a certain property. In the rest of the section, we will develop further result, along this line. A pair of (A, ::SA) is call a partial order set, or a poset, if ::SA is a partial order in A. For a poset (A, ::SA), a, b E A are said to be incomparable if neither ajAb nor b::S Aa. A pairwise incomparable subset of A is called an antichain. For an acyclic network (9, s,U, 1?), we call cut (A, B) a regular cut if its members form an antichain for the poset (E, ::S,), i.e., for a regular cut(A, B), (a, b), (c, d) E cut(A, B) implies that there is no path either from (a, b) to (c, d) or from (c, d) to (a, b). For a sink u E U, we denote by rg(s, u) the minimum volume of a regular cut between s and u.

In this section, we prove sufficient conditions for the existence of t-error-correcting codes on an acyclic network (9, s,U, 1?) by constructing such codes. Throughout this section, we assume that the code alphabet X is GP(q) for some sufficiently large prime q, and we will work in an n-dimensional linear space Gpn(q) .spanned by a linear-code multicast (LCM) defined shortly. The source alphabet Z will be a subset of GP" ('I) for a general code and a k-dimensional subspace of GP"(q) for some positive integer k ::; n for a linear code. Boldfaced letters (e.g., a, b, ... , z) stand for row vectors whose dimensions are understood from the context. The transpose operation on vectors and matrices will be denoted .by "T". SO v", w", etc, are column vectors. The addition and subtraction of vectors are understood to be in the linear spaces over GP(q). With a slight abuse of notation, we also use GF" (q) to denote the linear spaces of :n-dimensional row vectors and column vectors in GF(q). The definition of an LCM we give below has been simplified for acylic networks. Recall the definition of E' in Section 1.

Definition 2 [2J A linear code multicast (LCM) V for an acyclic network (Q,s,U, R) is an assignment of linear subspace .cy(a) of (column space) Gpn(q) to a node a E V and a column vector vv((a, b)) of dimension n to a channel (a, b) E E' over a sufficiently large finite field GP(q) for a positive integer n, such that 1) for all nodes a E V and channels (b, c) E E', .cy(a) c .cy(s), vH(b,c)) E .cy(s), and .cy(s) c Gpn(q); 2) vv((a,b)) E .cy(a) if (a,b) E r _(a); 3) vv((b, c)) is a linear combination ofvv((a, b)), (a, b) E r +(b) for all output channels (b, c) E L(b).

Theorem 3 Let' {(a,b) : (a, b) E E'} be a t-errorcorrecting code for an acyclic network (9,s,U, 1?) with code alphabet X for an information source with alphabet 2, andletn=minuEurg(s,u). Then i) if cut(A, B) is a regular cut between the source node s and a sink node u, then {(f(a.b)(Z), (a, b) Ecut(A, B)) : z E Z} is a (classical) t-error correcting code with alphabet X, and consequently ii) 121 ::; A(n, t, q),

121

Denote by M(a) the matrix whose columns are the vectors assigned to the input channels of node a. For any LCM V, by 3) in the above definition, there exists a column vector a" such that vv((a, b)) = M(a)a T • For the time being, let Gpn(q) plays the role of the source alphabet and call a vector w e Gpn(q) an input to the' network. Then we can define a linear network code based on any LCM V by 1. (,.a)(w) = (w,vy((s,a))) for all a E

r _(s);

2. tP(a,b)(U(a» = u(a)a T , where uta) is the row vector whose ith component is the output of the ith channel in r +(a) in the same order as the columns of M(a). It is easy to verify inductively that

an error vector. Note that if an error vector e occurs, its

components are added to the channel inputs according to the coding order. Then the output of a channel (a, b) is a function of both the input w to the network and the error vector e that occur, and we denote it by ,p(a,b)(W,e).

e', any inputs wand w' to the network, and any error vectors e and e',

Lemma 1 For all (a, b) E ~Ca,b)(W) = (w, vv«a, b»}

for all (a, b) E E'. We now define a generic LCM which we will use for code construction. The existence of a generic LCM is guaranteed by the theorem that follows.

,pCa,b) (w

+ w', e + e')

= ,pCa,b) (w, e)

+ ,pCa,b) (w', e').

By this lemma, for any network input w and error vector e, we have,

,p(a,b)((W, e) = ,p(a,b) (w, 0)

+ ,p(a,b) (0, e).

Definition 3 [2] An LCM V assigning n-dimensional column vectors to channels in a network (Q,s,U, R) is generic if for all k :'0 n and any subset of k channels {(a"bIl,(a2,b 2), ... , (ak,b k)}, that £v(aj) '/. span[vv«a"b;), i '" jJ for all j E {l,2, ... ,k} implies that vv(a"b ,», vv«(a2,b2)) ... , vv((ak,bk)) are independent.

Upon observing that ,p(a,b)(W,0) =~(a,b)(W) and defining B(a,b) (e) = ,p(a,b) (0, e), we can write

Theorem 4 [2} i) For a given network with source node s, for all n :'0 r. (s) and sufficiently large q (depending the network. and n), there exists a generic LCM assigning n-dimensional column vectors over GF(q) to channels in the network. ii) For the generic LCM in i) with n = r .(s) and all nodes a E V\{s}, dim(£v(a» is equal to maxflow(s, a) = c(s, a).

where wH(e) denotes the Hamming weight of e. Define

To construct error correcting codes via a generic LCM l

we need the following preparation. Consider the given network and let n = minaEU c(s, u). Then we can obtain a subnetwork by deleting some channels if necessary, such that for all u E U, cutts, u) = d+(u) = n.

(4)

For simplicity of notation, without loss of generality, we assume that (4) holds for the given network. Now by Theorem 4, we can find a generic LCM V assigning ndimensional column vectors to the channels in the network. This generic LCM V induces a network code specified by tP and ~ as described above. Since for any u E U, dim(£v(u}) = cutts, u) = n = dim(£v(s»

by Theorem 4 and (4), and £v(u)

c

,p(a,b)(W, e) = ~(a,b)(W)

+ B(a,b)(e).

For each u E U, define the set of t-error patterns :(V,t,a)={(O'c .• ,(e)M"

6.(V,t) = UUEu{f=

(a),(a,a)Er+(a)),wH(e)9},

s' -g .s.s' E S(V,t,u)}.

Theorem 5 (Gilbert-Varshamov Bound) For positive integer A with (A -l)I6.(V,t)1

all

< s",

there exists a t-error-correcting code with source alphabet size A (i.e., 121 = A). In particular, for all positive integers k such that 16.(V, t)1

< qn-k,

one can construct a linear code of at least k dimensions (i.e., 121 = qk) via the given generic LCM V.

To obtain a lower bound on IZI which does not depend on the particular choice of LCM V, we employ the upper bound 1Ll.(V,t)!<:L. E U 1:S(V,t,ulI'~lul [L:~o (~)(q.1);] '.

This allows us to obtain an asymptotically tight bound for regular networks. By a more careful calcutaion with some tricks in the estimation, we actually have obtained

a tight bound for linear codes. For a preprint of the full paper, see [6]. REFERENCES II] R. Ahlswede, N. Cai, S.-Y. R. u, and R. W. Yeung, "Network information flow," IEEE Trans. Inform. Theory, IT-46: 1204-

£v(s), we see that

1216, 2000.

£v(u) = £v(s) = GFn(q).

[2J S.-Y. R. Li, R. W. Yeung and N. Cal, "Linear network coding,"

This implies that the matrix M(u) is a full rank square matrix of size n. Fix a coding order in the network and choose any generic LCM V as prescribed above. We now consider the situation that the channels are not necessarily errorfree. Since the code alphabet X is GF(q), we can regard the output of a channel (a, b) E e' as the sum of the input of the channel and an error symbol eCa,b) E GF(q}. Define e = (e(a,b) : (a, b) E e'), which we will refer to as

to appear in IEEE Trans. Inform. Theory. [3] R. Koetter and M. Medard, "Beyond routing: an algebraic approch to network coding," INFOCOM 2002, New York, Jun 23-27, 2002. {4] N. Cai and R. W. Yeung, "Secure network coding," 2002 IEEE International Symposium on Information Theory, Lausanne, Jun 30 - Jul 5, 2002. [5] A. Shamir, "How to share a secret," Comm. ACM, 22: 612-613, 1979. [6] Preprint at http://IJWV.ie.cuhk.edu.hk/people/raymond.php

122

Network coding and error correction - Information ...

Department of Information Engineering. The Chinese University of Hong Kong. Shatin, N,T. Hong Kong, China http://www.ie.cuhk.edu.hk/people/raymond.php.

390KB Sizes 6 Downloads 230 Views

Recommend Documents

Network Coding, Algebraic Coding, and Network Error Correction
Abstract— This paper discusses the relation between network coding, (classical) algebraic coding, and net- work error correction. In the first part, we clarify.

Dynamic forward error correction
Nov 5, 2003 - sponding error correction data therebetWeen during a plural ity of time frames. ..... mobile sWitching center, or any communication device that can communicate .... data according to a cyclical redundancy check (CRC) algo rithm and ...

Characterizations of Network Error Correction/Detection ...
the code in terms of error correction/detection and erasure correction. We have ...... Thus there is a host of problems to be investigated in the direction of our work ...

BULATS Writing Part One Error Correction - UsingEnglish.com
Your company is going to hold a conference at the end of the year and it is your job to find ... I saw your conference centre advertised at Best Conference and Trade Fair Monthly and ... Work with someone else to edit the email on the last page.

Transparent Error Correction for Communication ... - IEEE Xplore
Jun 15, 2011 - TCP/IP throughput by an order of magnitude on a 1-Gb/s link with 50-ms ... protocols, aggregating traffic for high-speed encoding and using a.

A New Error Correction Code
communications (e.g., satellite communications, digital .... octal values have been shown in Table I (Iteration 2 and 3). Obviously, at the end of coding ... Figure 4. Error Resolution Table with hot-bits and the error-bit. TABLE III. COMPARISON OF T

CLIX: Network Coding and Cross Layer Information ...
ABSTRACT. Network Coding (NC) can be efficiently combined with the ..... 1. NC akiyo. [8] S. Karande and H. Radha, "Hybrid Erasure Error Protocols,” to appear.

On Packet Size and Error Correction Optimisations ... - Semantic Scholar
Recent sensor network platforms with greater computa- ... platforms [2], [3]. These resource-rich platforms have increased processing capabilities which make erasure code handling viable and efficient [3]. Moreover, improved radio designs [4] facilit

On Packet Size and Error Correction Optimisations ... - Semantic Scholar
it only accounts for interference and does not consider packet transmissions. Because CQ relies on the receiver ... latency of packets, which accounts for packet transmission time plus the inter-packet interval (IPI). Definition 1. ..... sage out of

Urban Water Demand with Periodic Error Correction - from Ron Griffin
The U. S. Texas Water Resources Institute Technical Report TR-331. College Station,. TX: Texas A&M University. http://ron-griffin.tamu.edu/reprints/.

A Burst Error Correction Scheme Based on Block ...
B.S. Adiga, M. Girish Chandra and Swanand Kadhe. Innovation Labs, Tata Consultancy ..... Constructed. Ramanujan Graphs,” IJCSNS International Journal of Computer. Science and Network Security, Vol.11, No.1, January 2011, pp.48-57.

Urban Water Demand with Periodic Error Correction - from Ron Griffin
The sample spans nine states (Alaska, California, Florida, Indiana, Kansas, Minnesota, Ohio,. Texas, and ... merit a preliminary examination of the dependent variable, total daily quantity of water demanded per capita. ... measures are average within

Error Correction on a Tree: An Instanton Approach - Semantic Scholar
Nov 5, 2004 - of edges that originate from a node are referred to as its degree. In this Letter we discuss primarily codes with a uniform variable and/or check node degree distribution. Note that relations between the ..... [9] J. S. Yedidia,W. T. Fr

High efficiency, error minimizing coding strategy method and apparatus
Dec 19, 2011 - systems, data is typically transmitted as a series of code words. In general ... channel susceptible to dominant errors, a computer hard disk.

Error Correction: A Traffic Light Approach
they volunteer or are asked to speak in class, they will flash one of the following three cards: Red: When a student flashes a red card, the student does not want ...

High efficiency, error minimizing coding strategy method and apparatus
Dec 19, 2011 - miZing code for use in connection With systems having a communication ..... channel for transmitting voice or data, a computer netWork, or.

End-to-End Error Correction and Online Diagnosis for On ... - CiteSeerX
Department of Electrical and Computer Engineering. University of California ... permanent and transient faults due to the accelerated aging effects such as ...

Correction
Nov 25, 2008 - Sophie Rutschmann, Faculty of Medicine, Imperial College. London ... 10550 North Torrey Pines Road, La Jolla, CA 92037; †Cancer and.