Global Load Balancing and Primary Backup Approach for Fault Tolerant Scheduling in Computational Grid



Similar documents
Fair Scheduling Algorithm with Dynamic Load Balancing Using In Grid Computing

An Empirical Study and Analysis of the Dynamic Load Balancing Techniques Used in Parallel Computing Systems

DECENTRALIZED LOAD BALANCING IN HETEROGENEOUS SYSTEMS USING DIFFUSION APPROACH

A Study on the Application of Existing Load Balancing Algorithms for Large, Dynamic, Heterogeneous Distributed Systems

Various Schemes of Load Balancing in Distributed Systems- A Review

A Comparative Performance Analysis of Load Balancing Algorithms in Distributed System using Qualitative Parameters

An Effective Dynamic Load Balancing Algorithm for Grid System

Design and Implementation of Efficient Load Balancing Algorithm in Grid Environment

A Novel Load Balancing Algorithms in Grid Computing

LOAD BALANCING TECHNIQUES

Design of an Optimized Virtual Server for Efficient Management of Cloud Load in Multiple Cloud Environments

Scheduling Allowance Adaptability in Load Balancing technique for Distributed Systems

Keywords Load balancing, Dispatcher, Distributed Cluster Server, Static Load balancing, Dynamic Load balancing.

Comparison on Different Load Balancing Algorithms of Peer to Peer Networks

Load Balancing in Distributed Systems: A survey

Grid Computing Approach for Dynamic Load Balancing

RESEARCH PAPER International Journal of Recent Trends in Engineering, Vol 1, No. 1, May 2009

Load Balancing Algorithms for Peer to Peer and Client Server Distributed Environments

Study of Various Load Balancing Techniques in Cloud Environment- A Review

DYNAMIC LOAD BALANCING IN A DECENTRALISED DISTRIBUTED SYSTEM

Hierarchical Status Information Exchange Scheduling and Load Balancing For Computational Grid Environments

CHAPTER 5 WLDMA: A NEW LOAD BALANCING STRATEGY FOR WAN ENVIRONMENT

A novel load balancing algorithm for computational grid

STUDY AND SIMULATION OF A DISTRIBUTED REAL-TIME FAULT-TOLERANCE WEB MONITORING SYSTEM

A REVIEW ON LOAD BALANCING TECHNIQUE IN THE PUBLIC CLOUD USING PARTITIONING METHOD

Keywords: Dynamic Load Balancing, Process Migration, Load Indices, Threshold Level, Response Time, Process Age.

MANAGING OF IMMENSE CLOUD DATA BY LOAD BALANCING STRATEGY. Sara Anjum 1, B.Manasa 2

A Review of Customized Dynamic Load Balancing for a Network of Workstations

Load Balancing in cloud computing

An Overview of CORBA-Based Load Balancing

International Journal of Scientific & Engineering Research, Volume 6, Issue 4, April ISSN

Proposal of Dynamic Load Balancing Algorithm in Grid System

Comparative Study of Load Balancing Algorithms

Real Time Network Server Monitoring using Smartphone with Dynamic Load Balancing

Load Balancing in Distributed Data Base and Distributed Computing System

An Approach to Load Balancing In Cloud Computing

Praktikum Wissenschaftliches Rechnen (Performance-optimized optimized Programming)

How To Balance In Cloud Computing

International Journal of Computer Science Trends and Technology (IJCST) Volume 3 Issue 3, May-June 2015

DECENTRALIZED LOAD BALANCING IN HETEROGENEOUS COMPUTATIONAL GRIDS

Distributed Dynamic Load Balancing for Iterative-Stencil Applications

Performance Evaluation of Mobile Agent-based Dynamic Load Balancing Algorithm

The Load Balancing Strategy to Improve the Efficiency in the Public Cloud Environment

A Dynamic Approach for Load Balancing using Clusters

A Novel Switch Mechanism for Load Balancing in Public Cloud

Improved Dynamic Load Balance Model on Gametheory for the Public Cloud

@IJMTER-2015, All rights Reserved 355

Statistics Analysis for Cloud Partitioning using Load Balancing Model in Public Cloud

Sla Aware Load Balancing Algorithm Using Join-Idle Queue for Virtual Machines in Cloud Computing

Journal of Theoretical and Applied Information Technology 20 th July Vol.77. No JATIT & LLS. All rights reserved.

A Clustered Approach for Load Balancing in Distributed Systems

