Delay Invariant cnc

Yüklə 86,68 Kb.
ölçüsü86,68 Kb.

Delay Invariant Convolutional Network Codes

Qifu Tyler Sun, Sidharth Jaggi, and Shuo-Yen Robert Li

Institute of Network Coding

The Chinese University of Hong Kong

Hong Kong SAR, China, {jaggi, bobli}

This work is supported by AoE grant E-02/08 from the University Grants Committee of the Hong Kong Special Administration Region, China.

Abstract—In this work, we define delay invariant convolutional network codes which guarantee multicast communication at asymptotically optimal rates in networks with arbitrary delay patterns. We show the existence of such a code over every symbol field. Moreover, the code can be constructed with high probability when coding coefficients are independently and uniformly chosen from a sufficiently large set of coding operations. On the other hand, if the symbol field is no smaller than the number of receivers, we devise a method to efficiently construct a delay invariant convolutional network code with scalar coding coefficients.


Convolutional network coding (See , , and ) is a form of linear network coding which deals with a pipeline of messages as a whole rather than individually. It allows coding over the combined space-time domain. Over a network with cycles, the propagation and encoding of sequential data symbols may convolve together. Thus the propagation delay becomes an essential factor in network coding and hence convolutional network coding is naturally adopted to ensure causal data propagation around cycles. Under the formulation of propagation delay in , the transmission delay over channels is absorbed into processing delay at nodes. The node processing delay, on the other hand, is measured on every adjacent pair (d, e) of channels, where d and e are, respectively, the incoming and outgoing edges of a node. The delay over (d, e), which is a nonnegative integer power of D, represents the latency from the time a data symbol is received from d till the time it is first incorporated into the information sent onto e. Consequently, when data is propagated over the network via a convolutional network code (CNC), a delay may either be introduced by the network, or inserted intentionally by the code as part of the coding operation. As exemplified in , as long as there is a positive delay along every cycle in the network, data propagation in a causal manner can be assured over each cycle by a CNC.

In order to guarantee causality, a CNC constructed by existing algorithms, such as the deterministic one and the random one , is optimal (in the sense that achieves asymptotically optimal data transmission rate) with respect to a certain delay pattern. In this paper, after reviewing some fundamentals on convolutional network coding in Section , we introduce a new class of CNCs, called delay invariant CNCs (DI-CNCs), in a multicast network in Section . A DI-CNC is optimal in the presence of any delays in the network. In this way, the code can be constructed without the knowledge of network delays. Moreover, once it is deployed into the network, its optimality will not be affected by any delay changes brought about by inappropriate synchronization or other issues. Even though there are infinitely many (integer) delay patterns, we show that every field-based optimal linear network code actually qualifies as a DI-CNC. Moreover, we shall further show that a DI-CNC exists over every symbol field, and random coding actually suffices to construct one with high probability. On the other hand, in Section , when the symbol field is no smaller than the number of receivers, a variation of the technique in will be proposed to adapt the acyclic algorithm of for the deterministic construction of a DI-CNC with scalar coding operations.

Fundamentals on Convolutional Network Coding

Conventions. We shall adopt the following convention unless otherwise specified.

A network means a finite directed multi-graph that contains a unique node s with no incoming edges. This node is called the source. No edge loops around a node. The edge set is denoted by E. Every edge represents a noiseless transmission channel of unit capacity.

For every node v, denote by In(v) and Out(v), respectively, the sets of its incoming and outgoing edges. An ordered pair (d, e) of edges is called an adjacent pair when there is a node v such that d  In(v) and e  Out(v).

Outgoing edges from s are called data-generating edges. Abbreviate |Out(s)| as , which represents the (fixed) data generating rate from the source. Assume an ordering on edges in E led by data-generating edges.

A sink means a non-source node v to which there are edge-disjoint paths from s. The number of sinks in the network will be denoted by .

Let denote a finite field, which represents the symbol alphabet, and q the finite field with q elements. Let P be a PID, which represents the general ensemble of data units. In conventional network coding, P = and in convolutional network coding, P = [(D)].

In a network, a P-linear network code (P-LNC), denoted by (kd,e), assigns a coding coefficient kd,eP to every pair (d, e) of edges such that kd,e = 0 when (d, e) is not an adjacent pair. An -CNC means an [(D)]-LNC (kd,e) with kd,e[D]  [(D)].

A P-LNC is said to be normal if it determines a unique set of coding vectors. Normality of a LNC is a prerequisite for the notion of data propagation via the code. In a network with cycles, not every P-LNC is normal. A sufficient condition stated in for normality of a P-LNC (kd,e) is that det(I|E| [kd,e]d,eOut(s)) is a unit in P, where [kd,e]d,eOut(s) is a square matrix with rows and columns indexed by E\Out(s). The conditions for a CNC to be normal are discussed in and . In particular, a causal CNC is normal.

