Volunteer computing architecture is often described in terms of "layers", where each software layer has a specific function. Most large-scale volunteer computing systems will have a similar basic structure known as client-server architecture.
When a user decides to volunteer for a project they can download client software (usually an application) that runs in the background on their computer. This is the layer that users ‘see’, and interact with, which often has an easy-to-use web interface. This application layer can be in a variety of fields including astronomy, biochemistry, climatology, physics, and mathematics.
The back-end consists of the hardware and the software architecture that delivers the data you see on the front-end. The client software must also be able to communicate with the individual project’s server and send on any relevant data it has processed. It does this through an ‘agent’ or’ broker’, another software layer called ‘middleware’.
The computer then uses its unused computer cycles to run scientific computing applications, often to analyse data and perform calculations. The results are then sent back to the scientists or researchers once they are complete via middleware.Want to find out more about the architecture in distributed computing visit GridCafe.