Mathematical Problems in Engineering

Volume 2010, Article ID 436354, 11 pages

http://dx.doi.org/10.1155/2010/436354

## A Computational Perspective on Network Coding

^{1}Information Security Center, State Key Laboratory of Networking and Switching Technology, Beijing University of Posts and Telecommunications, Beijing 100876, China^{2}Key Laboratory of Network and Information Attack and Defence Technology of MOE, Beijing University of Posts and Telecommunications, Beijing 100876, China^{3}National Engineering Laboratory for Disaster Backup and Recovery, Beijing University of Posts and Telecommunications, Beijing 100876, China

Received 10 March 2010; Revised 4 July 2010; Accepted 25 August 2010

Academic Editor: Jyh Horng Chou

Copyright © 2010 Qin Guo et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

#### Abstract

From the perspectives of graph theory and combinatorics theory we obtain some new upper bounds on the number of encoding nodes, which can characterize the coding complexity of the network coding, both in feasible acyclic and cyclic multicast networks. In contrast to previous work, during our analysis we first investigate the simple multicast network with source rate , and then . We find that for feasible acyclic multicast networks our upper bound is exactly the lower bound given by M. Langberg et al. in 2006. So the gap between their lower and upper bounds for feasible acyclic multicast networks does not exist. Based on the new upper bound, we improve the computational complexity given by M. Langberg et al. in 2009. Moreover, these results further support the feasibility of signatures for network coding.

#### 1. Introduction

When network coding was firstly used by Ahlswede et al. [1], the node produced each of its outgoing packets as an arbitrary combination of its incomings, which is referred to as encoding node. Those functions applied by all nodes in the network specify the different network codes, such as linear network codes and random linear network codes via linear function and random linear function, respectively [1–3]. In [3], Li et al*.* showed that linear network codes are sufficient for achieving the capacity of the network. And in a subsequent work, Koetter and Médard [4] developed an algebraic framework for network coding and studied linear network codes for cyclic networks. Based on this framework, Ho et al*.* [2] showed that linear network codes can be efficiently constructed through a randomized algorithm. Jaggi et al*.* [5] presented a deterministic polynomial-time algorithm for finding a feasible network codes in multicast networks. Errors introduced into even a single packet transmitted on the way can propagate and pollute multiple packets making their way to the destination. To prevent the spread of the error packets, signatures for network coding are proposed [6, 7]. Nevertheless, whatever the kind of network codes will be used, the number of encoding nodes plays an important role on the encoding complexity of network coding. In [8, 9], Langberg et al*.* studied the design of multicast coding networks with a limited number of encoding nodes. And they showed that in a directed acyclic coding network, the number of encoding nodes required to achieve the capacity of the network is bounded by ( is the source rate and is the number of terminal nodes) which is independent of the size of the network. And for the general networks, in which there exist cycles, the number of encoding nodes is limited by the size of the minimum feedback link set and bounded by , where is the minimum size of a feedback link set.

In this paper, from the perspective of graph theory [10] and combinatorics theory [11] we mainly reinvestigate the upper bounds of encoding nodes in simple multicast networks and the computational complexity of constructing network coding on feasible acyclic multicast networks. Similar with [8], we put different colors on the paths from source to different terminal nodes. However, in this paper we investigate the number of *encoding nodes* instead of *nodes* on the paths. And we find that our upper bounds are their lower bounds in [8], so our upper bounds are optimal for simple multicast networks. Using this result, we can answer the open question raised in the end of [8]; that is, there donot exist such feasible acyclic multicast networks that the number of encoding nodes are between the lower bound and the upper bound in [8]. Based on these results for acyclic multicast networks, we improve the computational complexity of the deterministic algorithm of constructing network codes given by Langberg et al*.* in [9].

The rest parts of this paper are organized as follows. In Section 2 we mainly give some necessary notations and definitions. In Section 3 we reinvestigate the upper bounds of encoding nodes for simple acyclic and cyclic multicast networks, respectively. Some new results on computational complexity of constructing network codes for feasible multicast networks are also given. In the final section, Section 4, some conclusions and future topics are presented.

#### 2. Basic Notions and Definitions

Let be a multicast network with a directed graph , a source node , a set of terminal nodes , and source rate . All links in are of unit capacity. A network code for a multicast network is said to be feasible if it allows communication at rate between and each terminal node . We say that is a feasible multicast network if there exists a feasible network code for .

