[IEEE 2009 IEEE International Advance Computing Conference (IACC 2009) - Patiala, India...

6
2009 IEEE International Advance Computing Conference (IACC 2009) Patiala, India, 6-7 March 2009 An Evolutionary Approach for Scalable Load Balancing in Cluster Computing Naveen Kumar Gondhi, Dr. Durgesh Pant School of Computer Science and Engineering, Department of Computer Science, Shri Mata Vaishno Devi University, Kumaon University, Katra (J&K), India. Almorha, Uttrakhand (India) naveenkumargondhigrediffmail.com, durgesh_pant(yahoo.com Abstract The proliferation of the World Wide Web and the point in time, transfer itself to another host and resume pervasiveness of the related technologies have increased the execution on the new host from the point of suspension. This demand of high performance clusters and distributed resources. approach is gaining momentum in the field of distributed Load balancing of the systems in which heterogeneous servers computing as the use of mobile agents can bring some and resources are distributed becomes a key factor in achieving a interesting advantages when compared to the traditional client rapid response time, efficient resource utilization and server solutions. It can reduce traffic in the network, can consequently higher throughput. In a large scale distributed provide more scalability, allows the use of disconnected environment, Load balancing using mobile agents holds appeal in . ' . . . comparison with pure message passing protocol scheme. In this cmping and povides feiityithe dep-2nad paper, the integration of a Genetic Algorithm with the Sender maintenance of distributed architecture [24-27]. Initiated Approach for server selection serves as a promising Load balancing using mobile agents holds appeal because possibility for efficient load balancing and effective resource in message passing based approaches the nodes have to utilization in distributed systems. exchange messages of server loads periodically to be able to Keywords-Mobile Agent, Load Balancing, Genetic Algorithm, make decisions on load balancing for eg. mod_backhand for Cluster Computing apache web server. The frequent message exchanges result in high communication latency and hence deteriorate the I. INTRODUCTION performance of the system. As opposed to this, a mobile agent The ubiquitand explosive. growth of theWorldWideWeb migrates to the remote site and interacts locally with the Therubuty andelosive growt eo temWrd WideiWeb destination host thereby significantly reducing remote cefontrited immstense tod disthe rinc ed demandceof hig- message exchanges. Also such agents execute asynchronously perfomanc cluters nd dstriuted esouces.Such and autonomously therefore the agent's creator iS free after distributed systems are expected to cater to an ever increasing . . demand of rapid response time and high throughput for the agent's creation and dispatching. Even if the original host is client requests occurring at any time. As information and its disconnected from the network for some time the agent can execute the task given by the original host on some remote location increaslngly determine the performance perceived by destination. Thus this technology also supports disconnected each individual user, therefore the performance evaluation and cmuig oieaet hrfr eoetems fetv quality of services of such systems have been the major focus altrntive for mosto thenetork servie baed applctios of research now days. The incoming request can be distributed oalternatve for most of the network servce based applicate ons to the servers according to the specific load distribution bandwidthrofsclustercpplicationsoanderedu ing vlnaby tod strategies so that the request can be processed quickly and network onnc tion. efficiently. Load balancing of the systems in which heterogeneous servers and resources are distributed in a The rest of the paper is organized as follows. In the cluster can become a key factor in achieving a rapid response section that follows, a brief review of the research work going time, efficient resource utilization and consequently higher on in the field of mobile agent based load balancing is throughput. mentioned. In Section 3, the proposed load balancing architecture for Server Cluster environment is presented along Traditional load balancing approaches on distributed with the various implemented policies including the servers are implemented based on message passing paradigm. Evolutionary Sender Initiated Policy for Server Selection with In a large scale distributed environment such as internet a pure brief example. The Section 4 outlines the various agents in the message passing protocol scheme may not perform well, due framework. The implementation details along with to a larger delay incurred in message passing in such systems. comparison of various strategies employed for load balancing A solution technology to this limitation can be the mobile .................. including the proposed algorithm are briefed in the Section 5. agent technology. In this approach, an autonomous software .................. Finally, Section 6 describes main contributions of the paper components running at a host can suspend its execution at any .................. and comments on the future directions for in this work. 978-1-4244-2928-8/09/$25.OO ( 2009 IEEE . ................. 1 259

Transcript of [IEEE 2009 IEEE International Advance Computing Conference (IACC 2009) - Patiala, India...

Page 1: [IEEE 2009 IEEE International Advance Computing Conference (IACC 2009) - Patiala, India (2009.03.6-2009.03.7)] 2009 IEEE International Advance Computing Conference - An Evolutionary

2009 IEEE International Advance Computing Conference (IACC 2009)Patiala, India, 6-7 March 2009

An Evolutionary Approach for Scalable LoadBalancing in Cluster Computing

Naveen Kumar Gondhi, Dr. Durgesh PantSchool of Computer Science and Engineering, Department of Computer Science,

Shri Mata Vaishno Devi University, Kumaon University,Katra (J&K), India. Almorha, Uttrakhand (India)

naveenkumargondhigrediffmail.com, durgesh_pant(yahoo.com

Abstract The proliferation of the World Wide Web and the point in time, transfer itself to another host and resumepervasiveness of the related technologies have increased the execution on the new host from the point of suspension. Thisdemand of high performance clusters and distributed resources. approach is gaining momentum in the field of distributedLoad balancing of the systems in which heterogeneous servers computing as the use of mobile agents can bring someand resources are distributed becomes a key factor in achieving a interesting advantages when compared to the traditional clientrapid response time, efficient resource utilization and server solutions. It can reduce traffic in the network, canconsequently higher throughput. In a large scale distributed provide more scalability, allows the use of disconnectedenvironment, Load balancing using mobile agents holds appeal in . ' . . .comparison with pure message passing protocol scheme. In this cmpingand povides feiityithedep-2nadpaper, the integration of a Genetic Algorithm with the Sender maintenance of distributed architecture [24-27].Initiated Approach for server selection serves as a promising Load balancing using mobile agents holds appeal becausepossibility for efficient load balancing and effective resource in message passing based approaches the nodes have toutilization in distributed systems.

exchange messages of server loads periodically to be able to

Keywords-Mobile Agent, Load Balancing, Genetic Algorithm, make decisions on load balancing for eg. mod_backhand forCluster Computing apache web server. The frequent message exchanges result in

high communication latency and hence deteriorate theI. INTRODUCTION performance of the system. As opposed to this, a mobile agent

Theubiquitand explosive.growth of theWorldWideWeb migrates to the remote site and interacts locally with theTherubuty andelosive growt eotemWrdWideiWeb destination host thereby significantly reducing remote

cefontrited immstense tod distherinc ed demandceof hig- message exchanges. Also such agents execute asynchronouslyperfomanccluters nd dstriuted esouces.Such and autonomously therefore the agent's creator iS free afterdistributed systems are expected to cater to an ever increasing . .demand of rapid response time and high throughput for the agent's creation and dispatching. Even if the original host isclient requests occurring at any time. As information and its disconnected from the network for some time the agent can

execute the task given by the original host on some remotelocationincreaslngly determine the performance perceived by destination. Thus this technology also supports disconnectedeach individual user, therefore the performance evaluation and cmuig oieaet hrfr eoetems fetvquality of services of such systems have been the major focus altrntive for mosto thenetork serviebaed applctiosof research now days. The incoming request can be distributed oalternatve for most of the network servce based applicate ons

to the servers according to the specific load distribution bandwidthrofsclustercpplicationsoanderedu ingvlnaby todstrategies so that the request can be processed quickly and network onnc tion.efficiently. Load balancing of the systems in whichheterogeneous servers and resources are distributed in a The rest of the paper is organized as follows. In thecluster can become a key factor in achieving a rapid response section that follows, a brief review of the research work goingtime, efficient resource utilization and consequently higher on in the field of mobile agent based load balancing isthroughput. mentioned. In Section 3, the proposed load balancing

architecture for Server Cluster environment is presented alongTraditional load balancing approaches on distributed with the various implemented policies including the

servers are implemented based on message passing paradigm. Evolutionary Sender Initiated Policy for Server Selection withIn a large scale distributed environment such as internet a pure brief example. The Section 4 outlines the various agents in themessage passing protocol scheme may not perform well, due framework. The implementation details along withto a larger delay incurred in message passing in such systems. comparison of various strategies employed for load balancingA solution technology to this limitation can be the mobile ..................including the proposed algorithm are briefed in the Section 5.agent technology. In this approach, an autonomous software ..................Finally, Section 6 describes main contributions of the papercomponents running at a host can suspend its execution at any ..................andcomments on the future directions for in this work.

978-1-4244-2928-8/09/$25.OO ( 2009 IEEE . ................. 1 259

Page 2: [IEEE 2009 IEEE International Advance Computing Conference (IACC 2009) - Patiala, India (2009.03.6-2009.03.7)] 2009 IEEE International Advance Computing Conference - An Evolutionary

II. RELATED WORK users to dispatch jobs as mobile agents via a resourceThe most difficult issue in a distributed environment is the broker.

performance degradation caused by a high load imbalance and MESSENGERS [22] is a system for general-purposeachieving minimum response time for the client requests. distributed computing based on mobile agents. It supportsLoad balancing is therefore indispensable for a heterogeneous load balancing and dynamic resource utilization. So farcluster, to assure a fair distribution of workload on each server not much work has been done in the direction of integratingin the cluster [1]. There are various approaches for the mobile agent technology with Al techniques. This paperimplementing load balancing in a distributed heterogeneous describes EMAS (Evolutionary Mobile Agent System) - aserver environment. The taxonomy in [2] classifies the load- framework for achieving dynamic load sharing of networkbalancing approaches into four categories: client-based, DNS- services using Genetic Algorithm in cluster using mobilebased, dispatcher-based, and server-based approaches. All agents implemented with IBM Aglets [23]these approaches broadly implement load sharing algorithmswhich can be static or dynamic and can use either centralized III. EMAS ARCHITECTUREor distributed control [3,4,5]. The Reference [6] shows that ahybrid of static and dynamic strategy for server selectionprovides a good performance. A client-based approachimplements the server selection on the client side [7]. Theclients can select one of the servers (the strategy is also known $a"rL sirwr &rI

as source initiated) in random but this random selectionapproach cannot guarantee load balancing and serveravailability. On the other hand the destination initiated S-i'oe OM(istrategy requires a server to look for client requests [8] (from _____the overloaded servers). In a DNS based approach, DNSserver becomes a bottleneck and limits throughput restrictingperformance [9]. A dispatcher based approach performsaddress mapping at address level. A dispatcher basedapproach may implement either packet rewriting [10] in whichcase the overhead of address rewriting is incurred [11] or theHTTP redirection which introduces higher overhead thannetwork load balancing, leading to deterioration inperformance. SUNSCALAR [12] provides load balancingusing dispatcher. The server-based approach usesdecentralized load reallocation strategy where all servers areallowed to participate in the process of load balancing. The...............................mod backhand [13, 14] module provides a server-based

M A"ntRa&...BMAGLE..)solution for the Apache web server that allows for seamlessreallocation of HTTP requests from heavy-loaded servers tounder-utilized servers on a per-request basis.

Figure 1: System architecture ofEMAS for implementing load balancing inThe load balancing approaches for distributed servers Cluster Computing

mentioned thus far involve frequent message exchanges The proposed framework for achieving dynamic loadbetween the server and the client to exchange load

infomaton. obie agntsenabed oad alacingcan sharing EMAS in cluster using mobile agents is shown ininformation. obile agentsenabled loadbalancing cafig l. This framework iS implemented on a pool of Servershowever overcome these problems [15] to a large extent by implementing EMAS and combining to form "Server Cluster".incorporating various optimized migration strategies [16] anda mlmnigEA n obnn ofr Sre lse"ncorporation maniosm amongs agentr *in rm *an The System architecture includes a set of intelligent agents

exchanget[17].eTheyiact asooordinators onrbehalfmofith along with associated policies, which coordinate with eachexchange [17]. They act as coordinators on behalf of the ote'ocet outadrlal rmwr o hother to create a robust and reliable framework for theservers and present themselves at remote sites to coordinate and execution of intelligent mobile agents forthe information synchronization [18]. Obeloer presented opment

FLS Flxbe gn Sse frHteoeeosCuse) optimal load balancing. Each agent executes a predefinedFLASH (Flexsble Agent System for load blancing policy and cooperates with each other for valuable informationwh[ch uses ag e the apability toatralathro g sharing and updating server load information on each visited[19]. Mobile agents have the capability to travel through a

nd.A evltinr loa baacn oiyhsbeheterogeneous cluster and to execute jobs on the visited node.ran eolutiona load balancing policy has been. Mv bn u t s lo ncorporated for efficent load distributon and effective

baacn in paale an ditiue [20 e.g.,or resource utilization. The detailed functionality of the policies* * * 1 1-1 *coputin executed by various agents in the algorithmic form, are

TRAVELER iS a Java-based mobile agent infrastructure dsrbda ne:to support widle area parallel computing [21]. It allows

11260 2009 IEEE Internactionalz Advance Computing Conference (IACC 2009)

Page 3: [IEEE 2009 IEEE International Advance Computing Conference (IACC 2009) - Patiala, India (2009.03.6-2009.03.7)] 2009 IEEE International Advance Computing Conference - An Evolutionary

A Information Collection Policy optimal utilization of cluster resources, enforcing equitableload distribution at all times.

This policy periodically evaluates the workload on each ofthe servers and disseminates this information.. The algorithm GA_LOAD_BALimplementing this policy is shown in fig 2 as under: - 1. Set t: =0

2. Initialize P(t) = { SI .......... }SM, such that Si = {Jk where 1<k < nj Jk =1: Set t: 0; {O,I }I} / n is the number of unique jobs *12: At t: =t + C, Update WS (t), where WS (t) = tWSl, WS2.........WSMAX} 3. Evaluate P(t) f{J(S1).... J(SM) }; f(Si) = Yfitness Ji where 1 < i <and WSi represents the ith Work Station n only if Ji = 1};3: Initialize i <- 1 4. Find S* C P(t) such thatj(S*) </(S), for all S C P(t)4. While i # max do /* S* stores the most fit chromosome */5. Evaluate WSi_SUS:= wl cpu_load + w2 no_connect / 5. while t < tmax do

MAXCON + w3 free_mem 6. select Si, Sj}: =4D(P(t)); /4D =binary tournament operator *//*SUS: = Server_utilization_statuscpu_load = Length ofjob queue on server 7. crossover C := 'Qc (Si , Sj );/* 'Qc = uniform crossover operator t/no_connect = number of active connections on sererMAXCON = maximum number of connections allowed to a server 8. mutate C -'Qm(C); / Qm = mutation operator t/Free_mem = percentage of free memory spaceWI, w2, w3 = weights of parameters such that wI + w2 + w3 =1 / 9. if C any S C P(t) then discard C and go to step 6;

/* C is a duplicate of a member of the population*/6. Evaluate WSi_RT: = RM + JC +Interoperability + SA + JE 10. end if

/* RT: = Response Time i.e. Time taken from service request to 11. evaluatej(C);service provision 12. find S' C P(t) such that f(S') > f(S), for all SC P(t) and replace S' <-C;

RM: = Time to receive message /* Steady state replacement */JC: Time for job classification 13. ifj(C) <J(S*) thenSA: Time for selecting the agent 14. S* < C;JE: Time for job execution */ 15. end if /* update best fit chromosome found */

7. Evaluate Turn around Cost TC = WSi_SUS + WSi_RT + Average Waiting 16. t <-t + 1;Time of the job 17. end while

8. Threshold_Agent (load_information) <-Provide (WSi_TC) 18. return S*,J(S*)9. Message_Agent <- Threshold-Agent (load-information)10.i+<-i 11 1. End while Figure 3: Genetic algorithm for server selection12 Message agent propagates this information among the servers.

Here P represents the population { Po, P1, P2.Ptmax}where each population comprises of m entries {S1, S2,.54...... Sm}

Figure 2: Information collection policy and each entry S= {Jk such that 1 < k < n and Jk= {O ,1}}.B Server Selection Policy Let J = {J1, J2, J3. Jn} represents the set of unique services

that are available across the network. For implementing GAIt is a two phase policy. The first phase incorporates the for load balancing we define an array of structure res-job-log

initiation process while the second phase incorporates the as followsselection process. The initiation process determines whoinitiates the load balancing process. Most of the initiation res-job-logprocesses as per the literature reviewed implements one of the i[jo to be processed]three approaches, sender-initiated approach where the process resource_id [id of the service provider]is initiated by an overloaded server; receiver initiated system_id [id of the server requiring service]approach where the process is initiated by an under loaded AWT [Average Waiting Time]server; Symmetric Initiated where a switch over to SI or RI ERT [Expected Response Time]approach will be done depending upon thenetwork SUS [Server Utilization Status]approach will be done depending upon the network TC [Turn Around Cost]

conditions. Once the process is initiated, the appropriate } jo[n]servers are selected for load reallocation using find-beststrategy selecting the least loaded server among all the servers For generating chromosomes in the initial population weor find-first strategy selecting the first server whose load is select the jobs from the pool of jobs J = {J1, J2, J3. Jn}.below threshold. We propose a new strategy integrating the The selected jobs are represented by value 1 and thesender initiated server selection policy with the evolutionary deselected ones are represented by value 0. For each jobapproach named as the Evolutionary Sender Initiated selected we store the system_id to keep track of the localApproach (ESI). In this approach, threshold agent-triggered dispatcher requiring service, resource_id for recording the idoverloaded servers register themselves with the server log of service provider, AWT, ERT and SUS for calculatingusing Message Agent. The Cluster head deploys Average Waiting Time, Expected Response Time and ServerGA_LOAD_BAL as a server selection policy and periodically Utilization Status for the selected resource. These threeexecutes it. GA_LOAD_BAL as shown in fig 3 selects a set parameters help in evaluating the turnaround cost for the job ijof unique jobs to be processed on multiple servers and the sum of TC of all the selected jobs in a chromosomeconcurrently. The parallel execution of unique jobs ensures gives the fitness value.

2009 IEEE Inxternational Advanxce Computing Conference (IACC 2009) 1261l

Page 4: [IEEE 2009 IEEE International Advance Computing Conference (IACC 2009) - Patiala, India (2009.03.6-2009.03.7)] 2009 IEEE International Advance Computing Conference - An Evolutionary

The Table 1 illustrates three chromosomes S1, S2, S3 carries the job to the selected server and negotiates with it forfrom a population P(i). If we have 7 jobs / tasks then, the acceptance ofjob.corresponding to each job that has been selected.

TABLE 1: Calculation of turn around cost ofjobs IV. AGENT POOL

J1 J2 J3 J4 J5 J6 J7 System_id Resource id Fitness value The Agent pool consists of various agents each having itsSI = I 0 0 1 1 00 20 .0. 0. 3. 12. 0.0 13 0. 0. 1.900 TC(Job I +Job4+ own role. The of the variousisbrieflyJob 5) onrl.Tefunctionality oftevrosagents i relS2=0 0 0 0 1 1 1 0.0.0.0.14.5.6 0. 0.0.0.12. 2.77TC(Job5+Job6+ described as follows.

Job 7) Teei n ietr gn speetprcutr hS3 = 1 0 0 1 1 0 0 12. 0. 0 .10. 9. 0.0 22. 0. 0. 3. 4. 0. 0 TC (Job 1 + Job4+ There iS one Directory Agent is present per cluster. TheJob 5) main task of the Directory Agent is to manage the list of allcomputers that take part in the cluster. When a node wants to

In the first and third chromosome we have generated join or leave the cluster it has to report to the Directory Agent.the same set of jobs J1,J4 and J5 for processing but their It also maintains a log of the position of agents on the servers.system ids as well as resource_ids are different making Each node in the cluster has one Threshold Agent. Thisthe set of jobs a unique resource, which can provide same agent keeps track of the load status of system resources,service to concurrently running jobs. The sum of Turn processor load, memory space, length of job queue, no. ofAround Costs of the selected jobs generate the fitness active connections allowed and present on server to calculatevalue of a chromosome. The best fit chromosome the Server Utilization Status as determined by Informationrepresents the set of unique jobs, the parallel execution of collection policy described above. The Threshold Agent oncewhich will yield the most effective balancing of load in get registers itself with the Directory Agent, starts its job ofthe cluster as the expected response time and the average server monitoring and is responsible for registering of Clientwaiting time of the jobs is least. Apart from response time and Account Agentsand waiting time, the SUS (server utilization status) factor The agents that carry out the real work for the user are theof TC ensures minimum redirection of request/jobs on the Client Agents. All Client Agents have to register themselvesfly thereby considerably reducing the overhead incurred with the Threshold Agent of the node they enter. When ain job reallocation. A crossover of 0.7% mutation at the Client Agent migrates by itself, it has to deregister itself fromrate of 0.01% is selected for generating the subsequent the Threshold Agent and reregister with the Threshold Agentpopulation. The new chromosome obtained after on the new node.crossover is checked for its replica in the existing The Account Agent is responsible for keeping track of thepopulation. If it exists the chromosome is rejected and resources used by a Client Agent. When a Client Agent entersagain the uniform crossover operator is called for the a node it registers itself with the Threshold Agent, which thencrossover of two new chromosomes selected using binary registers the client with the Account Agent. The Accounttournament selection operator. Each generation yields a Agent monitors the Client Agent. The Threshold Agent alsoset of unique jobs that would be processed in minimum asks the Account Agent for the resources being used by thetime, thus modifying the solution vector in each step by client and informs the Account Agent at the new node aboutproceeding towards the best fit solution. the resources being used by the client until that time.

Agents in the system communicate with each otherC Job Management Policy or with users using mobile group approach for

coordination. The EMAS acts as a collection of agents,After the servers destined for evaluating the desired jobs locations and communication channels. A location

have been selected using server selection policy, the actual represents a logical place in the distributed environmenttask of migration ofjobs is initiated based on job management where agents execute. When a Mobile Agent migrates,policy which with the aid of Client Agents actually transfer it moves from one location to another. The variousthe job/task to the desired servers. This policy enables Client Agents communicate using the Message Agent byAgents to carry jobs to different servers and makes sure that exchanging messages through reliable communicationsall Client Agents register themselves with directory agent of channels,each node as they enter and deregister on the completion ofthe job and finally, directs the Account Agent for keeping V. IMPLEMENTATION & PERFORMANCEtrack of resources used by Client Agent. EVALUATION

D Load Sharing Policy: To study the performance of the proposed framework, wehave implemented it on 10/100/1000 Mbps switched LAN that

This policy Specifies the strategies on the basis of which jobs connects 1000 workstations and personal computers, and isare to be provided to service log for processing It is initiated used by about 700 hundred researchers and students.by a threshold based strategy. In our case Load sharing policy Machines are grouped into six different networks with theiris Evolutionary Sender Initiated. Job Allocation Agent (JAA) own servers and servers of each network are connected to theexecutes server selection policy as well as Load sharing policy main server of the Network Centre. The proposed frameworkto select another server to receive job in case of failure. JAA is implemented on a cluster of PCs using IBM Aglets

11262 2009 IEEE Internactionalz Advance Computing Conference (IACC 2009)

Page 5: [IEEE 2009 IEEE International Advance Computing Conference (IACC 2009) - Patiala, India (2009.03.6-2009.03.7)] 2009 IEEE International Advance Computing Conference - An Evolutionary

software. The IBM aglets provide JAVA API for The Fig 4 shows system throughput in comparison to allprogramming mobile agents and an environment for running four approaches and clearly depicts the outstandingmobile agents in Java. Mobile Agent enabled web server performance of ESI in comparison with others.cluster is implemented on a cluster of PCs (P-4, 3 GHzmachines) using Agent Software Development Kit and IA 1 - * Sij2sdkl.3.1. The nodes have 256 MB main memory, while the 0.8 - DRIweb server host has 512 MB. Among them, five PCs are F

configured as web servers and other PCs are assigned as E

clients.The GA-based load-balancing scheme is evaluated on the ,02E

cluster by comparing its performance with the server initiated 0

approach, receiver initiated approach and symmetric initiated 2 Heavy Load Moderate Load Light Loadapproach. The client requests are generated to measure the Figure 5: Normalized average response time under varying loadperformance of web server which is assessed with the criteria O o ESIlike Load distribution, System throughput, Network traffic, I 0 s; 0.6- Yetc. The comparison for the load distribution generated by the em 0 RI

ESI scheme and other three approaches viz. SI, SYI, RI are 6.4implemented on five servers at different moment are depicted ' -13as under:- .0.2-

M0.1TABLE 2: Load distributions on five servers using , I

0SI, ESI, Syl, RI Approach 2 Heavy Load Moderate Load Light LoadSi ESI

Figure 6: Normalized average waiting time under varying loadSiv SvvSvvS |S Tuie Mean S| vSrvSivSrv Srv TiLe MearrI r2r3r4 r5 (mrin) Deviation rl r2 r3 N rY5 (inn) DeviatiorL The comparison of the job migration policies ESI, SI,99 54 l99 66 99 5 l9 4l 9 65 35 9 5 7 Syl and RI is depicted in Fig. 5 and Fig 6 in response toI76I99I 2 9 I10 7.3333 _I__ 96 I89 I76 I79 I10 ______67|2 65 99 82 99 1| 5.1 | ||L 5696|average response time and average wait time respectively.

l9 l9 84 l9 |20 5.8 67 79 9 80 4.066667 ESI policy improves the average response time (seconds)86 99 71 99 962 5 3.9

6 69 98 97 2952 3836 significantly under varying system load. Under light loadOverall Mean Deviation=6.224 Overall Mean Deviation=5.452667 all policies are almost identical in terms of response time,

but the key difference is under heavy load where ESISyl RI policy outperforms in comparisons of SI and RI. In Fig. 6

Sri Sriz Sri Sr- Sr|T-ie Mean Sea ESI policy improves the average wait time (seconds)rl r2 r3 N r5 (ri) Deviation rl r2 r3 N r5 (nin) Deviation compared to RI under varying system load. Also as the56 91 35 94 93 5 10.8 79 97 84 7?5 78 5 12.93333 number of nodes increases in Cluster, Mobile Agent based77 89 97 78 79 10 12.3 98 99 9? 25 ?9 10 13.26667? ESI becomes more effective even for lightly loaded case93 99 79 96 82 15 12.4667 56 76 57 99 75 15 9.648 56 93 97 83 20 9.23333 48 57 79 72 65 20 7.3666679671 69 78 93 25 9.4 57 6882|79|78 25 7.966667 0.8 -ESI

Overall Mean Deviation=10.84 Overall Mean Deviation=10.2267 4 07SY4 0.6 R

The Table 2 compares the mean deviation of load on the e 0.5five servers which depicts that ESI scheme has lower load 0.deviation than all three approaches which means by ESI, the F 0.2client requests more evenly distributed onto the web servers. 0.

2040 Heavy Load Moderate Load Liqht Loadse - Figure 7: Normalized average waiting time under varying load30 A

A A

25 -| The Job migration under varying load is compared20 _ which indicates that RI performance is lower than that of_ 15 1- . ESI. This is because RI approach is more passive thanX 1O-- Si ESI ESI, waiting for node to take initiative and thus5 . migrating for only few numbers of jobs. Syl is more

o 100 200 3 4o flexible than RI, having the option of passively wait forNO of Clielts node to advertise their availability or to actively migrate

Figure 4: System Throughput jobs if no volunteers appear. The SyI have a good balanceachieving better performance than RI but transfer lesserjobs than SI. The ESI approach shows little moreperformance as that of SyI in heavy load.

2009 IEEE Inxternational Advanxce Computing Conference (IACC 2009)j 1263

Page 6: [IEEE 2009 IEEE International Advance Computing Conference (IACC 2009) - Patiala, India (2009.03.6-2009.03.7)] 2009 IEEE International Advance Computing Conference - An Evolutionary

50 - [8] D. Eager, E. Lazowska, and J. Zahorjan, "A comparison of receiver-initiated and sender-initiated dynamic load sharing," in Perform. Eval.

c, 40 Vol. 1, pp. 53-68, 1986.[9] Cisco Distributed Director, http://www.cisco.com/warp/public/

a 30- cc/pd/cxsr/dd/index.shtml.0

o 20 - ______________________ VWth ES [10] A. Bestavros, M. Crovella, J. Liu, and D. Martin, "Distributed- Without ES packet rewriting and its applications to scalable web servero architectures," Proceeding of the Sixth International Conference onv 10 Network Protocols, Austin, TX, pp. 290-297, 1998.

O [11] D. Dias, W. Kish, R. Mukherjee, and R. Tewari, "A scalable and

0 20 40 60 highly available web-server," Proceedings of the 41st InternationalComputer Conference (COMPCON'96), IEEE Computer Society,

No. of Servers San Jose, CA, pp. 85-92, 1996.Figure 8: System throughput of ESI approach and [12] Singhai, A., S.B. Lim and S.R. Radia, "The Sun SCALER

the case without load balancing framework for internet servers," IEEE Fault Tolerant ComputingSystems, 1998.

The system throughputs of the ESI based load-balancing [13] modbackhand, http://www.backhand.org/mod backhand/scheme using Mobile Agent and the case without load [14] T. Schlossnagle, "The backhand project: load balancing andbalancing is compared as in Fig. 8. The result shows that the monitoring Apache web clusters," Proceedings of the Apache-Con.ESI scheme can obviously improve the system throughput London,2000.when increasing the number of servers but in latter case, the [15] J.Cao, Y.Sun, X.Wang and S.K. Das. "Scalable load balancing on

distributed web servers using mobile agents," Journal of Parallel andprocessing capacities of the servers are wasted and hence, no Distributed Computing, Vol. 63, pp. 996-1005, 2003.improvement. [16] Al-Jaroodi, J., N. Mohamed, J. Hong and D. Swanson, "A middleware

infrastructure for parallel and distributed programming models onVI. CONCLUSIONS & FUTURE WORK heterogeneous systems," IEEE Trans. Parallel and Distributed Systems,

In this study, we have presented the mobile agent based Special Issue on Middleware, Vol. 14 pp. 1100-1111, 2003.

architectureforimplementing novel approachofGenetic [17] Raimundo, J., A. Macedo, and F.M. Silva, "The mobile groupsarchitecture for implementing a novel approach of Genetic approach for the coordination of mobile agents," Journal of ParallelAlgorithm for Server Selection, thus leads to load balancing in Distributed Computing, Vol. 65: 275-288, 2005.Cluster of Servers. The experimental clearly shows that the [18] J.Cao, X.Wang, and S.K Das, "A Framework of using cooperativejob execution time is reduced, leading to high throughout and mobile agents to achieve load sharing in distributed web servermore even distribution of load among the associated Servers, groups," Future Generation Computer Systems, Vol. 20, pp. 591-

moreIevenfu sture,we are workiamng tnewardsimplementing this 603, 2004.In future, we are working towards implementing this [19] W. Obeloeer, C. Grewe, and H. Pals, "Load Management with Mobile

architecture on a grid environment and its effect thereby on Agents," Proceedings of the 24th EUROMICRO Conference, pp. 1005-improving response time and system utilization will also be 1012, 1998.studied. In addition to the performance and effectiveness [20] J. Gomoluch, and M. Schroeder, "Information agents on the move: aissues, tradeoffs in design such as experimenting with multiple survey on load balancing with mobile agents," Software Focus Vol. 2information gathering agents and by what factor will they be pp.31-36,2001.

[21] Xu, C. Z., and B. Wims, Mobile agent based push methodology forbeneficial and also the path followed by the information global parallel computing, Concurrency and Computation: Practicegathering agent can also be taken up. Heuristic and Experience Vol. 14, pp. 705-726, 2000.approximate solutions for such NP Hard problems are also [22] F. Merchant, L. Bic, and M. Dillencourt, "Load balancing inbeing worked upon. individual-based spatial applications," Proceedings of the International

Conference on Parallel Architectures and Compilation Techniques,REFERENCES Paris, France, pp. 350-357, 1998.

[23] Aglets Software Development Kit: http://www.trl.ibm.com/aglets[1] W. Tang, and M. Mutka, "Load distribution via static scheduling /index.htm

and client redirection for replicated web servers," Proceedings of the [24] N. K. Gondhi, and D. Pant, "Mobile Agent Based Expert System forFirst International Workshop on Scalable Web Services (in Distributed Network Management," Information Technology Journalconjunction ICPP 2000), Toronto, Canada, pp. 127-133, 2000. Vol. 6 pp 891-896, 2007.

[2] V. Cardellini, and M. Colajanni, "Dynamic load balancing on [25] N. K. Gondhi, and D. Pant, "Towards designing An Intelligent Systemweb-server systems," IEEE Internet Compute 3 , pp. 28-39, 1999. for Resource Management in Mobile Adhoc Network," Proceedings of

[3] T.L. Casavant, and J.G. Kuhl, "A taxonomy of scheduling in general- IEEE-International Conference on Advances in Computer Vision andpurpose distributed computer systems," IEEE Trans. Software Eng. 14 Information Technology, pp. 196-2001, 2007.(2),pp.141-153, 1988. [26] N. K. Gondhi, and D. Pant "The Design of Mobile Agent Based

[4] J. Cao, G. Bennett, and K. Zhang, "Direct execution simulation of load Intelligent System for Autonomic Network Management" Proceedingsbalancing algorithms with real workload distribution," J. System. of International Conference on Advance Computing Technologies atSoftware 54, pp. 227-237, 2000. GRIET, Hyderabad, India, 2008 (in press).

[5] Y. Wang, and R. Morris, "Load sharing in distributed systems," IEEE [27] N. K. Gondhi, and D. Pant, "Adaptive Policy Based ResourceTrans. Compute. C-34 (3), pp. 204-217, 1985. Management in Mobile Adhoc Network," Proceedings of International

[6] M.J. Zaki, W. Li, and S. Parthasarthy. "Customized Dynamic Load Conference on Information Technology, HIT, West Bengal, India,Balancing for a Network of Workstations," Journal of Parallel and pp. 434-438., 2007.Distributed Computing 43, pp. 156-162, 1997.

[7] C. Yoshikawa, B. Chun, P. Eastham, A. Vahdat, and T. Anderson,"Using smart clients to build scalable services," Proceedings ofUSENIX, pp. 105-117, 1997.

11264 2009 IEEE Internactionalz Advance Computing Conference (IACC 2009)