#### Abstract

Network coding can improve the optical multicast routing performance in terms of network throughput, bandwidth utilization, and traffic load balance. But network coding needs high encoding operations costs in all-optical WDM networks due to shortage of optical RAM. In the paper, the network coding operation is defined to evaluate the number of network coding operation cost in the paper. An optical multicast routing algorithm based on minimal number of network coding operations is proposed to improve the multicast capacity. Two heuristic criteria are designed to establish the multicast routing with low network coding cost and high multicast capacity. One is to select one path from the former shortest paths with the least probability of dropping the multicast maximal capacity. The other is to select the path with lowest potential coding operations with the highest link shared degree among the multiple wavelength disjoint paths cluster from source to each destination. Comparing with the other multicast routing based on network coding, simulation results show that the proposed multicast routing algorithm can effectively reduce the times of network coding operations, can improve the probability of reaching multicast maximal capacity, and can keep the less multicast routing link cost for optical WDM networks.

#### 1. Introduction

The large increase of multicast applications in the Internet, such as video conference, distance learning, real-time video, cloud computation, IPTV, and the optical multicast networks, with broadband bandwidth and high speed information processing speed, has attracted much research interest in WDM networks [1, 2]. The optical-layer multicast can support multipoint connections with low energy consumption, low node cost, high wavelength bandwidth utilization, and network throughput [3, 4]. However, the optical multicast routing and wavelength assignment are the fundamental problems in WDM networks. By constructing a multicast tree, the multicast is transmitted from the source node through tree’s each wavelength channel exactly once to multiple destinations [5]. The problem of multicast tree and wavelength assignment, which needs to optimize the cost performance, network throughput, wavelength utilization, and packet blocking probability, is verified to be a notoriously NP-hard problem for optical multicast [6]. Many heuristics and intelligent optimization algorithms are researched to resolve the multicast tree problem [7, 8]. But it is also difficult to meet the enormous multicast connection requires for a fiber link only provides a very limited wavelength channels in the WDM networks [9, 10].

Multicast is also revolutionizing with the advent of network coding introduced by Ahlswede et al. in which logically disparate data is encoded and transmitted together in order to obtain multicast data rates not achievable with the traditional replication-and-forward paradigm [11]. This property is crucial to network coding unique capability to improve multicast throughput, balance network load, reduce the energy consumption, and decrease number of wavelengths required by multicast. Li et al. have shown that the linear network coding is enough to achieve the multicast maximal capacity [12]. However, in order to apply network coding to WDM networks, the signal must undergo optical-electrical-optical conversion at each node so that the data can be buffered and processed for the encoding operations for there is no optical RAM at present [13–15]. So, the network coding times should not be too much in the multicast tree routing.

How to construct the multicast tree routing for multicast based on network coding is different from IP multicast, which is based on replicating and forwarding the information on the node. The multicast routing based on network coding is ordinary to construct a network coding subgraph by searching a set of edge-disjoint paths from network source node to each destination. In [16], Tao et al. studied the tree-packing network coding multicast (TNCM) routing to maximize network throughput and to improve the link utilization with respect to traditional IP multicast [16]. Luo et al. presented a network coding multicast based on shared links (NCMSL) routing algorithm to construct the network coding subgraph for improvement of the link utilization and balance the network load [17], but the NCMSL algorithm did not consider the network coding overhead. Network coding offers many benefits for the optical multicast, but such methods do not consider the network coding operation cost, so it is difficult to optimize the network with a large number of nodes. So, owing to lack of optical random access memory (RAM), the operation of optical network coding has to be converted to electronics or buffered in a proper length fiber delay line (FDL) temporarily; the switch node must know the data format and speed, and the node control scheme should take into account the varying propagation delays which influences the FDL length [18, 19]. So, networking coding operation is not desirable for every optical switching node in WDM network. How to reduce the network coding operation costs as much as possible to reap the network coding benefits is becoming a very important topic.

The rest of the paper is organized as follows. In Section 2, we discuss the related work about network coding method for the multicast routing. We formulated the optical multicast routing problem in Section 3. In Section 4, the proposed multicast routing based on minimum network coding operations (MR-MNCO) is introduced. The MR-MNCO performance is simulated and analyzed in Section 5.

#### 2. Network Coding Operation