Performance Analysis of Load Balancing Algorithms in Distributed System

A Survey on Load Balancing and Scheduling in Cloud Computing

Dynamic Load Balancing Strategy for Grid Computing

Efficient Cloud Computing Load Balancing Using Cloud Partitioning and Game Theory in Public Cloud

Group Based Load Balancing Algorithm in Cloud Computing Virtualization

MEASURING PERFORMANCE OF DYNAMIC LOAD BALANCING ALGORITHMS IN DISTRIBUTED COMPUTING APPLICATIONS

Energy Efficient Load Balancing among Heterogeneous Nodes of Wireless Sensor Network

Public Cloud Partition Balancing and the Game Theory

A Survey on Load Balancing Techniques Using ACO Algorithm

How To Compare Load Sharing And Job Scheduling In A Network Of Workstations

1. Comments on reviews a. Need to avoid just summarizing web page asks you for:

A Load Balancing Model Based on Cloud Partitioning for the Public Cloud

A Game Theoretic Approach for Cloud Computing Infrastructure to Improve the Performance

ADAPTIVE LOAD BALANCING ALGORITHM USING MODIFIED RESOURCE ALLOCATION STRATEGIES ON INFRASTRUCTURE AS A SERVICE CLOUD SYSTEMS

ADAPTIVE LOAD BALANCING FOR CLUSTER USING CONTENT AWARENESS WITH TRAFFIC MONITORING Archana Nigam, Tejprakash Singh, Anuj Tiwari, Ankita Singhal

Improved Hybrid Dynamic Load Balancing Algorithm for Distributed Environment

EFFICIENT SCHEDULING STRATEGY USING COMMUNICATION AWARE SCHEDULING FOR PARALLEL JOBS IN CLUSTERS

Implementing Parameterized Dynamic Load Balancing Algorithm Using CPU and Memory

Efficient Parallel Processing on Public Cloud Servers Using Load Balancing

An Active Packet can be classified as

A Load Balancing Algorithm based on the Variation Trend of Entropy in Homogeneous Cluster

IMPROVEMENT OF RESPONSE TIME OF LOAD BALANCING ALGORITHM IN CLOUD ENVIROMENT

An Efficient load balancing using Genetic algorithm in Hierarchical structured distributed system

A Secure Load Balancing Technique based on Cloud Partitioning for Public Cloud Infrastructure Nidhi Bedi 1 and Shakti Arora 1

Dynamic Load Balancing in a Network of Workstations

The International Journal Of Science & Technoledge (ISSN X)

A Survey Of Various Load Balancing Algorithms In Cloud Computing

Efficient Scheduling Of On-line Services in Cloud Computing Based on Task Migration

A REVIEW PAPER ON LOAD BALANCING AMONG VIRTUAL SERVERS IN CLOUD COMPUTING USING CAT SWARM OPTIMIZATION

LOAD BALANCING AND EFFICIENT CLUSTERING FOR IMPROVING NETWORK PERFORMANCE IN AD-HOC NETWORKS

Load Balancing in Structured Peer to Peer Systems

DYNAMIC LOAD BALANCING SCHEME FOR ITERATIVE APPLICATIONS

Multilevel Communication Aware Approach for Load Balancing

LOAD BALANCING IN CLOUD COMPUTING

CDBMS Physical Layer issue: Load Balancing

Effective Load Balancing Based on Cloud Partitioning for the Public Cloud

A Hybrid Load Balancing Policy underlying Cloud Computing Environment

International journal of Engineering Research-Online A Peer Reviewed International Journal Articles available online

Load Balancing in the Cloud Computing Using Virtual Machine Migration: A Review

A Comparative Study of Load Balancing Algorithms in Cloud Computing

Key Words: Dynamic Load Balancing, and Distributed System

THE computational grid is a promising platform that

Load Distribution in Large Scale Network Monitoring Infrastructures

A STUDY OF TASK SCHEDULING IN MULTIPROCESSOR ENVIROMENT Ranjit Rajak 1, C.P.Katti 2, Nidhi Rajak 3

Dynamic Multi-User Load Balancing in Distributed Systems

Load Balancing in Structured Peer to Peer Systems

LOAD BALANCING ALGORITHM REVIEW s IN CLOUD ENVIRONMENT

Transcription:

