Abstract:
Grid computing aims at exploiting the available resources in computer networks for executing distributed and complex problems. The grid computing environment is an open and dynamic environment, where a new node can join the network at any time while other nodes may leave the network, thus resource and job management in this environment can be complex tasks.
This research aims at using agent technology to optimize the control and exploitation of available resources in the grid computing environment and facilitate monitoring of jobs that are executing on it.
A primary grid computing environment has been developed using agent technology. Since multi-agent systems are suitable for solving problems on open and dynamic environments, it is expected that the integration of grid computing technology and multi-agent technology will lead to a better management of the available resources in the environment. The proposed environment is comprised of three parts: construction of the network, establishing monitoring nodes, and executing the distributed task.
The proposed environment was implemented in two phases; the first phase was implemented on a virtual network; and the second was the implementation on a real network comprised of four hosts, with similar specifications connected in a local area network. Each of the hosts is using the Linux operating system. The Proposed environment was tested by running a parallel matrix multiplication application, using the MPI technology. Different dimensions of these matrices were used and the program was divided into a different number of processes for three different cases, namely: (1) Implementing the program in one host; (2) Implementing the program in four hosts using the traditional techniques and (3) Implementing the program in four hosts using the proposed environment.
Results obtained indicate that better resource management has been achieved using the developed environment. Selection of nodes to execute a job is done automatically at execution time by checking the current status of the node. Better job management has been achieved also. If there is not enough resources to execute a job it is scheduled until resources are found, the client is notified of such an action.
It is recommended that multi-agent negotiation techniques be used to achieve better control over distributed resources and jobs. Development of a security model for new environment is also needed.