Network coding was introduced in 2000 by Ahlswede et al. [11] for getting the maximal multicast rate for each destination. In 2003, Li et al. [12] showed that the random linear network coding is sufficient to get the maximal rate for the single-source multicast. Ho et al. [20] verified a simple randomized linear network coding algorithm where all coefficients in the linear combination are selected randomly from some finite field . Luo et al. popularized the random linear network coding to optical network to achieve better network performance [17].

An optical network topology can be abstracted into a directed multigraph , where represents the set of network nodes, a source vertex , a set of destination vertices for each destination with is the fiber links set, and represents the set of wavelength channels. We can calculate the network multicast maximal capacity which is according to Max-Min-Cut theorem firstly. And the information symbols expressed with vector are sent from the source node to each destination node. In the random network coding, each network coding node in a finite field selects the coding coefficients randomly for each independent output wavelength channel. And the network coding node linearly encodes bits from each input wavelength channel and exports to each output wavelength channel. The coding information of each output wavelength channel is expressed as a global variable corresponding to the original -dimensional information vector. So, the transmission coding information on wavelength channel can be expressed as follows:

In (1), the represents a destination node’s global coding coefficient of th input wavelength channel which corresponds to th source information symbol. If the coding coefficient matrix is full rank, the destination can recover the encoded packet which is transmitted from source node; namely . In practice, whether the coefficient matrix is full rank is related to the finite field of random linear network coding. By using random linear network coding, the rate of successful decoding must be when the condition of , where represents finite field of the coefficient matrix, denotes the number of destination nodes, and is the maximum number of encoded links [17]. The rate of successful decoding would be guaranteed if there is a big enough encoding finite field of by using the random linear network coding. Theory has proved that the rate of successful decoding would be 99.6% or so when . Therefore, the key of multicast routing based on network coding problem is to focus on building network coding subgraph using edge-disjoint paths with minimum network coding cost for each destination in the following sections.

#### 3. Multicast Routing Problem Description

Lun et al. formulated the network coding subgraph problem as a linear program which is asymptotically optimal in polynomial time [14]. But in optical WDM network, with a coarse bandwidth granularity, such as Gbps wavelength capacity, this method is not practical to split a message into arbitrary coding fractions across different communication channels. So, it is more proper to model the problem as a multigraph in which each edge represents the minimum wavelength capacity for the WDM networks, where each wavelength channel is represented by an individual edge in the multigraph and a fiber link is defined as the set of wavelength undirected channels between a pair of nodes. We assume that each wavelength channel cost is one unit, and each node has the ability to perform all required optical network coding operations. So, each node is configured with necessary optical devices, such as full wavelength converters capability, sufficient FDL buffers, multicast capable OXC, passive splitters without limited splitting ratio, combiners, amplifiers, and optical switches.

Luo et al. proposed a well-known network coding multicast routing algorithm based on shareable links (NCMSL) [17] comparing with the network coding multicast (TNCM) algorithm based on shortest paths to solve the problem [16]. According to Max-Min-Cut theorem, we can calculate the network multicast maximal capacity which is . To realize the maximum multicast capacity , the minimum cost subgraph should be found from with for each , and subgraph contains link-disjoint paths from source node to each destination . This problem is a NP-complete and hard to approximate within a factor of for any fixed via a reduction from the directed Steiner-tree problem [19].

In NCMSL algorithm, by calculating each link shared degree, the algorithm selected link with the maximum link degree firstly to construct link-disjoint paths for the first destination. Then, for the second destination node, link-disjoint paths are selected to make as much as possible shared links with the former link-disjoint paths of routed destination, and so on. Among the link-disjoint paths for each destination, the links with high shared degree in turn are added to multicast coding subgraph. In subgraph , the network coding is used to encode the information on the links with high shared degree. In NCMSL algorithm, the link shared degree is defined as follows: where stands for the in-degree of node , and is out-degree of node . denotes a link between source node and destination , which is indicated as and . So, the and represent the ingress and egress node of link , respectively. The biggest represents the link with highest link shared degree.

By selecting the links with the highest shared degree from the network to build the multicast coding subgraph in turn, the NCSML algorithm improves link utilization and alleviates the wavelength channel consumption. But NCSML algorithm cannot make some destination nodes completely find the link-disjoint paths which would reduce the multicast capacity.

If the links with lower link shared degree are selected to build the network coding subgraph, the link availability of constructing the link-disjoint path may be improved. But it is certain that the link utilization decreases for dropping network coding possibility. The higher shared degree link means more encoding operation times. The NCMSL algorithm does not consider whether the link-disjoint path makes the multicast reach its maximum multicast capacity. At the same time, it is not appropriate that the NCMSL algorithm neglects network coding operation cost.