Global Load Balancing and Primary Backup Approach for Fault Tolerant Scheduling in Computational Grid S. Gokuldev & Shahana Moideen Department of Computer Science and Engineering SNS College of Engineering, Coimbatore, India E-mail : gokuldevs@gmail.com & shahanumoideen90@gmail.com Abstract - Grid computing is a replica of distributed computing that uses geographically and administratively different resources found on the network. These resources may include processing power, storage capacity, specific data, and other hardware such as input and output devices. In grid computing, individual users can access computers and data visibly, without having to consider location, operating system details, account administration, and other features. Furthermore, the details are vague, and the resources present in the grid are virtualized. Grid computing possess the problem of load balancing and resource failures during the execution of the applications submitted by the user. Grid computing seeks to achieve the secured, controlled and flexible sharing of resources. It is necessary to build a new scheme for computational grids which handles computational and data intensive applications. The main aim of this paper is to minimize the execution time of applications in computational grid. The proposed work focus on a new dynamic load balancing algorithm along with fault tolerant scheduling strategy for computational grid through which effective load balancing and fault tolerance have been achieved. Index Terms Computational Grid, Load Balancing, Primary Backup, Fault Tolerance. I. INTRODUCTION Grid computing is a form of distributed computing that enables the sharing, selection and aggregation of a large number of geographically distributed resources dynamically at run time based on the availability, capability, cost and quality of service requirements. The resources are virtualized in grid. A grid is typically an infrastructure coordinating several clusters spread around the world that are connected through a WAN. Cluster is a type of parallel and distributed processing system that consists of a collection of interconnected stand-alone computers working together as a single unified resource. Due to the slow and unreliable nature of WAN connections those fields are often more difficult in case of cluster. Load balancing, job scheduling and fault tolerance are the major issues in grid that need to be improved. Grid systems can be basically classified in to computational grid, data grid and service grid. Computational grid is a type in which the main resource managed by the resource management system is the compute cycles. Data grid manages the data that are distributed geographically at various locations. Service grid category provides services that are not provided by a single machine. Load balancing is a technique to enhance resources, exploiting parallelism, exploiting throughput and to minimize the execution time through an appropriate distribution of application. The main objective of load balancing methods is to speed up the execution of applications on resources whose workload varies at run time in unpredictable way. For this reason, it is significant to define metrics to measure the resource workload submitted to the scheduler is divided into smaller sub tasks and these tasks are executed parallel at different processors. Grid functionally combine worldwide distributed computers and information systems for creating a widespread source of computing power and information. A key characteristic of grid is that resources including CPU cycles and network capacities are shared among various applications, and thus the amount of resources available to any given application highly fluctuates over time. In this situation load balancing plays key role. Grid enabled applications can offer a resource balancing effect by scheduling grid jobs on machines with least execution time. An appropriate scheduling and efficient load balancing across the grid can lead to better system performance and a low execution time for individual applications. The load balancing algorithm should define three major parameters which usually define the strategy for load balancing. These parameters answer the following questions. 131

