Distributed and parallel systems :cluster and grid computing