Journal of Convergence Information Technology Volume 5, Number 10. December 2010
An Improved Dynamic Load Balancing Algorithm for a Distributed System in LAN Huang Jie, Huang Bei, Huang Qiucen Huang Jie, Huang Bei, Huang QiuCen, School of Information Science and Engineering, Southeast University, Nan Jing 210096, China
[email protected],
[email protected],
[email protected] doi:10.4156/jcit.vol5. issue10.12
Abstract A dynamic time delay model for load balancing was proposed in distributed heterogeneous system by Hayat. But how to compute the load-transfer delay and the gain coefficient were not gived, so it is imposible to quantitatively analyse the performance of a distributed system. In this paper, an improved dynamic load balancing model with load-transfer delay is designed for LAN, and the gain coefficient is defined by a number of simulation test, so to meet requirements of LAN. At last, the simulation test is presented. The conclusion is that the improved algorithm not only saves the resources, but also realizes a reliable and efficient operation of the system. So the improved algorithm can be used to the distributed system in LAN.
Keywords: LAN, Load Balancing Algorithm, Strategy of Loads Allocation, Dynamic Time Delay
1. Introduction A distributed system has several outstanding advantages such as high cost-effectiveness, hard real-time performance in local area, flexible configuration and high reliability, which is fit for processing high volume flow data. Effective load assignation among a cluster of computational elements (CEs) relies on load balancing algorithm. Dynamic load balancing approaches in a distributed system have several classic algorithms, such as Sender Initiated Diffusion (SID) [1], Gradient Model (GM) [2], Hierarchical Balancing Method (HBM) [3], Randomized Hydrodynamic Load Balancing Approach (RHLB) [4], Load Balancing with Grid (LBG) [5]. But they didn’t count for effect of delay time in distributed systems, or supposed the random delay certainty. Hayat [6]had proved that these algorithms would not realize high performance of load distribution in delay uncertainty. Based on the dynamic time delay model of load balancing proposed by Hayat, an improved algorithm is proposed for dynamic load balancing to quantitatively analyze the performance of a distributed system. The paper is organized as fellows: in Section 2, the Hayat’ model and two load distribution policies are presented. In Section 3, an improved load balancing algorithm is proposed. And load balancing model with transfer time delay is designed. In Section 4, a simulation result for the improved model is expressed. Finally, our conclusions are given in Section 5. Throughout the paper, a task is the smallest unit of load, a task is a collection of IP packets and load is a collection of tasks.
2. Dynamic Load Balancing Approach in Distributed System 2.1. Dynamic Time Delay Model for Load Balancing [6] To suppose n nodes in a distributed system, and let Qi (t ) denote the number of loads waiting processed at the ith node at time t. A differential equation describes the loads volume in ith node as follow.
Qi (t t ) Qi (t ) Ci (t t ) L ji (t ) Lij (t ij ) J i (t t ) j i
(1)
j i
The work is partially supported by the National High Technology Research and Development Program of China grant No. 2007AA01Z432. - 91 -
An Improved Dynamic Load Balancing Algorithm for a Distributed System in LAN Huang Jie, Huang Bei, Huang Qiucen
Where: Ci (t t ) is a Poisson distribution with rate in the interval
i , and describes the number of loads completed
(t , t t ] at ith node.
L ji (t ) is the number of the transferred loads from ith node to jth node at the time t . Note that
L ji (t ) is zero except at the load balancing instants Tl i , l 1, 2,... , for the ith node.
Lij (t ) is the number of the load transferred from node j to node i at he time t . Lij (t ) is
zero except at the load balancing instants
Tl i , l 1, 2,... , for the jth node.
ij
J i (t , t t ) is the number of such external tasks arriving at ith node in the interval
is the delay time in transferring the load arriving at node i sent by node j.
(t , t t ] , J i (, ) is a compound Poisson process. That is, J i (t , t t ) k:t
k
k t t
H k , where
is the arrival time of job requests (which arrive according to a Poisson process with rate i ) and
H k (k 1, 2...) is an integer-valued random variable describing the number of loads associated with the kth job requests.
2.2. A Policy for Allocating Loads [7] 2.2.1. Policy for Average Distributing Load and Optimized Distributing Load For equation (1), at a specific load-transfer instant Tl
i
, l 1, 2,... , the random load Lkl (t ) submits
to uniform load-balancing policy which utilizes knowledge of the state of overall nodes in the system. That is,
Lkl (t ) gkl (Ql (t ), Qk (t lk ),..., Q j (t lj ),...) K pkl Lexl (t )
(2)
Where, K denotes the gain coefficient, it affects the load queue length fluctuate and the number of transferred loads; pkl denotes a percentage of its excess loads transferred from lth node to kth node, n
p
k 1 ex l
kl
1, where pll 0 ;
L (t ) denotes the excess load at node l.
Two methods were proposed by Hayat[7] for
Lexl (t ) and pkl . In the first approach,
Q (t ) l Lex ( t ) l n l l 1 l
Ql (t ll ) l 1
n
1 1 1 l Ql (t lk ) , pkl n 2 j l l1Ql (t jl ) , l j l j
In the second approach,
- 92 -
(3) j l
Q j (t lk ) 0
otherwise
Journal of Convergence Information Technology Volume 5, Number 10. December 2010
Lex l ( k ) (t ) ml ( k ) (t ) ex Ll ( k ) (t ) pkl 0,
l
j I k
n l 1
n
l
m l 1
Lexj ( k ) (t ) ,
l (k )
(t ) (4)
j Ik otherwise
The equation (3) is the policy for average distributing loads (PADL). If the number of loads is more than average load of the system at node l, it will send excess loads to all other nodes. But the equation (4) is the policy for optimized distributing loads (PODL). The node transfers loads only to those nodes that are below the average load of the system (where, kth node is the node at which the number of loads is below the average load of the system). 2.2.2. Simulation Analysis Now we analyse the performance of the two different policies for distributing loads. Without loss of generality, for example, a load balancing system is consisted of three nodes (n=3). The Node 1 deals with a task with 1s, 2nd and 3rd nodes with respectively 3s. To assume that the initial tasks are distributed unevenly among the three nodes as 7000, 4500 and 500 tasks, with no additional external arrival tasks (viz. J1 (t1 , t2 ) 7000, J 2 (t1 , t2 ) 4500, J 3 (t1 , t2 ) 500 , only if t1 = 0, 0