Archived: 30 January 2006
University of Adelaide Masters by coursework thesis, June 2004.
Supervisor: Andrew Wendelborn
Grid computing promises to enable applications to utilize widely distributed computing resources that exist across different administrative zones. There are many ways to implement Grid applications and systems and the problem itself can be tackled at different levels right from the middleware level to the application level. The requirement of the application has a direct bearing on what type of development tools the programmer will use and the methodology he will follow during the application development. Often the choice of methodologies and developmental tool will involve trade-offs to be made. The trade-offs would include such factors as ease of programmability, performance issues and scalability.
In this project, four systems that can be used as a vehicle for grid programming are studied in detail. Two of these systems are fundamental middleware technologies. They are Globus toolkit and Sun's Project JXTA system. The Globus toolkit provides a set of components that directly address the needs of the grid computing whereas JXTA presents generic Peer-to-Peer (P2P) building blocks that can be used to develop grid applications. The other two systems studied in this project are application development systems that use these middleware technologies. They abstract and hide the complexities of the underlying grid middleware and offer the programmer an environment to easily and quickly develop grid applications. They are the University of Adelaide's PAGIS system and Cardiff University's Triana system. The PAGIS system is based on the Globus Toolkit and Triana is implemented on web-services and JXTA P2P technologies. A performance analysis of JXTA and Triana are also performed and presented in this report.
The study indicates that P2P systems are not in contradiction to the traditional Grid technologies as symbolized by Globus. Both technologies can be considered complimentary and when used together allow more powerful grid applications to be created.