Definition . A delay function t in a network assigns a non-negative integer to every adjacent pair (d, e) such that, along every cycle, there is at least one pair (d, e) with t(d, e) > 0. An -CNC is said to be t-causal if the coding coefficient for every adjacent pair (d, e) is divisible by zt(d, e).

In an acyclic network, every -LNC is naturally a t-causal -CNC with scalar coding coefficients in [D], where t is a zero function.

Proposition (). A causal -CNC is normal.

Example. For succinctness, all illustrations of networks in the paper will omit the source node s. Figure depicts the coding coefficients (kd,e) of an 2-CNC in the Shuttle Network . The code is not normal. However, given an arbitrary delay function t, the t-causal 2-CNC (kd,eDt(d,e)) becomes normal.

Definition . A normal P-LNC with the coding vectors fe is called a P-linear multicast when rankP(fe: eIn(v)) = for each sink v. A linear multicast is optimal in the sense that all sinks can get enough information to recover the source message.

Delay Invariant Convolutional Network Codes

Figure . An ��2-CNC in the Shuttle Network is prescribed by coding coefficients kd,e. It is not normal, because there does not exist a set of coding vectors for (kd,e). However, given an arbitrary delay function t, the 2-CNC (kd,eDt(d,e)) becomes normal. For instance, if t assigns delay one to (e7, e3), (e9, e5), (e10, e4), and delay zero to all others, the coding vectors of the t-causal code (kd,eDt(d,e)) are fe1 = fe3 = (1 0)T, fe2 = fe10 = (0 1)T, fe4 = fe5 = fe6 =, fe7 = fe8 = fe9 =. Consequently, it qualifies as a delay invariant ��2-CNC.

A causal -convolutional multicast is always affiliated with some delay function t. Therefore, the function t is always known in advance for code construction. However, when t is changed due to some unexpected reason, the already deployed convolutional multicast is not necessarily optimal anymore. For instance, consider the network depicted in Figure , and a delay function t which assigns delay one to (e5, e3), (e8, e4), (e12, e6), (e13, e8), (e9, e10), and delay zero to all others. If the efficient algorithm of is adopted to construct a t-causal -convolutional multicast (kd,eDt(d,e)), a possible resulting code is prescribed in Figure by nonzero kd,e. In particular, the coding vectors for e4 and e12 are, respectively, and . However, if the delay function t is changed to assign delay one to (e6, e7) and delay zero to (e8, e4), then the new t-causal -CNC (kd,eDt(d,e)) is no longer a convolutional multicast, because the coding vectors for e4 and e12 become identical, i.e., , and thus sink t1 cannot reconstruct both data streams. Therefore, under the new function t, the code (kd,e) has to be redesigned in order to make it optimal. Hence, we propose a type of CNC that is optimal with respect to an arbitrary delay function.

Definition . An -CNC (kd,e) is called a delay invariant -CNC (DI--CNC) if for any delay function t, the code (kd,eDt(d,e)) is a t-causal -convolutional multicast.

As an example, the 2-CNC depicted in Figure is a DI-2-CNC. One of the merits of DI-CNC is that the code design is independent of delay functions. One possible design of a DI-CNC is to construct an -linear multicast.

Proposition . Every -linear multicast is a DI--CNC.

Proof. Let (kd,e) be an -linear multicast with coding vectors fe. Given a delay function t, the t-causal -CNC (kd,eDt(d,e)) is normal by Proposition . Let fe be coding vectors determined by (kd,eDt(d,e)). Define a homomorphism m that projects [(D)] onto by mapping D to 1. Applying componentwise, m extends to a mapping from [(D)] to . The code (kd,eDt(d,e)) is an -convolutional multicast because for every sink v,

(fe:eIn(v))≥(m(fe): eIn(v))

= (fe: eIn(v)) = . ∎

Even though a source always generates a time sequence of messages to be propagated over a network, when the network is acyclic, a LNC is always assumed to ignore the issue of data communication delay and deal with each single message individually. One reason is that upstream-to-downstream ordering of nodes enables buffering, pipelining, and resulting concerted synchronization among all nodes so that the encoding and transmission of a message is independent of sequential messages. This facilitates the model of zero delay function. From another perspective justified by Proposition , even if nonzero network delays are taken into account, the design of a field-based optimal LNC still suffices to induce an optimal LNC in the combined space-time domain.

Proposition guarantees the existence of a DI--CNC when is sufficiently large. In fact, we can say more.