*Definition 2.1 (minimal multicast network [8]). *A feasible multicast network is said to be minimal with respect to link removal if any network formed from by deleting a link from is no longer feasible.

*Definition 2.2 (simple multicast network [8]). *A multicast network is said to be simple if and only if (a) is feasible; (b) is minimal with respect to link removal; (c) the total degree of each node in is at most 3 (excluding the source and terminal nodes); (d) the terminal nodes in have no outgoing links.

In fact, for each general multicast network there exists a simple multicast network corresponding to it. And the construction is computationally efficient and includes the following three steps.

*Step 1 (replacing terminal nodes). *For each terminal node , we add a new node to and connect to by parallel links. Denote the resulting graph by and the new set of terminal nodes by . Then, the terminal nodes in have no outgoing links.

*Step 2 (reducing degrees). *Suppose is the graph formed from by replacing each node whose degree is more than 3 by a subgraph , constructed as Figure 1. So in there do not exist the nodes with degrees more than 3.

*Step 3 (removing links). *Let be any subgraph of such that is minimal with respect to link removal.

By Step 2, we can learn that the number of encoding nodes in a feasible multicast network is no more than that of the corresponding simple multicast network. In this paper, we let denote the number of encoding nodes in .

In general communication networks with cycles, there exist feedback links. And we will show that the value of in a cyclic network depends on the size of the minimum feedback link set.

*Definition 2.3 (minimum feedback link set [12]). *Let be a directed graph. A subset is referred to as a feedback link set if the graph formed from by removing all links in is acyclic. A feedback link set of minimum size is referred to as the minimum feedback link set.

Given a network , let denote the minimum size of feedback link set of underlying graph .

#### 3. Main Results

Let , be the out links of source node . Consider that and () have the common starting link . And paths and () have different starting links. Let paths set . In addition, all the paths in the sets can cover the whole network of . If some link belongs to but any path , then will not be a simple multicast network, because this contradicts the minimality of .

Similar to [8], we also put different colors on the paths from source node to different terminal nodes. While the color of a link is the same to the color of the path which passes on it. Of course, one link can have several different colors if there are several paths to different terminal nodes passing on it. When all the colors of a link are blotted out, we consider that this link disappears.

##### 3.1. New Upper Bounds

In this subsection, we establish the number of encoding nodes instead of nodes on a pair of link-disjoint paths. Since the source rate may be very large, we investigate pairs of link-disjoint paths to terminal nodes one by one. For example, when investigating the pair of path sets and (), we only leave all the paths in the two sets and in which the paths have the same starting link and , respectively, and temporarily ignore other paths in the paths set in which the paths have other starting links , , see Figure 2. When investigating the number of encoding nodes on the paths in the sets and which have the starting links and , respectively, we only leave the paths , , , and (see Figure 2(b)).

During the following analysis, we first investigate the simple multicast networks with , and then generalize this result to the networks with . So our method is very different from that given by Langberg et al*.* in [8].

Lemma 3.1. *Let be a simple acyclic multicast network. Then the number of encoding nodes of is at most , where . *

*Proof. *We prove this result by induction on . For the base step, we note that a simple multicast network with has at most one encoding node (see, e.g., Figure 3(a)). If there exist two encoding nodes, then can only be characterized by Figure 3(b) (i.e., Figure 3(b) as a subnetwork of ). However, we find that the two links and are redundant, since when we delete them, the network is also feasible. It means that Figure 3(b) is not a simple multicast network, and then is not simple which contradicts the assumption above. Similarly, we can prove that more than two encoding nodes are impossible for .

For the induction step, we assume that for . Now, we need to prove for . By reduction to absurdity, suppose that for with . Notice that in there does not exist such a color of pair paths to any terminal: when we blot out this color, two encoding nodes disappear. Assume there exists such a color. Then we can obtain two classes of subnetworks shown in Figure 4. In Figure 4(a), and are two such encoding nodes for terminal . For each of and , one of the two incoming links has only one red color, such as and . Otherwise, when we blot out red color, both of and are not encoding nodes anymore at the same time. But we find that the two links and are redundant, that is to say this network is not a simple multicast network. Because the messages can be transmitted along the paths and to terminal . Similarly, in Figure 4(b), and are two encoding nodes. We find that the blue incoming link of is redundant for this multicast network, because the path can go along the path . So, when we blot out one color, only one encoding node will disappear, and the corresponding terminal is no longer a terminal. Then in the rest simple multicast network there exist terminals and . This contradicts the assumption for .

