Multicast Routing Based on Ant Algorithm for Delay -Bounded and Load-
Balancing Traffic
Lu Guoying Liu Zemin Zhou Zheng School of Telecommunication Engineering, Beijing University of Posts &Telecommunications,
Beijing 1000876 E-mail: [email protected]
Abstract Multicast routing is tofind the paths from a source node
to all multicast destinations. In this papel; based on ant algorithm, we propose a distributed multicast routing scheme with delay-bounded and load-balancing trafic in real-time communicatim. We first describe ant algorithm model and give ant-networkmodel, then present an approach using ant algorithm to optimize the multicast routes with &lay-bounded and load-balancing trafic. Finally simulation has been done to show the efficiency of the algorithm in the environment of OPNET simulation software, and the simulation results show that the proposed approach can find the best optimal multicast routes which can satisfy the delay-bounded requirement and avoid to congested nodes.
Keywords: Multicast, Ant algorithm, Optimization, Pheromone table
1. Introduction
The objective of multicast routing is to find an algorithm, which, under the given user requirements, can find a linking way to make use ofthe network resource effectively. In recent years, many researchers have done the researches in the area, and proposed some fast and effective algorithms[ 11. In general, the algorithms can be divided into two categories. One category is the algorithms based on the shortest path, i.e., they calculate the shortest path between the source node and the destination node, for example, Dijkstra
algorithm [2]. The other is the algorithms based on the minimal spinning tree (MST), i.e., they calculate the multicast tree, consisting of the paths between the source node and destination nodes with minimum cost. This problem is a NP-complete problem, and it is generally solved with heuristic algorithms at present. The papers [3]-[5] discussed the problem. Based on the rigid delay requirements of certain multimedia services such as interactive video conferencing, the papers [6]-[7] discussed the heuristic algorithm of multicast routing with delay constraint. Furthermore, [SI introduced distributed multicast routing algorithm, in which eac node operates based on its local routing information and the coordination with other nodes, is done via network message passing. However, the algorithm only gives the multicast routes satisfying the requirements, not considering traffic load problem in the given network. To make an improvement, this paper constructs a distributed m lticast routing algorithm based on ant algorithm theory to solve this problem.
a
2. Theory of ant algorithm
A. Introduction:
Studies have shown that ants have the ability to find the shortest path between their nest and the food source. The ability is realized depending on a kind of volatile substance called pheromone which ants deposit on the
362 0-7695-0912-6/00 $10.00 0 2000 IEEE
path. When an ant is walking on a path, it can deposit some pheromone on the path. The probability that the ants coming later choose a path is proportional to the amount of pheromone on the path. The more the number of ants passing a path is, the larger the amount ofpheromone deposited on it is; inversely, the more amount of pheromone can attract more ants. This will lead to apositive feedback effect. By the positive feedback, theants can always find theshortest path finally.
B. Ant algorithm in communications networks:
Based on the principle above mentioned, a network model has been implemented by creating artificial ant population. To associate communication networks with the theory of ant algorithm, we replaced the routing tables in the network nodes by tables of probabilities, called pheromone
Destination I Node
Fig. 1
pheromone strenl
table (as shown in Fig 1), with
I I I
P(n, 1) P ( ~ , z ) ... P ( n , d
The Pheromone Table
.hs represented by probabilities (where, n is the number of destination, m is the number of neighboring node). Every node has an entry (row in pheromone table) for each possible destination in the network, and every table has an entry for each neighboring node. Pheromone tables give the probabilities of altemative choices between neighboring links. They are updatedbased onthe rules defined. Equation (1) gives the probability with which ant k in node U chooses to move to the node v .
is the neighboring node of node U , 8 = - 1
4 4 v)
inverse of the cost C(U,V) (may be monetary cost or
some measure of the resource utilization). B(u,v) is the
spare bandwidth in the link U , v ) . p and 6 are
parameters which determine the relative importance of pheromone versus cost and bandwidth available respectively. In (1) we multiply the pheromone on link
( U , v ) by two heuristic values 8(u,v) andB(u,v) .In
this way, we favor the choice of outgoing links which have less cost and greater spare bandwidth ,as well as a greater amount of pheromone. We define two kind of pheromone updating rule, i.e., the global updating and the local updating, as follows:
I .When ant traversed alink, we changeits pheromone level by applying the localupdating rule as follows:
Z(U, V) t (1 - ~ ) z ( u , V) + Az(u, V) (2)
where AZ(u,v) = l/d(u,v) ,d(u,v)is the delay ant
travelling through the link (u,v) . 0 < a < 1 is a
pheromone decay parameter. The effect of local
updating is to make the desirability of edgeschange
dynamically. Every time an ant uses anedge this
become slightly less desirable (since it loses some of its
pheromone). In this way ants will make a better use of
its pheromone information; without local updating all
ants would search in a narrow neighborhood of the best
previous tour. 11. Once all of ant have built their tours, assuming that
the path ant traveling is A P , and T(AP) is the delay
ant travelling through the path AP . Thus, pheromone is updated on all edges according to:
where Z is the pheromone, J(u)is a set of all the
363
If T(AP) I A a n d ( u , v ) E AP:
k=l
Otherwise:
z(u, U) t (1 - a)z(u, v ) (4)
Where:
[B(u,v)16 A r k (u ,v) = 1 +cos t ( u , v )
(5 )
0 < a < 1 is a pheromone decay parameter. B(u, v) is the spare bandwidth on link ( U , v ). cost (U, v) is total cost on path A P ant k travelling, and I is the number of ants. Pheromone updating is intended to allocate a greater amount of pheromone to the paths having greater spare bandwidth. In a sense, this is similar to a reinforcement learning scheme (as happens, in genetic algorithm under proportional selection). The pheromone updating formula was meant to simulate the change in the amount ofpheromone due to both the addition of new pheromone deposited by ants on the visited edges and pheromone evaporation.
3. Network model for multicast routing problem
The packet-switched computer network can be expressed by the weighted graph G = (V, E), where, V denotes the set of all the switchingnodes in graph G , E denotes the set of all the edges in graph G , each edge denotes a link between two nodes. Not losing generality, assuming that there only is one edge between any two nodes at most, and letting Ldenotes the number of the edges in the graph G . Each edge I in the graph G corresponds to two positive real numbers (B, , C, ) , where, B, denotes the spare bandwidth of the edge I E E; C, denotes the cost of the edge I E E, whose value may be monetary cost (sometime may be in proportion to distance between two nodes).
For the problem of multicast routing, a message is transmitted from a source node to a group of the destination nodes through multicast routes, here the source node s is the node from which the message is
transferred; destination nodes di , where the
information arrives at finally (the set consisting of all the destination nodes in multicast routes can be denoted
by M C V - {s} ). In addition, the multicast routes
always take a tree structure to reduce the numberof message copies on the network.. A multicast routing
tree is a subgraph of the graph G = (V,E) , and that
contains all of the nodes of M and arbitrary subset of
o/ - M ) , whose leaf set consists only of a subset of
nodes of M . We define the network cost of a multicast routing tree T as:
Cost(T) = C(I) (6) I€ T
(6) means that the cost of multicasting a message to a group of destinations is proportional to the sum of the cost of all links in the tree We assume that
P{s,di} denotes the path between the source node s
and any destination node di in multicast routing tree,
and d( l ) denotes the delay of link I , then the delay
corresponding tothe path can be denoted by
c , ePcs ,d , , d ( l ) . Our objective is to find each path
which can connect the source with all the destination and each path must meet delay requirement for destined application. The graph of the final connection is a tree topology and a subgraph of graph G , that is, being loopfree with all leaf node being multicast members (destinations).In addition, a selected route should be as efficient as it can in its use ofresources, soas to maximize the probability that a future call will be
364
successfully established given an optimal route. To do this we must distribute the load evenly across the network by taking less congested routes. We will find a multicast route subject to the following
requirements:
Maximum delay A : the delay between the source
node s and any destination node di can not be greater
than the specified bound A . Multicast tree has minimum cost or approximate
minimum cost:
0 Intermediate links has as great spare capacity as
possible they can have (less congested).
4. Multicast routing using ant algorithm
A. Assumptions and basic idea
The idea of our algorithm in constructing multicast routing is to find the paths with delay-bounded and less congested degree by launching ant in the source node. We assume that each node has the information about spare capacity and propagation delay of its neighboring nodes and links. Since dynamic change of routing information may cause transient loop in routing using ant algorithm, our routing algorithm simply terminates when a loop is encountered. The basic idea of our algorithm is as follows: At first,
using an initialized pheromone value Z, in light of
load distribution status, we initialize the probability of
pheromone table pherable in each node by equation
(1). To establish connection with all the destination, we randomly select a destination node in multicast members set M ,and then launch a certain number of ants with the address of destination .When ant arrives at an intermediate node U , and selects the next node
v,,, to destination satisfying p(u,vncu) =
max p(u, v) .To record ant travelling time, we set a E J ( U )
time field in ant-packets. When ants arrive at any intermediate node between the source node and destination node selected, we apply equation (2) to update locally the pheromone value on the path ant travelling. When ants arrive at destination node, if the time ant travels from the source node to the destination node is less than or equal to delay-bound A , we apply equation (3) to update globally pheromone value on the path aiits selected from the source node to the destination node. We recompute the probability in
pherable after the pheromone value is updated,
repeating the process above. Using the processof updating pheromone, we know that we finally can find the less congested path under delay-bounded.
For the ease of description, we use a pheromone table
[ Pherable 3 to denote the local routing table at each
node. For each node U in the network, there is an entry
based on equation (1) to its each neighboring node, for
example, Fig.1. For each ant-packet, we use
ant.delay . ant.hop . ant.node as the time field , thenumber of hop . the node set field ant traveling,
respectively.
B. The algorithm in details:
Every node in the system executes the same routing
algorithm. When a node receives a request for opening a
multicast connection with parameter M and A , denoted as the destination set and the delay requirement
respectively, it becomes the source s of the multicast
connection. Pherable of each node in the network is
first initialized using a initialized pheromone value 2,
in light of load distribution status by equation (l).After
this, the algorithm will perform the following steps:
1. A destination d , is randomly selected in set M . Before launching ant from source node s , each field in
ant-packet is initialized, i.e., ant.time is designated as
0, ant.hop designated as 0, ant.node designated as
365
{ s} . We set the number of ant-packets as Z .Ant moves
from source to the next node that has maximum
probability in PherabZe[s] (if there are more than one
node with the maximum probability, we randomly select
one node as the next node ant moves to it).
2. Letting an ant be at node U . When U = d , : if ant.time I A ,we send ant-packet back to source node
s along the path ant-packet coming, while we update
thepheromone value of all the links on this path ant
travelling by equation (3).When U # d , :ant will move
to the next node v E J ( u ) (if v p ant.node ) b
comparing pherabZe[u] in thenode u;and if
V E ant.node,ant dies (i.e., drop it) ,while the
pheromone value on link is updated by setting
Az(u, v ) = 0 in equation (2)(evaporation).When the
ant arrives at the node v , we record the time value
D(u,v) ant travelling from the node U to node v ;if ant.time + D(u, v ) I A ,the pheromone value on link
( U , v ) is updated by equation (2) ,while Each field in
ant-packet is updated as follows:
ant.time + antJime + D(u, v ) ant.hop t ant.hop + 1 ant.node t (ant.node, v} ; (7)
If antlime + D(s, vnrxt) > A , this ant dies (i.e., drop
it),while the pheromone value on link is updated by
settin Az(u, v ) = 0 in equation (2)(evaporation). For
the nod v ,we repeat the process above in light of
the pherabZe[v] . 3. We update each entry in the PherabZe[u] of eac
node U , here U E s U M , and launching the next ant,
repeat step 1 and step 2 until all the ants with the
address of destination node d are launched over in
interval A. Then, we select the path p ( s , d , ) , along
which the probability in PherabZe[.] of each node are
maximum, to establish a connection between source
node and destination node d , . Letting a set including
all the nodes on the path p(s ,d , ) as MI . 4. In set M - d , , we randomly reselect the destination
node d , . At first, Zof ant-packets are initialized as
follow: ant.time is designated as 0, ant.hop designated as 0, ant.node designated as
{ s, M I )(may be S E M I , but thisd 't affect our
algorithm). When we launch each ant-packet with the
address of destination node d, in the source node s ,
the ant moves to the next node v1 by PherabZe[s] , we take two status into account as follows: i.e.,
v, ant.node or v, E ant.node: (1). When v, antaode: if
antlime + D(s, v, ) I A , the pheromone value on link
( s , v , ) is updated locally by equation (2), and ant-
packet moves to the next node v, by PherabZe[v,] in
nodev,; if v, E ant.node, ant dies (i.e., drop ant-
packet); otherwise repeat the process above. From now
on, each time ant encounters the node U E ant.node , ant dies, otherwise continue etc..
(2). If v, E ant.node: For ease of description,
letting node t be first node subject to t amnode.
We repeat step (1).
5. Ifset M - d , - d , -...- d , = Q, , i.e., is null, the
connection process is completed and send completion
message to all destination; otherwise repeat step 4. This is a fully distributed algorithm. Every node involved in theexecution of the algorithm operates based on its local routing information. From equation (1) , we know that the final established multicast connections use the node having less light load. We ca easily prove that the final multicast tree is loop-free by using the set field ant.node in ant-packet. The simulation results in the next section show that our algorithm gives a much better solutions of multicast routing over other proposed schemes.
366
5. Simulation
We verify the effectiveness of the proposed approach by
simulation. Figure 2 shows the network topology
(similar to early ARPANET), where, s is the multicast
source node, d, , d, , d3 and d, denote destination
nodes respectively, i.e., M = {d,,d,,d,,d,} . The
number on each link denotes both the cost and the delay
of links. We consider two cases. In Case 1, the spare
bandwidth of each edge is the same value of 10Mpb. In
Case 2, the spare bandwidth of link (s, c) is 7Mpb and
lin (b,d,) is 8.5Mpb; the rest of links is the same as
Case 1. b d l C
s
2 s
Figure 2. Network topology structure
Not losinggenerality, we assume that the maximu
delay is 3. For simplicity, we define the cost of each link
as the same as its delay. We use the proposed ant
algorithm to search the optimal multicast routes. In
simulation, assuming that the number of ants is 50; the
initial amount of the pheromoneis 97; the parameter
6 = 1 and p = 0.5 ; the decay parameter
a = p = 0.45. Fig.3 gives that the first selected
destination node is d,and the second selected
destination node is d, , the routing results for Case 1 is
finished using our algorithm.
E d2 1
Fig.3 Established connection for the first two selected destination,
Fig.4 shows that the final routing solution is obtained for Case 1. Fig.5 shows the final routing solution obtained for Case 2. It can be seen that for each Case, the optimal routing solution is obtained. Furthermore, to testify the performance of the proposed approach, we change the delay-bound values in the
63 1
S e d4
Figure 4. The optimal multicast routing for the Case 1
range [3,9], and then perform 800 tests. Simulation results show that the number of the best optimal solutions is 87. The reason why the rest tests fail to
b dl d2
d4
Figure 5.The optimal multicast routing for the Case 2
obtain the best optimal solution lies mainly in the setting of the parameters in the ant algorithm. The problem of setting the parameters needs further study.
6. Conclusion
For multicast routing with end-to-end delay bounded and load-balancing in high speed packet-switched computer networks, the paper has presented a global- optimizing approach based on ant algorithm. The approach can overcome the limitations of the existing approaches, and because the ant algorithm in the approach makes use of colonial effect insteadof traditional mathematical methods to realize optimizing multicast routing, it provides a distributed and simple way to solve the problem of routing in computer networks. By simulation, it has been proved that the proposed approach can find the best optimal multicast routes with end-to-end delay bounded and load- balancing effectively.
367
References
[l]. H. E Salama, D. S . Reevws, and Y Viniotis. Evaluation of multicast routing algorithm for real- time communication on high-speed networks. IEEE Journal on Selected Areas in Commu., 1997, 15(3): 332-345.
[2]. D. Bertsekas, and R. G Gallager. Data Networks, 2nd ed. Englewood Cliffs, NJ: Prentice-Hall, 1992.
[3]. E K. Hwang, and D. S . Richards. Steiner tree problems. IEEE Networks, 1992,22( 1): 55-89.
[4]. E. Gelenbe, A Ghanwani, V. Srinivason. Improved neural heuristics for multicast routing. IEEE Journal on Selected Areas in Commu., 1997, 15(2): 147-155.
[5]. L. Kou, G. Markowsky, and L. Berman. A fast algorithm for Steiner trees. Acta Informat., 1981, 15:
[6]. Q. Zhu, M Parsa, and J. J. Garcia-Luna-Aceves, A source-based algorithm for delay-constrained minimumcost multicasting. In: Proc. IEEE
[7]. V. I? Kompella, J. C. Pasquale, and G. C Polyzos. Multicasting for multimedia applications. In: Proc.
[8]. G. N. Rouskas, and I. Baldine. Multicast Routing with end-to-end delay and delay variation constraints. IEEE Journal on Selected Areas in
14 1-145.
INFOCOM. 1995,377-385.
IEEE INFOCOM. 1992,2078-2085.
C O ~ ~ U . , 1997, 15(3): 346-356. [9]. M. Dorigo, L. M. Gambardella. Ant Colony System:
A Cooperative Learning Approach to the Traveling Salesman Problem. IEEE Trans. Evolutionary Computation, 1997, l(1): 53-65.
[lo]. T. Stutzle, and H Hoos. Max-min ant system and local for the traveling salesman problem. Proceeding of 1997 IEEE International Conferenceon Evolutionary Computation (ICEC97), 1997, 309- 3 14.
368