Chapter 3: Reconfiguration Issue for Dynamic Traffic in Hierarchical
3.3 Heuristic Algorithms for Dynamic Traffic in Traditional OXC Networks
3.3.1 Rerouting Based Reconfiguration Algorithm for Dynamic Traffic
3.3.1 Rerouting Based Reconfiguration Algorithm for Dynamic Traffic (RBRADT)
ightpath. When congestion occurs, RBRADT will try to set up new lightpath between the node pair having the largest traffic carried by the over
The main differences between RBRADT and the algorithm in [13] are the ways to add and to delete a l
a
-utilized lightpaths. RBRADT considers all over-utilized lightpaths in the network rather than considering just the over-utilized lightpath having the maximum load in [13]. The algorithm in [13] chooses to establish a lightpath for the node pair with highest load using the over-utilized lightpath with maximum load. If such node pair cannot be set up a lightpath, no other candidates can be selected for lightpath addition. However, RBRADT collects the information of the traffic flows carried by all over-utilized lightpaths and sorts the node pairs of these traffic flows in nonincreasing order according to their amount of traffic. The sorted node pairs are
then picked sequentially for the establishment of a new lightpath until one can be successfully set up.
having the most conflictions with the shortest paths of the node pairs that we want to set up a
aths to relieve the congestion.
In [13], an underutilized lightpath is deleted when a new lightpath cannot be set up or when no congestion occurs. The unnecessary deletions of lightpath when no congestion occurs may cause the congestion on other lightpaths and trigger more lightpath additions and deletions. Besides, the released resources of the deleted lightpath may not even be helpful for setting up a new lightpath to decrease the heavy load on the over-utilized lightpaths. Therefore, RBRADT deletes an underutilized lightpath only when a new lightpaths cannot be set up to decrease the load of the over-utilized lightpaths. RBRADT chooses the underutilized lightpath
lightpath on. The released resources of such an underutilized lightpath are more useful for establishing the lightp
0
1
3
5
2 4
0.5
0.3 0.8
0.45 0.75
High watermark =0.7 T(1, 5)=0.75
T(3, 2)=0.5
Fig. 13. Illustration of node pair selection to set up a lightpath
We use an example to illustrate how to select the node pairs for lightpath addition of RBRADT in Fig. 13. In Fig. 13, each solid edge is a lightpath in the network and each dash edge is the routing path of each traffic flow. The loads of the
lightpath (0, 4) = 0.8 and lightpath (4, 5) = 0.75 are over the high watermark 0.7. The node pairs, (3, 2) and (1, 5), with the loads, 0.5 and 0.75, are carried by these two ghtpaths. We sort the node pairs of these traffic flows in nonincreasing order acco
li
rding to their amount of traffic. Thus we first try to set up a lightpath for (1, 5) with the maximal load. If failed, we try to set up a lightpath for the next pair (3, 2). If still failed, a lightpath deletion will be triggered.
Rerouting Based Reconfiguration Algorithm for Dynamic Traffic:
Input:
Gcv(t) : Current virtual topology T(t) : Current traffic
Output:
One of the following:
1: Addition of a lightpath 2: Deletion of a lightpath
3: No change to the virtual topology Algorithm:
Step 1: Find the set of over-utilized lightpaths O, stop if O = {∅}.
Step 2: Find the set of node pairs NP = {NPi}, NPi is the node pair for λi, where λi
are the traffic flows routed for NPi using the lightpaths in O.
Step 3: Sort NPi, i = 1, 2, …, |NP|, in nonincreasing order according to λi.
Step 4: Try to construct a lightpath for NPi in order, go to Step 5 if a lightpath is set up, else go to Step 6.
Step 5: Reroute whole or part of λi on the new lightpath without exceeding the high watermark, stop.
Step 6: Find the set of underutilized lightpaths U = {ULi}, stop if U = {∅}, else go to Step 7.
Step 7: Find the conflictions CLi for each ULi in U, where CLi is the number of shortest paths of the node pairs in NP having common links with ULi.
Step 8: Sort ULi, i = 1, 2, … , |U|, in nonincreasing order according to CLi.
Step 9: Delete the ULi in order of CLi if the traffic flows on ULi can be routed on G (t)-UL , go to Step 10 if a lightpath in U is deleted, else stop. cv i
Step 10: Reroute the traffic flows of ULi on Gcv(t)-ULi.
Fig. 14. Rerouting Based Reconfiguration Algorithm for Dynamic Traffic
The whole algorithm of RBRADT is shown in Fig. 14. Assume Gcv(t) is current virtual topology and T(t) is current traffic at this period we measured. After each period we execute the algorithm, in which one of the following operations will be performed, addition of a lightpath, deletion of a lightpath, or no change to Gcv(t). Each addition operation is triggered by some congestion in Gcv(t), and each deletion operation is triggered by failing to set up any lightpath for resolving the congestion in
cv(t). If no congestion condition occurs in Gcv(t), no change will be made to Gcv(t).
Weighted Based Reconfiguration Algorithm for Dynamic
T )
BRADT deletes an underutilized lightpath only when we cannot establish a new lightpaths to relieve the congestion in the network. Difference ADT and WBRADT is the way to choose the possible node pairs for he node pair (i, j),
where m rom node i and
formation of the tr he over-utilized lightpaths. A weight matrix M will be
corresponding routing path excluding the destination d. WBRADT tries to set up a
new ligh , is the
um of
all colum watermark,
for (i, j) cannot be set up, WBRADT will randomly choose a node pair in the set NP = {(i, j) | Mrow(i) and Mcol(j)
G
3.3.2
raffic (WBRADT
Similar to RBRADT, W
between RBR
establishing a new lightpath. WBRADT set up a new lightpath for t ost traffic flows routed on the over-utilized lightpaths start f end at node j. When over-utilized lightpaths exist, WBRADT collects the in
affic flows routed on t
constructed by the loads of these flows and their routing paths on the virtual topology.
For each traffic flow, Mi,d will be added by its load, where i is the node along the
tpath for the node pair (i, j), where the sum of the ith row in M, Mrow(i)
maximum of all rows and the sum of the jth column in M, Mcol(j), is the maxim ns. However, if one of the Mrow(i) and Mcol(j) is lower than the high the lightpath addition will be canceled. If the lightpath
≥ high watermark} for the establishment of a new lightpath until one can be successfully set up. After successfully establishing a new lightpath, the routes for the traffic flows carried by the over-utilized lightpaths will be recalculated.
T(1, 5)1=0.3, path is 1Æ0Æ4Æ5
T(1, 5) =0.45, path is 1 4 5 T(3, 2)=0.5, path is 3Æ0Æ4Æ2
2 Æ Æ
Maximal Mrow(i) Maximal Mcol(j) 0
Fig. 15. Example for calculating weight matrix M
We use an example to explain how to construct the weight matrix M in Fig. 15.
Assume that the high watermark is 0.7 and there are three traffic flows (1, 5)1, (1, 5)2
and (3, 2), shown by the three dash lines in Fig. 15(a), carried on the over-utilized lightpath (0, 4) and (4, 5). Since flow (1, 5)1 is routed on the path 1 → 0 → 4 → 5, it will contribute 0.3 to the weight matrix on M1,5, M0,5 and M4,5. Similarly, flow (1, 5)2
contribute 0.45 on M1,5 and M4,5, and flow (3, 2) 0.5 on M3,2, M0,2 and M4,2. The resulting weight matrix is shown in Fig.15(b). The 4th row and the 5th column have the maximum Mrow(i) and Mcol(j) respectively. Hence, we will try to construct a new lightpath for (4, 5) to decrease the heavy load on the over-utilized lightpaths.
WBRADT is shown in Fig. 16.
Weighted Based Reconfiguration Algorithm for Dynamic Traffic:
Input:
Gcv(t): Current virtual topology T(t): Current traffic
Output:
One of the following:
1: Addition of a lightpath 2: Deletion of a lightpath
3: No change to the virtual topology Algorithm:
Step 1: Find the set of over-utilized lightpaths O, stop if O = {∅}.
Step 2: Construct the weight matrix M.
Step 3: Find the set of node pairs NP = {(i, j) | Mrow(i) and Mcol(j) ≥ high watermark}, stop if NP = {∅}.
Step 4: Try to set up a lightpath for the node pair (i, j) in NP with maximum Mrow(i)
and Mcol(j), if failed, try the other node pairs in NP. If successfully establishing a lightpath, go to Step 5, else go to Step 6.
Step 5: Recalculate the routes of the traffic flows carried by the lightpaths in O and reroutes these traffic flows, stop.
Step 6: Find the set of underutilized lightpaths U = {ULi}, stop if U = {∅}, else go to Step 7.
Step 7: Find the conflictions CLi for each ULi in U, where CLi is the number of shortest paths of the node pairs in NP having common links with ULi.
Step 8: Sort UL , i = 1, 2, … , |U|, in nonincreasing order according to CL . i i
Step 9: Delete the ULi in order of CLi if the traffic flows on ULi can be routed on Gcv(t)-ULi, go to Step 10 if a lightpath in U is deleted, else stop.
Step 10: Reroute the traffic flows of UL on G (t)-UL . i cv i
Fig. 16. Weighted Based Reconfiguration Algorithm for Dynamic Traffic
3.4 A Heuristic Algorithm for Dynamic Traffic in MG-OXC Networks
In this section, we apply RBRADT, WBRADT and the algorithm proposed in [13]
to the MG-OXC networks. In MG-OXC networks, tunnels should be allocated efficiently so that lightpath can be set up. When the tunnel utilization is too low, it
should be considered to be torn down since the occupation of link capacity and the
p ay cause some of the lightpaths fail to be set up.
T ic execution of RBRADT, WBRADT or the algorithm
p ictate that another process that updates the current tunnel configuration should also be periodically performed. We propose Periodic Tunnel
R ic Traffic (PTRADT) is performed periodically
eriod, only one of the following operations can be done: addition of a to all tunnels.
ths with hea
switched to the new tunnel and the ports of the intermediate nodes along the tunnel can be released. If we cannot set up a tunnel, an underutilized tunnel will be deleted if
ing common subpath with
the len t. For
ach period, the load of each group of lightpaths is measured. We find the sets of
or equal to half the capacity of a fiber and a waveband tunnel, spectively. If both OF and OB are empty sets, the tunnels will not be changed.
orts consumed at its two ends m herefore, besides the period roposed in [13], we d
econfiguration Algorithm for Dynam and in each p
tunnel, deletion of a tunnel, or no change
PTRADT works as follows. We try to find the common subpaths of the lightpa vy traffic. If the lightpaths corresponding to such condition exist, a tunnel will be set up along the common subpath as possible so that these lightpaths can be
the traffic on it can be rerouted. Details of PTRADT are described as follows.
When a lightpath is established, its route will be recorded in a table. According to the route of each lightpath, we can find the lightpaths hav
gth of tunnel length constraint and group such set of lightpaths in a se e
grouped lightpaths OF and OB, where they are the groups of lightpaths with their load being higher
re
Otherwise, we randomly choose one group of lightpaths in OF for the establishment of a new fiber tunnel along the common subpath of the grouped lightpaths until one can be successfully set up or any of them cannot be set up. If a fiber tunnel is
successfully established, the selected group of lightpaths will be switched to the new tunnel and the ports of the intermediate nodes along the tunnel will be released. When a fiber tunnel cannot be set up for any group of lightpaths in OF, a group of lightpaths in OB will be also randomly chosen for setting up a new waveband tunnel. Similarly, the selected group of lightpaths will be switched to the new tunnel.
0
1 3
2 4
5
MG-OXC
(a) (b)
Fig. 17. Illustration of calculating CL. (a) Conflictions happen at physical links and at end nodes. (b) A detailed drawing of the confliction at the end nodes.
If all fiber and waveband tunnels cannot be set up for the groups of lightpaths in and OB, we find the set of underutilized tunnels UT, in which the traffic on the OF
underutilized tunnels can be rerouted. Note that an underutilized tunnel means the traffic on it is lower than some low watermark. We will delete an underutilized tunnel UTi that has the most conflictions CLi with the tunnels we want to set up for OF and OB. Figure 13 illustrates the calculation of CL for the underutilized tunnel. The conflictions between the underutilized tunnels and the tunnels we want to set up may happen at physical links and the end nodes of the tunnels. In Fig. 17(a), the thick and dash lines represent the actual physical paths of underutilized tunnels and the tunnels we want to set up, respectively. The underutilized tunnel (1, 5) conflicts with the tunnels (0, 3) and (2, 5) we want to set up at the physical link (1, 3) and at the end node 5 (Fig. 17(b)), respectively. Thus, the CL for the underutilized tunnel (1, 5) is 2.
PTRADT is shown in Fig. 18.
Periodic Tunnel Reconfiguration Algorithm for Dynamic Traffic:
Input:
Gcv(t): Current virtual topology T(t): Current traffic
Output:
One of the following:
1: Addition of a tunnel 2: Deletion of a tunnel 3: No change to all tunnels Algorithm:
Step 1: Find the sets OF and OB, if both OF = {∅} and OB = {∅}, stop.
Step 2: If OF = {∅}, go to Step3, else randomly choose a group of lightpaths OFi in OF and try to establish a fiber tunnel for OFi, until one can be set up. If all failed, go to Step 3, else go to Step 4.
Step 3: If OB = {∅}, go to Step5, else randomly choose a group of lightpaths OBi in OB and try to establish a waveband tunnel for OBi, until one can be set up. If all failed, go to Step 5, else go to Step 4.
Step 4: Switch the grouped lightpaths to the newly set up fiber or waveband tunnel, stop.
Step 5: Find the set UT, if UT = {∅}, stop, else go to Step 6.
Step 6: Calculate the conflictions CL for each UT in UT. i i
Step 7: Delete the underutilized tunnel UTi in UT having the most conflictions CLi
and reroute the traffic on it.
Fig. 18. Periodic Tunnel Reconfiguration Algorithm for Dynamic Traffic
3.5 Numerical Results
3.5.1 Performance Analysis
For a traditional OXC network with N nodes, we analyze the time complexities of lightpath addition and lightpath deletion with the algorithm in [13], RBRADT and WBRADT as follows.
Table II
WBRADT
ghtpath addition Lightpath deletion Time Complexity Comparisons between [13], RBRADT and
Li
The algorithm in [13] n1+N2-N n1+N2-N RBRADT n1+n2(N2-N)+N2-N n1+N2-N+n3TCL
WBRADT n1+n2(N2-N)+2N n1+N2-N+n3TCL
In Table II, n1 is the number of lightpaths, n2 is the number of over-utilized
time to c
3.5.2 S
Ass he number of wavelengths in a fiber is ten and the number of fibers s in a fiber, that is, each st waveband, and the sixth to
To create a simulation traffic pattern for each node pair, a traffic rate function is different patterns. After randomly choosing the rate function, we randomly generate a traffic rate corresponding to the traffic rate function.
r hundred packets with five arrival rates randomly lected in one of the traffic rate functions. Figure 19 shows the five traffic rate func
19(c), a function decreasing first and then increasing in Fig.
lightpaths, n3 is the number of possible lightpaths we want to set up and TCL is the ompute CL, respectively.
imulation Environment
ume t
along a directional link is five. There are two waveband
waveband has five wavelengths, with the first to fifth wavelengths being in the fir the tenth wavelengths being in the second waveband.
randomly selected among five
For each node pair, we generate fou se
tions. These rate functions in Fig. 19 are a monotonic increasing function in Fig.
19(a), a monotonic decreasing function in Fig. 19(b), a function increasing first and then decreasing in Fig.
19(d), and a constant value function in Fig.19 (e), respectively. All values in these five traffic rate functions are between (0, 1].
(a) (b) (c) (d
ig. 19. Ill rate fu
algorithm proposed in [13] for reconfiguration problem with traditional OXCs and compare the maximal lightpath loads and algorithms. In our simulation experiments, let the network run for a period then starting to apply our heuristic approaches to adjust the v
that unne
) (e)
F ustration of five traffic nctions
We divide the simulation experiments into two parts under dynamic traffic pattern. First, we implement our heuristics (i.e. RBRADT and WBRADT) and the period adaptation reconfiguration
adjustment times between these three
irtual topology. We demonstrate the operation of the system by measuring the maximal load of the lightpaths in the network at the end of each observation period.
The observation period is the parameter for observing the change of the maximal lightpath load by using different algorithms. The simulation results show
cessarily addition and deletion operations to the virtual topology cause the network unbalanced.
3.5.3 Simulation Results
Figure 20 plots the maximal loads in network observed at the end of each observation period (400 time units for this experiment). The dot line in Fig. 20 indicates the value of high watermark. Figure 21 shows the frequency of topology
adjustments, where a positive impulse indicates a lightpath addition and a negative impulse indicates a lightpath deletion. The x-axis in both Fig. 20 and Fig. 21 is the umber of observation periods. We fix the time of an adaptation process to 60000 time units, thus, the number of observation periods is 60000/400=150 in Fig. 20 and Fig. 21. The maximal lightpath load with the algorithm proposed in [13] is usually higher than the high watermark in Fig. 20(a) and the adjustment frequency with the
algorithm proposed b) and WBRADT
Fig. 20(c). The unnecessary addition and deletion operations in [13] cause the viole
h watermark is changed to 0.85 and 0.65. When high watermark is higher, the adjustment frequency decreases because fewer lightpaths exist
n
in [13] is higher than with RBRADT in Fig. 20(
in
nt fluctuations on the load of lightpath. However, in RBRADT and WBRADT, we do not make a difference to the virtual topology when no congestion occurs.
Therefore, the performances in our algorithms are better than the algorithm proposed in [13]. The period is 200 time units in Fig. 22 and Fig. 23 and 100 time units in Fig.
24 and Fig. 25. The violent fluctuation of maximal lightpath load is clearer when the observation period is shorter. When the period is shorter, the frequency of topology adjustments will be much higher and the algorithm proposed in [13] will delete the underloaded lightpath more frequently. The redundant variations result in the loads of the lightpaths fluctuating violently and trigger more actions of redundant addition or deletion. However, the heuristics we proposed do not cause this fluctuation condition because we delete the underloaded lightpath if and only if it interferes with the virtual links we want to setup.
In Fig. 26 and 27, the hig
with the load higher than the high watermark in the network. On the other hand, when high watermark is lower, the adjustment frequency increases because more lightpaths exist with the load higher than the high watermark in the network.
Secondly, we implement the algorithm proposed in [13], RBRADT and WBRADT for reconfiguration problem with MG-OXC nodes and verify that the tunnel reconfiguration is necessary for MG-OXC networks. The tunnels are randomly generated first and we compare the blocking probability between that the tunnels are updated with different periods by PTRADT and that the tunnels are not updated. No matter the tunnels are updated or not, the lightpaths in the network are still updated with a fixed period by the algorithm in [13], RBRADT and WBRADT. In Fig. 28~30, each fiber has ten wavelengths and the switching types on each link are 1F2B2L, 2F1B2L and 2F2B1L, respectively. In Fig. 31~33, each fiber has twenty wavelengths and the switching types on each link are the same as Fig. 28~30. Figure 28(a)~33(a), Fig. 28(b)~33(b) and Fig. 28(c)~33(c) apply the lightpaths adaptation algorithms in [13], RBRADT and WBRADT, respectively. The x-axis in Fig. 28~33 is the traffic load that means the average number of packets left in the network in a time unit and the y-axis is the blocking probability corresponding to the traffic load. When the observation period is the shortest in these figures, the blocking probability is the
Secondly, we implement the algorithm proposed in [13], RBRADT and WBRADT for reconfiguration problem with MG-OXC nodes and verify that the tunnel reconfiguration is necessary for MG-OXC networks. The tunnels are randomly generated first and we compare the blocking probability between that the tunnels are updated with different periods by PTRADT and that the tunnels are not updated. No matter the tunnels are updated or not, the lightpaths in the network are still updated with a fixed period by the algorithm in [13], RBRADT and WBRADT. In Fig. 28~30, each fiber has ten wavelengths and the switching types on each link are 1F2B2L, 2F1B2L and 2F2B1L, respectively. In Fig. 31~33, each fiber has twenty wavelengths and the switching types on each link are the same as Fig. 28~30. Figure 28(a)~33(a), Fig. 28(b)~33(b) and Fig. 28(c)~33(c) apply the lightpaths adaptation algorithms in [13], RBRADT and WBRADT, respectively. The x-axis in Fig. 28~33 is the traffic load that means the average number of packets left in the network in a time unit and the y-axis is the blocking probability corresponding to the traffic load. When the observation period is the shortest in these figures, the blocking probability is the