CHAPTER 4. MULTI-PATH PROVISIOIG FOR G-SOET ETWORKS WITH
4.2 S IMULATIONS AND P ERFORMANCE C OMPARISONS
We conduct two sets of simulations, one runs on a well-know USA benchmark network and the other runs on some randomly generated networks. Figure 24 shows the USA network that contains 24 nodes and 86 OC-48 bi-directional links. In order to evaluate the benefit of applying multi-path provisioning, simulations for traditional SONET 1+1 protection is also carried out in this study. For the 1+1 scheme, two link disjoint paths are provisioned for each SD pair. Without VCAT capability in conventional SONET network, whole traffic demand must go through the same route.
First, shown in Figure 24, we evaluate various demands and survivable requirements under different numbers of SD pairs in the USA network. In these experiments, the working demand is fixed to 3 STS-1 for all cases. In Figure 25 and Figure 26, the results of the experiments relating to the single-link failure protection scheme are shown. In Figure 25(a) for the NG-SONET network, the less stringent survivable requirement (i.e., a smaller value of t), means less bandwidth is required. In addition, the increase of total bandwidth is nonlinear for any two successive values of t. For the (d,t) = (3,1) case, it consumes up to 16% more resources than the (d,t) = (3,0) case to provide 1 STS-1 link-disjointed protection path when a link failure occurs in the network. For the (d,t) = (3,2) case, it consumes up to 56% more
a link failure occurs in the network. The (d,t) = (3,3) case and 1+1 case consume more than 2 times resources than the (d,t) = (3,0) case to provide the full protection as there may not exist 2 link-disjointed shortest paths for a SD-pair. Due to the high traffic generated, there is no feasible solution for the (d,t)=(3,3) as the number of SD pairs becomes larger than 150.
0
1
2
3 4
5
6
7 8
9
10
11
12
13
14
15
16
17
18
19
20 21
22
23
Figure 24 - The USA Network (24 nodes and 86 OC-48 bi-directional links)
To further compare the performance between multi-path provisioning in NG-SONET and in SONET, the detailed results are shown in Figure 25(b). We compare the (3,3) scheme with SONET 1+1. For SONET 1+1 protection, the required demand for each SD pair is set to three STS-1s. Both schemes guarantee three survivable STS-1 circuits under any single-link failure.
By taking advantage of diverse multi-path routing, NG-SONET outperforms 1+1 in all cases.
The NG-SONET scheme only uses 95% to 96% resources related to that are used in the 1+1 scheme. In particular, due to high bandwidth consumption, as the number of SD pairs goes over 120, there is no feasible solution for the 1+1 scheme.
In Figure 26, we study the impact of network connectivity on bandwidth consumption.
The connectivity degree of a network is represented by the ratio of the number of links to the number of nodes. We make performance comparisons on several randomly generated network topologies. The total number of SD pairs is 150 and each network is equipped with 100 OC-48 links. As shown in Figure 26(a), by increasing the number of nodes from 20, 25, 30, to
40, the network connectivity changes from dense to sparse. A dense network consumes less capacity than a sparse network for all test schemes. The results reveal that node degree strongly influences the resource consumption in a survivable network. Again, for NG-SONET, the larger the t value, the larger the bandwidth required. SONET 1+1 protection needs the most capacity. For the (d,t)=(3,2) case, there is no feasible solution for networks with 40 nodes. They are infeasible for the (d,t)=(3,2) and SONET 1+1 protection under networks with nodes larger than 30 and 40 respectively.
In Figure 26(b), we fixed the number of nodes to be 30 and vary the number of links.
The larger the number of links the denser the network is. Again, the denser network holds better performance. In this experiment, there are no feasible solutions for (3,2), (3,3), and 1+1 schemes in networks with 90 links. NG-SONET still outperforms SONET 1+1 protection schemes in all cases.
In Figure 27 and Figure 28, the results regarding the single-node failure protection are shown. The trends of the resource consumption are similar with those in single link protection schemes. In Figure 27(a) for the NG-SONET network, with the same survivable requirement (i.e., a same value of t), less bandwidth is required than it is required in the single-link failure protection scheme, but the difference between them is slight. In the node failure protection scheme, only one link is used as a SD-pair has a direct link and this reduces the resources consumed. For the (d,t) = (3,1) case, it consumes up to 12% more resources than the (d,t) = (3,0) case to provide 1 STS-1 node-disjointed protection path when a node failure occurs in the network. For the (d,t) = (3,2) case, it consumes up to 52% more resources than the (d,t) = (3,0) case to provide 2 STS-1 node-disjointed protection paths when a node failure occurs in the network. The (d,t) = (3,3) case and 1+1 case consume more than 2 times resources than the (d,t) = (3,0) case to provide the full protection as 2 node-disjointed shortest paths may not exist for a SD-pair.
The performance comparison of the NG-SONET (3,3) and SONET 1+1 protection within single node protection scheme is shown in Figure 27(b). Both schemes guarantee three survivable STS-1 circuits under any single-node failure. The NG-SONET scheme only uses 91% to 95% resources of that are used in 1+1 protection by taking advantage of diverse multi-path routing.
In Figure 28, we study the impact of network connectivity on bandwidth consumption.
The parameters are the same as those in Figure 26. As shown in Figure 28(a), the network connectivity changes from dense to sparse by increasing the number of nodes from 20, 25, 30, to 40. We find similar movements as shown in Figure 26, that a dense network consumes less capacity than a sparse network for all test schemes. For the (d,t)=(3,1) case, the 30-node network needs 60% more bandwidth than the 20-node network to provide 1 STS node-disjointed path. For the (d,t)=(3,2) case, the 30-node network consumes 80% more bandwidth than the 20-node network to provide the 2-STS node-disjointed paths. The low node degree is unfavorable to the resource consumption in a survivable network. In Figure 28(b), we vary the number of links if the number is under 30. Again, the denser network has better performance.
The Figure 29 and Figure 30 illustrate the results regarding the networks that provide both the single-link failure and single-node failure protections at the same time. Since the protection path must satisfy link-disjoint and node-disjoint simultaneously, it is possible that the protection path will be a longer path than in the node/link failure protection scheme and consume more bandwidth. The results shown in Figure 29 and Figure 30 conform to this inference. The link-node-failure-protection scheme increases slightly more than the other schemes. The bandwidth consumption is analogous to that in the link failure protection scheme.
Through the MP-QoS multi-path provisioning scheme for NG-SONET networks, users
can specify their bandwidth requirements for different network states. Numerical results reveal that the proposed scheme outperforms legacy SONET protection in all experimental cases. The other observations are: Connection requests with less stringent guaranteeing survivable requirement consume less network capacity. The required bandwidths among different (d, t) values increase nonlinearly. It gives a guideline for pricing connections with different class of quality of survivability requirements. Furthermore, a dense network consumes less network capacity than a sparse network. This indicates connectivity degrees should be carefully considered in designing a survivable network.
(a) Required bandwidth under different SD pair numbers
(b) Performance comparison: NG SONET and SONET 1+1 protection
Figure 25 - Simulation results of MP-QoS (on USA network, single-link failure protection)
100 125 150 175 200 225 250
500 1000 1500 2000 2500 3000
Total bandwidth (STS-1)
Number of SD pairs
(3,0) (3,1) (3,2) (3,3) USA 24 node network
80 90 100 110 120 130
1500 1750 2000 2250 2500
Total bandwidth (STS-1)
Number of SD pairs NG-SONET (d,t)=(3,3) SONET 1+1 protection Network: 24 node USA Network
1+1 infeasible
@ 130
Figure 26 - Simulation results of MP-QoS (under the network with various connection degrees, single-link failure protection)
20 25 30 35 40
1000 1250 1500 1750 2000 2250 2500 2750
Total bandwidth (STS-1)
Number of nodes
(3,0) (3,1) (3,2) (3,3) 1+1
# Link: 100
# SD pairs = 150
(a) Performance comparison under different node numbers
90 120 150 180
1000 1250 1500 1750 2000 2250 2500 2750 3000
Total bandwidth (STS-1)
Number of links (3,0)
(3,1) (3,2) (3,3) 1+1
# Node: 30
# SD pairs = 150
(b) Performance comparison under different link numbers
Figure 27 - Simulation results of MP-QoS (on USA network, single-node failure protection)
80 90 100 110 120
1500 1750 2000 2250 2500
Total bandwidth (STS-1)
Number of SD pairs NG-SONET (d,t)=(3,3) SONET 1+1 protection Network: 24 node USA Network
1+1 infeasible
@ 130
(b) Performance comparison: NG-SONET and SONET 1+1 protection
25 50 75 100 125 150 175 200 225 250
0 500 1000 1500 2000 2500
Total bandwidth (STS-1)
Number of SD pairs
(3,0) (3,1) (3,2) (3,3) USA 24 node network
(a) Required bandwidth under different SD pair numbers
Figure 28 - Simulation results of MP-QoS (under the network with various connection degrees, single-node failure protection)
90 120 150 180
1000 1250 1500 1750 2000 2250 2500 2750 3000
Total bandwidth (STS-1)
Number of links (3,0)
(3,1) (3,2) (3,3) 1+1
# Node: 30
# SD pairs = 150
(b) Performance comparison under different link numbers
20 25 30 35 40
1000 1250 1500 1750 2000 2250 2500 2750
Total bandwidth (STS-1)
Number of nodes
(3,0) (3,1) (3,2) (3,3) 1+1
# Link: 100
# SD pairs = 150
(a) Performance comparison under different node numbers
Figure 29 - Simulation results of MP-QoS (on USA network, single link/node failure protection)
80 90 100 110 120
1500 1750 2000 2250 2500
Total bandwidth (STS-1)
Number of SD pairs NG-SONET (d,t)=(3,3) SONET 1+1 protection Network: 24 node USA Network
1+1 infeasible
@ 130
(b) Performance comparison: NG-SONET and SONET 1+1 protection
25 50 75 100 125 150 175 200 225 250
0 500 1000 1500 2000 2500
Total bandwidth (STS-1)
Number of SD pairs
(3,0) (3,1) (3,2) (3,3) USA 24 node network
(a) Required bandwidth under different number of SD pairs
Figure 30 - Simulation results of MP-QoS (under the network with various connection degrees, single link or node failure protection)
90 120 150 180
1000 1250 1500 1750 2000 2250 2500 2750 3000
Total bandwidth (STS-1)
Number of links (3,0)
(3,1) (3,2) (3,3) 1+1
# Node: 30
# SD pairs = 150
(b) Performance comparison under different link numbers
20 25 30 35 40
1000 1250 1500 1750 2000 2250 2500 2750
Total bandwidth (STS-1)
Number of nodes
(3,0) (3,1) (3,2) (3,3) 1+1
# Link: 100
# SD pairs = 150
(a) Performance comparison under different node numbers
Chapter 5. Optimal Routing and Bandwidth Provisioning for Survivable Multicast Communications Using
etwork Coding
Nowadays networked video streaming applications like IPTV, video on demand, video conferencing, and online games are growing fast. Efficient bandwidth-saving streaming mechanisms between application servers and customers is an attractive research topic.
Multicast and peer-to-peer communications are the two most important technologies.
Multicast is a communication paradigm between a single sender and multiple receivers on a network. To minimize bandwidth usage, the multicast algorithm collects all Source-Destination paths of this application and forms a tree-shaped multicast connection. In Figure 31, we depict a generic model for delivering multicast videos through a packet network.
In networked video streaming applications like IPTV services, a multicast connection might consist of tens to hundreds of video programs, and therefore a network failure would impact any consumer viewing these types of programs as the service quality would suddenly drop.
IP Multicast Network
Multicast Receiver 1 Video Server
Sending out
kvideo programs Receive all
kVideo programs Program 1
Program 2
Select one from the k programs
Multicast Receiver 2
Multicast Receiver R
Figure 31 – An example of multicast network architecture
Conventional network protection approaches for multicast employ extra network resources and pre-computed backup paths to bypass the failure link or node. It needs to reserve spare bandwidth and backup paths via complex computation. We found that network coding can enhance network survivability [13]-[16] by electing some intermediate nodes performing packet encoding.
Network coding is an elegant and novel technique to improve the network throughput and performance. Traditionally, information flow was treated like fluid through pipes, and independent information flows were kept separate. This rule can be changed to allow intermediate nodes to not only forward but also process the incoming independent information flows. At the same time, there are ways to combine and later extract independent information. Then data streams that are independently produced and consumed do not necessarily need to be kept separate when they are transported throughout the network.
Combining independent data streams allows a better tailoring of the information flow to the network environment and accommodates the demands of specific traffic patterns. Since the computational processing has become cheaper according to Moore’s law, network coding utilizes cheap computational power to dramatically increase network throughput.
C D
C D
⊕C D
⊕C D
C⊕ D
(C,D)
C D
x3
x4
x2
d1 d2
x1
s
(C,D) (C,D)
Figure 32–An example of network coding
In Figure 32, we depict an example of how network coding works. In the butterfly network, each edge can carry only single data. Source node s wants to send two pieces of data, those are C and D, to two destination nodes (d1 and d2). If we only used routing, then the central line (x3 x4) would be able to carry C or D, but not both. If C is sent through the central line; d1 would receive C twice and can not receive D at all. If D is sent through the central line, a similar problem is posed for d2. A conclusion can be gotten that routing is insufficient because no routing scheme can transmit both C and D at the same time to both d1 and d2. By sending C⊕D through the center line, d1 receives C and C⊕D, and can find D by exclusive-or the two values. Node d2 receives D and C⊕D, and can find C by the same operation.
Network coding offers benefits along diverse dimensions of communication networks, such as throughput, wireless resources, security, and resilience to link failures. Some network coding research is focused on how to enhance throughput and provide network survivability [13]-[16] by selecting some intermediary nodes to perform packet encoding. Several network-coding-based protection schemes for point-to-point communications have been proposed in the literature, including single-link failures [43], [44], multiple link failures [45]
and single-node failures [46]. Researchers conclude that both bandwidth consumption and service recovery time are reduced by applying network coding in point-to-point communications.
For a multicast communication between one source node and $ receiver nodes, an algebraic network coding approach is shown in [47] for network protection. They assert the network coding problem is solvable if, and only if, the Min-Cut Max-Flow bound is satisfied for all source-destination connections. Moreover, they have proven that there exists a solution for the network coding to protect a set of failure patterns F in a finite field F2m with
log2| | +1
≤ F $R
m , where the |F| is the number of failure patterns and R is the information
generating rate at the source. The results imply that network survivability is guaranteed if we can determine a routing and bandwidth provision that can satisfy Min-Cut Max-Flow bound for the pre-defined failure patterns.
Based on the point mentioned above, a multicast network protection problem is formulated in a mixed integer linear programming form to determine the optimal routing and bandwidth provision with the Min-Cut Max-Flow bound constraints versus any single link/node failure. Minimizing the total cost of provisioning bandwidth in the network is our objective. Through the computed optimal routing and bandwidth provision using algebraic network coding from [47], a minimum cost survivable network against any single link/node failure can be guaranteed.
5.1 Multicast Protection Schemes
We propose four protection schemes for survivable multicast connections. The first two schemes are network-coding-based protection schemes that can provide multicast networks against any single-link failure and single-node failure. These two schemes take advantage of network coding to reduce the total bandwidth consumption, thereby lessening total cost consumption. The remaining two schemes are tree-based protection schemes that can prevent any single-link failure.
5.1.1 etwork Coding for Single-Link Failure Protection (CL)
According to [47], a network coding problem is solvable if the Min-Cut Max-Flow bound is satisfied for all multicast source-receiver (SR) connections. To explain this, we give a multicast session in Figure 33(a) where each link has one unit bandwidth (i.e., BW=1). We assume that each receiver node needs to receive two programs (i.e., the Min-Cut Max-Flow bound for all SR connections ( = {(S,R1),(S,R2)}) is 2). After link l fails, the Max-Flow for (S,R1) is 2 and for (S,R2) is also 2. All SR connections are still satisfying the Min-Cut
Max-Flow bound (i.e., Max-Flow (S,R1) = 2 ≥ 2 and Max-Flow (S,R2) = 2 ≥ 2). Hence, the network coding problem has a solution for this link l failure case in Figure 33(a). Through this concept, we propose a combinatorial optimization problem to determine routing and provisioned bandwidth with minimizing network cost at the same time network coding exists for any single link/node failure. The detailed formulation is shown in the next section.
Figure 33 - Protection schemes with/without network coding Each video program is delivered
by an individual multicast tree.
R1
A multicast tree is used to carry all k video programs. Backup path is reserved to protect any single link failure.
S
(a) Network coding-based link protection scheme (NCL)
(b) Bundle tree-based link protection scheme (BTL)
(c) Individual tree-based link protection scheme (ITL)
5.1.2 etwork Coding for ode Failure Protection (C)
By graph transformation, we can apply the link protection technique shown in the previous subsection to obtain the node failure protection. We depict an example in Figure 34.
For simplicity, only one node is transformed in the example. First we replace the node v with two artificial nodes (vin, vout), one forinput and the other for output. An artificial link e is used to connect these two artificial nodes. All incoming and outgoing links are then connected to the artificial input and output node, respectively. By regarding a node failure as its artificial link e failure, the node failure can be viewed exactly as link failure. Due to the space limitation, we omit the required protocol in the network to inform the node failure event and the signal for activating the network-coding-based protection.
v v
v
in_v_e v
out_vFigure 34 - Illustrations of graph transformation
5.1.3 Bundle Tree-Based Link Protection Scheme (BTL)
This scheme is similar to the link restoration scheme for multicast communication [48].
Every working link in the multicast tree is constructed with a backup route to it. Different from the work in [48], the construction of the working tree and backup path are jointly determined to further reduce total bandwidth consumption. The bundle tree-based link protection scheme (BTL) is depicted as shown in Figure 33(b). In BTL, only one multicast tree is used to carry all video programs. Backup paths are reserved to protect any single-link failure while the total cost of provisioned bandwidth is minimized.
5.1.4 Individual Tree-Based Link Protection Scheme (ITL)
The second tree-based scheme is called the Individual tree-based link protection scheme (ITL), which is shown in Figure 33(c). In ITL, each video program is delivered by an individual multicast tree. Therefore, a network operator has to determine N routing trees to carry N multicast video streams individually and pre-determines backup paths to protect any potential single-link failure. Models for the two tree-based schemes are also presented in the next section.
5.2 Optimization Models
In this section, we formulate the NCL, BTL and ITL problems as combinatorial optimization problems and determine the proposed routes and provisioned bandwidth of a multicast network to protect any single-link failure. These formulations mainly focus on the minimization of total network costs, in which the constraints are required to satisfy the demand requirement, 100% survivability constraint and physical capacity limitation. The output of the problems includes the routing paths and required bandwidth on each link.
A multicast network is modeled as a graph G($,L), where $ denotes the set of network nodes, and L represents the set of physical links. The link capacity Cl is the available bandwidth on link l. We assume that each video program consumes the same bandwidth.
Before describing the formulations, we first list the notations that are common for all models.
Common Notations:
α
l : cost for one unit bandwidth on link l (i.e. bandwidth for one video program);R : set of receiver nodes;
k : the number of video programs in the system;
d : bandwidth requirement to support one video program;
in
In addition to the above notations, there are some other notations used only for separate models. They are listed right before the corresponding one.
5.2.1 Single Link/ode Protection Using etwork Coding
Our model is developed based on the network coding theorem shown in [47]. It guarantees that a network can survive after any single-link failure if the remaining capacity is still large enough to provide the required bandwidth after removing the failed link. To be precise, the maximum flow bound for each receiver must be greater than or equal to the demanded bandwidth in both normal and any single-link failure state. We summarize the dedicated notations used in the formulation as follows:
Decision variables:
xl : the number of video programs carried on link l;
yrl : the number of video programs carried on link l for destination node r;
zr : the total flow amount leaving from the server node to destination node r;
subject to:
The objective function is to minimize the total cost of provisioned bandwidth on each
The objective function is to minimize the total cost of provisioned bandwidth on each