Theorem . In any network, there exists a DI--CNC, with every polynomial coding coefficient of degree at most O(|E|2logp|E|), where p is the characteristic of .

Proof. The key is to establish a homomorphism from [D] onto an appropriate extension field  of such that infinitely many delays can be mapped to a finite number of values in . It then suffices to show the existence of a certain -LNC which can induce a DI--CNC. See Appendix for details. ∎

(a) (b)
Figure . (a) The given network  contains a cycle. (b) The associated acyclic network  in which the bottom layer nodes qualify as sinks. Every ��-linear multicast on  subject to (1) induces a delay invariant convolutional multicast on  via .

Corollary . Consider an -CNC with coding coefficients kd,e independently and uniformly selected from those polynomials in [D] with degrees smaller than d. When pd > (2(p+1)d)|E|2, where p is the characteristic of , the probability for the code to be a DI-CNC is at least .

Proof. See Appendix. ∎

In comparison, random coding constructs a causal q-convolutional multicast with respect to a delay function t at probability at least when qd > .

Efficient Deterministic Code Construction

Although DI-CNCs can be generated by random coding, coding coefficients have to be chosen from a sufficiently large set of polynomials so as to guarantee high successful construction probability. Thus, encoding complexity may become very high. In this section, we shall demonstrate that when || ≥ , which is the number of sinks in a network , the deterministic acyclic algorithm of suffices to construct a DI--CNC with scalar coding coefficients, such that the coding complexity becomes much lower:

When is acyclic, the algorithm of directly constructs an -linear multicast, which is naturally a DI--CNC by Proposition . The computational complexity of the algorithm is O(|E|(+)).

When contains cycles, we can associate it with an acyclic network of sinks via the algorithm below. An -linear multicast subject to a straightforward condition (1) on can then be constructed by the algorithm of , which in turn induces a DI--CNC on via (2). It takes O(|E|3) to construct a DI--CNC.

Algorithm. Given a network , the associated acyclic network consists of nodes in five layers, which are labeled 0 to 4 from upstream to downstream. The notation for a node carries a subscript indicating the layer. All edges are between adjacent layers.

Layer 0 consists of just the source node.

Corresponding to each edge e E\Out(s), there is a layer-1 node e1 and an edge e(1) from s to e1. Thus there are |E|– data-generating edges.

Corresponding to each edge e E, there is a node e2. When e E\Out(s), there is also an edge e(2) from e1 to e2. Corresponding to every adjacent pair (d, e) in , there is an edge from e1 to d2.

Corresponding to each edge e E, there is a node e3 as well as an edge e(3) from e2 to e3.
Figure . Under the delay function t that assigns delay one to (e5, e3), (e8, e4), (e12, e6), (e13, e8), (e9, e10), and delay zero to all others, the algorithm of can construct an ��-CNC (kd,e), which is depicted by nonzero coding coefficients. The code (kd,eDt(d,e)) is a t-causal convolutional multicast. Nevertheless, (kd,e) is not a DI-CNC. This is because when t is changed to assign delay one to (e6, e7) and delay zero to (e8, e4), the new t-causal -CNC (kd,eDt(d,e)) has identical coding vectors for e4 and e12, such that sink t1 cannot reconstruct both data streams.

Corresponding to each sink v in , there is a node v4. Arbitrarily take edge-disjoint paths in that lead from data-generating edges to v. For every e E, install an edge from e3 to v4 unless e  In(v) and is an edge on these paths.

The association of with is illustrated by Figure . The reference proved that every layer-4 node in is a sink. Moreover, it justified that the algorithm of is able to construct an -linear multicast on subject to the following

(1)The coding coefficient is either 0 or 1 for every adjacent pair in the form of (e(1), x). The coding coefficient is 1 for every adjacent pair in the form of (e(1), e(2)) or (e(2), e(3)).

Proposition . Every -linear multicast (kx,y) on subject to (1) induces a DI--CNC (kd,e) on via


Proof. Let t be an arbitrary delay function on , and t a delay function on such that t(x, y) = t(d, e) if x = and y = d(3) for some adjacent pair (d, e) in . Else, t(x, y) = 0. According to Proposition , the code (kx,yDt(x,y)) is a t-causal -convolutional multicast. Let fe denote the coding vector of edge e(3) for the code (kx,yDt(x,y)) on . Note that [fe]eE\Out(s) = [kd,e]d,eIn(s). Since the -CNC (kd,eDt(d,e)) on is t-causal, it is also normal by Proposition , which implies det([kd,e]d,eIn(s)) ≠ 0. As a result, (fe: e E\Out(s)) = , and hence Theorem 20 in may be applied to prove (kd,eDt(d,e)) in to be a t-causal -convolutional multicast on . ∎