Therefore, the number of encoding nodes in any simple acyclic multicast network is no more than .

By the decomposition and combination of a simple acyclic multicast network, we can generalize this result to the multicast networks with any .

Theorem 3.2. *Let be a simple acyclic multicast network. Then,
*

*Proof. *We investigate a pair of path sets and for all terminals. And all of the paths in these two sets compose a subnetwork of which is also a simple multicast network. By Lemma 3.1, there exist at most encoding nodes in . And each encoding node in will be counted in some subnetwork . Suppose that an encoding node is not counted and its two incoming links are and . By the minimality of , and must be on some paths, which belong to the path sets and , respectively. Then , as an encoding node, is in the corresponding subnetwork . This contradicts the assumption above. In there are pairs of paths; that is, there are such subnetworks in all, so

Being different from the results that the numbers of encoding nodes for and have different descriptions in [8], this theorem is a unified presentation for all simple acyclic multicast networks. Notice that by Lemma of [8], each feasible multicast network corresponds to a simple multicast network . Moreover, the minimum number of encoding nodes required for is no more than that for . Therefore, by Lemma of [8] and Theorem 3.2 above we can show the existence of network codes with at most encoding nodes for any feasible acyclic multicast network.

Theorem 3.3. *Let be an acyclic graph and be a feasible multicast network. Then, there exists a feasible network code with at most encoding nodes. *

From the investigation above, we can find that our method is very different from that given by Langberg et al*.* in [8]. On one hand, they investigated the simple multicast networks based on the number of terminal nodes, classified by and , and got two different results for these two kinds of networks. In this paper, we classify the simple multicast networks by source rate . One is with , and the other is with . We first investigate the simple multicast networks with , then generalize this result to the networks with any .

On the other hand, by scaling law Langberg et al*.* estimated the number of *nodes* instead of *encoding nodes* on the three kinds of paths: red path , blue path and green path (defined in [8]). And they proved that there exists at most one node that belongs to all three paths ,, and . Though each encoding node belongs to all these color paths, there exist such nonencoding nodes that belong to all three color paths. For example, see Figure 3 (a). By the definitions of three color paths in [8], paths and are two red paths, paths and are two blue paths, and paths and are two green paths. belongs to three color paths , , and , belongs to , , and , belongs to , and , and belongs to , , and . Obviously, only is an encoding node, but , , and . This shows that there exist nonencoding nodes that belong to all three paths of different colors. So they get a higher upper bound. In our paper, based on the properties of encoding nodes and simple acyclic multicast networks, we investigate the number of *encoding nodes* in simple acyclic multicast networks directly and obtain the new upper bound. And we find that our upper bound is just their lower bound. Therefore, the gap of between their lower and upper bounds for acyclic networks is inexistent which is the answer to the open question in the end of [8].

Next, we consider the networks with cycles. Based on Lemma 3.1, we also establish the number of encoding nodes in simple cyclic multicast networks. Before investigating general simple multicast networks, we first study the ones with .

Lemma 3.4. *Let be a simple cyclic multicast network and be the size of the minimal feedback link set in . Then, the number of encoding nodes . *

*Proof. *By Lemma 3.1, if there are no feedback links, then there exist at most encoding nodes in , and if we add one feedback link in , then there will exist at most additional encoding nodes. Because the path on which the feedback link passes does not intersect with the paths with the same starting edge. Otherwise, there will exist redundant links for the simple multicast networks. See Figure 5, for example, in which the black path from to is a feedback link. The paths and have common starting link , and they have the nodes of intersection: and . Since the path from source node to can go along with the path , the black link from to is redundant. And this contradicts the minimality of the simple multicast network.

In the following theorem, we establish the upper bounds on the size of for simple cyclic multicast networks with source rate .

Theorem 3.5. *Let be a simple cyclic multicast network. Then
*

*Proof. *By Lemma 3.4, the proof is similar with that of Theorem 3.2.

We can find that if , that is to say there do not exist feedback links in , in Lemma 3.4 and Theorem 3.5, then they will degenerate into Lemma 3.1 and Theorem 3.2, respectively.

