Distributed Systems - George Coulouris (Pearson New Delhi, 2012)