The coding coefficients kd,e of a convolutional network code (CNC) are always selected to be polynomials over a symbol field. When they are implemented in the network, the effective coding coefficients are in fact kd,eDt(d,e), where t is a delay function on adjacent pairs of edges modeling the combination of any data propagation delays. In this paper, we introduce the concept of delay invariant CNCs (DI-CNCs), which are optimal with respect to any delays. In particular, a CNC (kd,e) is said to be delay invariant if associated with any delay function t, the resultant CNC (kd,eDt(d,e)) is always optimal, i.e., a convolutional multicast. The main result in this paper shows the existence of a DI-CNC over any symbol field, and a random coding technique that can produce a DI-CNC with high probability when coding coefficients are selected from sufficiently many polynomials. Moreover, when the symbol field is no smaller than the number of sinks, a variation of the technique in can adapt the acyclic algorithm of for the construction of a DI-CNC with scalar coding coefficients. The DI-CNC constructed by the deterministic algorithm thus has much lower encoding complexities compared with the one generated by random coding. However, even in an acyclic network, it is still unclear whether there is a polynomial time algorithm for DI-CNC construction over a smaller symbol field, for instance the binary field. Any investigation along this line is very intriguing.


The authors appreciate helpful discussions with Pak Hou Che, Chung Chan and Xunrui Yin.


R. Alshwede, N. Cai, S.-Y. R. Li and R. W. Yeung, “Network information flow,” IEEE Trans. Inf. Theory, vol. 46, pp. 1204-1216, Feb., 2000.

N. Cai, W. Guo, “The conditions to determine convolutional network coding on matrix representation,” in Netcod, Lausanne, Switzerland, Jun., 2009.

E. Erez, M. Feder, “Efficient Network Code Design for Cyclic Networks,” IEEE Trans. Inf. Theory, vol. 56, no. 8, pp. 3862-3878, Aug., 2010.

C. Fragouli and E. Soljanin, “A connection between network coding and convolutional codes,” Proc. Int. Conf. Commun. (ICC), Paris, France, Jun. 2004, vol. 2, pp. 661-666.

T. Ho, M. Médard, R. Koetter, D. R. Karger, M. Effros, J. Shi, B. Leong, “A random linear network coding approach to multicast,” IEEE Trans. Inf. Theory, vol. 52, no. 10, pp. 4413-4430, Oct., 2006.

S. Jaggi, M. Effros, T. Ho, and M. Médard, “On linear network coding,” 42nd Allerton Conf. Commun. Control and Comput., Monticello, IL, Sep. 2004.

S. Jaggi, P. Sanders, P. A. Chou, M. Effros, S. Egner, K. Jain, and L. Tolhuizen, “Polynomial time algorithms for multicast network code construction,” IEEE Trans. Inf. Theory, vol. 51, no. 6, pp. 1973-1982, Jun., 2005.

R. Koetter and M. Médard, “An algebraic approach to network coding,” IEEE/ACM Trans. Netw., vol. 11, No. 5, pp. 782-795, Oct., 2003.

S.-Y. R. Li, R. W. Yeung, and N. Cai, “Linear network coding,” IEEE Trans. Inf. Theory, vol. 49, no. 2, pp. 371-381, Feb., 2003.

S.-Y. R. Li and R. W. Yeung, “On convolutional network coding,” Proc. of ISIT, pp. 1743-1747, Seattle, USA, July, 2006.

S.-Y. R. Li and Q. T. Sun, “Network coding theory via commutative algebra,” IEEE Trans. Inf. Theory, vol. 56, no. 1, pp. 403-415, Jan. 2011.

S.-Y. R. Li and Q. T. Sun, “Linear network coding: theory and algorithms,” Proc. of the IEEE, vol. 99, no. 3, Mar. 2011.

R. W. Yeung, S.-Y. R. Li, N. Cai, and Z. Zhang, Network Coding Theory. Boston, MA: Now Publishers, 2006.

Appendix. Proof of Theorem and

Convention. For a normal P-LNC (kd,e), we adopt the abbreviations

Ak = [kd,e]dIn(s),eIn(s), Bk =  [kd,e]d,eIn(s).

Then, the coding vector fe for eE\In(s) can be represented by

fe = ,

where Adj() means the adjugate of a square matrix, and ue an (|E|)-dim column vector indexed by E\In(s) such that the entry labeled by e is 1 and all others are 0.

For a subfield p of and an element , denote by p() the smallest subfield of containing p and . ∎