By comparing our Theorem 3.2 with Theorem in [8], we find that their lower bound is indeed the real upper bound of the number of encoding nodes in simple acyclic multicast networks. So our upper bound is the optimal one. Moreover, by using Lemma 3.4 and Theorem 3.2 we have established a much tighter upper bound for cyclic network, shown in Theorem 3.5. In addition, for each encoding node in an arbitrary simple multicast network there exists at least one corresponding nonencoding node at which the joint flows are split. So it is impossible for us to construct a cyclic minimal multicast network with the number of encoding nodes more than , where is the total number of nodes in the network. Therefore, their lower bound of in [8] can also be considered as another upper bound of encoding nodes in cyclic networks.

In fact, our these results are further in favor of the feasibility of signatures for network coding. In the scheme of signature for network coding, when an intermediate node is a nonencoding node, the operations are in two steps at this node: (i) verify the signature for incoming packet; (ii) transmit the uncorrupted packet or discard corrupted packet. While at an encoding node, the operations are in four steps: (i) verify the two signatures for incoming packets; (ii) encode the two incoming packet if they are not corrupted, or discard it (or them) when corrupted. (iii) sign the encoded packet; (iv) transmit the signed packet. So the highly consuming signature operations are at the encoding nodes. While, by the results above, the number of encoding node is independent of the size of the network and its upper bound is ( when the network is acyclic).

##### 3.2. New Computational Complexity of Network Coding Construction

In this subsection, we mainly extend the results on the computational complexity of network coding constructions, shown in [9]. Firstly, we briefly show some notations used in this subsection.

For two multicast coding networks and , we say that models if the following three conditions hold. (i) is feasible if and only if is feasible. (ii)For any feasible network code for , there exists a corresponding network code for that includes the same number of encoding nodes or less. (iii)Given a feasible network code for , the corresponding network code for can be found through an efficient procedure whose running time is bounded by .

In addition, we use , , and to denote three auxiliary coding networks, all of which model . They are constructed by algorithms Procedure EXPAND, Algorithm MIN-GLOBAL, and Procedure SHRINK (shown in [9] for details) as the following steps.

*Step 1. * = Pro. EXPAND ().

*Step 2. * = Alg. MIN-GLOBAL ().

*Step 3. * = Pro. SHRINK ().

From the proofs of Theorems and in [9], we find that their upper bound for an acyclic multicast network with two terminal nodes has greatly influenced these two theorems. Based on our new results on the upper bound of encoding nodes in feasible multicast networks, we give two farther results as follows.

Theorem 3.6. *Let be the coding network returned by Algorithm Min-Global(). Let be the subset of that includes nodes of in-degree two and be the set of incoming links of nodes in . Then, it holds that . *

*Proof. *By Theorems 1, the proof follows the same line as that of Theorem in [9].

Theorem 3.7. *Let be an acyclic feasible coding network. Then there exists a deterministic algorithm that computes a network code in time . Moreover, the number of encoding nodes in is bounded by . *

*Proof. *By Theorems 3.2 and 3.6, the proof follows the same line as that of Theorem in [9].

So the complexity of computing a feasible network code in Theorem of [9] is in fact and their bound on the number of encoding nodes in this feasible network code is really . This is the best known running time for constructing network code.

The following two theorems are about integral and fractional network codes. In an integral network, codes packets cannot be split and have to be sent through the network in one piece. In fractional network codes, each packet can be split into a number of smaller packets, each of which is sent over different paths. We assume that all integral packets are elements in finite field GF, which implies that each such packet can be represented by bits. -Fractional Network Code ), let be a feasible coding network, be the size of the integral packet, and let be a divisor of . Suppose be the coding network in which is formed from by splitting each link in of bit capacity into parallel links of bit capacity . Let be a feasible integral network code for over finite field GF. We refer to as a feasible -fractional network code for .

Theorem 3.8. *Let be a feasible acyclic network. Then a feasible integral network code can be constructed in time . *

*Proof. *By Theorem 3.2, the proof follows the same line as that of Theorem in [9].

By this theorem, we can find that the complexity of constructing a feasible integral network code in Theorem of [9] is .

Theorem 3.9. *Let be a feasible acyclic network. Then a feasible -fractional network node for can be constructed in time . *

*Proof. *By Theorem 3.2, the proof is similar to that of Theorem in [9].

From this result, we can find that the complexity of constructing a feasible -fractional network code in Theorem of [9] is actually .

#### 4. Conclusion