#### 4. MR-MNCO Algorithm

To achieve the minimum network coding operation for optical multicast routing, we present the multicast routing based on minimum network coding operations (MR-MNCO) for optical multicast to reach the maximal multicast capacity. The flow chart of MR-MNCO algorithm is shown in Figure 1.

The proposed MR-MNCO algorithm aims to get the minimal times of network coding operation and to also improve the possibility of reaching maximal multicast capacity. In the MR-MNCO algorithm, we first calculate multicast maximal capacity in the network by using Max-Min-Cut theorem, expressed as . Secondly, we search the shortest paths from source node to destination , where is less than the number of all paths from source node to the destination in the network, th destination [21]. Thirdly, we select one path from the paths using our decision mechanism, which is designed to realize the multicast maximal capacity which required fewer times of network coding operation. And we add the path to the network coding subgraph. A decision mechanism is designed to lessen the constraint of link shared degree in building the link-disjoint paths for the destination. The key to select a link-disjoint path is determined by the path making multicast maximal capacity realization instead of path with highest link shared degree. Lastly, the path, selected by network coding subgraph, is deleted from the network . The other link-disjoint paths are selected as above in the residual network for the destination . For other destination nodes, the link-disjoint paths are selected as destination in the original network . The detailed process of MR-MNCO is shown in Figure 1.

In the process of MR-MNCO algorithm, the potential coding node is the node whose in-degree is not less than 2 in the network topology. The node’s potential network coding operation is the node’s out-degree if the node’s in-degree is greater than or equal to 2. Otherwise, node’s potential network coding operation is 0. The node potential network coding operation is shown in

The path’s potential network coding operation is the sum of all nodes on the path except the destination node potential network coding operation. In the network, the destination is decoding receiver which cannot perform the encoding operation. The path potential network coding operation is defined as follows:

A path with bigger potential network coding operation needs more network coding operations and higher coding cost. The objective of the proposed MR-MNCO algorithm is to minimize the network coding cost and maximize the multicast maximal capacity. In the shortest paths from source node to a destination, the path with smallest network coding operation is selected firstly to set up the maximal multicast coding subgraph. This multicast coding subgraph is the set of link-disjoint paths from source to each destination.

#### 5. Simulation and Analysis

In this section, we run simulations to evaluate the performance of proposed MR-MNCO algorithm on Matlab 7.0 by comparing with the traditional network coding multicast (TNCM) algorithm and network coding multicast based on shareable links (NCMSL) algorithm [17]. In our simulation, we use the Waxman model for generating a unit capacity network topology where edge connectivity probability between two nodes and is determined by where is the Euclidean distance between nodes and , is the maximal distance between any two nodes in the network, and are the parameters of the regulatory network diagram characteristics, and is a real number between . The average node’s degree is adjusted to 4, and the number of network nodes is set to 20, where . In the simulation, destinations and source node are distributed uniformly and independently. In order to simplify the analysis, wavelength number per fiber is set to 1.

After multicast network coding subgraph is constructed by using MR-MNCO algorithm, the random linear network coding is used to encode the packet. The encoding packet is transmitted over the paths with high link shared degree in the network coding subgraph. The encoding finite field makes much impact on the packet successful decoding rate. So, in order to verify the validity of the random linear codes, the maximum multicast, encoding finite field , and the rate of successful decoding are simulated to find their relationship. Each simulation result is the average of 1000 runs performed.

As shown in Figure 2, the rate of successful decoding is proportional to the encoding finite field size and is inversely proportional to the maximum multicast capacity. It is not difficult to find that when the finite field ,and no matter what maximal capacity does the multicast get, the rate of successful decoding is close to 1. That is to say, we can ignore the maximal multicast capacity influence on the rate of successful decoding when the encoding finite field is large enough. So, in the following, we set .

In the following simulation, we consider the performance of MR-MNCO algorithms in terms of network coding operation, multicast link cost, and probability of reaching multicast maximal capacity. The multicast link cost is the total link length to build the multicast routing, where the length, delay, or bandwidth can be abstracted to link length. The aim of MR-MNCO algorithm is to achieve minimum network coding operation while reaching the multicast maximal capacity. The probability of multicast reaching maximal capacity is an effective performance index to evaluate the encoding cost performance.