Now associate every adjacent pair (d, e) with an indeterminate xd,e. Let [D][] denote the polynomial ring in these indeterminates over [D]. Write xd,e = 0 when (d, e) is not an adjacent pair. For every sink v, select edge-disjoint paths from data-generating edges to distinct edges belonging to In(v). Denote by Pv the juxtaposition of ue, where e is among the said distinct edges in In(v). Moreover, given a delay function t, let Mv(t) denote the |E||E| matrix


In order to qualify an -CNC (kd,e) as a DI-CNC, it suffices to show that

  1. Given any delay function t, the evaluation of det(Mv(t)) at xd,e = kd,e is not 0  [D] for all sinks v.

To justify this, consider the t-causal -CNC (hd,e), where hd,e = kd,eDt(d,e). By Proposition , the code is normal, and hence det(Bh) ≠ 0 and det(Adj(Bh)) ≠ 0. Moreover, similar to the proof of Lemma 1 in , because


if ≠0, then det(AhAdj(Bh)Pv)≠0, and thus

rank��[(D)](fe: eIn(v)) = rank��[(D)](AhAdj(Bh)[ue]eIn(v)) = .

First take = 2 and let m be the integer such that 3m|E|2log2|E| > 3m–1, where is a constant subject to Define a homomorphism : [D][][] that fixes as well as indeterminates xd,e, and maps D to , where is an element in of order and 2() = . Lemma asserts the existence of . Applying componentwise, the homomorphism also extends to a mapping from matrices over [D][] to matrices over . Because has order , for each sink v,

|({Mv(t): t is a delay function})| < .

Consequently, the highest degree of every indeterminate in the polynomial t:delay function(det(Mv(t))) is less than . Therefore, when a subset F  has more than elements, there exist values kd,e  F such that the evaluation of

v: sinkt: delay function(det(Mv(t)))

at xd,e = kd,e is not 0  . Since

the choice of such F is possible. Let P denote the set of those polynomials in [D] that have degrees smaller than 23m = O(|E|2log2|E|). Since 2() = , the minimal polynomial of over has degree 23m. Therefore, (P) = , and the 2-CNC with coding coefficients kd,e = P –1(kd,e) abides by (1). In order to show under = 2, redefine m to be the smallest integer such that 23md > 23m –1. Let P denote the set of those polynomials in [D] that have degrees smaller than d. Note that the polynomial v:sinkt:delayfunction (det(Mv(t))) over is of degree less than |E|, and the highest degree of every indeterminate in it is less than . Thus, Lemma 4 in asserts that when indeterminates xd,e are independently and uniformly assigned to be values kd,e in (P)  ,

Pr(v:sinkt:delayfunction(det(Mv(t)) ≠ 0) >

Consequently, when coding coefficients of an 2-CNC are independently and uniformly chosen from P –1(kd,e), the probability for the code to be delay invariant is at least < (Since 5d > 3m+1.)

Take = p, where p is an odd prime number, and let m be the integer such that 2m|E|2logp|E| ≥ 2m–1, where is a constant subject to Define a homomorphism : [D]  that fixes and maps D to , where is of order 2m(p + (–1)(p+1)/2) and p() = . Lemma asserts the existence of such . By an argument similar to the case when = 2, we can prove Theorem and under = p.

Take = q, where q is a positive integer power of a prime p. Let D and D, respectively, represent the unit time to carry one data symbol in p and q. Define a homomorphism from p[(D)] into q[(D)] via fixing p and mapping D to D. Because the mapping is one-to-one, given a DI-p-CNC (kd,e) and a delay function t, ((kd,eDt(d,e))) qualifies as an q-convolutional multicast too. ∎

Lemma . In , where m ≥ 0, there exists an element of order such that 2() = .

Proof. Let  be a primitive element in . First, divides , because by Euler's totient theorem, . Let = and ��2() = , where either

, 0  im, or

, 0  im.

Since has order and , . Thus, d  0  im, because . Assume d = , 0  im. Because for all i < m, in order to show i = m, it suffices to prove . When m = 1, it is trivially true that 3 is not divisible by 9. When m > 1, note that . By the induction hypothesis, . Therefore, if , then would be divisible by 9. However, this is impossible because


Lemma . Let p be a prime of odd characteristic. In , m ≥ 1, there exists an element of order such that p() = .

Proof. Let  be a primitive element in . First, , since


Assume . Let = and () = , km. Since has order and , divides , which implies


Moreover, because , the factors , 0  i < k, can be divisible by 2 but not by 4. Therefore, k = m.

The case when can be shown analogously such that () = , where = .

Dostları ilə paylaş:

Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur © 2017
rəhbərliyinə müraciət

    Ana səhifə