In this paper, we reinvestigated the upper bounds of encoding nodes in acyclic and cyclic networks and answered the open question in [8]: the gap of between their lower and upper bounds for acyclic networks does not exist. Then, we gave out some new upper bounds for cyclic networks, which are tighter than those in [8]. The number of encoding nodes required to achieve the capacity of the network is independent of the size of the network. This fact is in favor of the feasibility of signatures for network coding to a certain extent. Furthermore, we also give a new result on the computational complexity of deterministic algorithm given by Langberg et al*.* [9], . This is the best known running time for constructing network codes. At last, some new results on computational complexity of feasible integral and fractional network codes constructions are given for feasible acyclic networks.

In this paper, we have established a much tighter upper bound for simple cyclic multicast networks, while this upper bound is not the optimal one. Therefore, like our result for simple acyclic multicast networks, to find the optimal upper bound for simple cyclic multicast networks is an interesting future topic. In addition, based on our current results whether a new algorithm of constructing network codes for cyclic multicast network with lower computational complexity can be found is an important further topic. Moreover, in future it is meaningful to discuss the relationships between the number of encoding nodes and the time-delay of network communication using network coding, between the number of encoding nodes and the optimizations of network resources (the encoding node can be viewed as the intelligent node in wireless sensor networks) and so on.

#### Acknowledgments

The authors would like to thank editor and all the anonymous reviewers for their helpful advices. This work is supported by the National Natural Science Foundation of China and the Research Grants Council of Hong Kong Joint Research Scheme (no. 60731160626), the Program for New Century Excellent Talents in University of the Ministry of Education of China (Grant no. NCET-10-0239), the Huo Ying-Dong Education Foundation of China (Grant no. 121062), National Natural Science Foundation of China (no. 60821001), National S&T Major Program (2010ZX03003-003-01) and the 111 Project (no. B08004).

#### References

- R. Ahlswede, N. Cai, S.-Y. R. Li, and R. W. Yeung, “Network information flow,”
*IEEE Transactions on Information Theory*, vol. 46, no. 4, pp. 1204–1216, 2000. View at Publisher · View at Google Scholar · View at Zentralblatt MATH - T. Ho, M. Médard, R. Koetter et al., “A random linear network coding approach to multicast,”
*IEEE Transactions on Information Theory*, vol. 52, no. 10, pp. 4413–4430, 2006. View at Publisher · View at Google Scholar - S.-Y. R. Li, R. W. Yeung, and N. Cai, “Linear network coding,”
*IEEE Transactions on Information Theory*, vol. 49, no. 2, pp. 371–381, 2003. View at Publisher · View at Google Scholar · View at Zentralblatt MATH - R. Koetter and M. Médard, “An algebraic approach to network coding,”
*IEEE/ACM Transactions on Networking*, vol. 5, pp. 782–795, 2003. View at Google Scholar - S. Jaggi, P. Sanders, P. A. Chou et al., “Polynomial time algorithms for multicast network code construction,”
*IEEE Transactions on Information Theory*, vol. 51, no. 6, pp. 1973–1982, 2005. View at Publisher · View at Google Scholar - D. Charles, K. Jain, and K. Lauter, “Signatures for network coding,”
*International Journal of Information and Coding Theory*, vol. 1, pp. 3–14, 2009. View at Publisher · View at Google Scholar - D. Boneh, D. Freeman, J. Katz, and B. Waters, “Signing a linear subspace: signature schemes for network coding,” in
*Public Key Cryptography—PKC 2009*, vol. 5443 of*Lecture Notes in Computer Science*, pp. 68–87, Springer, Berlin, UK, 2009. View at Publisher · View at Google Scholar - M. Langberg, A. Sprintson, and J. Bruck, “The encoding complexity of network coding,”
*IEEE Transactions on Information Theory*, vol. 52, no. 6, pp. 2386–2397, 2006. View at Publisher · View at Google Scholar - M. Langberg, A. Sprintson, and J. Bruck, “Network coding: a computational perspective,”
*IEEE Transactions on Information Theory*, vol. 55, no. 1, pp. 147–157, 2009. View at Publisher · View at Google Scholar - J. Bang-Jensen and G. Gutin,
*Digraphs. Theory, Algorithms and Applications*, Springer, London, UK, 2nd edition, 2008. - V. Krishnamurthy,
*Combinatorics: Theory and Applications*, Ellis Horwood Series in Mathematics and Its Applications: Statistics and Operational Research, Ellis Horwood, Chichester, UK, 1986. - M. R. Garey and D. S. Johnson,
*Computers and Intractability*, W. H. Freeman, San Francisco, Calif, USA, 1979.