In the following simulation, we consider the performance of MR-MNCO algorithms in terms of network coding operation and probability of reaching multicast maximal capacity. The aim of MR-MNCO algorithm is to need minimal times of network coding operation for reaching the maximal probability of multicast maximal capacity. The probability of multicast reaching maximal capacity is an effective performance index to evaluate the encoding cost performance.

Figure 3 shows the network coding operation as a function of the shortest path for each destination node with 2, 4, and 6 destination nodes in multicast, respectively, where total number of network nodes . Figure 3 indicates that the number of network coding operations increase rapidly as the multicast destination nodes increase. The network coding operations decrease when the number of shortest paths increases. This is because increasing the number of destination nodes will result in more links required to construct the multicast path and more links shared by different paths. As the number of shortest paths increase, the times of network coding operations decrease. The reason is that larger number of shortest paths can help to successfully find more wavelength-disjoint paths for the multicast. However, once the network coding operation at a given number of destination nodes reduces to a certain value, it cannot be further reduced by increasing the shortest paths number for each destination node. So, in the following simulation, we set the shortest paths for each destination node with .

In Figure 4, we compare the network coding operations versus the number of destination nodes for the three multicast routing based on network coding. The network coding operations increase as the number of multicast destination nodes increases. But the MR-MNCO algorithm gets the least number of network coding operations by comparing with the TNCM and NCMSL algorithms under the same destination nodes. It is observed that increasing the number of destination nodes can lead to a significant reduction in the deterioration of the number of network coding operations. That is to say, the MR-MNCO’s number of network coding operations keeps away from the NCMSL’s number. It is because increasing the number of destination nodes results in more paths required for the optical multicast. So, more paths have the possibility to share the links with other paths. More shared link paths need more network coding operation.

Figure 5 indicates the multicast link cost versus the number of destination nodes for the three multicast routing based on network coding. Each link cost in the Waxman topology mode is assigned with a weight which may be representing the distance, propagating delay, link fees, and so forth. It is observed that the multicast total link costs increase as the number of destination nodes increases. However, the TNCM algorithm based on shortest paths from source to each destination can get the lowest multicast link cost, while the NCMSL algorithm based on highest shared links gets highest multicast link cost under each given number of destination nodes. It is observed that the multicast total link cost for the MR-MNCO algorithm would be also deteriorated with the number of destination nodes increasing. But the multicast link cost of MR-MNCO is very close to cost of TNCM algorithm. The reason is that increasing the number of destinations will lead to paths increase from the source to each destination. In the three network coding multicast routing algorithms, TNCM algorithm builds multicast paths based on shortest paths first from source to each destination which results in smallest multicast link cost, and NCMSL algorithm establishes the multicast routing based on highest shared link first which leads to some paths bypassing the shortest paths for sharing with former paths. The proposed MR-MNCO algorithm forms the multicast routing from the shortest paths, so it is a slight increase cost comparing with the TNCM algorithm at a given number of destination nodes.

Figure 6 shows the probability of reaching the multicast maximal capacity versus number of destination nodes for the three algorithms. As the number of destination nodes increases, the number of link resources required by multicast increases also. So, it leads to reduction in probability of reaching multicast maximum capacity. However, comparing with the other two algorithms, the MR-MNCO algorithm can get the maximal probability to the multicast maximal capacity at a given number of multicast destination nodes. The reason is that a decision mechanism is designed to reduce the probability of selecting improper paths which may lead to the multicast maximal capacity drop from the shortest paths in the MR-MNCO algorithm.

#### 6. Conclusion

In this paper, an optical multicast routing algorithm based on network coding subgraph is proposed to optimize network coding operations and multicast capacity. A decision mechanism is designed to select the paths from the shortest paths between each source and destinations that can minimize the network coding operations while maximizing the probability of reaching the multicast maximal capacity. We have defined a term of network coding operations to calculate the algorithm network coding operation cost for the multicast. The simulation results have shown that the proposed MR-MNCO algorithm can effectively reduce the number of network coding operations and can improve the probability of achieving the theoretical multicast maximal capacity. The proposed MR-MNCO algorithm can decrease the point to multipoint multicast routing cost and improve the multicast capacity for the optical WDM network.

#### Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.

#### Acknowledgments

This research was funded by the National Nature Science Foundation of China (NSFC 61275077 and 61371096), by the Scientific Research Fund of Chongqing Municipal Commission (KJ1400421), and by the Basic and Frontier Research Program of Chongqing (CSTC 2013jcyjA40052).