Distributed and Cloud Computing

From Parallel Processing to the Internet of Things


  • Kai Hwang, University of Southern California, USA
  • Jack Dongarra, University of Tennessee, USA
  • Geoffrey Fox, Indiana University, USA

Distributed and Cloud Computing, named a 2012 Outstanding Academic Title by the American Library Association's Choice publication, explains how to create high-performance, scalable, reliable systems, exposing the design principles, architecture, and innovative applications of parallel, distributed, and cloud computing systems.

Starting with an overview of modern distributed models, the book provides comprehensive coverage of distributed and cloud computing, including:

  • Facilitating management, debugging, migration, and disaster recovery through virtualization
  • Clustered systems for research or ecommerce applications
  • Designing systems as web services
  • Social networking systems using peer-to-peer computing
  • Principles of cloud computing using examples from open-source and commercial applications

Using examples from open-source and commercial vendors, the text describes cloud-based systems for research, e-commerce, social networking and more.

View full description


Students taking a distributed systems or distributed computing class; also professional system designers and engineers looking for a reference to the latest distributed technologies including cloud, P2P and grid computing.


Book information

  • Published: October 2011
  • ISBN: 978-0-12-385880-1


"Grid computing, peer-to-peer computing, cloud computing are emergent fields that have attracted academia and industry over the last few years. It is expected that they will have a huge impact on many areas in business, science and engineering and society at large. The timely publication of this textbook will bring the newest technologies in distributed computing to students." – Yi Pan, Dept of Computer Science, Georgia State University

"Distributed and Cloud Computing is a comprehensive and up-to-date textbook that covers the convergence of high performance computing, distributed and cloud computing, virtualization, and grid computing. The authors integrate an awareness of application and technology trends that are shaping the future of computing. The book is an excellent resource for students as well as seasoned practitioners." –Thomas J. Hacker, Associate Professor, Purdue University

"It is very well organized in nine chapters that allow readers interested in certain subtopics such as design, theory, service-oriented architecture, and resource management to find that material cohesively collected into a chapter that serves those interests. A valuable resource for students and practitioners of distributed and cloud computing. Summing Up: Highly recommended. Upper- division undergraduates, graduate students, professionals/practitioners, and general readers."--CHOICE

Table of Contents

Part 1: Systems Modeling, Clustering and Virtualization

Chapter 1: Distributed System Models and Enabling Technologies

1.1 Scalable Computing Service over The Internet

1.2 Technologies for Network-based Computing

1.3 System Models for Distributed and Cloud Computing

1.4 Software Environments for Distributed Systems and Clouds

1.5 Performance, Security, and Energy-Efficiency

1.6 Bibliographic Notes and Homework Problems

Chapter 2: Computer Clusters for Scalable Computing

2.1 Clustering for Massive Parallelism

2.2 Computer Clusters and MPP Architectures

2.3 Design Principles of Computer Clusters

2.4 Cluster Job and Resource Management

2.5 Case Studies of Supercomputyers and MPP Systems

2.6 Bibliographic Notes and Homework Problems

Chapter 3: Virtual Machines and Virtualization of Clusters and Datacenters

3.1 Implementation Levels of Virtualization

3.2 Virtualization Structures/Tools and Mechanisms

3.3 Virtualization of CPU, Memory and I/O Devices

3.4 Virtual Clusters and Resource Management

3.5 Virtualization for Datacenter Automation

3.6 Bibliographic Notes and Homework Problems

Part 2: Computing Clouds and Service-Oriented Architecture

Chapter 4: Design of Cloud Computing Platforms

4.1 Cloud Computing and Service Models

4.2 Datacenter Design and Interconnection Networks

4.3 Architecture Design of Compute and Storage Clouds

4.4 Public Cloud Platforms: GAE, AWS and Windows Azure

4.5 Cloud Resource Management and Exchanges

4.6 Cloud Security and Trust Management

4.7 References and Homework Problems

Chapter 5: Service Oriented Architectures

5.1 Services and Service Oriented Architectures

5.2 Message-Oriented Middleware

5.3 Portals and Science Gateways

5.4 Discovery, Registries, Metadata, and Databases

5.5 Workflow in Service-Oriented Architectures

5.6 Bibliographic Notes and Homework Problems

Chapter 6: Cloud Programming and Software Environments

6.1 Features of Cloud and Grid Platforms

6.2 Parallel and Distributed Programming Paradigms

6.3 Programming Support of Google App Engine

6.4 Amazon Web Services (AWS) Programming

6.5 Microsoft Azure Programming Support

6.6 Emerging Cloud Software Environments

6.7 Bibliographic Notes and Homework Problems

Part 3: Grids, P2P, and The Future Internet

Chapter 7: Grid Computing and Resource Management

7.1 Grid Architecture and Service Modeling

7.2 Case Studies of Grid Computing Systems

7.3 Grid Resource Management and Brokering

7.4 Middleware Support for Grid Resource Management

7.5 Grid Security Infrastructure in GT4

7.6 Bibliographic Notes and Homework Problems

Chapter 8: P2P Computing with Overlay Networks

8.1 Peer-to-Peer Computing Systems

8.2 P2P Overlay Networks and Properties

8.3 Routing, Proximity and Fault Tolerance

8.4 Trust and Reputation Management

8.5 P2P File Sharing and Copyright Protection

8.6 Bibliographic Notes and Homework Problems

Chapter 9: Ubiquitous Computing with Clouds and The Internet of Things

9.1 Cloud Trend To Support Ubiquitous Computing

9.2 Performance Metrics for HPC and HTC Systems

9.3 Enabling Technologies for The Internet of Things

9.4 Innovative Applications of The Internet of Things

9.5 On-Line Social and Professional Networking

9.6 Bibliographic Notes and Homework Problems