Who formulates the load balancing decision. What type of information is used to make the decision about load balancing. Where the choice of load balancing is made. The location in which load balancing is performed. Sender Initiated Vs. Receiver Initiated strategies answer the question of who make the load balancing decision. In sender-initiated policies, congested nodes attempt to move work to lightly loaded nodes. In receiver initiated policies, lightly loaded nodes search for heavily loaded nodes from which work may be received. The sender initiated policy performing better than the receiver initiated policy at low to moderate system loads. Global Vs. Local strategies answer the question of what information is used to make the load balancing decision. Global or local policies answer the question of what information will be used to make a load balancing decision. In global policies, the performance profiles of all available workstations are used by the load balancer in order to make the load balancing decision. In local policies, the workstations are partitioned into different groups and each group ic capable of making the load balancing decision. Centralized Vs. Decentralized strategies answer the question of where the load balancing decision is made. Centralized strategy contains a central load balancer. All decisions are made by the central load balancer located at one workstations. In decentralized strategy the load balancer is replicated at different workstations. Decentralized strategies perform well when compared to static policies. The rest of the paper is organized as follows. Section II reviews the related work in literature. Section III outlines the problem formulation. Section IV briefly introduces all the load balancing algorithms. Section V describes the proposed load balancing algorithm in detail. Section VI focuses on the setup of the simulation and the experimental results. Section VII dedicated to conclusion and future work. II. RELATED WORK Load balancing is a technique to enhance resources, utilize parallelism, exploit throughput and minimize response time through an appropriate distribution of the application. Minimizing the decision time is one of the objectives for load balancing which has not yet been achieved. Load balancing is important in grid computing in order to minimize the execution time of the applications submitted by different user. Improved performance is achieved through effective scheduling through load balancing. With admiration to load balancing, K. Nishimura, H. Ueno, M. Yamamoto, H. Ikeda [10] R. Elsasser, B. Monien, R. Preis [16] proposed load balancing schemes for computational grid environments. yet, both neglected the overhead involved in collecting state information while balancing the load. D. Grosu, Anthony T. Chronopoulus [4] projected a non-cooperative load balancing game for distributed systems, but did not consider the communication delays in grid environment. Kai Lu, R. Subrata, and A.Y. Zomaya [12]-[11] proposed a decentralized load balancing scheme for computational grid environment namely DA, which takes into account the concerns of scalability, site heterogeneity and significant communication overheads. In order to minimize the overhead of information collection, state information exchange is done by mutual information feedback (MIF). However, Kai Lu did not consider the execution system for data distribution. R. Subrata, A.Y Zomaya and B. Landfeldt [17] proposed artificial life techniques for load balancing a computational grid. However, the approach incurs extra processing condition at each scheduling node. Blebbas Yagoubi and Yahya Slimani [3] suggested the layered load balancing algorithm that works for heterogeneity, scalability and adaptability in computational grid environment, that does not consider the network delay. Blebbas Yagoubi and Meriem Meddeber [2] suggested the concept of a distributed load balancing algorithm, that does not consider the communication overhead.the game-theoretic approach proposed by Riky Subrata, Albert Y. Zomaya, Bjorn Landfeldt [18] considers only individual response time as the objective and does not consider average response time. D. Grosu, A. T. Chronopoulous, M.Y. Leung [5] proposed a cooperative load balancing scheme for distributed systems which tries to minimize the response time of entire set of jobs, but does not consider the optimization of each jobs response time. K.S. Chatrapati, J.U. Rekha and A.V. Babu [13] proposed load balancing schemes for grid environment but the algorithm do not follow the changes in the system status or set fixed threshold for controlling the load. N. Malarvizhi, Rhymend V Uthariaraj [15] proposed a decentralized load balancing algorithm for computational grid in which load updates between resources are done periodically which leads to high messaging overhead. With respect to on-line mode for job scheduling, V. Shestak, J. Smith, H. J. Siegel and A. A. Maciejewski [20] proposed resource allocation heuristics, but the approaches did not guarantee that tasks will be assigned to machines with their fastest execution times. Hui Yan, Xue-Qin Shen, Xing Li and 132

