  E-science applications may require huge amounts of data and high processing
power where grid infrastructures are very suitable for meeting these
requirements. The load distribution in a grid may vary leading to the
bottlenecks and overloaded sites. We describe a hierarchical dynamic load
balancing protocol for Grids. The Grid consists of clusters and each cluster is
represented by a coordinator. Each coordinator first attempts to balance the
load in its cluster and if this fails, communicates with the other coordinators
to perform transfer or reception of load. This process is repeated
periodically. We analyze the correctness, performance and scalability of the
proposed protocol and show from the simulation results that our algorithm
balances the load by decreasing the number of high loaded nodes in a grid
environment.
