Simulated Study of QoS Multicast Routing Using Particle Swarm Optimization
Simulated Study of QoS Multicast Routing Using Particle Swarm Optimization
176-182
ISSN: 2222-2510
2011 WAP journal. www.waprogramming.com
Narendran Rajagopalan
Abstract: In this paper we intend to solve Quality of Service(QoS) multicast routing problem using Particle Swarm
Optimization technique. A fitness function is used to implement the constraints specified by the Quality of Service
conditions. The inclusion of extra parameters in the fitness function resulted in efficient convergence with minimal
computational cost. Multiple groups were implemented and a number of multicast trees were obtained as part of the
solution. The experimental results dealt with relations between the number of nodes in the input graph, number of
particles present in the system and the number of iterations required for convergence. The results also analyze the
performance of the system when multiple groups are present.
Key word: QoS multicast optimization PSO ACO Genetic Algorithm
I. INTRODUCTION
Multicast is a communication technique over the IP infrastructure in a network for one-to-many communication. The
source sends a packet only once, even if it needs to be delivered to a large number of receivers, using the network resources
optimally. The intermediate nodes replicate the packets whenever necessary to address a large receiver population[1]. The
most common protocol to use multicast addressing is User Datagram Protocol(UDP). Multicast routing is used in various
continuous media applications and is employed for streaming media and Internet media applications.
The primary function of QoS[2][6][8][9] is to ensure that all applications are getting the necessary bandwidth to function at
a desired level. QoS uses resource reservation control mechanisms to allow administrators to set a desired level of service for
each traffic type on the network. The goal of QoS is to provide preferential delivery service for the applications that need it
by ensuring sufficient bandwidth, controlling latency and jitter, and reducing data loss. QoS is important as it provides the
following benefits, Gives administrators control over network resources, ensures that time-sensitive and mission-critical
applications have the resources they require, improves user experience, reduces cost by using existing resources efficiently.
QoS is important for real time streaming media applications, since these often require fixed bit rate and are delay sensitive.
In QoS multicast routing, each node or link has some parameters associated with it. These parameters are used to
determine the most efficient path from the source to the destinations. Thus, these network resources must be handled and
shared in such a way that the most optimal solution can be obtained for the QoS multicast routing problem with minimal cost.
This cost is determined by the parameter values associated with each node and link which may be present in a chosen path
from a source to a destination. Generally, heuristics are used to solve this problem. Genetic Algorithms(GA) and Ant Colony
Optimization(ACO)[3][] have also been used to solve this problem.
Partical Swarm Optimization(PSO)[4][5] technique is applied to solve the QoS multicast routing problem in this paper.
PSO is a stochastic, population based evolutionary computer algorithm for problem solving. It is based on sociopsychological principles and involves insights into social behaviour. This concept was introduced into optimization technique
in the year 1995 by J.Kennedy.
PSO simulates social optimization similar to the social behaviour of a flock of birds. Given a problem, a proposed solution
is evaluated using a fitness function. PSO can be easily used to handle a large number of test cases and possible solutions for
a given problem. The memory and processor requirements for PSO are low. Hence it can be used to solve optimization
problems and is computationally inexpensive.
176
Mala C. et al., World Applied Programming, Vol (1), No (3), August 2011.
II. MOTIVATION
Multicast routing is widely used in Internet applications and for live video streaming. Hence we need an efficient
implementation of this routing technique which has low computational cost and good performance. Genetic Algorithms(GA)
and Ant Colony Optimization(ACO) techniques have been used to solve this problem.
However, GA has a tendency to converge towards local optima or even arbitrary points rather than the global optimum of
the problem. Also, GA cannot effectively solve problems for which the only fitness function is right/wrong, as there is no
way to converge on the solution. In these cases, a random search may find a solution as quickly as a GA. For certain
optimization problems, simpler optimization techniques such as PSO may find better solutions than genetic algorithms.
PSO moves towards the global optimal solution by taking into consideration the local solutions of the particles. The
computational cost involved is very low and it is ideally suited for very large input cases. Thus, PSO can be easily used to
solve the Quality of Service Multicast Routing problem and this approach forms the basis of this paper.
III. PROPOSED WORK
The network is represented using a directed acyclic graph[2] G=(V,E), where V represents the set of nodes or vertices and E
represents the set of links or edges present in the graph. |E| denotes the number of edges and |V| denotes the number of
vertices present. The parameters associated with each node are delay, delay jitter and packet loss. The parameters associated
with each edge are delay, delay jitter and bandwidth. Apart from these, queuing delay and buffer capacity were also included
in the improved version of the implementation.
For a given tree, the different parameters are calculated as follows:
Delay(Tree)
= Delay(nodes) +Delay(edges)
DelayJitter(Tree)
= DelayJitter(nodes) +DelayJitter(edges)
PacketLoss(Tree) = PacketLoss(nodes)
Bandwidth(Tree)
= Bandwidth(edges)
QueuingDelay(Tree) = QueuingDelay(nodes)
BufferSize(Tree)
= BufferSize(nodes)
QoS requirements implement the following constraints on any given tree :
1. DelayConstraint
: Delay(Tree) < D
2. DelayJitterContraint
: DelayJitter(Tree) < DJ
3. PacketLossConstraint : PacketLoss(Tree) < P
4. BandwidthConstraint
: QueuingDelay(Tree) > B
5. QueuingDelayConstraint : BufferSize(Tree) < Q
6. BufferSizeConstraint
: BufferSize(Tree) > BS
IV. PROPOSED ALGORITHM
Input
- Directed acyclic graph to represent the network Parameters of nodes and edges.
Output - The most optimal solution determined using the fitness function. A multicast tree representing the optimal solution.
Step 1 : Initializing the system.
Step 2 : Computing all paths from source to all destinations.
Step 3 : FOR i=1 to ITER :
Step 4 : Generating particles.
Step 5 : Applying fitness function.
Step 6 : FOR all particles in the system :
Step 7 : Updating personal best and global best values.
Step 8 : Obtaining new particles from existing particles based on personal best
and global best values.
Step 9 : END FOR
177
Mala C. et al., World Applied Programming, Vol (1), No (3), August 2011.
(1)
(2)
178
(3)
Mala C. et al., World Applied Programming, Vol (1), No (3), August 2011.
(4)
The process is then applied to these new particles. This process is repeated until all particles converge towards the global best
value. Thus a tree is obtained as the result. This tree represents the most efficient network between the source and given
destinations.
V. SIMULATION AND PERFORMANCE ANALYSIS
To analyze the performance of the proposed algorithm, different sets of input were generated and the algorithm was tested for
varying number of nodes and particles. Also, a comparison between the initial version with 3 parameters and the improved
versions with 4 and 5 parameters was carried out. The results are as below
ORIGINAL - refers to Column in the Table with 3 parameters
NEW_Q - refers to Column in Table with original 3 parameters and queuing delay
NEW_B - refers to Column in Table with original 3 parameters and buffer size
NEW_QB - refers to Column in Table with original 3 parameters, queuing delay and buffer size.
A. Analysis of Different Parameters on Number of Iterations for Varying Number of Nodes :
TABLE I.
Sl.No
Number of Nodes
ORIGINAL
NEW_Q
NEW_B
NEW_QB
10
10
18
14
15
62
47
41
40
20
80
67
60
52
25
97
86
73
71
30
147
119
94
88
The Table I depicts the relationship between number of nodes and number of iterations for different sets of parameters. The
column ORIGINAL lists the number of iterations required for convergence for three parameters. It can be observed that the
column, NEW_Q representing the number of iterations for convergence with queuing delay as an additional parameter to
ORIGINAL. Similarly, the column, NEW_B indicates the number of iterations required for convergence with buffer size as
an additional parameter to ORIGINAL. Also, the column, NEW_QB indicates the iterations needed for convergence with
both queuing delay and buffer size as additional parameters.
179
Mala C. et al., World Applied Programming, Vol (1), No (3), August 2011.
The graph in figure 1 based on the results of Table I, depicts the relationship between number of nodes and number of
iterations for ORIGINAL parameters, original parameters and Queue length represented by NEW_Q, original parameters and
buffer length represented by NEW_B and NEW_QB representing original parameters and buffer length and queue length. It
can be observed that the results improve with addition of new parameters in the fitness function. NEW_Q and NEW_B
performing better than ORIGINAL and NEW_QB performing better than all.OLD vs. NEWBOTH. We can observe that the
improved version requires lesser number of iterations for convergence.
B. Analysis of Different Parameters on Number of Iterations for Varying Number of Particles :
The Table II depicts the relationship between number of Particles and number of iterations for different sets of parameters.
The column ORIGINAL lists the number of iterations required for convergence for three parameters. It can be observed that
the column, NEW_Q representing the number of iterations for convergence with queuing delay as an additional parameter to
ORIGINAL. Similarly, the column, NEW_B indicates the number of iterations required for convergence with buffer size as
an additional parameter to ORIGINAL. Also, the column, NEW_QB indicates the iterations needed for convergence with
both queuing delay and buffer size as additional parameters. It can be observed that NEW_Q requires lesser number of
iterations for convergence with increase in number of particles. This can be attributed to the inclusion of the queuingdelay
parameter in the fitness function. Similarly inclusion of buffer size in the fitness function, NEW_B reduces the number of
iterations for convergence.
TABLE II.
Sl.No
Number of Particles
ORIGINAL
NEW_Q
NEW_B
NEW_QB
461
358
309
244
388
325
254
217
321
273
209
165
184
177
143
119
142
109
87
82
112
87
72
66
180
Mala C. et al., World Applied Programming, Vol (1), No (3), August 2011.
The graph in fig. 2 based on the results of Table II, depicts the relationship between number of particles and number of
iterations for ORIGINAL parameters, original parameters and Queue length represented by NEW_Q, original parameters and
buffer length represented by NEW_B and NEW_QB representing original parameters and buffer length and queue length. It
can be observed that the results improve with addition of new parameters in the fitness function. NEW_Q and NEW_B
performing better than ORIGINAL and NEW_QB performing better than all.
VI. CONCLUSION
From the first set of graphs, it can be inferred that the relation between the number of nodes in the graph and the number of
iterations required for the system to converge. It can be seen that,
1. For a constant number of particles, the number of iterations required for convergence increases with increase in the number
of nodes in the input graph.
2. As more parameters are included in the later versions, convergence occurs faster. Thus, the number of parameters in the
fitness function affects the convergence rate.
From the second set of graphs, the effect of number of particles on the convergence rate can be observed. It can be seen that,
1. For a constant number of nodes in the graph, the number of iterations required for convergence decreases with increase in
number of particles. This is because; using more number of particles helps us to explore all possible solutions faster.
REFERENCES
[1] ZiqiangWang, Xia Sun, Dexian Zhang, A PSO Based Multicast Routing Algorithm, IEEE Third International
Conference on
Natural Computation(ICNC), pp. 664-667, 2007.
[2] Liu Jing, Jung Sun,Wenbo Xu, QOS Multicast Routing based on Particle Swarm Optimization, E.Corchado et al.(Eds.): IDEAL
LNCS 4224, pp. 936-943, 2006.
[3] Lenka Lhotska, Martin Macas, Miroslav Bursa, PSO and ACO in Optimization Problems, E.Corchado et al.(Eds.): IDEAL LNCS
4224, pp. 1390-1398, 2006.
[4] J. Kennedy, R.C. Eberhart, Particle Swarm Optimization, Proceeding of the IEEE International Conference Neural Networks, pp.
1942-1948, 1995.
[5] Xing Jin, Lin Bai, Yuefeng Ji, Yongmei Sun, Probability Convergence based Particle Swarm Optimization for Multiple Constrained
QoS Multicast Routing, Proceeding of the IEEE, pp. 412-415, 2008.
181
Mala C. et al., World Applied Programming, Vol (1), No (3), August 2011.
[6] Dragos Ilie, Optimization Algorithms with Applications to Unicast QoS Routing in Overlay Networks, Research Report No.2007:09
ISSN 1103-1581, 2007.
[7] Shinn-Jang Ho, Wen-Yuan Ku, Jun-Wun Jou, Ming-Hao Hung, Shinn-Ying Ho, Intelligent Particle Swarm Optimization in Multiobjective Problems, W.K.Ng, M.Kitsuregawa and J.Li(Eds.), PAKDD 2006, LNAI 3918, pp. 790-800, 2006.
[8] Jun Sun, Jing Liu,Wenbo Xu, QPSO-Based QoS Multicast Routing Algorithm, T.-D. Wamg et al. (EDS.), SEAL 2006, LNCS 4247,
pp261-268, 2006.
[9] Junwei Wang, Xingwei Wang, Min Huang,An intelligent QOS Multicast Routing Algorithm under Inaccurate Information, IEEE
2006,
pp
1073-1077,
2006.
182