Ming-Hui Wu [8] proposed ant colony optimization algorithm for job scheduling. However, the paper considered the pheromone value to be sum of different units, which affects the accuracy in the result of scheduling algorithm. Many fault tolerant schemes have been proposed for grid systems [6]. Jasma Balasangameshwara and Nedunchezhian Raju [9] introduced backup overloading to reduce replication cost of independent jobs. III. PROBLEM FORMULATION Load balancing techniques are designed essentially to stretch the load on resources equally and maximize their utilization while minimizing the total task execution time. Choosing the optimal set of jobs for transferring has a significant role on the efficiency of the load balancing method as well as grid resource utilization. This problem has been neglected by researchers in most of the previous contributions on load balancing, either in distributed systems or in the grid. In accordance with load balancing the chance of resource failure is high in distributed system. Inorder to improve the performance proper fault tolerant scheduling strategies are essential in grid system. In preceding mechanisms, the overloaded node only send its load information to the neighbour sites only. This poses transmission delay. If it is not possible to find a set of neighbour sites at a particular time, that causes the algorithm to fail. However, such selection mechanism, in one hand, may consequences to a high processing overhead, lengthening the execution time and decreasing efficiency. Such reasons have made to propose a new dynamic load balancing algorithm along with backup approach for fault tolerant scheduling in computational grids. IV. LOAD BALANCING APPROACH Grid functionally combine globally distributed computer and information system for creating a universal source of computing power and information. For applications that are grid enabled, the grid can offer a resource balancing effect by scheduling grid jobs on machines with low exploitation. A suitable scheduling and efficient load balancing across the grid can lead to improved overall system performance and a lower turn-around time for individual jobs. Load balancing is a technique to augment resources, utilizing parallelism, utilize throughput and to cut response time through an proper distribution of the application. The main objectives for load balancing is to minimize the execution time which has yet not been achieved. A. Load Balancing Algorithms Many different load balancing algorithms are described in the literature. The concepts used to classify the algorithms are also useful for the methodical design and analysis of new load-balancing algorithms. This section presents a simple classification of load balancing algorithms most relevant to this research. The performance of load balancing algorithms are important in grid system. (i) Static versus dynamic Load balancing could be done statically at compile time or, dynamically, at run-time. Static load-balancing algorithms assume that a priori information about all of the characteristics of the jobs, the computing nodes and the communication network are known. Load-balancing decisions are made at compile time, and remain constant during run-time. dynamic load-balancing algorithms attempt to use the run-time state information to make more informative decisions in sharing the system load. (ii) Non-preemptive versus preemptive Dynamic load-balancing policies may be either non-preemptive or preemptive. A non-preemptive loadbalancing policy [19] assigns a newly arriving job to what appears at that moment to be the best node. Once the job execution begins, it is not moved, even if its runtime characteristics, or the run-time characteristics of any other jobs, are changed after assigning the job in such a way as to cause the nodes to become much unbalanced. A preemptive load-balancing policy [14]- [1]allows load-balancing whenever the imbalance appears in the workloads among nodes. If a job that should be transferred to a new node is in the course of execution, it will continue at the new node. (iii) Centralised versus distributed Load-balancing policies can be classified as centralised or distributed. Centralised policies [19]-[7] may be considered as a system with only one loadbalancing assessment maker. Incoming jobs to the system are sent to this load-balancing decision or assessment maker, which distributes jobs to different processing elements. The distributed policies assign job distribution decisions to individual nodes. Usually, each node admits the local job arrivals and makes decisions to send them to other nodes on the basis of its own partial or global information on the system load distribution. (iv) Partial versus global information How much load information on the system should be collected for load-balancing in the distributed policies is a major concern. Very few dynamic load- 133

balancing algorithms include a decision part, which may use load information from a subset of the whole system or information from the whole system. Partial information is collected periodically. For global schemes, balanced load convergence is faster compared to a local scheme since all workstations are considered at the same time. (v) Sender-initiated versus receiver-initiated Distributed load-balancing policies can be broadly characterised as sender-initiated and receiver-initiated. Sender-initiated algorithms let the heavily loaded sites take the initiative to request the lightly loaded sites to receive the jobs. Receiver-initiated algorithm let the lightly loaded sites invite heavily loaded sites to send their jobs. B. Policies for dynamic load-balancing algorithms Many issues involved in dynamic load-balancing have already been addressed in load balancing algorithms, such as how to measure the load of a processing node, how much load information we should collect and where they should reside. These issues are usually grouped into several policies (or components) at a higher level. (i) Information policy Information policy states what workload information to be collected, when it is to be collected and from where. (ii) Triggering policy Triggering policy specifies the appropriate period to start a load balancing operation. (iii) Resource type policy Resource type policy differentiates a resource as server or receiver of tasks according to its availability status. (iv) Location policy Location policy specifies the results of the resource type policy to find a suitable partner for a server or receiver. (v)selection policy Selection policy select the tasks that should be migrated from overloaded resources known as the sender to most idle resources called receiver nodes. V. NEW DYNAMIC LOAD BALANCING ALGORITHM Computational grid involves Grid Information Server(GIS), resources and users. The details of all resources are updated in GIS. The algorithm GRO(Grid Resource Object) is created at each node. GRO records the load information of each resource present in the grid system. The load index value is updated in the GRO. Resource broker use the information from GRO to find an underloaded node while a new job arrives. The load information is collected and the applications are scheduled appropriately. Global load balancing is the process in which the load balancer use the performance profiles of all available nodes in the system. The load information present in GRO is updated periodically. The scheduler selects the resource which is having low load in the system. Step 1: The user submits the data or computational intensive applications to the grid system. The workload from the user is partitioned into a number of tasks and these tasks are send to the appropriate resources for scheduling. The workload information is splitted dynamically and send to the resources randomly. Step 2: A backup copy of each job is created when a new job arrives. Backup scheduling will improve system performance during resource failures. A backup copy will execute only when the primary copy fails its execution. This scheme can improve the execution of applications during failures. Step 3: GRO record the load details of each resource. The scheduler can easily identify the under loaded and overloaded nodes. By considering the details of Grid Resource Object, The scheduler assign the gridlet to an appropriate resource. Load index is a measure of current load of the system. Load index can be calculated using the following formula. Where TGW represents the total gridlet waiting to be processed and TGP represents the total gridlet being processed by each node in the grid system. Step 4: Scheduling the job based on the load information appeared in the RCB. RCB record the load index of all gridlets. Step 5: The executed result will be displayed after the processing.. If there is error occurred during the execution due to resource failure, the backup copy will start execution. Total execution time can be calculated using the formula. t total = t transfer +t wait + t process (1) 134

