Distributed, cluster and grid computing