Course Content
Syllabus
23CSE101 CLOUD AND DISTRIBUTED COMPUTING L T P J C 3 0 0 0 3 COURSE OBJECTIVE The course will enable the students 1 To learn the concepts of cloud and virtual machine• 2 To understand different approaches of network Virtualization• 3 To study the basics of distributed algorithms. • 4 To study about and cloud storage and management. • 5 To be aware of different cloud applications. UNIT I INTRODUCTION TO CLOUDS, VIRTUALIZATION AND VIRTUAL MACHINE 9 Introduction to Cloud Computing: Why Clouds, What is a Cloud,Whats new in todays Clouds, Cloud computing vs. Distributed computing, Utility computing, Features of today’s Clouds: Massive scale, AAS Classification: HaaS, IaaS, PaaS, SaaS, Data-intensive Computing, New Cloud Paradigms, Categories of Clouds: Private clouds, Public clouds Virtualization: What’s virtualization, Benefits of Virtualization, Virtualization Models: Bare metal, Hosted hypervisor - Types of Virtualization: Processor virtualization, Memory virtualization, Full virtualization, Para virtualization, Device virtualization - Hotspot Mitigation for Virtual Machine Migration: Enterprise Data Centers, Data Center Workloads, Provisioning methods, Sandipiper Architecture, Resource provisioning, Black-box approach, Gray-box approach, Live VM Migration Stages, Hotspot Mitigation UNIT II NETWORK VIRTUALIZATION AND GEO-DISTRIBUTED CLOUDS 9 Server Virtualization: Methods of virtualization: Using Docker,Using Linux containers, Approaches for Networking of VMs: Hardware approach: Single-root I/O virtualization (SR-IOV), Software approach: Open vSwitch, Mininet and its applications - Software Defined Network: Key ideas of SDN, Evolution of SDN,SDN challenges, Multi-tenant Data Centers: The challenges, Network virtualization, Case Study: VL2, NVP - Geo-distributed Cloud Data Centers: Inter-Data Center Networking, Data center interconnection techniques: MPLS, Google’s B4 and Microsoft’s Swan Leader Election in Rings (Classical Distributed Algorithms): LeLann-Chang-Roberts (LCR) algorithm, The Hirschberg and Sinclair (HS) algorithm UNIT III CLASSICAL DISTRIBUTED ALGORITHMS AND THE INDUSTRY SYSTEMS 9 Time and Clock Synchronization in Cloud Data Centers: Synchronization in the cloud, Key challenges, Clock Skew, Clock Drift, External and Internal clock synchronization, Christians algorithm, Error bounds, Network time protocol (NTP), Berkley’s algorithm, Datacenter time protocol (DTP), Logical (or Lamport) ordering, Lamport timestamps, Vector timestamps- Global State and Snapshot Recording Algorithms: Global state, Issues in Recording a Global State, Model of Communication, Snapshot algorithm: Chandy-Lamport Algorithm - Distributed Mutual Exclusion: Mutual Exclusion in Cloud, Central algorithm, Ring-based Mutual Exclusion, Lamport’s algorithm, Ricart-Agrawala’s algorithm, Quorum-based Mutual Exclusion, Maekawa’s algorithm, Problem of Deadlocks, Handling Deadlocks, Industry Mutual Exclusion : Chubby UNIT IV CLOUD STORAGE: KEY-VALUE STORES/NOSQL 9 Design of Key-Value Stores: Key-value Abstraction, Key-value/NoSQL Data Model, Design of Apache Cassandra, Data Placement Strategies, Snitches, Writes, Bloom Filter, Compaction, Deletes, Read, Membership, CAP Theorem, Eventual Consistency, Consistency levels in Cassandra, Consistency Solutions - Design of HBase: What is HBase, HBase Architecture, Components, Data model, Storage Hierarchy, Cross-Datacenter Replication, Auto Sharding and Distribution, Bloom Filter, Fold, Store, and Shift. Peer to Peer Systems in Cloud Computing: Napster, Gnutella, FastTrack, BitTorrent, DHT, Chord, Pastry and Kelips. UNIT V CLOUD APPLICATIONS: MAPREDUCE, SPARK AND APACHE KAFKA 9 MapReduce: Paradigm, Programming Model, Applications, Scheduling, Fault-Tolerance, Implementation Overview, Examples - Introduction to Spark: Resilient Distributed Datasets (RDDs), RDD Operations, Spark applications: Page Rank Algorithm, GraphX, GraphX API, GraphX working - Introduction to Kafka: What is Kafka, Use cases for Kafka, Data model, Architecture, Types of messaging systems, Importance of brokers L: 45 P:0 J:0 TOTAL: 45 PERIODS TEXT BOOKS 1 Distributed and Cloud Computing From Parallel Processing to the Internet of Things- Kai Hwang, Jack Dongarra, Geoffrey Fox 2 Cloud Computing: Principles and Paradigms, Editors: Rajkumar Buyya, James Broberg, Andrzej M. Goscinski, Wile, 2011 3 Distributed Computing: Principles, Algorithms, and Systems- Ajay D. Kshemkalyani and Mukesh Singhal 4 Distributed Computing: Fundamentals, Simulations and Advanced Topics-Hagit Attiya and Jennifer Welch REFERENCES 1 https://archive.nptel.ac.in/content/syllabus_pdf/106104182.pdf 2 Cloud Computing Bible, Barrie Sosinsky, Wiley-India, 2010 3 Cloud Computing: Principles, Systems and Applications, Editors: Nikos Antonopoulos, Lee Gillam, Springer, 2012 COURSE OUTCOMES At the end of this course, the students will able to CO1 Learn the concepts of cloud and virtual machine• CO2 Understand different approaches of network Virtualization• CO3 Study the basics of distributed algorithms. • CO4 Study about and cloud storage and management. • CO5 Aware of different cloud applications.
Unit 2 – NETWORK VIRTUALIZATION AND GEO-DISTRIBUTED CLOUDS
CLOUD AND DISTRIBUTED COMPUTING-23CSE101