Table 2: Scheduling Parameters and their Values The simulation results are shown in the following figures. Fig. 1 Proposed System Architecture A. Fault Tolerant Model Resource failure is the major problem that needs to be minimized in grid. In the proposed system, a backup copy of each job is created at the time of its arrival. When the original fails its execution, the backup will be executed at other location. The main thought of this technique is that a backup copy of a job is activated only if a fault occurs while executing its primary copy. It does not require fault diagnosis and is guaranteed to recover all affected jobs by processor failure. In such an idea, only two copies of the job are scheduled on different processors. Two techniques can be applied while scheduling primary and backup copies of each job. Backup overloading consists of scheduling backups for multiple primary jobs during the same time slot in order to make efficient utilization of available processor time and De-allocation of resources reserved for backup jobs when the corresponding primaries complete successfully. Table 1: Grid Resource Characteristics Fig. 2. User and Resource Allocation Fig. 2 represents the user and resource allocation using GridSim simulation toolkit. There are three user and three resources are created using GridSim simulation toolkit. The initial load for each resource will be zero. Three users named user_10 with ID 20, user_14 with ID 23 and user_20 with ID 26. The simulation is carried out with three resources named fast, normal and slow. The respective IDs for the resources are resource_ normal with ID 5, resource_ fast with ID 9 and resource_slow with ID 13. Fig. 3 Scheduling output for user_20 135

The simulation shows the gridlets being executed by various resources. The time spent by each gridlet in a particular resource is given in the simulation result. Fig. 4 Represent the delay compare graph for the entire simulation. The delay between the start time and end time is stipulated. Time utilization graph is shown in the below diagram Fig. 4 Scheduling Details for User 14 Fig. 3 specify the scheduling results for user 14. Gridlet ID for each job is printed along with the status, resource used to execute the gridlets and time spent by the gridlet in a particular resource Fig. 4 Delay Compare Graph Fig. 4 Represent the delay compare graph for the entire simulation. The delay between the start time and end time is stipulated. Time utilization graph is shown in the below diagram Fig. 4 Delay Compare Graph Fig. 5 User Time Utilization Fig. 5 denotes the time taken to complete the gridlets submitted by a single user. VII. CONCLUSION AND FUTURE WORK Grid Computing is a promising tendency to solve high demanding applications and all kinds of grid problems. The main objective of the grid environment is to achieve high performance computing by optimal usage of geographically distributed and heterogeneous resources. But grid application performance remains a challenge in dynamic grid environment. Resources can be submitted to grid and can be withdrawn from grid at any moment. This characteristic of grid makes load balancing one of the critical features of grid infrastructure. This paper addresses a new dynamic load balancing algorithm from the combination of neighbor based and cluster based load balancing algorithms for computational grid environment. In order to produce load balancing in grid computing systems so that, to decrease the wait time of tasks and minimize the delay of task execution. Global load balancing strategy along with primary backup approach for fault tolerant scheduling is used in the proposed system. It distributes the system workload based on the processing elements capacity which leads to minimization of the overall job mean response time and maximization of the system utilization and throughput by considering the load index of all resources. The grid site can be modelled by a parameter called the security level that a grid site can offer to remote jobs. Relating the notion of security into load balancing algorithms is clearly a research opportunity. In the case of data grids, data sites may be over-utilised, while 136

