SlideShare ist ein Scribd-Unternehmen logo
1 von 7
Downloaden Sie, um offline zu lesen
International Journal of Research in Computer Science
eISSN 2249-8265 Volume 3 Issue 3 (2013) pp. 9-15
www.ijorcs.org, A Unit of White Globe Publications
doi: 10.7815/ijorcs. 33.2013.063
www.ijorcs.org
AN ADAPTIVE LOAD SHARING ALGORITHM FOR
HETEROGENEOUS DISTRIBUTED SYSTEM
P. Neelakantan
Department of CSE, SVUCE, Tirupati, A.P, INDIA
E-mail: pneelakantan@rediffmail.com
Abstract: Due to the restriction of designing faster and
faster computers, one has to find the ways to maximize
the performance of the available hardware. A
distributed system consists of several autonomous
nodes, where some nodes are busy with processing,
while some nodes are idle without any processing. To
make better utilization of the hardware, the tasks or
load of the overloaded node will be sent to the under
loaded node that has less processing weight to
minimize the response time of the tasks. Load
balancing is a tool used effectively for balancing the
load among the systems. Dynamic load balancing
takes into account of the current system state for
migration of the tasks from heavily loaded nodes to the
lightly loaded nodes. In this paper, we devised an
adaptive load-sharing algorithm to balance the load
by taking into consideration of connectivity among the
nodes, processing capacity of each node and link
capacity.
Keywords: Load balancing, Distributed System,
heterogeneous, response time.
I. INTRODUCTION
An important attribute in a dynamic load balancing
policy is to initiate the load balancing activity. The
balancing activity specifies which node is responsible
for detecting imbalance of the load among the
nodes[9]. A load-balancing algorithm is invoked when
load imbalance among the nodes is detected. The
initiation of load balancing activity will have a higher
impact on complexity, overhead and scalability. The
load balancing algorithm is designed in such a way to
make the overloaded node to transfer its excess load to
the underloaded node which is called sender – initiated
and when underloaded node requests the load from the
overloaded node then it is called receiver- initiated [6]
[8].
Domain balancing is used to decentralize the
balancing process by minimizing its scope and
decrease the complexity of the load balancing
algorithm. A domain is defined as subset of nodes in a
system, such that a load balancing algorithm can be
applied for this subset of nodes in a single step.
Domain balancing is used in load balancing algorithms
to decentralize the balancing. The balancing domains
are further divided into two types: The first type is
overlapped domains, which consists of node initiating
the balancing activity and balances its load by
migrating the tasks or load units with the set of
surrounding nodes [3].
Global balancing is achieved by balancing every
domain and by diffusing the excess load throughout
the overlapped domains in a distributed system.
Another important attribute in load balancing
algorithm is the degree of information. The degree of
information plays an important role in making the load
balancing decisions. To achieve global load balancing
in a few steps, the load balancing should get absolute
information instead of getting the obsolete information
from the nodes. In general, the collection of
information by a node is restricted to the domain or
nearest neighboring nodes (which are directly
connected to a node) [4].
Although collecting information from all the nodes
in a distributed system gives the exact knowledge of
the system, it introduces large communication delay,
so from this perspective, it will have a negative impact
on the load balancing algorithm. In such cases, it has
been observed, that the average response time is kept
minimum without load balancing instead of doing the
load balancing which induces overhead in migrating
the load from one node to another node in the system
[5].
In this section, an abstract view of the software
details is presented for load balancing. The distributed
system consists of several nodes and the same load
balancing software is installed to run on all the nodes
in the distributed system. By installing the same
software in all the nodes, the load balancing decision is
taken by a node locally (decentralized) by collecting
the information from the neighboring nodes as
opposed to the centralized load balancing policy[14].
The program must use a multi-threaded concept to
implement load balancing in a distributed system. Two
communication ports are available: TCP and UDP.
UDP is preferable as it incurs less communication
overhead. In general the architecture provides three
10 P. Neelakantan
www.ijorcs.org
layers: Communication layer, Load balancing process
and application layer[14][10]. For storing information
two data structures were used.
The communication link is responsible for four
phases: node status information phase, node status
reception, tasks reception and task migration. The node
status information is responsible for disseminating the
load information to the node that has requested it. The
exchange of the information has a profound effect on
the load balancing decision; it has to be done
according to the predefined intervals of time specified
on each node [7] [14].
The status reception is responsible for receiving the
status information from the other nodes and it will be
updated in the local node list which is running the
status reception phase. Here it is possible to distinguish
the old information from the new information. The
technique that is used to find is to associate the
timestamp for the information that it has received from
some node (say 𝑇𝑆𝑗
𝑖
(𝐼𝑛𝑓), the time stamp attached to
the information received from 𝑗 to 𝑖). The local node
say 𝑖 maintaining the status about the node 𝑗 is kept in
the memory. If any estimate regarding node 𝑗 exists in
the node 𝑖 memory, it will be compared to the received
time stamp message and drops the old time stamp and
the new timestamp message has been saved in the
memory as the old time stamp has the obsolete
information[11][1][2].
Once a node collects the above information, then it
knows whether it is overloaded or underloaded. In case
if it is overloaded node, then it transmits the excess
tasks (loads) to the underloaded nodes in a β€œtasks
transmission” phase. The next initiation of load
balancing activity will be done only when the current
migration of load units to the underloaded nodes is
completed.
The β€œtask reception” is responsible for listening to
the requests and accepts the tasks sent from the other
nodes. As we can observe from the above situations,
the minimum time to initiate the new load balancing
activity takes three time instants. One instant for
receiving the status of all the nodes and second time
instant for determining the underloaded nodes and
computing the excess load and third time instant for
transferring the excess load to the underloaded nodes
which has been determined in the second time instant.
So, the new load balancing activity takes place only at
the fourth time instant [12] [14].
In a few papers [3] [9] [10], it is assumed that the
nodes will not fail. The problem arises when the nodes
fail which is common in the distributed systems.
Sometimes a communication link will also fail, so the
node will be unreachable. These two aspects i.e.,
failure of a node and the communication link will
affect greatly the load balancing algorithms. Let us
assume the following scenario. The overloaded node
has collected the load information from the
neighboring nodes and found some of the nodes are
low loaded as discussed earlier. Now at the given time
instant when the node tries to send its excess load to
the overloaded node, it will not succeed because of the
failure of the node. The node may fail after sending the
status information. If this happens, an alternative must
be chosen to avoid a failure of the load-balancing
algorithm.
II. NOTATIONS & ASSUMPTIONS
N : Number of nodes
V= {1, 2,…, N} a set of nodes in a system
xi(t) : Expected waiting time experienced by a task
inserted into the queue at the ith
node in time t
Ai(t) : rate of generation of waiting time on ith
node
caused by the addition of tasks in time t.
Si(t) : rate of reduction in waiting time caused by the
service of the tasks at the ith
node in time t.
ri(t) : rate of removal(transfer) of the tasks from node j
to node i at time t by the load balancing algorithm at
node j.
tsi : Average completion time of the task at node i.
bi : Average size of the task in bytes at node i when it
is transferred
dij : Transfer rate in bytes/sec between node i and node
j
π‘₯Μ… 𝑖(𝑑): Average size of the queue calculated by node i
based on its domain information at time t.
𝐷𝑖: Neighboring nodes to i which is defined as
𝐷𝑖 = {𝑗|𝑗 ∈ 𝑉 π‘Žπ‘›π‘‘ (𝑖, 𝑗) ∈ 𝐸} where V= {1, 2…N}
𝐸𝑖(𝑑): Excess number of tasks at node i at time t.
fij : Portion of the excess tasks of node i to be
transferred to node j decided by the load balancing
algorithm.
The following assumptions were made in this paper:
1. It is assumed that a distributed system consists of N
heterogeneous nodes interconnected by an
underlying arbitrary communication network. Each
node i in a system has a processing weight Pi >0
and processing capacity Si>0. The load is defined to
be Li= Pi/Si. In homogenous case the value of
Li=Pi.
2. It has been assumed that tasks arrive at node i
according to Poisson process with rate πœ†π‘–(𝑑). A task
arrived at node i may be processed locally or
migrated through the network to another node j for
remote processing. Once the task is migrated, it
remains there until its completion.
An Adaptive Load Sharing Algorithm for Heterogeneous Distributed System 11
www.ijorcs.org
3. It is assumed that there is a communication delay
incurred when task is transferred from one node to
another before the task can be processed in the
system. The communication delays are different for
each link.
Each node contains an independent queue where
arrived tasks are added to the queue, which results in
accumulation of waiting time. Load balancing must be
done repeatedly to maintain load balance in the
system. The proposed algorithm is distributed in nature
meaning that each node runs load-balancing algorithm
autonomously.
The second level of the system is a load-balancing
layer, which consists of load balancing algorithms. The
load balancing process is initiated by suing predefined
time instants or randomly generating which is kept in a
file. The algorithm determines the portion of the
excess load to be sent to the underloaded node based
on the current state of the node and availability of the
nodes in the network. The load balancing algorithm
must consider the communication delay while
migrating the tasks to the other nodes. The algorithm
selects the tasks to migrate to other nodes by setting
their status as inactive to avoid execution of the tasks
by current node application during the transition
period. After completion of the task transmission
activity, the status of the tasks is set to active when
they are not transmitted to any node. when the tasks
are transmitted to other nodes during the task
transmission phase then those tasks are removed from
the task queue of the current node.
Application layer consists of two threads of control:
Task input and task execution threads. The task input
creates a number of tasks defined in the initialization
file and inserts them in the task queue. This task input
is also responsible for adding the new tasks to the task
queue either from the current node or from other nodes
in the system. The task execution thread is responsible
for execution of the tasks and updating the QSize
variable by removing the task from the task queue.
The load balancing policy must take into account of
processing capacity of the node while migrating the
tasks to it. The selected node may become a candidate
for one or more overloaded node in a given time
instant because of the decentralized policy. Another
issue to be considered is variable task completion
times. Taking these issues in priori is not possible so a
load balancing strategy must be adaptive to the
dynamic state changes in the system and act
accordingly to transfer the tasks. Even this can result
in task shuttle between the nodes, so a migration limit
for a task should be set to avoid task thrashing.
Another issue to be considered while migrating the
tasks from one node to another node in a system is
communication overhead. Large communication
delays will have a negative impact on the load
balancing policy, so, the transfer delays must be taken
into account while migrating the task. When the
completion of the task time in current node is greater
than the completion time on task in another node
inclusive of communication overhead, then only a task
is considered for migration.
III. MATHEMATICAL MODEL
The mathematical model for load balancing in a
given node i is given by [1][2]
𝑑𝑀 𝑖(𝑑)
𝑑𝑑
=𝐴𝑖 βˆ’ 𝑆𝑖 + π‘Ÿπ‘–(𝑑) βˆ’ βˆ‘ 𝑓𝑖𝑗
𝑑𝑠𝑖
𝑑𝑠 𝑗
≠𝑁 𝑖
𝑗=1 π‘Ÿπ‘—(𝑑 βˆ’ πœπ‘–π‘—) (1)
𝐸𝑖(𝑑)= π‘žπ‘–(𝑑)- π‘žοΏ½π‘–(𝑑)
π‘Ÿπ‘–(𝑑) = 𝐺𝑖(𝐸𝑖(𝑑))
𝑓𝑖𝑗 β‰₯ 0, 𝑓𝑖𝑖=0, βˆ‘ 𝑓𝑖𝑗 = 1
≠𝑁𝑖
𝑗=1
𝐸𝑖(𝑑) = οΏ½
𝐸 𝑖𝑓 𝑦 β‰₯ 0
0 𝑖𝑓 𝑦 < 0
When a task is inserted into the task queue of node
i, then it experiences the expected waiting time which
is denoted by wi(t).
Let the number of tasks in ith
node is denoted by π‘žπ‘–(t).
Let the average time needed to service the task at node
i 𝑑𝑠𝑖 .
The expected (average) waiting time is given by at
node i is given by 𝑀𝑖(𝑑) = π‘žπ‘–(𝑑)𝑑𝑠𝑖.
Note that 𝑀𝑖(𝑑)/𝑑𝑠𝑖 = π‘žπ‘– is the number of tasks in
the node i queue.
Similarly 𝑀 π‘˜(𝑑)/𝑑𝑠 π‘˜ = π‘ž π‘˜ is the queue length of
some node k. If tasks on node i were transferred to
some node k, then the waiting time transferred is
π‘žπ‘– 𝑑𝑠 π‘˜=
𝑀 𝑖(𝑑)𝑑𝑠 π‘˜
𝑑𝑠𝑖
, so that the fraction 𝑑𝑠 π‘˜/𝑑𝑠𝑖 converts
waiting time on node i to waiting time on node k.
𝐴𝑖 ∢ Waiting time generated by adding the task in the
ith
node.
𝑆𝑖 : Rate of reduction in waiting time caused by the
service of tasks at the ith
node is given by 𝑆𝑖 = (1 βˆ—
𝑑𝑝𝑖)/𝑑𝑝𝑖=1 for all 𝑀𝑖(𝑑) > 0.
π‘Ÿπ‘–(𝑑) ∢ The rate of removal (transfer) of the tasks
from node i at time t by the load balancing algorithm at
node i. 𝑓𝑖𝑗 is the fraction of ith
node tasks to be sent out
to the jth
node. In more detail fijri(t) is the rate at which
node i sends waiting time (tasks) to node i at time t
where fii>=0 and 𝑓𝑖𝑖=0.That is, the transfer from node i
of expected waiting time (tasks) ∫ 𝐸𝑖(𝑑)𝑑𝑑
𝑑2
𝑑1
in the
interval of time [𝑑1, 𝑑2] to the other nodes is carried out
with the 𝑗 π‘‘β„Ž
node receiving the fraction 𝑝𝑖𝑗(𝑑 𝑝 𝑗
/
𝑑 𝑝𝑖
) ∫ 𝑒𝑖(𝑑)𝑑𝑑
𝑑2
𝑑1
where the ratio 𝑑 𝑝 𝑗
/𝑑 𝑝𝑖
converts the
task from waiting time on node i to waiting time on
12 P. Neelakantan
www.ijorcs.org
node j. As βˆ‘ (𝑛
𝑖=1 𝑓𝑖𝑗 ∫ 𝐸𝑖(𝑑)𝑑𝑑
𝑑2
𝑑1
) = ∫ 𝐸𝑖(𝑑)𝑑𝑑
𝑑2
𝑑1
, this
results in removing all of the waiting time ∫ 𝐸𝑖(𝑑)𝑑𝑑
𝑑2
𝑑1
from node i.The quantity 𝑓𝑖𝑗 𝐸𝑖(𝑑 βˆ’ πœπ‘–π‘—) is the rate of
increase (rate of transfer) of the expected waiting time
(tasks) at time t from node i by (to) node j where
πœπ‘–π‘—(πœπ‘–π‘– = 0) is the time delay for the task transfer from
node i to node j.
In this model, all rates are in units of the rate of
change of expected waiting time, or time/time which is
dimensionless. As 𝐸𝑖(𝑑) β‰₯ 0, node i can only send
tasks to other nodes and cannot initiate transfers from
another node to itself. A delay is experienced by
transmitted tasks before they are received at the other
node. The control law 𝐸𝑖(𝑑) = 𝐺𝑖 βˆ— 𝐸𝑖(𝑑) states that if
the 𝑖 π‘‘β„Ž
node output 𝑀𝑖(𝑑) is above the domain average
(βˆ‘ π‘ž 𝑗(𝑑 βˆ’ πœπ‘–π‘—))𝑛
𝑗=1 /n, then it sends data to the other
nodes, while if it is less than the domain average
nothing is sent. The 𝑗 π‘‘β„Ž
node receives the fraction
∫ 𝐹𝑖𝑗
𝑑2
𝑑1
(𝑑 𝑝𝑖
/𝑑 𝑝 𝑗
) 𝑒𝑖(𝑑)𝑑𝑑 of transferred waiting time
∫ 𝐸𝑖(𝑑)𝑑𝑑
𝑑2
𝑑1
delayed by the time πœπ‘–π‘—.The model
described in (1) is the basic model for load balancing,
but an important feature is to determine fij for each
underloaded node j. One approach is to distribute the
excess load equally to all the underloaded neighbors.
𝑓𝑖𝑗 =
1
π‘›βˆ’1
for i≠j.
Another approach is to use the load information
collected from the neighbors to determine the deficit
load of the neighbors. The deficit load of the neighbors
shall be determined by node i by using the formula (2)
π‘ž 𝑗(𝑑-πœπ‘–π‘—) βˆ’ π‘žοΏ½π‘– (2)
The above formula is used by node i to compute the
deficiency waiting times in the queue of node j with
respect to the domain load average of node i.
If node j queue is above the domain average
waiting time, then node i do not send tasks to it.
Therefore (π‘žοΏ½π‘– βˆ’ π‘ž 𝑗(𝑑-πœπ‘–π‘—)) is a measure by node i as
how much node j is behind the domain average waiting
time. Node i performs this computation for all the
other nodes which are directly connected to it and then
portions out its tasks among the other nodes that fall
below the domain queue average of node i.
𝑓𝑖𝑗 =
(π‘žοΏ½ π‘–βˆ’π‘ž 𝑗(π‘‘βˆ’πœ 𝑖𝑗))
βˆ‘ (π‘žοΏ½ π‘–βˆ’π‘ž 𝑗(π‘‘βˆ’πœ 𝑖𝑗)
𝑁 𝑖
𝑗=1
(3)
If the denominator βˆ‘ (π‘žοΏ½π‘– βˆ’ π‘ž 𝑗(𝑑 βˆ’ πœπ‘–π‘—)
𝑁 𝑖
𝑗=1 =0 then fij
are defined to be zero then no waiting times are
transferred. If the denominator βˆ‘ (π‘žοΏ½π‘– βˆ’ π‘ž 𝑗(𝑑 βˆ’
𝑁 𝑖
𝑗=1
πœπ‘–π‘—)=0, then(π‘žοΏ½π‘– βˆ’ π‘ž 𝑗(𝑑 βˆ’ πœπ‘–π‘—) ≀ 0βˆ€π‘— ∈ 𝑁𝑖.
However by definition of the average βˆ‘ (π‘žοΏ½π‘– βˆ’
𝑁 𝑖
𝑗=1
π‘ž 𝑗(𝑑 βˆ’ πœπ‘–π‘—)+π‘žοΏ½π‘– βˆ’ π‘žπ‘–(𝑑) =βˆ‘ (π‘žοΏ½π‘– βˆ’ π‘ž 𝑗(𝑑 βˆ’ πœπ‘–π‘—)
𝑁 𝑖
𝑗=1 )=0
which implies
π‘žοΏ½π‘– βˆ’ π‘ž 𝑗(𝑑)=βˆ‘ (π‘žοΏ½π‘– βˆ’ π‘ž 𝑗(𝑑 βˆ’ πœπ‘–π‘—)
𝑁 𝑖
𝑗=1 ) > 0
That is, if the denominator is zero, the node j is not
greater than its domain queue average, so Ei(t)= Gi
.Ei(t))=0, where G is Gain Factor.fij : Portion of the
excess tasks of node i to be transferred to node j
decided by the load balancing algorithm.
Except the last three parameters remaining
information is known at the time of load balancing
process. Before the instance of load balancing activity,
every variable is updated.
IV. ALGORITHM
A. Algorithm ALS
The current node i, performs the followings:
a. Calculate the average queue size ( π‘žοΏ½π‘–)based on the
information received from the neighbouring nodes.
π‘žοΏ½π‘–=
1
≠𝑁𝑖+1
βˆ‘ (π‘žπ‘– + π‘ž 𝑗
𝑑𝑠 𝑗
𝑑𝑠𝑖
≠𝑁𝑖
𝑗=1 )
if (π‘žπ‘– > π‘žοΏ½π‘–)then Ei =(π‘žπ‘–-π‘žοΏ½π‘–) * G
else Exit.
b. Determine the participant nodes in load sharing
process.
Participants= {j| π‘ž 𝑗<π‘žοΏ½π‘–, βˆ€j∈Ni}
c. Calculate the fraction of the load ( 𝑓𝑖𝑗
β€²
) to be sent to
the participants
𝑓𝑖𝑗
β€²
=
π‘žοΏ½π‘–βˆ’(
𝑑𝑠 𝑗
𝑑𝑠 𝑖
)π‘ž 𝑗
βˆ‘ ( π‘žοΏ½π‘–βˆ’(
𝑐 𝑗
𝑐 𝑖
)π‘ž 𝑗
𝑁 𝑖
𝑗=1
d. Calculate maximum portion of the excess load
(𝑓𝑖𝑗
β€²β€²
)
𝑓𝑖𝑗
β€²β€²
=
(π‘žπ‘–βˆ’Ei) 𝑑𝑠𝑖 dij
Eibi
e. 𝑓𝑖𝑗 = Min (𝑓𝑖𝑗
β€²
, 𝑓𝑖𝑗
β€²β€²
)
f. For j∈ Participants
i. Announce to node j about its willingness to
send Tij= 𝑓𝑖𝑗 *Ei tasks;
ii. nowReceived = call procedure acceptanceFrom
Nodej()
iii. if(nowReceived >0)
1. Transfer NowReceived to j
2. Tij=Tij- NowReceived
End if
g. Repeat steps from (a) to (f).
Procedure acceptanceFromNodej()
if ((π‘ž 𝑗+ Tij)< π‘žοΏ½ 𝑗nowSend=π‘žοΏ½ 𝑗 βˆ’ π‘ž 𝑗;
else nowSend=-1;
An Adaptive Load Sharing Algorithm for Heterogeneous Distributed System 13
www.ijorcs.org
return now Send;
end acceptanceFromNodej
In general it is assumed that keeping the Gain factor
G=1 will give the good performance. But in a
distributed system with largest delays and the nodes
that have domain queue average outdated gives poor
result. This phenomenon was first observed by the load
balancing group at the University of New Mexico [7].
So the G values are set in the way that yields an
optimal result. Another step that is added in the above
algorithm is to test the node availability. It checks both
node availability as well as the amount of waiting
times it can receive. The node executing the ALS is
permitted to send the tasks to the neighbors after
receiving the acknowledgement specifying the amount
of the load they can be able to process.. The time
complexity of the proposed algorithm is O(d) shown in
the table 1.
Table 1: ALS Operations
Sno Actions Operation
Quantity,
(d is the
number of
neighbors)
1
Compute
average
queue size
Addition
Division
Multiplication
d+1
d
d
2 Compute Ei
Subtraction
Multiplication
1
1
3
Determine
the
participant
nodes
Comparison d
4
Compute
𝑓𝑖𝑗
β€²
Subtraction
Division
Multiplication
d+1
d+1
d+1
5
Compute
𝑓𝑖𝑗
β€²β€²
Subtraction
Division
Multiplication
1
1
3
6 Compute Tij Multiplication d
7
Message to
node
Transfer d
8
Compute
nowReceived
Addition
Comparison
Message
Transfer
d
d
d
V. SIMULATION
To test the performance of the newly proposed
load-balancing policy, a Java program is developed to
test the performance of the existing and proposed
algorithms. The existing algorithms, ELISA and
DOLB are used to compare with the proposed
algorithm ALS. The DOLB is very much related to the
above problem. The initial settings and parameters are
shown in Table 2. The average network transfer rates
between each node are represented by the cost
adjacency matrix.
The proposed algorithm ALS is tested with DOLB
& ELISA for the gain values G between 0.3 and 1 with
0.1 incremental steps. The 𝛼 parameter introduced in
the previous section was set to 0.05 by running several
experiments and observing the behavior of the tsi
parameter. Note that, the first time the load-balancing
process was triggered was after 40s from the start of
the system and then the strategy was executed
regularly at 20s interval.
Table 2: Simulation Parameters
Number of nodes 16,32,64
Initial task
distribution
[100..1000] tasks distributed
randomly at each node
Average task
processing time(𝑑𝑠
in ms)
Processing time is randomly
distributed in a
range[300…800]
Size of task( in Mb) 1
Load balancing
instance
First time the load balancing
was triggered at 5s then for
every 10s the load balancing
is initiated
Bandwidth
distribution (𝑑𝑖𝑗)
A cost adjacency matrix
denotes the transfer rate
between the nodes.
Number of nodes 16,32,64
Initial task
distribution
[100..1000] tasks distributed
randomly at each node
Average task
processing time(𝑑𝑠
in ms)
Processing time is randomly
distributed in a
range[300…800]
This was done to ensure that the ts parameter had
enough time to adapt and reflect the current
computational power of each node before the
occurrence of any tasks migration between the nodes.
Note that the ratio
𝑑𝑠𝑖
𝑑𝑠 𝑗
are fixed over time. The
proposed and rival methods were evaluated by
conducting 10 runs for each value of G between 0.3
and 1 with 0.1 incremental step.
14 P. Neelakantan
www.ijorcs.org
Figure 1: Completion time averaged over 5 runs vs different
gain values K. The graphs shows the results of three policies
for system size=64.
Figure 2: Completion time averaged over 5 runs vs.
different gain values K. The graphs shows the results of
three policies for system size=32.
Figure 3: Total number of tasks exchanged averaged over 5
runs Vs different Gain values K. The graphs shows the
performance of the three policies for system size=16.
VI. CONCLUSION
The proposed algorithm is better when compared to
the existing algorithms in the literature. In simulation,
we assumed the tasks with no precedence and with no
deadlines. However, as a future work, the algorithm
must focus on considering the tasks with dead line and
tasks with precedence relations.
VII. REFERENCES
[1] M. M. Hayat, S . Dhakal, C. T. Abdallah I β€˜Dynamic
time delay models for load balancing. Part II: Stochastic
analysis of the effect of delay uncertainty, CNRS-NSF
Workshop: Advances in Control of tirne-delay Systems,
Paris France, January 2003.
[2] J. Ghanem, C. T. Abdallah, M. M. Hayat, S. Dhakal,
J.D Birdwell, J. Chiasson, and Z. Tang. Implementation
of load balancing algorithms over a local area network
and the internet. 43rd IEEE Conference on Decision
and Control, Submitted, Bahamas, 2004. doi:
10.1109/CDC.2004.1429411
[3] L. Anand, D. Ghose, and V. Mani, β€œELISA: An
Estimated Load Information Scheduling Algorithm for
Distributed Computing Systems,” Int’l J. Computers
and Math With Applications, vol. 37, no. 8, pp. 57-85,
Apr. 1999. doi: 10.1016/S0898-1221(99)00101-7
[4] WEI Wen-hong, XIANG Fei, WANG Wen-feng, et al.
Load Balancing Algorithm in Structure P2P
Systems[J],Computer Science, 2010, 37(4):82-85.
[5] Khalifa, A.S.; Fergany, T.A.; Ammar, R.A.; Tolba,
M.F,” Dynamic online Allocation of Independent tasks
onto heterogeneous computing systems to maximize
load balancing,” IEEE International Symposium on
Signal Processing and Information Technology, ISSPIT
2008,Page(s): 418 – 425. doi: 10.1109/ISSPIT.
2008.4775659
[6] Andras Veres and Miklos Boda. The chaotic nature of
TCP congestion control. In Proceedings of the IEEE
Infocom, pages 1715-1723, 2000. doi:
10.1109/INFCOM.2000.832571
[7] J. Chiasson, J. D. Birdwell, Z. Tang, and C.T. Abdallah.
The effect of time delays in the stability of load
balancing algorithms for parallel computations. IEEE
Conference on Decision and Control, Maui, Hawaii,
2003. doi: 10.1109/CDC.2003.1272626
[8] Ming wu and Xian-He sun, A General Self Adaptive
Task Scheduling System for Non Dedicated
Heterogeneous Computing, In Proceedings of IEEE
International Conference on Cluster Computing, PP
354-361, Dec 2003. doi: 10.1109/CLUSTR.
2003.1253334
[9] Z. Zeng and B. Veeravalli, "Design and Performance
Evaluation of Queue-and-Rate-Adjustment Dynamic
Load Balancing Policies for Distributed Networks",
presented at IEEE Trans. Computers, 2006, pp.1410-
1422. doi: 10.1109/TC.2006.180
[10] K. Lu, R. Subrata, and A. Y. Zomaya, Towards
decentralized load balancing in a computational grid
environment, in: Proceedings of the first International
Conference on Grid and Pervasive Computing, 2006,
Vol. 3947, pp. 466-477, Springer-Verlag Press. doi:
10.1007/11745693_46
[11] Acker, D., Kulkarni, S. 2007. A Dynamic Load
Dispersion Algorithm for Load Balancing in a
Heterogeneous Grid System. IEEE Sarnoff
0
20
40
60
80
100
120
140
160
0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
ALS
DOLB
ELISA
0
20
40
60
80
100
120
140
160
0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
AverageTaskCompletiontime
Gain
ALS
DOLB
ELISA
0
50
100
150
200
250
300
350
400
450
0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
NUmberofTasksexchanged
ALS
DOLB
ELISA
An Adaptive Load Sharing Algorithm for Heterogeneous Distributed System 15
www.ijorcs.org
Symposium, 1- 5, 2007. 10.1109/SARNOF.2007.
4567375
[12] M. Luczak and C. McDiarmid. On the maximum queue
length in the supermarket model. The Annals of
Probability, 34(2):493–527, 2006. doi: 10.1214/
00911790500000710
[13] Zhou, S. (1987). An Experimental Assessment of
Resource Queue Lengths as Load Indices. Proc. Winter
USENIX Conf., p.73-82.
[14] J. Ghanem, C. T. Abdallah, M. M. Hayat, S. Dhakal,
J.D Birdwell, J. Chiasson, and Z. Tang. Implementation
of load balancing algorithms over a local area network
and the internet. 43rd IEEE Conference on Decision
and Control, Submitted, Bahamas, pp 4199-4204, 2004.
How to cite
P. Neelakantan, " An Adaptive Load Sharing Algorithm for Heterogeneous Distributed System ". International
Journal of Research in Computer Science, 3 (3): pp. 9-15, May 2013. doi: 10.7815/ijorcs. 33.2013.063

Weitere Γ€hnliche Inhalte

Was ist angesagt?

Dynamic Load Calculation in A Distributed System using centralized approach
Dynamic Load Calculation in A Distributed System using centralized approachDynamic Load Calculation in A Distributed System using centralized approach
Dynamic Load Calculation in A Distributed System using centralized approachIJARIIT
Β 
The Concept of Load Balancing Server in Secured and Intelligent Network
The Concept of Load Balancing Server in Secured and Intelligent NetworkThe Concept of Load Balancing Server in Secured and Intelligent Network
The Concept of Load Balancing Server in Secured and Intelligent NetworkIJAEMSJORNAL
Β 
Resource management
Resource managementResource management
Resource managementpeeyushanand6
Β 
Unit 3 cs6601 Distributed Systems
Unit 3 cs6601 Distributed SystemsUnit 3 cs6601 Distributed Systems
Unit 3 cs6601 Distributed SystemsNandakumar P
Β 
ADVANCED DIFFUSION APPROACH TO DYNAMIC LOAD-BALANCING FOR CLOUD STORAGE
ADVANCED DIFFUSION APPROACH TO DYNAMIC LOAD-BALANCING FOR CLOUD STORAGEADVANCED DIFFUSION APPROACH TO DYNAMIC LOAD-BALANCING FOR CLOUD STORAGE
ADVANCED DIFFUSION APPROACH TO DYNAMIC LOAD-BALANCING FOR CLOUD STORAGEijdpsjournal
Β 
Final jaypaper linux
Final jaypaper linuxFinal jaypaper linux
Final jaypaper linuxjaya380
Β 
An efficient approach for load balancing using dynamic ab algorithm in cloud ...
An efficient approach for load balancing using dynamic ab algorithm in cloud ...An efficient approach for load balancing using dynamic ab algorithm in cloud ...
An efficient approach for load balancing using dynamic ab algorithm in cloud ...bhavikpooja
Β 
Communications is distributed systems
Communications is distributed systemsCommunications is distributed systems
Communications is distributed systemsSHATHAN
Β 
user_defined_functions_forinterpolation
user_defined_functions_forinterpolationuser_defined_functions_forinterpolation
user_defined_functions_forinterpolationsushanth tiruvaipati
Β 
Transmission Time and Throughput analysis of EEE LEACH, LEACH and Direct Tran...
Transmission Time and Throughput analysis of EEE LEACH, LEACH and Direct Tran...Transmission Time and Throughput analysis of EEE LEACH, LEACH and Direct Tran...
Transmission Time and Throughput analysis of EEE LEACH, LEACH and Direct Tran...acijjournal
Β 
Load Balancing in Parallel and Distributed Database
Load Balancing in Parallel and Distributed DatabaseLoad Balancing in Parallel and Distributed Database
Load Balancing in Parallel and Distributed DatabaseMd. Shamsur Rahim
Β 
Dynamic Cloud Partitioning and Load Balancing in Cloud
Dynamic Cloud Partitioning and Load Balancing in Cloud Dynamic Cloud Partitioning and Load Balancing in Cloud
Dynamic Cloud Partitioning and Load Balancing in Cloud Shyam Hajare
Β 
Load balancing
Load balancingLoad balancing
Load balancingPooja Dixit
Β 
Base paper ppt-. A load balancing model based on cloud partitioning for the ...
Base paper ppt-. A  load balancing model based on cloud partitioning for the ...Base paper ppt-. A  load balancing model based on cloud partitioning for the ...
Base paper ppt-. A load balancing model based on cloud partitioning for the ...Lavanya Vigrahala
Β 
(Paper) Task scheduling algorithm for multicore processor system for minimiz...
 (Paper) Task scheduling algorithm for multicore processor system for minimiz... (Paper) Task scheduling algorithm for multicore processor system for minimiz...
(Paper) Task scheduling algorithm for multicore processor system for minimiz...Naoki Shibata
Β 
Elastic neural network method for load prediction in cloud computing grid
Elastic neural network method for load prediction in cloud computing gridElastic neural network method for load prediction in cloud computing grid
Elastic neural network method for load prediction in cloud computing gridIJECEIAES
Β 

Was ist angesagt? (20)

Dynamic Load Calculation in A Distributed System using centralized approach
Dynamic Load Calculation in A Distributed System using centralized approachDynamic Load Calculation in A Distributed System using centralized approach
Dynamic Load Calculation in A Distributed System using centralized approach
Β 
The Concept of Load Balancing Server in Secured and Intelligent Network
The Concept of Load Balancing Server in Secured and Intelligent NetworkThe Concept of Load Balancing Server in Secured and Intelligent Network
The Concept of Load Balancing Server in Secured and Intelligent Network
Β 
Load rebalancing
Load rebalancingLoad rebalancing
Load rebalancing
Β 
Resource management
Resource managementResource management
Resource management
Β 
Unit 3 cs6601 Distributed Systems
Unit 3 cs6601 Distributed SystemsUnit 3 cs6601 Distributed Systems
Unit 3 cs6601 Distributed Systems
Β 
ADVANCED DIFFUSION APPROACH TO DYNAMIC LOAD-BALANCING FOR CLOUD STORAGE
ADVANCED DIFFUSION APPROACH TO DYNAMIC LOAD-BALANCING FOR CLOUD STORAGEADVANCED DIFFUSION APPROACH TO DYNAMIC LOAD-BALANCING FOR CLOUD STORAGE
ADVANCED DIFFUSION APPROACH TO DYNAMIC LOAD-BALANCING FOR CLOUD STORAGE
Β 
Final jaypaper linux
Final jaypaper linuxFinal jaypaper linux
Final jaypaper linux
Β 
Ch4
Ch4Ch4
Ch4
Β 
An efficient approach for load balancing using dynamic ab algorithm in cloud ...
An efficient approach for load balancing using dynamic ab algorithm in cloud ...An efficient approach for load balancing using dynamic ab algorithm in cloud ...
An efficient approach for load balancing using dynamic ab algorithm in cloud ...
Β 
Communications is distributed systems
Communications is distributed systemsCommunications is distributed systems
Communications is distributed systems
Β 
user_defined_functions_forinterpolation
user_defined_functions_forinterpolationuser_defined_functions_forinterpolation
user_defined_functions_forinterpolation
Β 
Transmission Time and Throughput analysis of EEE LEACH, LEACH and Direct Tran...
Transmission Time and Throughput analysis of EEE LEACH, LEACH and Direct Tran...Transmission Time and Throughput analysis of EEE LEACH, LEACH and Direct Tran...
Transmission Time and Throughput analysis of EEE LEACH, LEACH and Direct Tran...
Β 
Load Balancing in Parallel and Distributed Database
Load Balancing in Parallel and Distributed DatabaseLoad Balancing in Parallel and Distributed Database
Load Balancing in Parallel and Distributed Database
Β 
Dynamic Cloud Partitioning and Load Balancing in Cloud
Dynamic Cloud Partitioning and Load Balancing in Cloud Dynamic Cloud Partitioning and Load Balancing in Cloud
Dynamic Cloud Partitioning and Load Balancing in Cloud
Β 
Load balancing
Load balancingLoad balancing
Load balancing
Β 
Base paper ppt-. A load balancing model based on cloud partitioning for the ...
Base paper ppt-. A  load balancing model based on cloud partitioning for the ...Base paper ppt-. A  load balancing model based on cloud partitioning for the ...
Base paper ppt-. A load balancing model based on cloud partitioning for the ...
Β 
(Paper) Task scheduling algorithm for multicore processor system for minimiz...
 (Paper) Task scheduling algorithm for multicore processor system for minimiz... (Paper) Task scheduling algorithm for multicore processor system for minimiz...
(Paper) Task scheduling algorithm for multicore processor system for minimiz...
Β 
Bn36386389
Bn36386389Bn36386389
Bn36386389
Β 
Cloud Spanner
Cloud SpannerCloud Spanner
Cloud Spanner
Β 
Elastic neural network method for load prediction in cloud computing grid
Elastic neural network method for load prediction in cloud computing gridElastic neural network method for load prediction in cloud computing grid
Elastic neural network method for load prediction in cloud computing grid
Β 

Andere mochten auch

IJORCS, Volume 2 - Issue 6, Call for Papers
IJORCS, Volume 2 - Issue 6, Call for PapersIJORCS, Volume 2 - Issue 6, Call for Papers
IJORCS, Volume 2 - Issue 6, Call for PapersIJORCS
Β 
Commentz-Walter: Any Better than Aho-Corasick for Peptide Identification?
Commentz-Walter: Any Better than Aho-Corasick for Peptide Identification? Commentz-Walter: Any Better than Aho-Corasick for Peptide Identification?
Commentz-Walter: Any Better than Aho-Corasick for Peptide Identification? IJORCS
Β 
Intrusion Detection Techniques In Mobile Networks
Intrusion Detection Techniques In Mobile NetworksIntrusion Detection Techniques In Mobile Networks
Intrusion Detection Techniques In Mobile NetworksIOSR Journals
Β 
IJORCS,Call For Papers- Volume 3, Issue 1,December 2012
IJORCS,Call For Papers- Volume 3, Issue 1,December 2012IJORCS,Call For Papers- Volume 3, Issue 1,December 2012
IJORCS,Call For Papers- Volume 3, Issue 1,December 2012IJORCS
Β 
An Enhanced Framework for Improving Spatio-Temporal Queries for Global Positi...
An Enhanced Framework for Improving Spatio-Temporal Queries for Global Positi...An Enhanced Framework for Improving Spatio-Temporal Queries for Global Positi...
An Enhanced Framework for Improving Spatio-Temporal Queries for Global Positi...IJORCS
Β 
Introductory Approach on Ad-hoc Networks and its Paradigms
Introductory Approach on Ad-hoc Networks and its Paradigms Introductory Approach on Ad-hoc Networks and its Paradigms
Introductory Approach on Ad-hoc Networks and its Paradigms IJORCS
Β 
A Robust Cryptographic System using Neighborhood-Generated Keys
A Robust Cryptographic System using Neighborhood-Generated KeysA Robust Cryptographic System using Neighborhood-Generated Keys
A Robust Cryptographic System using Neighborhood-Generated KeysIJORCS
Β 
Call for Papers - IJORCS, Volume 4 Issue 4
Call for Papers - IJORCS, Volume 4 Issue 4Call for Papers - IJORCS, Volume 4 Issue 4
Call for Papers - IJORCS, Volume 4 Issue 4IJORCS
Β 
Enhancement of DES Algorithm with Multi State Logic
Enhancement of DES Algorithm with Multi State LogicEnhancement of DES Algorithm with Multi State Logic
Enhancement of DES Algorithm with Multi State LogicIJORCS
Β 

Andere mochten auch (9)

IJORCS, Volume 2 - Issue 6, Call for Papers
IJORCS, Volume 2 - Issue 6, Call for PapersIJORCS, Volume 2 - Issue 6, Call for Papers
IJORCS, Volume 2 - Issue 6, Call for Papers
Β 
Commentz-Walter: Any Better than Aho-Corasick for Peptide Identification?
Commentz-Walter: Any Better than Aho-Corasick for Peptide Identification? Commentz-Walter: Any Better than Aho-Corasick for Peptide Identification?
Commentz-Walter: Any Better than Aho-Corasick for Peptide Identification?
Β 
Intrusion Detection Techniques In Mobile Networks
Intrusion Detection Techniques In Mobile NetworksIntrusion Detection Techniques In Mobile Networks
Intrusion Detection Techniques In Mobile Networks
Β 
IJORCS,Call For Papers- Volume 3, Issue 1,December 2012
IJORCS,Call For Papers- Volume 3, Issue 1,December 2012IJORCS,Call For Papers- Volume 3, Issue 1,December 2012
IJORCS,Call For Papers- Volume 3, Issue 1,December 2012
Β 
An Enhanced Framework for Improving Spatio-Temporal Queries for Global Positi...
An Enhanced Framework for Improving Spatio-Temporal Queries for Global Positi...An Enhanced Framework for Improving Spatio-Temporal Queries for Global Positi...
An Enhanced Framework for Improving Spatio-Temporal Queries for Global Positi...
Β 
Introductory Approach on Ad-hoc Networks and its Paradigms
Introductory Approach on Ad-hoc Networks and its Paradigms Introductory Approach on Ad-hoc Networks and its Paradigms
Introductory Approach on Ad-hoc Networks and its Paradigms
Β 
A Robust Cryptographic System using Neighborhood-Generated Keys
A Robust Cryptographic System using Neighborhood-Generated KeysA Robust Cryptographic System using Neighborhood-Generated Keys
A Robust Cryptographic System using Neighborhood-Generated Keys
Β 
Call for Papers - IJORCS, Volume 4 Issue 4
Call for Papers - IJORCS, Volume 4 Issue 4Call for Papers - IJORCS, Volume 4 Issue 4
Call for Papers - IJORCS, Volume 4 Issue 4
Β 
Enhancement of DES Algorithm with Multi State Logic
Enhancement of DES Algorithm with Multi State LogicEnhancement of DES Algorithm with Multi State Logic
Enhancement of DES Algorithm with Multi State Logic
Β 

Γ„hnlich wie Adaptive Load Balancing for Heterogeneous Distributed Systems

ADVANCED DIFFUSION APPROACH TO DYNAMIC LOAD-BALANCING FOR CLOUD STORAGE
ADVANCED DIFFUSION APPROACH TO DYNAMIC  LOAD-BALANCING FOR CLOUD STORAGEADVANCED DIFFUSION APPROACH TO DYNAMIC  LOAD-BALANCING FOR CLOUD STORAGE
ADVANCED DIFFUSION APPROACH TO DYNAMIC LOAD-BALANCING FOR CLOUD STORAGEijdpsjournal
Β 
ADVANCED DIFFUSION APPROACH TO DYNAMIC LOAD-BALANCING FOR CLOUD STORAGE
ADVANCED DIFFUSION APPROACH TO DYNAMIC  LOAD-BALANCING FOR CLOUD STORAGEADVANCED DIFFUSION APPROACH TO DYNAMIC  LOAD-BALANCING FOR CLOUD STORAGE
ADVANCED DIFFUSION APPROACH TO DYNAMIC LOAD-BALANCING FOR CLOUD STORAGEijdpsjournal
Β 
Load Rebalancing for Distributed Hash Tables in Cloud Computing
Load Rebalancing for Distributed Hash Tables in Cloud ComputingLoad Rebalancing for Distributed Hash Tables in Cloud Computing
Load Rebalancing for Distributed Hash Tables in Cloud Computingiosrjce
Β 
Cloud Partitioning of Load Balancing Using Round Robin Model
Cloud Partitioning of Load Balancing Using Round Robin ModelCloud Partitioning of Load Balancing Using Round Robin Model
Cloud Partitioning of Load Balancing Using Round Robin ModelIJCERT
Β 
Comparative Study of Effects of Delay in Load Balancing Scheme for Highly Loa...
Comparative Study of Effects of Delay in Load Balancing Scheme for Highly Loa...Comparative Study of Effects of Delay in Load Balancing Scheme for Highly Loa...
Comparative Study of Effects of Delay in Load Balancing Scheme for Highly Loa...idescitation
Β 
A load balancing model based on cloud partitioning
A load balancing model based on cloud partitioningA load balancing model based on cloud partitioning
A load balancing model based on cloud partitioningLavanya Vigrahala
Β 
SCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATION
SCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATIONSCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATION
SCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATIONijdms
Β 
SCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATION
SCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATIONSCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATION
SCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATIONijdms
Β 
SCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATION
SCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATIONSCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATION
SCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATIONijdms
Β 
A study on dynamic load balancing in grid environment
A study on dynamic load balancing in grid environmentA study on dynamic load balancing in grid environment
A study on dynamic load balancing in grid environmentIJSRD
Β 
40414094210-phpapp01 (1).pdf
40414094210-phpapp01 (1).pdf40414094210-phpapp01 (1).pdf
40414094210-phpapp01 (1).pdfRebaMaheen
Β 
Load Balancing In Distributed Computing
Load Balancing In Distributed ComputingLoad Balancing In Distributed Computing
Load Balancing In Distributed ComputingRicha Singh
Β 
LOAD MANAGEMENT IN CLOUD ENVIRONMENT
LOAD MANAGEMENT IN CLOUD ENVIRONMENTLOAD MANAGEMENT IN CLOUD ENVIRONMENT
LOAD MANAGEMENT IN CLOUD ENVIRONMENTIJERA Editor
Β 
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...ijp2p
Β 
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...ijp2p
Β 
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...ijp2p
Β 
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...ijp2p
Β 

Γ„hnlich wie Adaptive Load Balancing for Heterogeneous Distributed Systems (20)

ADVANCED DIFFUSION APPROACH TO DYNAMIC LOAD-BALANCING FOR CLOUD STORAGE
ADVANCED DIFFUSION APPROACH TO DYNAMIC  LOAD-BALANCING FOR CLOUD STORAGEADVANCED DIFFUSION APPROACH TO DYNAMIC  LOAD-BALANCING FOR CLOUD STORAGE
ADVANCED DIFFUSION APPROACH TO DYNAMIC LOAD-BALANCING FOR CLOUD STORAGE
Β 
ADVANCED DIFFUSION APPROACH TO DYNAMIC LOAD-BALANCING FOR CLOUD STORAGE
ADVANCED DIFFUSION APPROACH TO DYNAMIC  LOAD-BALANCING FOR CLOUD STORAGEADVANCED DIFFUSION APPROACH TO DYNAMIC  LOAD-BALANCING FOR CLOUD STORAGE
ADVANCED DIFFUSION APPROACH TO DYNAMIC LOAD-BALANCING FOR CLOUD STORAGE
Β 
Load Rebalancing for Distributed Hash Tables in Cloud Computing
Load Rebalancing for Distributed Hash Tables in Cloud ComputingLoad Rebalancing for Distributed Hash Tables in Cloud Computing
Load Rebalancing for Distributed Hash Tables in Cloud Computing
Β 
C017311316
C017311316C017311316
C017311316
Β 
Cloud Partitioning of Load Balancing Using Round Robin Model
Cloud Partitioning of Load Balancing Using Round Robin ModelCloud Partitioning of Load Balancing Using Round Robin Model
Cloud Partitioning of Load Balancing Using Round Robin Model
Β 
Comparative Study of Effects of Delay in Load Balancing Scheme for Highly Loa...
Comparative Study of Effects of Delay in Load Balancing Scheme for Highly Loa...Comparative Study of Effects of Delay in Load Balancing Scheme for Highly Loa...
Comparative Study of Effects of Delay in Load Balancing Scheme for Highly Loa...
Β 
37
3737
37
Β 
A load balancing model based on cloud partitioning
A load balancing model based on cloud partitioningA load balancing model based on cloud partitioning
A load balancing model based on cloud partitioning
Β 
SCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATION
SCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATIONSCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATION
SCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATION
Β 
SCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATION
SCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATIONSCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATION
SCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATION
Β 
SCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATION
SCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATIONSCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATION
SCALING DISTRIBUTED DATABASE JOINS BY DECOUPLING COMPUTATION AND COMMUNICATION
Β 
A study on dynamic load balancing in grid environment
A study on dynamic load balancing in grid environmentA study on dynamic load balancing in grid environment
A study on dynamic load balancing in grid environment
Β 
40414094210-phpapp01 (1).pdf
40414094210-phpapp01 (1).pdf40414094210-phpapp01 (1).pdf
40414094210-phpapp01 (1).pdf
Β 
Load Balancing In Distributed Computing
Load Balancing In Distributed ComputingLoad Balancing In Distributed Computing
Load Balancing In Distributed Computing
Β 
LOAD MANAGEMENT IN CLOUD ENVIRONMENT
LOAD MANAGEMENT IN CLOUD ENVIRONMENTLOAD MANAGEMENT IN CLOUD ENVIRONMENT
LOAD MANAGEMENT IN CLOUD ENVIRONMENT
Β 
10. resource management
10. resource management10. resource management
10. resource management
Β 
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...
Β 
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...
Β 
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...
Β 
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...
A LOAD BALANCING ALGORITHM BASED ON REPLICATION AND MOVEMENT OF DATA ITEMS FO...
Β 

Mehr von IJORCS

Help the Genetic Algorithm to Minimize the Urban Traffic on Intersections
Help the Genetic Algorithm to Minimize the Urban Traffic on IntersectionsHelp the Genetic Algorithm to Minimize the Urban Traffic on Intersections
Help the Genetic Algorithm to Minimize the Urban Traffic on IntersectionsIJORCS
Β 
Real-Time Multiple License Plate Recognition System
Real-Time Multiple License Plate Recognition SystemReal-Time Multiple License Plate Recognition System
Real-Time Multiple License Plate Recognition SystemIJORCS
Β 
FPGA Implementation of FIR Filter using Various Algorithms: A Retrospective
FPGA Implementation of FIR Filter using Various Algorithms: A RetrospectiveFPGA Implementation of FIR Filter using Various Algorithms: A Retrospective
FPGA Implementation of FIR Filter using Various Algorithms: A RetrospectiveIJORCS
Β 
Using Virtualization Technique to Increase Security and Reduce Energy Consump...
Using Virtualization Technique to Increase Security and Reduce Energy Consump...Using Virtualization Technique to Increase Security and Reduce Energy Consump...
Using Virtualization Technique to Increase Security and Reduce Energy Consump...IJORCS
Β 
Algebraic Fault Attack on the SHA-256 Compression Function
Algebraic Fault Attack on the SHA-256 Compression FunctionAlgebraic Fault Attack on the SHA-256 Compression Function
Algebraic Fault Attack on the SHA-256 Compression FunctionIJORCS
Β 
Hybrid Simulated Annealing and Nelder-Mead Algorithm for Solving Large-Scale ...
Hybrid Simulated Annealing and Nelder-Mead Algorithm for Solving Large-Scale ...Hybrid Simulated Annealing and Nelder-Mead Algorithm for Solving Large-Scale ...
Hybrid Simulated Annealing and Nelder-Mead Algorithm for Solving Large-Scale ...IJORCS
Β 
CFP. IJORCS, Volume 4 - Issue2
CFP. IJORCS, Volume 4 - Issue2CFP. IJORCS, Volume 4 - Issue2
CFP. IJORCS, Volume 4 - Issue2IJORCS
Β 
Call for Papers - IJORCS - Vol 4, Issue 1
Call for Papers - IJORCS - Vol 4, Issue 1Call for Papers - IJORCS - Vol 4, Issue 1
Call for Papers - IJORCS - Vol 4, Issue 1IJORCS
Β 
Voice Recognition System using Template Matching
Voice Recognition System using Template MatchingVoice Recognition System using Template Matching
Voice Recognition System using Template MatchingIJORCS
Β 
Channel Aware Mac Protocol for Maximizing Throughput and Fairness
Channel Aware Mac Protocol for Maximizing Throughput and FairnessChannel Aware Mac Protocol for Maximizing Throughput and Fairness
Channel Aware Mac Protocol for Maximizing Throughput and FairnessIJORCS
Β 
A Review and Analysis on Mobile Application Development Processes using Agile...
A Review and Analysis on Mobile Application Development Processes using Agile...A Review and Analysis on Mobile Application Development Processes using Agile...
A Review and Analysis on Mobile Application Development Processes using Agile...IJORCS
Β 
Congestion Prediction and Adaptive Rate Adjustment Technique for Wireless Sen...
Congestion Prediction and Adaptive Rate Adjustment Technique for Wireless Sen...Congestion Prediction and Adaptive Rate Adjustment Technique for Wireless Sen...
Congestion Prediction and Adaptive Rate Adjustment Technique for Wireless Sen...IJORCS
Β 
A Study of Routing Techniques in Intermittently Connected MANETs
A Study of Routing Techniques in Intermittently Connected MANETsA Study of Routing Techniques in Intermittently Connected MANETs
A Study of Routing Techniques in Intermittently Connected MANETsIJORCS
Β 
Improving the Efficiency of Spectral Subtraction Method by Combining it with ...
Improving the Efficiency of Spectral Subtraction Method by Combining it with ...Improving the Efficiency of Spectral Subtraction Method by Combining it with ...
Improving the Efficiency of Spectral Subtraction Method by Combining it with ...IJORCS
Β 
The Design of Cognitive Social Simulation Framework using Statistical Methodo...
The Design of Cognitive Social Simulation Framework using Statistical Methodo...The Design of Cognitive Social Simulation Framework using Statistical Methodo...
The Design of Cognitive Social Simulation Framework using Statistical Methodo...IJORCS
Β 
A PSO-Based Subtractive Data Clustering Algorithm
A PSO-Based Subtractive Data Clustering AlgorithmA PSO-Based Subtractive Data Clustering Algorithm
A PSO-Based Subtractive Data Clustering AlgorithmIJORCS
Β 
Call for papers, IJORCS, Volume 3 - Issue 3
Call for papers, IJORCS, Volume 3 - Issue 3Call for papers, IJORCS, Volume 3 - Issue 3
Call for papers, IJORCS, Volume 3 - Issue 3IJORCS
Β 
Dynamic Map and Diffserv Based AR Selection for Handoff in HMIPv6 Networks
Dynamic Map and Diffserv Based AR Selection for Handoff in HMIPv6 Networks Dynamic Map and Diffserv Based AR Selection for Handoff in HMIPv6 Networks
Dynamic Map and Diffserv Based AR Selection for Handoff in HMIPv6 Networks IJORCS
Β 
From Physical to Virtual Wireless Sensor Networks using Cloud Computing
From Physical to Virtual Wireless Sensor Networks using Cloud Computing From Physical to Virtual Wireless Sensor Networks using Cloud Computing
From Physical to Virtual Wireless Sensor Networks using Cloud Computing IJORCS
Β 
Prediction of Atmospheric Pressure at Ground Level using Artificial Neural Ne...
Prediction of Atmospheric Pressure at Ground Level using Artificial Neural Ne...Prediction of Atmospheric Pressure at Ground Level using Artificial Neural Ne...
Prediction of Atmospheric Pressure at Ground Level using Artificial Neural Ne...IJORCS
Β 

Mehr von IJORCS (20)

Help the Genetic Algorithm to Minimize the Urban Traffic on Intersections
Help the Genetic Algorithm to Minimize the Urban Traffic on IntersectionsHelp the Genetic Algorithm to Minimize the Urban Traffic on Intersections
Help the Genetic Algorithm to Minimize the Urban Traffic on Intersections
Β 
Real-Time Multiple License Plate Recognition System
Real-Time Multiple License Plate Recognition SystemReal-Time Multiple License Plate Recognition System
Real-Time Multiple License Plate Recognition System
Β 
FPGA Implementation of FIR Filter using Various Algorithms: A Retrospective
FPGA Implementation of FIR Filter using Various Algorithms: A RetrospectiveFPGA Implementation of FIR Filter using Various Algorithms: A Retrospective
FPGA Implementation of FIR Filter using Various Algorithms: A Retrospective
Β 
Using Virtualization Technique to Increase Security and Reduce Energy Consump...
Using Virtualization Technique to Increase Security and Reduce Energy Consump...Using Virtualization Technique to Increase Security and Reduce Energy Consump...
Using Virtualization Technique to Increase Security and Reduce Energy Consump...
Β 
Algebraic Fault Attack on the SHA-256 Compression Function
Algebraic Fault Attack on the SHA-256 Compression FunctionAlgebraic Fault Attack on the SHA-256 Compression Function
Algebraic Fault Attack on the SHA-256 Compression Function
Β 
Hybrid Simulated Annealing and Nelder-Mead Algorithm for Solving Large-Scale ...
Hybrid Simulated Annealing and Nelder-Mead Algorithm for Solving Large-Scale ...Hybrid Simulated Annealing and Nelder-Mead Algorithm for Solving Large-Scale ...
Hybrid Simulated Annealing and Nelder-Mead Algorithm for Solving Large-Scale ...
Β 
CFP. IJORCS, Volume 4 - Issue2
CFP. IJORCS, Volume 4 - Issue2CFP. IJORCS, Volume 4 - Issue2
CFP. IJORCS, Volume 4 - Issue2
Β 
Call for Papers - IJORCS - Vol 4, Issue 1
Call for Papers - IJORCS - Vol 4, Issue 1Call for Papers - IJORCS - Vol 4, Issue 1
Call for Papers - IJORCS - Vol 4, Issue 1
Β 
Voice Recognition System using Template Matching
Voice Recognition System using Template MatchingVoice Recognition System using Template Matching
Voice Recognition System using Template Matching
Β 
Channel Aware Mac Protocol for Maximizing Throughput and Fairness
Channel Aware Mac Protocol for Maximizing Throughput and FairnessChannel Aware Mac Protocol for Maximizing Throughput and Fairness
Channel Aware Mac Protocol for Maximizing Throughput and Fairness
Β 
A Review and Analysis on Mobile Application Development Processes using Agile...
A Review and Analysis on Mobile Application Development Processes using Agile...A Review and Analysis on Mobile Application Development Processes using Agile...
A Review and Analysis on Mobile Application Development Processes using Agile...
Β 
Congestion Prediction and Adaptive Rate Adjustment Technique for Wireless Sen...
Congestion Prediction and Adaptive Rate Adjustment Technique for Wireless Sen...Congestion Prediction and Adaptive Rate Adjustment Technique for Wireless Sen...
Congestion Prediction and Adaptive Rate Adjustment Technique for Wireless Sen...
Β 
A Study of Routing Techniques in Intermittently Connected MANETs
A Study of Routing Techniques in Intermittently Connected MANETsA Study of Routing Techniques in Intermittently Connected MANETs
A Study of Routing Techniques in Intermittently Connected MANETs
Β 
Improving the Efficiency of Spectral Subtraction Method by Combining it with ...
Improving the Efficiency of Spectral Subtraction Method by Combining it with ...Improving the Efficiency of Spectral Subtraction Method by Combining it with ...
Improving the Efficiency of Spectral Subtraction Method by Combining it with ...
Β 
The Design of Cognitive Social Simulation Framework using Statistical Methodo...
The Design of Cognitive Social Simulation Framework using Statistical Methodo...The Design of Cognitive Social Simulation Framework using Statistical Methodo...
The Design of Cognitive Social Simulation Framework using Statistical Methodo...
Β 
A PSO-Based Subtractive Data Clustering Algorithm
A PSO-Based Subtractive Data Clustering AlgorithmA PSO-Based Subtractive Data Clustering Algorithm
A PSO-Based Subtractive Data Clustering Algorithm
Β 
Call for papers, IJORCS, Volume 3 - Issue 3
Call for papers, IJORCS, Volume 3 - Issue 3Call for papers, IJORCS, Volume 3 - Issue 3
Call for papers, IJORCS, Volume 3 - Issue 3
Β 
Dynamic Map and Diffserv Based AR Selection for Handoff in HMIPv6 Networks
Dynamic Map and Diffserv Based AR Selection for Handoff in HMIPv6 Networks Dynamic Map and Diffserv Based AR Selection for Handoff in HMIPv6 Networks
Dynamic Map and Diffserv Based AR Selection for Handoff in HMIPv6 Networks
Β 
From Physical to Virtual Wireless Sensor Networks using Cloud Computing
From Physical to Virtual Wireless Sensor Networks using Cloud Computing From Physical to Virtual Wireless Sensor Networks using Cloud Computing
From Physical to Virtual Wireless Sensor Networks using Cloud Computing
Β 
Prediction of Atmospheric Pressure at Ground Level using Artificial Neural Ne...
Prediction of Atmospheric Pressure at Ground Level using Artificial Neural Ne...Prediction of Atmospheric Pressure at Ground Level using Artificial Neural Ne...
Prediction of Atmospheric Pressure at Ground Level using Artificial Neural Ne...
Β 

KΓΌrzlich hochgeladen

4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptxmary850239
Β 
Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management SystemChristalin Nelson
Β 
Concurrency Control in Database Management system
Concurrency Control in Database Management systemConcurrency Control in Database Management system
Concurrency Control in Database Management systemChristalin Nelson
Β 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for BeginnersSabitha Banu
Β 
Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...SeΓ‘n Kennedy
Β 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxHumphrey A BeΓ±a
Β 
Music 9 - 4th quarter - Vocal Music of the Romantic Period.pptx
Music 9 - 4th quarter - Vocal Music of the Romantic Period.pptxMusic 9 - 4th quarter - Vocal Music of the Romantic Period.pptx
Music 9 - 4th quarter - Vocal Music of the Romantic Period.pptxleah joy valeriano
Β 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPCeline George
Β 
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdfVirtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdfErwinPantujan2
Β 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPCeline George
Β 
Active Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdfActive Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdfPatidar M
Β 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...JhezDiaz1
Β 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfJemuel Francisco
Β 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
Β 
4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptxmary850239
Β 
ICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfVanessa Camilleri
Β 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
Β 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parentsnavabharathschool99
Β 
Food processing presentation for bsc agriculture hons
Food processing presentation for bsc agriculture honsFood processing presentation for bsc agriculture hons
Food processing presentation for bsc agriculture honsManeerUddin
Β 

KΓΌrzlich hochgeladen (20)

4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx
Β 
Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management System
Β 
Concurrency Control in Database Management system
Concurrency Control in Database Management systemConcurrency Control in Database Management system
Concurrency Control in Database Management system
Β 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for Beginners
Β 
Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...
Β 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
Β 
Music 9 - 4th quarter - Vocal Music of the Romantic Period.pptx
Music 9 - 4th quarter - Vocal Music of the Romantic Period.pptxMusic 9 - 4th quarter - Vocal Music of the Romantic Period.pptx
Music 9 - 4th quarter - Vocal Music of the Romantic Period.pptx
Β 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERP
Β 
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdfVirtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Virtual-Orientation-on-the-Administration-of-NATG12-NATG6-and-ELLNA.pdf
Β 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERP
Β 
Active Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdfActive Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdf
Β 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
Β 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Β 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
Β 
4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx
Β 
ICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdf
Β 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
Β 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parents
Β 
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptxYOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
Β 
Food processing presentation for bsc agriculture hons
Food processing presentation for bsc agriculture honsFood processing presentation for bsc agriculture hons
Food processing presentation for bsc agriculture hons
Β 

Adaptive Load Balancing for Heterogeneous Distributed Systems

  • 1. International Journal of Research in Computer Science eISSN 2249-8265 Volume 3 Issue 3 (2013) pp. 9-15 www.ijorcs.org, A Unit of White Globe Publications doi: 10.7815/ijorcs. 33.2013.063 www.ijorcs.org AN ADAPTIVE LOAD SHARING ALGORITHM FOR HETEROGENEOUS DISTRIBUTED SYSTEM P. Neelakantan Department of CSE, SVUCE, Tirupati, A.P, INDIA E-mail: pneelakantan@rediffmail.com Abstract: Due to the restriction of designing faster and faster computers, one has to find the ways to maximize the performance of the available hardware. A distributed system consists of several autonomous nodes, where some nodes are busy with processing, while some nodes are idle without any processing. To make better utilization of the hardware, the tasks or load of the overloaded node will be sent to the under loaded node that has less processing weight to minimize the response time of the tasks. Load balancing is a tool used effectively for balancing the load among the systems. Dynamic load balancing takes into account of the current system state for migration of the tasks from heavily loaded nodes to the lightly loaded nodes. In this paper, we devised an adaptive load-sharing algorithm to balance the load by taking into consideration of connectivity among the nodes, processing capacity of each node and link capacity. Keywords: Load balancing, Distributed System, heterogeneous, response time. I. INTRODUCTION An important attribute in a dynamic load balancing policy is to initiate the load balancing activity. The balancing activity specifies which node is responsible for detecting imbalance of the load among the nodes[9]. A load-balancing algorithm is invoked when load imbalance among the nodes is detected. The initiation of load balancing activity will have a higher impact on complexity, overhead and scalability. The load balancing algorithm is designed in such a way to make the overloaded node to transfer its excess load to the underloaded node which is called sender – initiated and when underloaded node requests the load from the overloaded node then it is called receiver- initiated [6] [8]. Domain balancing is used to decentralize the balancing process by minimizing its scope and decrease the complexity of the load balancing algorithm. A domain is defined as subset of nodes in a system, such that a load balancing algorithm can be applied for this subset of nodes in a single step. Domain balancing is used in load balancing algorithms to decentralize the balancing. The balancing domains are further divided into two types: The first type is overlapped domains, which consists of node initiating the balancing activity and balances its load by migrating the tasks or load units with the set of surrounding nodes [3]. Global balancing is achieved by balancing every domain and by diffusing the excess load throughout the overlapped domains in a distributed system. Another important attribute in load balancing algorithm is the degree of information. The degree of information plays an important role in making the load balancing decisions. To achieve global load balancing in a few steps, the load balancing should get absolute information instead of getting the obsolete information from the nodes. In general, the collection of information by a node is restricted to the domain or nearest neighboring nodes (which are directly connected to a node) [4]. Although collecting information from all the nodes in a distributed system gives the exact knowledge of the system, it introduces large communication delay, so from this perspective, it will have a negative impact on the load balancing algorithm. In such cases, it has been observed, that the average response time is kept minimum without load balancing instead of doing the load balancing which induces overhead in migrating the load from one node to another node in the system [5]. In this section, an abstract view of the software details is presented for load balancing. The distributed system consists of several nodes and the same load balancing software is installed to run on all the nodes in the distributed system. By installing the same software in all the nodes, the load balancing decision is taken by a node locally (decentralized) by collecting the information from the neighboring nodes as opposed to the centralized load balancing policy[14]. The program must use a multi-threaded concept to implement load balancing in a distributed system. Two communication ports are available: TCP and UDP. UDP is preferable as it incurs less communication overhead. In general the architecture provides three
  • 2. 10 P. Neelakantan www.ijorcs.org layers: Communication layer, Load balancing process and application layer[14][10]. For storing information two data structures were used. The communication link is responsible for four phases: node status information phase, node status reception, tasks reception and task migration. The node status information is responsible for disseminating the load information to the node that has requested it. The exchange of the information has a profound effect on the load balancing decision; it has to be done according to the predefined intervals of time specified on each node [7] [14]. The status reception is responsible for receiving the status information from the other nodes and it will be updated in the local node list which is running the status reception phase. Here it is possible to distinguish the old information from the new information. The technique that is used to find is to associate the timestamp for the information that it has received from some node (say 𝑇𝑆𝑗 𝑖 (𝐼𝑛𝑓), the time stamp attached to the information received from 𝑗 to 𝑖). The local node say 𝑖 maintaining the status about the node 𝑗 is kept in the memory. If any estimate regarding node 𝑗 exists in the node 𝑖 memory, it will be compared to the received time stamp message and drops the old time stamp and the new timestamp message has been saved in the memory as the old time stamp has the obsolete information[11][1][2]. Once a node collects the above information, then it knows whether it is overloaded or underloaded. In case if it is overloaded node, then it transmits the excess tasks (loads) to the underloaded nodes in a β€œtasks transmission” phase. The next initiation of load balancing activity will be done only when the current migration of load units to the underloaded nodes is completed. The β€œtask reception” is responsible for listening to the requests and accepts the tasks sent from the other nodes. As we can observe from the above situations, the minimum time to initiate the new load balancing activity takes three time instants. One instant for receiving the status of all the nodes and second time instant for determining the underloaded nodes and computing the excess load and third time instant for transferring the excess load to the underloaded nodes which has been determined in the second time instant. So, the new load balancing activity takes place only at the fourth time instant [12] [14]. In a few papers [3] [9] [10], it is assumed that the nodes will not fail. The problem arises when the nodes fail which is common in the distributed systems. Sometimes a communication link will also fail, so the node will be unreachable. These two aspects i.e., failure of a node and the communication link will affect greatly the load balancing algorithms. Let us assume the following scenario. The overloaded node has collected the load information from the neighboring nodes and found some of the nodes are low loaded as discussed earlier. Now at the given time instant when the node tries to send its excess load to the overloaded node, it will not succeed because of the failure of the node. The node may fail after sending the status information. If this happens, an alternative must be chosen to avoid a failure of the load-balancing algorithm. II. NOTATIONS & ASSUMPTIONS N : Number of nodes V= {1, 2,…, N} a set of nodes in a system xi(t) : Expected waiting time experienced by a task inserted into the queue at the ith node in time t Ai(t) : rate of generation of waiting time on ith node caused by the addition of tasks in time t. Si(t) : rate of reduction in waiting time caused by the service of the tasks at the ith node in time t. ri(t) : rate of removal(transfer) of the tasks from node j to node i at time t by the load balancing algorithm at node j. tsi : Average completion time of the task at node i. bi : Average size of the task in bytes at node i when it is transferred dij : Transfer rate in bytes/sec between node i and node j π‘₯Μ… 𝑖(𝑑): Average size of the queue calculated by node i based on its domain information at time t. 𝐷𝑖: Neighboring nodes to i which is defined as 𝐷𝑖 = {𝑗|𝑗 ∈ 𝑉 π‘Žπ‘›π‘‘ (𝑖, 𝑗) ∈ 𝐸} where V= {1, 2…N} 𝐸𝑖(𝑑): Excess number of tasks at node i at time t. fij : Portion of the excess tasks of node i to be transferred to node j decided by the load balancing algorithm. The following assumptions were made in this paper: 1. It is assumed that a distributed system consists of N heterogeneous nodes interconnected by an underlying arbitrary communication network. Each node i in a system has a processing weight Pi >0 and processing capacity Si>0. The load is defined to be Li= Pi/Si. In homogenous case the value of Li=Pi. 2. It has been assumed that tasks arrive at node i according to Poisson process with rate πœ†π‘–(𝑑). A task arrived at node i may be processed locally or migrated through the network to another node j for remote processing. Once the task is migrated, it remains there until its completion.
  • 3. An Adaptive Load Sharing Algorithm for Heterogeneous Distributed System 11 www.ijorcs.org 3. It is assumed that there is a communication delay incurred when task is transferred from one node to another before the task can be processed in the system. The communication delays are different for each link. Each node contains an independent queue where arrived tasks are added to the queue, which results in accumulation of waiting time. Load balancing must be done repeatedly to maintain load balance in the system. The proposed algorithm is distributed in nature meaning that each node runs load-balancing algorithm autonomously. The second level of the system is a load-balancing layer, which consists of load balancing algorithms. The load balancing process is initiated by suing predefined time instants or randomly generating which is kept in a file. The algorithm determines the portion of the excess load to be sent to the underloaded node based on the current state of the node and availability of the nodes in the network. The load balancing algorithm must consider the communication delay while migrating the tasks to the other nodes. The algorithm selects the tasks to migrate to other nodes by setting their status as inactive to avoid execution of the tasks by current node application during the transition period. After completion of the task transmission activity, the status of the tasks is set to active when they are not transmitted to any node. when the tasks are transmitted to other nodes during the task transmission phase then those tasks are removed from the task queue of the current node. Application layer consists of two threads of control: Task input and task execution threads. The task input creates a number of tasks defined in the initialization file and inserts them in the task queue. This task input is also responsible for adding the new tasks to the task queue either from the current node or from other nodes in the system. The task execution thread is responsible for execution of the tasks and updating the QSize variable by removing the task from the task queue. The load balancing policy must take into account of processing capacity of the node while migrating the tasks to it. The selected node may become a candidate for one or more overloaded node in a given time instant because of the decentralized policy. Another issue to be considered is variable task completion times. Taking these issues in priori is not possible so a load balancing strategy must be adaptive to the dynamic state changes in the system and act accordingly to transfer the tasks. Even this can result in task shuttle between the nodes, so a migration limit for a task should be set to avoid task thrashing. Another issue to be considered while migrating the tasks from one node to another node in a system is communication overhead. Large communication delays will have a negative impact on the load balancing policy, so, the transfer delays must be taken into account while migrating the task. When the completion of the task time in current node is greater than the completion time on task in another node inclusive of communication overhead, then only a task is considered for migration. III. MATHEMATICAL MODEL The mathematical model for load balancing in a given node i is given by [1][2] 𝑑𝑀 𝑖(𝑑) 𝑑𝑑 =𝐴𝑖 βˆ’ 𝑆𝑖 + π‘Ÿπ‘–(𝑑) βˆ’ βˆ‘ 𝑓𝑖𝑗 𝑑𝑠𝑖 𝑑𝑠 𝑗 ≠𝑁 𝑖 𝑗=1 π‘Ÿπ‘—(𝑑 βˆ’ πœπ‘–π‘—) (1) 𝐸𝑖(𝑑)= π‘žπ‘–(𝑑)- π‘žοΏ½π‘–(𝑑) π‘Ÿπ‘–(𝑑) = 𝐺𝑖(𝐸𝑖(𝑑)) 𝑓𝑖𝑗 β‰₯ 0, 𝑓𝑖𝑖=0, βˆ‘ 𝑓𝑖𝑗 = 1 ≠𝑁𝑖 𝑗=1 𝐸𝑖(𝑑) = οΏ½ 𝐸 𝑖𝑓 𝑦 β‰₯ 0 0 𝑖𝑓 𝑦 < 0 When a task is inserted into the task queue of node i, then it experiences the expected waiting time which is denoted by wi(t). Let the number of tasks in ith node is denoted by π‘žπ‘–(t). Let the average time needed to service the task at node i 𝑑𝑠𝑖 . The expected (average) waiting time is given by at node i is given by 𝑀𝑖(𝑑) = π‘žπ‘–(𝑑)𝑑𝑠𝑖. Note that 𝑀𝑖(𝑑)/𝑑𝑠𝑖 = π‘žπ‘– is the number of tasks in the node i queue. Similarly 𝑀 π‘˜(𝑑)/𝑑𝑠 π‘˜ = π‘ž π‘˜ is the queue length of some node k. If tasks on node i were transferred to some node k, then the waiting time transferred is π‘žπ‘– 𝑑𝑠 π‘˜= 𝑀 𝑖(𝑑)𝑑𝑠 π‘˜ 𝑑𝑠𝑖 , so that the fraction 𝑑𝑠 π‘˜/𝑑𝑠𝑖 converts waiting time on node i to waiting time on node k. 𝐴𝑖 ∢ Waiting time generated by adding the task in the ith node. 𝑆𝑖 : Rate of reduction in waiting time caused by the service of tasks at the ith node is given by 𝑆𝑖 = (1 βˆ— 𝑑𝑝𝑖)/𝑑𝑝𝑖=1 for all 𝑀𝑖(𝑑) > 0. π‘Ÿπ‘–(𝑑) ∢ The rate of removal (transfer) of the tasks from node i at time t by the load balancing algorithm at node i. 𝑓𝑖𝑗 is the fraction of ith node tasks to be sent out to the jth node. In more detail fijri(t) is the rate at which node i sends waiting time (tasks) to node i at time t where fii>=0 and 𝑓𝑖𝑖=0.That is, the transfer from node i of expected waiting time (tasks) ∫ 𝐸𝑖(𝑑)𝑑𝑑 𝑑2 𝑑1 in the interval of time [𝑑1, 𝑑2] to the other nodes is carried out with the 𝑗 π‘‘β„Ž node receiving the fraction 𝑝𝑖𝑗(𝑑 𝑝 𝑗 / 𝑑 𝑝𝑖 ) ∫ 𝑒𝑖(𝑑)𝑑𝑑 𝑑2 𝑑1 where the ratio 𝑑 𝑝 𝑗 /𝑑 𝑝𝑖 converts the task from waiting time on node i to waiting time on
  • 4. 12 P. Neelakantan www.ijorcs.org node j. As βˆ‘ (𝑛 𝑖=1 𝑓𝑖𝑗 ∫ 𝐸𝑖(𝑑)𝑑𝑑 𝑑2 𝑑1 ) = ∫ 𝐸𝑖(𝑑)𝑑𝑑 𝑑2 𝑑1 , this results in removing all of the waiting time ∫ 𝐸𝑖(𝑑)𝑑𝑑 𝑑2 𝑑1 from node i.The quantity 𝑓𝑖𝑗 𝐸𝑖(𝑑 βˆ’ πœπ‘–π‘—) is the rate of increase (rate of transfer) of the expected waiting time (tasks) at time t from node i by (to) node j where πœπ‘–π‘—(πœπ‘–π‘– = 0) is the time delay for the task transfer from node i to node j. In this model, all rates are in units of the rate of change of expected waiting time, or time/time which is dimensionless. As 𝐸𝑖(𝑑) β‰₯ 0, node i can only send tasks to other nodes and cannot initiate transfers from another node to itself. A delay is experienced by transmitted tasks before they are received at the other node. The control law 𝐸𝑖(𝑑) = 𝐺𝑖 βˆ— 𝐸𝑖(𝑑) states that if the 𝑖 π‘‘β„Ž node output 𝑀𝑖(𝑑) is above the domain average (βˆ‘ π‘ž 𝑗(𝑑 βˆ’ πœπ‘–π‘—))𝑛 𝑗=1 /n, then it sends data to the other nodes, while if it is less than the domain average nothing is sent. The 𝑗 π‘‘β„Ž node receives the fraction ∫ 𝐹𝑖𝑗 𝑑2 𝑑1 (𝑑 𝑝𝑖 /𝑑 𝑝 𝑗 ) 𝑒𝑖(𝑑)𝑑𝑑 of transferred waiting time ∫ 𝐸𝑖(𝑑)𝑑𝑑 𝑑2 𝑑1 delayed by the time πœπ‘–π‘—.The model described in (1) is the basic model for load balancing, but an important feature is to determine fij for each underloaded node j. One approach is to distribute the excess load equally to all the underloaded neighbors. 𝑓𝑖𝑗 = 1 π‘›βˆ’1 for iβ‰ j. Another approach is to use the load information collected from the neighbors to determine the deficit load of the neighbors. The deficit load of the neighbors shall be determined by node i by using the formula (2) π‘ž 𝑗(𝑑-πœπ‘–π‘—) βˆ’ π‘žοΏ½π‘– (2) The above formula is used by node i to compute the deficiency waiting times in the queue of node j with respect to the domain load average of node i. If node j queue is above the domain average waiting time, then node i do not send tasks to it. Therefore (π‘žοΏ½π‘– βˆ’ π‘ž 𝑗(𝑑-πœπ‘–π‘—)) is a measure by node i as how much node j is behind the domain average waiting time. Node i performs this computation for all the other nodes which are directly connected to it and then portions out its tasks among the other nodes that fall below the domain queue average of node i. 𝑓𝑖𝑗 = (π‘žοΏ½ π‘–βˆ’π‘ž 𝑗(π‘‘βˆ’πœ 𝑖𝑗)) βˆ‘ (π‘žοΏ½ π‘–βˆ’π‘ž 𝑗(π‘‘βˆ’πœ 𝑖𝑗) 𝑁 𝑖 𝑗=1 (3) If the denominator βˆ‘ (π‘žοΏ½π‘– βˆ’ π‘ž 𝑗(𝑑 βˆ’ πœπ‘–π‘—) 𝑁 𝑖 𝑗=1 =0 then fij are defined to be zero then no waiting times are transferred. If the denominator βˆ‘ (π‘žοΏ½π‘– βˆ’ π‘ž 𝑗(𝑑 βˆ’ 𝑁 𝑖 𝑗=1 πœπ‘–π‘—)=0, then(π‘žοΏ½π‘– βˆ’ π‘ž 𝑗(𝑑 βˆ’ πœπ‘–π‘—) ≀ 0βˆ€π‘— ∈ 𝑁𝑖. However by definition of the average βˆ‘ (π‘žοΏ½π‘– βˆ’ 𝑁 𝑖 𝑗=1 π‘ž 𝑗(𝑑 βˆ’ πœπ‘–π‘—)+π‘žοΏ½π‘– βˆ’ π‘žπ‘–(𝑑) =βˆ‘ (π‘žοΏ½π‘– βˆ’ π‘ž 𝑗(𝑑 βˆ’ πœπ‘–π‘—) 𝑁 𝑖 𝑗=1 )=0 which implies π‘žοΏ½π‘– βˆ’ π‘ž 𝑗(𝑑)=βˆ‘ (π‘žοΏ½π‘– βˆ’ π‘ž 𝑗(𝑑 βˆ’ πœπ‘–π‘—) 𝑁 𝑖 𝑗=1 ) > 0 That is, if the denominator is zero, the node j is not greater than its domain queue average, so Ei(t)= Gi .Ei(t))=0, where G is Gain Factor.fij : Portion of the excess tasks of node i to be transferred to node j decided by the load balancing algorithm. Except the last three parameters remaining information is known at the time of load balancing process. Before the instance of load balancing activity, every variable is updated. IV. ALGORITHM A. Algorithm ALS The current node i, performs the followings: a. Calculate the average queue size ( π‘žοΏ½π‘–)based on the information received from the neighbouring nodes. π‘žοΏ½π‘–= 1 ≠𝑁𝑖+1 βˆ‘ (π‘žπ‘– + π‘ž 𝑗 𝑑𝑠 𝑗 𝑑𝑠𝑖 ≠𝑁𝑖 𝑗=1 ) if (π‘žπ‘– > π‘žοΏ½π‘–)then Ei =(π‘žπ‘–-π‘žοΏ½π‘–) * G else Exit. b. Determine the participant nodes in load sharing process. Participants= {j| π‘ž 𝑗<π‘žοΏ½π‘–, βˆ€j∈Ni} c. Calculate the fraction of the load ( 𝑓𝑖𝑗 β€² ) to be sent to the participants 𝑓𝑖𝑗 β€² = π‘žοΏ½π‘–βˆ’( 𝑑𝑠 𝑗 𝑑𝑠 𝑖 )π‘ž 𝑗 βˆ‘ ( π‘žοΏ½π‘–βˆ’( 𝑐 𝑗 𝑐 𝑖 )π‘ž 𝑗 𝑁 𝑖 𝑗=1 d. Calculate maximum portion of the excess load (𝑓𝑖𝑗 β€²β€² ) 𝑓𝑖𝑗 β€²β€² = (π‘žπ‘–βˆ’Ei) 𝑑𝑠𝑖 dij Eibi e. 𝑓𝑖𝑗 = Min (𝑓𝑖𝑗 β€² , 𝑓𝑖𝑗 β€²β€² ) f. For j∈ Participants i. Announce to node j about its willingness to send Tij= 𝑓𝑖𝑗 *Ei tasks; ii. nowReceived = call procedure acceptanceFrom Nodej() iii. if(nowReceived >0) 1. Transfer NowReceived to j 2. Tij=Tij- NowReceived End if g. Repeat steps from (a) to (f). Procedure acceptanceFromNodej() if ((π‘ž 𝑗+ Tij)< π‘žοΏ½ 𝑗nowSend=π‘žοΏ½ 𝑗 βˆ’ π‘ž 𝑗; else nowSend=-1;
  • 5. An Adaptive Load Sharing Algorithm for Heterogeneous Distributed System 13 www.ijorcs.org return now Send; end acceptanceFromNodej In general it is assumed that keeping the Gain factor G=1 will give the good performance. But in a distributed system with largest delays and the nodes that have domain queue average outdated gives poor result. This phenomenon was first observed by the load balancing group at the University of New Mexico [7]. So the G values are set in the way that yields an optimal result. Another step that is added in the above algorithm is to test the node availability. It checks both node availability as well as the amount of waiting times it can receive. The node executing the ALS is permitted to send the tasks to the neighbors after receiving the acknowledgement specifying the amount of the load they can be able to process.. The time complexity of the proposed algorithm is O(d) shown in the table 1. Table 1: ALS Operations Sno Actions Operation Quantity, (d is the number of neighbors) 1 Compute average queue size Addition Division Multiplication d+1 d d 2 Compute Ei Subtraction Multiplication 1 1 3 Determine the participant nodes Comparison d 4 Compute 𝑓𝑖𝑗 β€² Subtraction Division Multiplication d+1 d+1 d+1 5 Compute 𝑓𝑖𝑗 β€²β€² Subtraction Division Multiplication 1 1 3 6 Compute Tij Multiplication d 7 Message to node Transfer d 8 Compute nowReceived Addition Comparison Message Transfer d d d V. SIMULATION To test the performance of the newly proposed load-balancing policy, a Java program is developed to test the performance of the existing and proposed algorithms. The existing algorithms, ELISA and DOLB are used to compare with the proposed algorithm ALS. The DOLB is very much related to the above problem. The initial settings and parameters are shown in Table 2. The average network transfer rates between each node are represented by the cost adjacency matrix. The proposed algorithm ALS is tested with DOLB & ELISA for the gain values G between 0.3 and 1 with 0.1 incremental steps. The 𝛼 parameter introduced in the previous section was set to 0.05 by running several experiments and observing the behavior of the tsi parameter. Note that, the first time the load-balancing process was triggered was after 40s from the start of the system and then the strategy was executed regularly at 20s interval. Table 2: Simulation Parameters Number of nodes 16,32,64 Initial task distribution [100..1000] tasks distributed randomly at each node Average task processing time(𝑑𝑠 in ms) Processing time is randomly distributed in a range[300…800] Size of task( in Mb) 1 Load balancing instance First time the load balancing was triggered at 5s then for every 10s the load balancing is initiated Bandwidth distribution (𝑑𝑖𝑗) A cost adjacency matrix denotes the transfer rate between the nodes. Number of nodes 16,32,64 Initial task distribution [100..1000] tasks distributed randomly at each node Average task processing time(𝑑𝑠 in ms) Processing time is randomly distributed in a range[300…800] This was done to ensure that the ts parameter had enough time to adapt and reflect the current computational power of each node before the occurrence of any tasks migration between the nodes. Note that the ratio 𝑑𝑠𝑖 𝑑𝑠 𝑗 are fixed over time. The proposed and rival methods were evaluated by conducting 10 runs for each value of G between 0.3 and 1 with 0.1 incremental step.
  • 6. 14 P. Neelakantan www.ijorcs.org Figure 1: Completion time averaged over 5 runs vs different gain values K. The graphs shows the results of three policies for system size=64. Figure 2: Completion time averaged over 5 runs vs. different gain values K. The graphs shows the results of three policies for system size=32. Figure 3: Total number of tasks exchanged averaged over 5 runs Vs different Gain values K. The graphs shows the performance of the three policies for system size=16. VI. CONCLUSION The proposed algorithm is better when compared to the existing algorithms in the literature. In simulation, we assumed the tasks with no precedence and with no deadlines. However, as a future work, the algorithm must focus on considering the tasks with dead line and tasks with precedence relations. VII. REFERENCES [1] M. M. Hayat, S . Dhakal, C. T. Abdallah I β€˜Dynamic time delay models for load balancing. Part II: Stochastic analysis of the effect of delay uncertainty, CNRS-NSF Workshop: Advances in Control of tirne-delay Systems, Paris France, January 2003. [2] J. Ghanem, C. T. Abdallah, M. M. Hayat, S. Dhakal, J.D Birdwell, J. Chiasson, and Z. Tang. Implementation of load balancing algorithms over a local area network and the internet. 43rd IEEE Conference on Decision and Control, Submitted, Bahamas, 2004. doi: 10.1109/CDC.2004.1429411 [3] L. Anand, D. Ghose, and V. Mani, β€œELISA: An Estimated Load Information Scheduling Algorithm for Distributed Computing Systems,” Int’l J. Computers and Math With Applications, vol. 37, no. 8, pp. 57-85, Apr. 1999. doi: 10.1016/S0898-1221(99)00101-7 [4] WEI Wen-hong, XIANG Fei, WANG Wen-feng, et al. Load Balancing Algorithm in Structure P2P Systems[J],Computer Science, 2010, 37(4):82-85. [5] Khalifa, A.S.; Fergany, T.A.; Ammar, R.A.; Tolba, M.F,” Dynamic online Allocation of Independent tasks onto heterogeneous computing systems to maximize load balancing,” IEEE International Symposium on Signal Processing and Information Technology, ISSPIT 2008,Page(s): 418 – 425. doi: 10.1109/ISSPIT. 2008.4775659 [6] Andras Veres and Miklos Boda. The chaotic nature of TCP congestion control. In Proceedings of the IEEE Infocom, pages 1715-1723, 2000. doi: 10.1109/INFCOM.2000.832571 [7] J. Chiasson, J. D. Birdwell, Z. Tang, and C.T. Abdallah. The effect of time delays in the stability of load balancing algorithms for parallel computations. IEEE Conference on Decision and Control, Maui, Hawaii, 2003. doi: 10.1109/CDC.2003.1272626 [8] Ming wu and Xian-He sun, A General Self Adaptive Task Scheduling System for Non Dedicated Heterogeneous Computing, In Proceedings of IEEE International Conference on Cluster Computing, PP 354-361, Dec 2003. doi: 10.1109/CLUSTR. 2003.1253334 [9] Z. Zeng and B. Veeravalli, "Design and Performance Evaluation of Queue-and-Rate-Adjustment Dynamic Load Balancing Policies for Distributed Networks", presented at IEEE Trans. Computers, 2006, pp.1410- 1422. doi: 10.1109/TC.2006.180 [10] K. Lu, R. Subrata, and A. Y. Zomaya, Towards decentralized load balancing in a computational grid environment, in: Proceedings of the first International Conference on Grid and Pervasive Computing, 2006, Vol. 3947, pp. 466-477, Springer-Verlag Press. doi: 10.1007/11745693_46 [11] Acker, D., Kulkarni, S. 2007. A Dynamic Load Dispersion Algorithm for Load Balancing in a Heterogeneous Grid System. IEEE Sarnoff 0 20 40 60 80 100 120 140 160 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 ALS DOLB ELISA 0 20 40 60 80 100 120 140 160 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 AverageTaskCompletiontime Gain ALS DOLB ELISA 0 50 100 150 200 250 300 350 400 450 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 NUmberofTasksexchanged ALS DOLB ELISA
  • 7. An Adaptive Load Sharing Algorithm for Heterogeneous Distributed System 15 www.ijorcs.org Symposium, 1- 5, 2007. 10.1109/SARNOF.2007. 4567375 [12] M. Luczak and C. McDiarmid. On the maximum queue length in the supermarket model. The Annals of Probability, 34(2):493–527, 2006. doi: 10.1214/ 00911790500000710 [13] Zhou, S. (1987). An Experimental Assessment of Resource Queue Lengths as Load Indices. Proc. Winter USENIX Conf., p.73-82. [14] J. Ghanem, C. T. Abdallah, M. M. Hayat, S. Dhakal, J.D Birdwell, J. Chiasson, and Z. Tang. Implementation of load balancing algorithms over a local area network and the internet. 43rd IEEE Conference on Decision and Control, Submitted, Bahamas, pp 4199-4204, 2004. How to cite P. Neelakantan, " An Adaptive Load Sharing Algorithm for Heterogeneous Distributed System ". International Journal of Research in Computer Science, 3 (3): pp. 9-15, May 2013. doi: 10.7815/ijorcs. 33.2013.063