others may be underutilised. By designing an efficient load-balancing mechanism for data grids, the performance of the load-balancing algorithms in such environments needs to be investigated. VIII. ACKNOLEDGEMENT It is with great pleasure that I wish to acknowledge people who have helped me tremendously during my career. Without their help, none of this work could have been possible. I wish to express my sincere gratitude to my project guide, Prof. S. Gokuldev for his guidance, encouragement, motivation, and continued support throughout my academic year. I would like to thank all friends and family for their valuable support. IX. REFERENCES [1] Barak and O. La adan, The MOSIX multicomputer operating system for high performance cluster computing, Future Generation Computer Systems, 13(4-5) (1998) 361-372. [2] Blebbas Yagoubi,Meriem Meddeber (2010) Distributed Load Balancing Model For Grid Computing Revue ARIMA Vol. 12 pp. 43-60 [3] Blebbas Yagoubi and Yahya Slimani (2006) Dynamic load balancing strategy for grid computing World Academy of Science,Engineering and Technology 19 [4] D. Grosu, Anthony T. Chronopoulus, Non Cooperative Load Balancing in Distributed Systems, Journal of Parallel and Distributed Computing, pp. 1022-1034,2005 [5] D. Grosu, A. T. Chronopoulous, M.Y. Leung, Cooperative Load Balancing in Distributed Systems, Concurrency and Computation: Practices and Experience, vol. 20, no.16, pp. 1953-1976, 2008 [6] G. Manimaran and C.S.R. Murthy, A Fault- Tolerant Dynamic Scheduling Algorithm for Multiprocessor Real-Time Systems and Its Analysis, IEEE Trans. Parallel and Distributed Systems, vol. 9, no. 11, pp. 1137-1152, 1998. [7] H.-C. Lin, C. S. Raghavendra, A dynamic loadbalancing policy with a central job dispatcher (LBC), IEEE Transactions on Software Engineering, 18 (2) (1992) 145 158. [8] Hui Yan, Xue-Qin Shen, Xing Li and Ming-Hui Wu, An improved ant algorithm for job scheduling in grid environment. Proc. International Conference on Machine Learning and Cybernetics, pp. 2957 2961, 2005. [9] Jasma Balasangameshwara, Nedunchezhian Raju (2012) Performance-Driven Load Balancing with Primary-Backup Approach for Computational Grids with Low Communication Cost and Replication Cost IEEE Transactions on computers [10] K. Nishimura, H. Ueno, M. Yamamoto, H. Ikeda, A dynamic load balancing method based on network delay for large distributed systems, Electronics and Communications in Japan (Part I: Communications), vol. 84, no. 6, pp. 11-21, 2001. [11] K. Lu, R. Subrata, and A. Y. Zomaya, On the performance driven load distribution for heterogeneous computational Grids, Journal of Computer and System Science, vol. 73, no. 8, pp. 1191-1206, 2007 [12] K. Lu, R. Subrata, and A.Y. Zomaya, An Efficient Load Balancing Algorithm for Heterogeneous Grid Systems Considering Desirability of Gri Sites, Proc. 25th IEEE Int l Performance Computing and Comm. Conf. (IPCCC 06), 2006. [13] K.S. Chatrapati, J.U. Rekha and A.V. Babu, Competitive equilibrium approach for load balancing a computational grid with communication delays. Journal of Theoretical and Applied Information Technology, vol. 19, no. 2, pp. 126 133, 2010. [14] M. Harchol-Balter, A. B. Downey, Exploiting process lifetime distributions for dynamic load balancing, ACM Transactions on Computer Systems, 15 (3)(1997) 253-285. [15] N. Malarvizhi, Rhymend V Uthariaraj, Hierarchical Status Information Exchange Scheduling and Load Balancing for Computational Grid Environments, International Journal of Computer Science and Network Security, vol. 10, no. 2,pp. 177-185, 2011. [16] R. Elsasser, B. Monien, R. Preis, Diffusion schemes for load balancing on heterogeneous networks, Theory of Computing Systems, vol. 35, no. 3, pp. 305-320, 2002 [17] R. Subrata, A.Y Zomaya and B. Landfeldt, Artificial Life Techniques for Load Balancing in Computational Grids, Journal of Computer and System Sciences, vol. 73, no. 8, pp. 1176-1190, 2007. 137

[18] Riky Subrata, Albert Y. Zomaya, Bjorn Landfeldt, Game-Theoretic Approach for Load Balancing in Computational Grids, IEEE Transactions on Parallel and Distributed Systems, vol. 19, no. 1, 2008. [19] V. Berten, J. Goossens, and E. Jeannot, On the distribution of sequential jobs in random brokering for heterogeneous computational Grids, IEEE Transactions on Parallel and Distributed Systems, 17 (2) (2006) 113-124. [20] V. Shestak, J. Smith, H. J. Siegel and A. A. Maciejewski, Stochastic robustness metric and its use for static resource allocations, Journal of Parallel and Distributed Computing, vol. 68, no. 8, pp. 1157-1173, 2008. 138