Ds PDF
Ds PDF
OF CSE
PREPARED BY
Ms.S. ABIKAYIL AARTHI, AP/CSE
UNIT I INTRODUCTION 8
Introduction: Definition-Relation to Computer System Components – Motivation – Message -Passing
Systems versus Shared Memory Systems – Primitives for Distributed Communication – Synchronous
versus Asynchronous Executions – Design Issues and Challenges; A Model of Distributed
Computations: A Distributed Program – A Model of Distributed Executions – Models of
Communication Networks – Global State of a Distributed System.
TOTAL: 45 PERIODS
COURSE OBJECTIVE
The student should be made:
1. To introduce the computation and communication models of distributed systems.
2. To illustrate the issues of synchronization and collection of information in distributed
systems.
3. To describe distributed mutual exclusion and distributed deadlock detection techniques.
4. To elucidate agreement protocols and fault tolerance mechanisms in distributed systems.
5. To explain the cloud computing models and the underlying concepts.
TEXT BOOK
T1. Kshemkalyani Ajay D, Mukesh Singhal, “Distributed Computing: Principles, Algorithms
and Systems”, Cambridge Press, 2011.
T2. Mukesh Singhal, Niranjan G Shivaratri, “Advanced Concepts in Operating systems”,
Mc-Graw Hill Publishers, 1994.
REFERENCE BOOKS
1. George Coulouris, Jean Dollimore, Time Kindberg, “Distributed Systems Concepts and
Design”, Fifth Edition, Pearson Education, 2012.
2. Pradeep L Sinha, “Distributed Operating Systems: Concepts and Design”, Prentice Hall of
India, 2007.
3. Tanenbaum A S, Van Steen M, “Distributed Systems: Principles and Paradigms”, Pearson
Education, 2007.
4. Liu M L, “Distributed Computing: Principles and Applications”, Pearson Education, 2004.
5. Nancy A Lynch, “Distributed Algorithms”, Morgan Kaufman Publishers, 2003.
6. Arshdeep Bagga, Vijay Madisetti, “ Cloud Computing: A Hands-On Approach”,
WEB RESOURCES
No. of Cumulative
Topic Books for Teaching
Topic Page Hours No. of
No Reference Methodology
No. Required periods
UNIT I INTRODUCTION (8+1)
Introduction: Definition-Relation to
1. T1 1-2 BB/PPT 1 1
Computer System Components
2. Motivation – T1 3 BB/PPT 1 2
Message - Passing system versus
3. shared memory systems T1 11-13 BB/PPT 1 3
Primitives for distributed 1 4
4. T1 14-18 L.VIDEO
communication
Synchronous versus Asynchronous T1 19-21 1 5
5. BB/PPT
Executions W1 W1
6. Design Issues and challenges T1 22-32 BB/PPT 1 6
A Model of distributed 1 7
7. computations – A distributed T1 39-40 SEMINAR
Program
A Model of Distributed Executions- 1 8
8. T1 40-42 BB/PPT
Model of communication Networks
9. Global State of a Distributed System T1 43-45 BB/PPT 1 9
LEARNING OUTCOME
Upon the completion of this unit, students should be able to
Know about communication models of distributed systems.
Explore the foundations of distributed systems.
Understand the computation models of distributed systems.
UNIT II LOGICAL TIME AND GLOBAL STATE (10+1)
Logical Time : Physical clock 50-52
10. T1 BB/PPT 1 10
synchronization: NTP 78-81
A Framework for a System of
11. T1 52-53 L.VIDEO 1 11
Logical Clocks
12. Scalar Time – Vector Time T1 53-55 BB/PPT 1 12
Message Ordering and Group
13. Communication: Message Ordering T1 189-94 BB/PPT 1 13
Paradigms
Asynchronous Execution with 195-
14. T1 BB/PPT 1 14
Synchronous Communication 199
Synchronous Program order on 200-
15. T1 BB/PPT 1 15
Asynchronous system 204
Group communication- causal order 205-
T1
16. – Total order 219 99- BB/PPT 2 17
R3 107
Global State and Snapshot 87-89
T1
17. Recording Algorithms: Introduction 617- BB/PPT 1 18
R5
632
18. System Model and Definitions T1 90-92 SEMINAR 1 19
Snapshot Algorithms for FIFO
19. T1 93-97 BB/PPT 1 20
Channels.
LEARNING OUTCOME
Upon the completion of this unit, students should be able to
Exemplify the issues of synchronization.
Know about collection of information in distributed systems.
Analyze the state consistency problems.
UNIT III DISTRIBUTED MUTED AND DEADLOCK (10+1)
No. of Cumulative
Topic Books for Page Teaching Hours No. of
No Topic Reference Methodology Required periods
No.
Distributed Mutual exclusion
20. T1 305-306 BB/PPT 1 21
Algorithms: Introduction
21. Preliminaries T1 306-308 SEMINAR 1 22
T2 125-128
22. Lamport’s algorithm BB/PPT 1 23
W2 W2
T1 312-315
23. Ricart-Agrawala’s Algorithm BB/PPT 2 25
T2 128-131
Token-Based Algorithms -
24. Suzuki-Kasami’s Broadcast T1 336-338 BB/PPT 1 26
Algorithm
Deadlock Detection in
Distributed Systems: T1 352-354
25. BB/PPT 2 28
Introduction- System Model – R2 305-331
Preliminaries
26. Models of Deadlocks T1 355-357 L.VIDEO 1 29
Chandy- Misra Haas Algorithm
27. T1 362-364 BB/PPT 2 31
for the AND model and OR Model
LEARNING OUTCOME
Upon the completion of this unit, students should be able to
Understand distributed mutual exclusions.
Know about distributed deadlock detection techniques.
Possess knowledge on Models of deadlock.
UNIT IV CONSENSUS AND RECOVERY (10+1)
Consensus and Agreement T1 510-514
BB/PPT 1 32
28. Algorithms: Problem Definition R1 451-461
Agreement in aFailure-Free
29. System (Synchronous and T1 514-515 L.VIDEO 1 33
Asynchronous)
Agreement in Synchronous
30. T1 515-516 BB/PPT 1 34
Systems withFailures
Check pointing and Rollback T1 456-457
31. BB/PPT 2 36
Recovery: Introduction T2 312-314
Background and Definitions –
32. T1 457-463 BB/PPT 2 38
Issuesin Failure Recovery
33. Checkpoint-based Recovery T1 464-470 SEMINAR 1 39
Coordinated Check pointing
34. T2 308- 312 BB/PPT 2 41
Algorithm
Algorithm for Asynchronous
35. T2 314-318 BB/PPT 1 42
Check pointing and Recovery
LEARNING OUTCOME
Upon the completion of this unit, students should be able to
Know how to apply working model of consensus.
Analyze the reliability of distributed systems.
To elucidate agreement protocols and fault tolerance mechanisms.
UNIT V CLOUD COMPUTING (7+1)
No. of Cumulative
Topic Books for Teaching
Topic Page Hours No. of
No Reference Methodology
No. Required periods
Definition of Cloud Computing –
36. R6 1-20 L.VIDEO 1 43
Characteristics of Cloud
Cloud Deployment Models -
37. R6 20-23 SEMINAR 1 44
Cloud service Models
Driving Factors and Challenges of
38. R6 39-40 BB/PPT 1 45
Cloud
49. Virtualization W3 W3 NPTEL 1 46
Load Balancing – Scalability and
R2 355-366
40. Elasticity BB/PPT 1 47
R4 93-94
41. Replication – Monitoring R6 47-51 BB/PPT 1 48
Cloud Services and Platforms-
42. R6 63-66 BB/PPT 1 49
Compute Services
Storage Services – Application
43. R6 67-80 BB/PPT 1 50
Services
LEARNING OUTCOME
Upon the completion of this unit, students should be able to
Know about fundamentals of cloud computing
Understand the models in cloud computing
Identify the services and platforms of cloud computing.
COURSE OUTCOME
Upon the completion of this course, the student will be able to
CO1: Explain the foundations of distributed systems (K2)
CO2: Solve synchronization and state consistency problems (K3)
CO3 Use resource sharing techniques in distributed systems (K3)
CO4: Apply working model of consensus and reliability of distributed systems (K3)
CO5: Explain the fundamentals of cloud computing (K2)
ASSESSMENT NO. I II
Topic Nos. 1-23 24-44
Date
ASSIGNMENT DETAILS
ASSIGNMENT I II
Topic Nos. for reference 1-23 24-44
Deadline Before CAT-I Before CAT-II
Class Strength: 63
Assignment - I (Marks: 40) Topics for Reference (1-23)
Level – 1 No. of Students: 11 Activities: Picture Prompt
Slow
Activity: Picture Prompt
Learner
Evaluation
Q. No. Roll No Name of student Assignment Topics
L1Q1 21CS06 ARUL. B Communication Networks
L1Q2 21CS10 DHANUSHRAJ. D Message Passing System
L1Q3 21CS13 GAYATHIRI S Vector Time Definition : 10
L1Q4 21CS24 KARTHIK. V Logical Time Marks
L1Q5 21CS36 MURUGAESWARI A Distributed Systems Picture : 20
L1Q6 21CS43 PRASANNA R Snapshot Recording Algorithms Marks
L1Q7 21CS51 SHASHANK S Asynchronous Executions Tags:10Marks
L1Q8 21CS60 GOVINDHAVASAN K FIFI channels
L1Q9 21CS61 KANNA N Message Ordering Paradigms
L1Q10 21CS62 KISHORE B Global State
L1Q11 21CS64 YUVARAJ CHINAAIYA Synchronous communication
Level – 2 No. of Students: 17
Average Activities: Power Point Presentation & Seminar Evaluation
Learner
Activity: Power Point Presentation
Q. No. Roll No Name of student Assignment Topics
L2Q1 21CS01 AAKASH S Scalar Time
L2Q2 21CS03 AARTHI S Total Order PPT: 15 Marks
L2Q3 21CS05 ARAVINDH S Design Issues and Challenges Content:
L2Q4 21CS08 ASMA S Shared memory systems 10Marks
L2Q5 21CS20 JANARTHANAN P Physical clock synchronization Report:
L2Q6 21CS21 JEEVA R System Model 15
L2Q7 21CS22 JEEVESH P S Frame work for logic clocks Marks
L2Q8 21CS31 MOHAMED ASICK A Asynchronous System
Activity: Seminar Evaluation
Snapshot Algorithms for FIFO
L2Q9 21CS34 MONESHWARAN S
Channels.
L2Q10 21CS41 PRAGATHI V Global State of distributed systems Presentation: 15
L2Q11 21CS55 SUJITH V Distributed Mutual Exclusion Marks
DBMS3.7 KCE/B. E/CSE/QB/II
FORMAT : QB 09 KCE/DEPT. OF CSE
Class Strength: 63
Assignment - II (Marks: 40) Topics for Reference (24-44)
Level – 1 No. of Students: 11 Activities: Written Assignment
Slow
Activity: Written Assignments
Learner
Evaluation
Q. No. Roll No Name of student Assignment Topics
L1Q1 21CS06 ARUL. B Token – Based algorithms
L1Q2 21CS10 DHANUSHRAJ. D Rollback recovery
L1Q3 21CS13 GAYATHIRI S Models of deadlocks
L1Q4 21CS24 KARTHIK. V Check point based recovery Poster Design:
L1Q5 21CS36 MURUGAESWARI A Replications 20 Marks
L1Q6 21CS43 PRASANNA R Compute services Presentation:2
Algorithm for Asynchronous Check 0Marks
L1Q7 21CS51 SHASHANK S
pointing
L1Q8 21CS60 GOVINDHAVASAN K Check Pointing
Chandy- Misra Haas Algorithm for the
L1Q9 21CS61 KANNA N
OR model
L1Q10 21CS62 KISHORE B Suzuki-Kasami’s Broadcast Algorithm
L1Q11 21CS64 YUVARAJ CHINAAIYA Monitoring in cloud computing
Level – 2 No. of Students: 17
Average Activities: Concept Map & Peer Teaching Evaluation
Learner
Activity: Concept Map
Q. No. Roll No Name of student Assignment Topics
L2Q1 21CS01 AAKASH S Distributed cloud archives
Technology involved in cloud PPT: 15 Marks
L2Q2 21CS03 AARTHI S
computing Content:
Distributed generation with an 10Marks
L2Q3 21CS05 ARAVINDH S
example Report:
L2Q4 21CS08 ASMA S Soaring with technology 15
Technology involved in distributed Marks
L2Q5 21CS20 JANARTHANAN P
computing
L2Q6 21CS21 JEEVA R Core distributed computing
Applications of distributed
L2Q7 21CS22 JEEVESH P S
computing
Differences between distributed
L2Q8 21CS31 MOHAMED ASICK A
computing and cloud computing
Activity: Real Time Application on concept Evaluation
L2Q9 21CS34 MONESHWARAN S Telecommunication Networks
Computer Networks such as the
L2Q10 21CS41 PRAGATHI V Internet Algorithms :
Industrial application 10 Marks
L2Q11 21CS55 SUJITH V
Work Flow
L2Q12 21CS57 VASANTHKUMAR K Aircraft Control Systems Chart : 20
L2Q13 21CS12 DEVADHARSHINI M Industrial Control systems Marks
Massively multiplayer online games Report: 15
L2Q14 21CS16 HARIHARAN S Marks
L2Q15 21CS19 INDRANI M Defense application
L2Q16 21CS37 NANDHAKUMAR P Medical Science application
16.a, b
TOTAL 19 31 50 - - -
Approved By,
PRINCIPAL
UNIT – I
INTRODUCTION
UNDERSTAND CO1
1. Why do we need a distributed computing?
BT-L2
The Need of distributed computing are:
Scalability: Distributed computing systems are generally more scalable than centralized
systems, as they can easily add new devices or systems to the network to increase processing
and storage capacity.
Reliability: Distributed computing systems are often more reliable than centralized systems, as
they can continue to operate even if one device or system fails.
Flexibility: Distributed computing systems are generally more flexible than centralized systems,
as they can be configured and reconfigured more easily to meet changing Computing needs.
Economics: Collections of microprocessors offer a better price/performance ratio than large
mainframes.mainframes:10 times faster, 1000 times as expensive.
UNDERSTAND CO1
2. List the main characteristics of distributed computing.
BT-L2
The main challenges of distributed systems are:
Multiple Devices Horizontal Scaling
Systems
Peer – to – Peer Architecture
Shared Resources
3. Write down the key components of distributed computing REMEMBER CO1
systems. BT-L1
The key components of distributed computing systems are
Devices or Systems
Network
Resource Management
REMEMBER CO1
4. State the objectives of resource sharing model.
BT-L1
The objectives of resource sharing model are
Hardware sharing
Data sharing
Resource sharing
Service
Client-server model
Object model
REMEMBER CO1
5. List the shared resources of hardware and software.
BT-L1
Resources of Hardware
Printers
Plotters
Large disks
Resources of Software
Email, News
Video conferencing
DS 5. 13 KCE/CSE/QB/III YR/DC
Subject Code / Name: CS3551 / Distributed Computing
REMEMBER CO1
6. What is openness in distributed computing systems?
BT-L1
The degree to which a computer system can be extended and re-implemented is called as openness.
The openness of distributed systems determines the degree to which new resource-sharing services
can be added and be made available for use by a variety of client programs.
REMEMBER CO1
7. Define transparency. What are its types?
BT-L1
Transparency: The system should appear as a single unit and the interactions and complexity
between the components should be hidden from the end user.
Types: The various forms of transparency are
Transparency Description
Access Hide differences in data representation and how a resource is accessed
Location Hide where a resource is located
Migration Hide that resource may move to another location
Relocation Hide that resource may be moved to another location while in use
Replication Hide that a resource is replicated
Concurrency Hide that a resource may be shared by several competitive users
Failure Hide the failure and recovery of a resource
What are the reasons to build distributed computing UNDERSTAND CO1
8.
system? BT-L2
Functional distribution
Load distribution/balancing
Replication of processing power
Physical separation
Reliability
Economics
UNDERSTAND CO1
9. Discuss the design issues of Intranet.
BT-L2
The design issues in intranet are:
Too many organizations ignore end-users,
A new generation of employees is changing the way people work,
Organizations underestimate the cost and complexity of portal redevelopment projects,
Intranets lack fresh, relevant content and
Organizations have no governance model, or have one but don’t follow it.
REMEMBER CO1
10. List the limitations of distributed computing systems.
BT-L1
The limitations of distributed computing systems are:
Complexity
Security
Performance
REMEMBER CO1
11. Name some services and examples of Middleware.
BT-L1
The examples of middleware are :
CORBA by OMG,
DCOM by Microsoft and
Java by RMI by Sun.
The middleware services are as follows
Naming,
Security,
Transactions,
Persistent storage, and Event notification.
DS 5. 14 KCE/CSE/QB/III YR/DC
Subject Code / Name: CS3551 / Distributed Computing
REMEMBER CO1
12. Define distributed computing systems.
BT-L1
A distributed computing system is one in which components located at networked computers
communicate and coordinate their actions only by passing messages. The components interact with
each other in order to achieve a common goal.
REMEMBER CO1
19. What do you mean by ubiquitous Computing?
BT-L1
Ubiquitous: Little Computing devices are all over the place.
Ubiquitous Computing is the binding of many small, cheap computational devices that are present
in users’ physical environments, including the home, office and even natural settings.
REMEMBER CO1
20. Define Cloud Computing & Cloud
BT-L1
Cloud: The Cloud refers to accessing computer, information technology (IT), and software
applications through a network connection, often by accessing data centers using wide area
networking (WAN) or Internet connectivity.
Cloud Computing : Cloud Computing, also known as on-demand Computing, is a kind of internet-
based Computing, where shared resources and information are provided to computers and other
devices on-demand. It relies on sharing Computing resources rather than having local servers or
personal devices to handle applications.
REMEMBER CO1
21. What are servers, clients, remote invocation?
BT-L1
The term server refers to a running program (a process) on a networked computer that accepts
requests from programs running on other computers to perform a service and responds
appropriately.
The requesting processes are referred to as clients, and the overall approach is known as client-
server computing.
A complete interaction between a client and a server, from the point when the client sends its
request to when it receives the server’s response, is called a remote invocation.
REMEMBER CO1
22. Write down the application areas of heterogeneity.
BT-L1
Networks
Computer hardware
Operating systems
Programming languages implementations by different developers.
UNDERSTAND CO1
23. What are the design issues of DC?
BT-L2
The design issues of distributed computing Consistency and replication
Process Data storage and access
Naming
24. What are the challenges faced in the designing of scalable UNDERSTAND CO1
distributed computing systems? BT-L2
The different challenges faced in the designing of scalable distributed computing systems are:
Controlling the cost of physical resources
Controlling the performance loss
Preventing software resources running out
Avoiding performance bottlenecks
25. List the techniques for dealing with failures in distributed UNDERSTAND CO1
computing systems. BT-L2
The various techniques used for dealing with failures in distributed computing systems are as
follows:
Detecting failures
Masking failures
Tolerating failures
Recovery from failures
Redundancy
DS 5. 16 KCE/CSE/QB/III YR/DC
Subject Code / Name: CS3551 / Distributed Computing
REMEMBER CO1
26. What is message passing system?
BT-L1
Message passing is a form of communication between objects, processes or other resources used in
object-oriented programming, inter-process communication and parallel Computing. The concept
of message passing makes it easier to build systems that model or simulate real-world problems.
Part-B
1. How do you classify a parallel system and brief them? (13) UNDERSTAND CO1
BT-L2
2. Compare Synchronous versus asynchronous execution. (5) UNDERSTAND CO1
BT-L2
3. What are the functions must be addressed while designing and UNDERSTAND CO1
building a distributed communication system? (13) BT-L2
DS 5. 17 KCE/CSE/QB/III YR/DC
Subject Code / Name: CS3551 / Distributed Computing
UNIT – II
LOGICAL TIME & GLOBAL STATE
Part-A
1. Name the various message ordering paradigms used in REMEMBER CO2
distributed systems. BT-L1
There are three types of message ordering paradigms available in distributed systems are
Interprocess communication
Remote invocation
Indirect communication
REMEMBER CO2
2. Define causal order execution.
BT-L1
A casual order execution is an A-execution in which, for all (s, r) and (s′, r′) ∈𝒯, (r ∼ r′ and s ≺ s′) ⇒ r
≺ r′.
• If two send events s and s′ are related by causality ordering then their corresponding receive
events r and r′ must occur in the same order at all common destinations.
• an execution that satisfies CO. s2 and s1 are related by causality but the destinations of the
corresponding messages are different. Similarly for s2 ands3.
REMEMBER CO2
3. What is message ordering communication?
BT-L1
In this type of communication multiple sender send message to a single receiver.
A selective receiver specifies unique sender from which the message transfer takes place.
REMEMBER CO2
4. What are the types of message orders?
BT-L1
The types of message orders are:
Absolute
Consistent
Casual
5. Identify the two significant factors affecting interacting UNDERSTAND CO2
process in a distributed system. BT-L2
Communication performance is often a limiting characteristics.
There is no single global notion of time since clocks on different computers tend to drift.
REMEMBER CO2
6. Define group communication.
BT-L1
Group communication systems commonly provide specific guarantees about the total ordering of
messages, such as, that if the sender of a message receives it back from the GCS, then it is certain
that it has been delivered to all other nodes in the system.
UNDERSTAND CO2
9. Differentiate persistent and non-persistent connections
BT-L2
Non-persistent Persistent
Non-persistent connection is known as HTTP 1.0 Persistent connection is known as HTTP
1.1
Server parses request, responds, and closes TCP Same TCP connection: server, parses
connection. request, responds, parses new request.
2 RTTs to fetch each object Client sends requests for all referenced
objects as soon as it receives base HTML.
Each object transfer suffers from slow start. Fewer RTTs and less slow start.
10 UNDERSTAND CO2
Differentiate RMI and RPC.
. BT-L2
RPC Remote Procedure Call RMI Remote Method Invocation
It is a type of inter process communication It is an API (Application Programming Interface)
that implements RPC in java
RPC is a mechanism that enables calling of a
RMI is the implementation of RPC in java
procedure on a remote computer
RPC is language neutral, supports primitive
RMI is limited to Java , allows passing objects
data types to be passed.
RPC is procedural like in C RMI is object oriented.
Client side RPC invokes FUNCTIONS RMI invokes METHODS through the proxy
through the proxy function function
UNDERSTAND CO2
11. State the advantages of overlay networks.
BT-L2
They enable new network services to be defined without requiring changes to the underlying
network. It encourages experimentation with network services and the customization of services to
particular classes of application. Multiple overlays can be defined and can coexist, with the end
result being a more open and extensible network architecture.
REMEMBER CO2
12. What is network virtualization?
BT-L1
Network virtualization is the process of combining hardware and software network resources and
network functionality into a single, software-based administrative entity, a virtual network.
REMEMBER CO2
13. What is architecture model in distributed system?
BT-L1
An architectural model of a distributed system defines the way in which the components of
the system interact with each other and the way in which they are mapped onto an underlying
network of computers. Examples are client-server model and the peer process model.
REMEMBER CO2
14. Define inter – process communication.
BT-L1
Inter-process communication (IPC) is a set of programming interfaces that allow a programmer to
coordinate activities among different program processes that can run concurrently in an operating
system. This allows a program to handle many user requests at the same time.
15 REMEMBER CO2
List and define the different types of system model.
. BT-L1
Physical models are describe a system; they capture the hardware composition of a system in
terms of the computers and their interconnecting networks.
Architectural models define the main components of the system, what their roles are and how
they interact, and how they are deployed in an underlying network of computers.
Fundamental models examine the individual aspects of a distributed system.
DS 5. 19 KCE/CSE/QB/III YR/DC
Subject Code / Name: CS3551 / Distributed Computing
REMEMBER CO2
20. List the various categories of middleware with example
BT-L1
The various categories of middleware are
Distributed objects CORBA
Java RMI
Distributed components Fractal SUN EJB
Publish-subscribe systems Scribe
Message queues Web sphere MQ
JMS
Web services Apache Axis
The Globus Toolkit
Peer-to-peer OceanStore
Ivy
Write short notes on clock drift rate and HTTP, FTP, Telnet, REMEMBER CO2
21.
SMTP. BT-L1
Clock drift rate refers to the rate at which a computer clock deviates from a perfect reference clock
HTTP: The Hypertext Transfer Protocol is used for communication between web browsers
and web servers
FTP: The File Transfer Protocol allows directories on a remote computer to be browsed and
files to be transferred from one computer to another over a connection.
Telnet: Telnet provides access by means of a terminal session to a remote computer.
SMTP: The Simple Mail Transfer Protocol is used to send mail between computers.
DS 5. 20 KCE/CSE/QB/III YR/DC
Subject Code / Name: CS3551 / Distributed Computing
DS 5. 21 KCE/CSE/QB/III YR/DC
Subject Code / Name: CS3551 / Distributed Computing
REMEMBER CO2
27. List the architectural elements of distributed systems.
BT-L1
a) Communicating entities c) Roles and responsibilities
i) Objects d) Placement
ii) Components
iii) Web services
b) Communication paradigms
i) Direct communication
1. Inter process communication
2. Remote invocation
3. Indirect communication
ii) Indirect communication
1. Group communication
2. Publish - subscribe systems
3. Message queues:
4. Tuple spaces
5. Distributed shared memory
UNDERSTAND CO2
28. Compare synchronous and asynchronous communication.
BT-L2
Synchronous communication Asynchronous communication
The sending and receiving processes
The sending and receiving processes not necessarily
synchronize at every message
synchronize at every message
Both send and receive are blocking
operations The use of the send operation is non-blocking
Whenever receive is issued, the process The receive operation can have blocking and non-
blocks until a message arrives blocking variants.
Part-B
1. Illustrate the necessary and sufficient conditions for causal UNDERSTAND CO2
ordering. (13) BT-L2
2. Discuss in detail about Snapshot algorithms for FIFO channels. UNDERSTAND CO2
(13) BT-L2
3. Write algorithm for snapshot for FIFO channels. (13) UNDERSTAND CO2
BT-L2
4. Write short notes on message ordering paradigms. (13) UNDERSTAND CO2
BT-L2
5. Explain in detail about asynchronous execution with UNDERSTAND CO2
synchronous communication? (13) BT-L2
6. Compare the various types of system models in distributed UNDERSTAND CO2
environment. (13) BT-L2
7. List and explain the parts of a distributed object model. (13) UNDERSTAND CO2
BT-L2
DS 5. 22 KCE/CSE/QB/III YR/DC
Subject Code / Name: CS3551 / Distributed Computing
UNIT III
DISTRIBUTED MUTEX & DEADLOCK
Part-A
REMEMBER CO3
1. What are the different models of deadlocks?
BT-L1
There two types of deadlock available :
Resource Deadlock.
Occurs when processes are trying to get exclusive access to devices, files, locks, servers, or other
resources.
Communication Deadlock.
In a distributed system, a set of processes may sometimes get involved in a communication deadlock.
This is a situation where each process in the group waits for some process to communicate with it,
but no other process is attempting communication
2. What is the purpose of the wait-for-graph (WFG)? Give an UNDERSTAND CO3
example for WFG. BT-L2
A wait-for graph can be used to represent the waiting relationships between current transactions. In a
wait-for graph the nodes represent transactions and the edges represent wait for relationships
between transactions. Following figure represents a wait-for-graph with transactions.
DS 5. 23 KCE/CSE/QB/III YR/DC
Subject Code / Name: CS3551 / Distributed Computing
REMEMBER CO3
4. Give the characteristics of peer-to-peer middleware.
BT-L1
Programs are executed concurrently, support for resource sharing.
Openness
Concurrency
Scalability
Fault Tolerance (Reliability)
Components can fail independently (isolation, crash)
REMEMBER CO3
5. What is naming?
BT-L1
Naming is just mapping between logical and physical objects. Names are used to identify the entities.
The purpose of naming is to share resources and to uniquely identify entities as well as refer locations.
DS 5. 24 KCE/CSE/QB/III YR/DC
Subject Code / Name: CS3551 / Distributed Computing
REMEMBER CO3
16. Write short notes on mutex variable.
BT-L1
Mutex variable is like a binary semaphore that is always in one of the two states locked or unlocked. It
is used to implement mutual exclusion techniques. A thread that wants to execute in a critical region
performs a lock operation over the mutex variable which has to be in unlocked state.
REMEMBER CO3
17. Mention the types of mutex variables.
BT-L1
Fast – Fast mutex variable causes a thread to block when the thread attempts to lock an already
locked mutex variable.
Recursive – It allows a thread to lock an already locked mutex variable.
Non-recursive – It neither allows a thread to lock an already locked mutex variable nor causes
the thread to block
REMEMBER CO3
18. List the classes of Knapp’s classification.
BT-L1
Knapp’s classification can be divided into four classes:
path-pushing
edge-chasing
diffusion computation
global state detection
REMEMBER CO3
19. Define critical region.
BT-L1
A segment of code in which a thread may be accessing some shared variable is called critical region.
Multiple threads should not access the same data simultaneously. Hence the execution of critical
regions in which the same data is accessed by the threads must be mutually exclusive in time.
DS 5. 25 KCE/CSE/QB/III YR/DC
Subject Code / Name: CS3551 / Distributed Computing
REMEMBER CO3
20. What is deadlock?
BT-L1
A Deadlock is a condition in a system where a set of processes have request for resource that can
never be satisfied. Essentially a process cannot proceed because it needs to obtain a resource held by
another process but it itself is holding a resource that the other process needs.
21. List the condition of deadlock avoidance. REMEMBER CO3
BT-L1
There are four conditions to avoid deadlock:
Mutual exclusion
No preemption
Circular wait
Hold and wait
REMEMBER CO3
22. How is distributed dead lock detected?
BT-L1
In a distributed system involving multiple servers being accessed by multiple transactions, a global
wait-for-graph has to be constructed. If and only if there is a cycle in the wait-for-graph a distributed
deadlock is said to be detected. Hence detection of a distributed deadlock requires a cycle to be found
in the global transaction wait-for graph.
REMEMBER CO3
23. What is a phantom deadlock?
BT-L1
A deadlock that is ‘detected’ but is not really a deadlock is called a phantom deadlock.
In distributed system if there is a deadlock, the necessary information will eventually be
collected in one place and a cycle will be detected.
As this procedure will take some time, there is a chance that one of the transactions that holds a
lock will meanwhile have released it, in which case the deadlock will no longer exist.
This is a sample case for phantom deadlocks.
REMEMBER CO3
24. List the advantages of distributed file systems.
BT-L1
The various advantages of distributed file systems are
Remote information sharing
User mobility
Availability
Diskless workstations
UNDERSTAND CO3
25. What are the advantages of replication?
BT-L2
The advantages of replication are
Reduced network traffic
Improved system throughput
Better scalability
Autonomous operation.
REMEMBER CO3
27. List the models of deadlock.
BT-L1
There are four types of deadlock models:
Single resource model
AND model
OR model
AND-OR model
DS 5. 26 KCE/CSE/QB/III YR/DC
Subject Code / Name: CS3551 / Distributed Computing
PART - B
PART – C
UNDERSTAND
2 Perform a Case study on Tapestry. (15) CO3
BT-L2
DS 5. 27 KCE/CSE/QB/III YR/DC
Subject Code / Name: CS3551 / Distributed Computing
UNIT – IV
CONSENSUS & RECOVERY
Part-A
REMEMBER
1. What do you mean by local check points? CO4
BT-L1
In the distributed computing environment, check pointing is a technique that helps tolerate failures that
otherwise would force long-running application to restart from the beginning. In the uncoordinated check
pointing, each process checkpoints its own state independently.
2. What is the drawback of a checkpoint based rollback REMEMBER
CO4
recovery approach? BT-L1
The drawback of a checkpoint based rollback recovery approach are:
Messages induce inter-process dependencies during failure-free operation.
The dependencies may force some of the processes that did not fail to roll back – This
phenomenon is called “domino effect”
REMEMBER CO4
3. What is roll back propagation?
BT-L1
The dependencies may force some of the processes that did not fail to roll back .This phenomenon is
called rollback propagation.
REMEMBER CO4
4. Define uncoordinated check pointing.
BT-L1
If each process takes its checkpoints independently, then the system can not avoid the domino effect.
This scheme is called independent or uncoordinated check pointing.
REMEMBER CO4
5. Write short notes on consistent cut.
BT-L1
Consistent Cut :
A cut that obeys causality .
A cut C is a consistent cut if and only if:
For(each pair of events e,f in the system)
such that event e is in the cut C, and if f e (f happens-before e)
Then : Event f is also in the cut C.
UNDERSTAND CO4
6. What are the rules to abort the nested transaction?
BT-L2
The rules to abort the nested transaction are
The transactions commit/abort only after its child have completed.
After completing, subtransaction makes independent decision either to commit provisionally or
to abort.
When parent aborts, all of its subtransactions are aborted.
When subtransaction aborts, parent can decide whether to abort or not.
Top-level transaction commits all of the provisionally committed subtransactions can commit
too.
REMEMBER CO4
7. List the techniques to avoid domino effect.
BT-L1
The techniques to avoid domino effect are
Coordinated check pointing rollback recovery
Communication-induced check pointing rollback recovery
Log-based rollback recovery
REMEMBER CO4
8. What is consistent global state?
BT-L1
A global state that may occur during a failure-free execution of distributed computation is a consistent
global state. If a process's state reflects a message receipt, then the state of the corresponding sender
must reflect the sending of the message.
DS 5. 28 KCE/CSE/QB/III YR/DC
Subject Code / Name: CS3551 / Distributed Computing
REMEMBER CO4
9. List the types of co ordinate check pointing.
BT-L1
There are two types of co ordinate check pointing:
Blocking
Non blocking
REMEMBER CO4
10. What is consensus in distributed system?
BT-L1
A fundamental problem in distributed computing and multi-agent systems is to achieve
overall system reliability in the presence of a number of faulty processes. This often requires processes
to agree on some data value that is needed during computation. This situation called consensus.
REMEMBER CO4
11. What is agreement problem in distributed system?
BT-L1
Agreement protocol helps us to decide or agree on a value in presence of failures.
Agreement Problem: Agreement is a fundamental problem in distributed computing systems to
achieve overall system reliability in the presence of a number of faulty processes.
REMEMBER CO4
12. What is mean by fault tolerance?
BT-L1
Fault tolerance is the property that enables a system to continue operating properly in the
event of the failure of (or one or more faults within) some of its components.
It is an algorithmic controlling of the distributed system's components to provide the desired
service despite the presence of certain failures in the system by exploiting redundancy in space
and time.
REMEMBER CO4
13. Define Clock.
BT-L1
The operation of most digital circuit systems, such as computer systems is synchronized by a periodic
signal known as a "clock" that dictates the sequence and pacing of the devices on the circuit.
REMEMBER CO4
14. What is Coordinated Universal Time?
BT-L1
Coordinated Universal Time (abbreviated as UTC, and therefore often spelled out as Universal Time
Coordinated and sometimes as Universal Coordinated Time) is the standard time common to every
place in the world. Formerly and still widely called Greenwich Mean Time (GMT) and also World Time,
UTC nominally reflects the mean solar time along the Earth's prime meridian.
Write down the assumptions of the ‘snapshot’ UNDERSTAND CO4
15.
algorithm of Chandy and Lamport BT-L2
The various assumptions of the ‘snapshot’ algorithm are
Neither channels nor processes fail – communication is reliable so that every message sent is
eventually received intact, exactly once.
Channels are unidirectional and provide FIFO-ordered message delivery.
The graph of processes and channels is strongly connected (there is a path between any two
processes).
Any process may initiate a global snapshot at any time.
The processes may continue their execution and send and receive normal messages while the
snapshot takes place.
REMEMBER CO4
16. What are the requirements of consensus algorithms?
BT-L1
The requirements of a consensus algorithms are that the following conditions should hold for every
execution of it:
Termination
Agreement
Integrity
DS 5. 29 KCE/CSE/QB/III YR/DC
Subject Code / Name: CS3551 / Distributed Computing
Mention the role of central server algorithm, ring based UNDERSTAND CO4
17.
algorithm and election algorithm in mutual exclusion. BT-L2
Central Server Algorithm: The simplest way to achieve mutual exclusion is to employ a server
that grants permission to enter the critical section with the help of central server algorithm.
A ring-based Algorithm: One of the simplest ways to arrange mutual exclusion between the N
processes without requiring an additional process is to arrange them in a logical ring.
Election Algorithm : An algorithm for choosing a unique process to play a particular role is
called an election Algorithm
18. Define transaction. Write down the phases of transaction. REMEMBER CO4
BT-L1
A transaction defines a sequence of server operations that is guaranteed by the server to be
atomic in the presence of multiple clients and server crashes.
The phases of transactions are
Working phase,
Validation phase and Update phase.
REMEMBER CO4
19. What is rollback recovery?
BT-L1
Rollback recovery treats a distributed system application as a collection of processes that com-
municate over a network.
It achieves fault tolerance by periodically saving the state of a process during the failure-free
execution, and restarting from a saved state upon a failure to reduce the amount of lost work.
UNDERSTAND CO4
20. Why is fault tolerant important?
BT-L2
The importance of implementing a fault tolerance system:
Fault tolerance on a system is a feature that enables a system to continue with its operations
even when there is a failure on one part of the system.
The system can continue its operations at a reduced level rather than be failing completely.
REMEMBER CO4
21. Define replication
BT-L1
Replication is a key to providing high availability and fault tolerance in distributed systems.
Replication is a technique for enhancing services.
The motivations for replication include:
Performance enhancement
Increased availability
Fault tolerance
REMEMBER CO4
22. Write short notes on failure detector.
BT-L1
A failure detector is a service that processes queries about whether a particular process has
failed.
It is often implemented by an object local to each process that runs failure detection algorithms
in conjunction with its counterparts at the other processes.
REMEMBER CO4
23. List the properties of failure detector.
BT-L1
The properties of failure detector includes
A result of unsuspected
A result of Suspected
DS 5. 30 KCE/CSE/QB/III YR/DC
Subject Code / Name: CS3551 / Distributed Computing
1. What are the key assumptions underlying while designing UNDERSTAND CO4
agreement algorithms and brief them ? (13) BT-L2
2. Describe the issues involved in a failure recovery with the UNDERSTAND CO4
help of a distributed computation. (13) BT-L2
UNDERSTAND CO4
3. Explain the concept of checkpoint recovery. (13)
BT-L2
UNDERSTAND CO4
4. Explain the concept of roll back recovery. (13)
BT-L2
UNDERSTAND CO4
5. How to solve issues in failure recovery. (13)
BT-L2
Write down the steps on consensus and agreement UNDERSTAND CO4
6. BT-L2
algorithms. (13)
UNDERSTAND CO4
7. Discuss the concept of log based recovery. (13)
BT-L2
Write an algorithm for asynchronous check pointing and UNDERSTAND CO4
8.
recovery. (13) BT-L2
Write the steps for coordinated check pointing algorithm. UNDERSTAND CO4
9.
(13) BT-L2
UNDERSTAND CO4
10. How to identify free system failure agreement. (13)
BT-L2
Compare synchronous system failure and Asynchronous UNDERSTAND CO2
11.
system failure. (13) BT-L2
UNDERSTAND CO4
12. How to justify a system with failure mode? (13)
BT-L2
What are the recovery models to be used in failure system? REMEMBER CO4
13.
(13) BT-L1
14. What are the issues handled by a checkpoint recovery UNDERSTAND CO4
model? (13) BT-L2
15. Compare log based recovery and roll back recovery in UNDERSTAND CO4
failure system. (13) BT-L2
16. Brief the consensus agreement procedure in failure system. UNDERSTAND CO4
(13) BT-L2
17. Discuss about the issues encountered in designing a UNDERSTAND CO4
synchronous free system. (13) BT-L2
DS 5. 31 KCE/CSE/QB/III YR/DC
Subject Code / Name: CS3551 / Distributed Computing
Part-C
1. External synchronization ensures internal
UNDERSTAND
synchronization. But the vice versa does not stand true. CO4
BT-L2
Justify. Explain Lamport’s algorithm in brief. (15)
2. Write case study on a single system in failure mode .How
APPLY
to identify the failure mode. What are the recovery model CO4
BT-L3
to be used in failure system? (15)
UNIT – V
CLOUD COMPUTING
Part-A
UNDERSTAND
1. Define Cloud Computing. CO5
BT-L2
A Cloud is a type of parallel and distributed system consisting of a collection of interconnected and
virtualized computers. They are dynamically provisioned and presented as one or more unified
Computing resources based on service-level agreements established through negotiation between
the service provider and consumers.
2. What is the difference between private and public UNDERSTAND CO5
Cloud? BT-L2
Private Cloud Public Cloud
DS 5. 33 KCE/CSE/QB/III YR/DC
Subject Code / Name: CS3551 / Distributed Computing
REMEMBER CO5
12. What is virtualization in Cloud Computing?
BT-L1
Virtualization is a computer architecture technology by which multiple virtual machines are
multiplexed in the same hardware machine.
The purpose of a VM is to resource sharing by many users and improves computer performance
in terms of resource utilization and application flexibility.
Software libraries can be virtualized.
13. List the actors in Cloud Computing. REMEMBER CO5
BT-L1
The five major participating actors in Cloud Computing are
Cloud Consumer
Cloud Provider
Cloud Broker
Cloud Auditor
Cloud Carrier.
REMEMBER CO5
14. List the implementation levels of virtualization.
BT-L1
The implementation levels of virtualizations are
Application level.
Library support level.
Operating system level.
Hardware Abstraction layer level.
Instruction Set Architecture level.
REMEMBER CO5
15. Mention the characteristics features of Cloud.
BT-L1
The characteristic features of Cloud are
On-demand self-service
Broad network access
Multi-Tenancy and resource pooling
Rapid elasticity
UNDERSTAND CO5
16. List the advantages of active replication.
BT-L2
The advantages of active replications are
It is a really simple. The code in active replication is the same throughout.
It is transparent.
Even if a node fails, it will be easily handled by replicas of that node.
17. Why do we require replication? UNDERSTAND CO5
BT-L2
If a node stops working, the distributed network will still work fine due to its replicas which
will be there.
It also helps in load sharing where loads on a server are shared among different replicas.
It enhances the availability of the data , if the replicas are created and data is stored near to
the consumers, it would be easier and faster to fetch data.
18. Define Cloud storage with examples. UNDERSTAND CO5
BT-L2
Cloud storage is a Cloud Computing model that stores data on the internet through a Cloud
Computing provider who manages and operates data storage as a service.
Store data can be accessed from anywhere and in anytime over Internet
Example: Apple (iCloud), Amazon , Drop box and Google.
DS 5. 34 KCE/CSE/QB/III YR/DC
Subject Code / Name: CS3551 / Distributed Computing
DS 5. 35 KCE/CSE/QB/III YR/DC
Subject Code / Name: CS3551 / Distributed Computing
PART - B
1. UNDERSTAND
What is virtualization? What are the benefits? (13) CO5
BT-L2
2. Describe in detail about Distributed Shared Memory (DSM) UNDERSTAND
CO2
and its application. (13) BT-L2
3. REMEMBER
Give overview of applications in Cloud Computing? (13) CO3
BT-L1
4. Distinctions between IP and overlay routing for peer to peer UNDERSTAND
CO2
applications. (13) BT-L2
REMEMBER
5. Discuss about various types of Clouds. (13) CO2
BT-L1
6. Explain in detail about Cloud Computing reference models. UNDERSTAND
CO5
(13) BT-L2
7. Explain in detail about Cloud security policy implementation. UNDERSTAND
CO5
(13) BT-L2
8. Give overview of applications of Cloud Computing. (13) UNDERSTAND
CO5
BT-L2
9. What are the main characteristics of platform-as-a-service UNDERSTAND
CO5
solution? (13) BT-L2
10. What are the different approaches to Cloud software UNDERSTAND
CO2
requirement engineering? (13) BT-L2
11. What are the basic requirements of secure Cloud software? UNDERSTAND
CO5
(13) BT-L2
12. Differentiate distributed computing and Cloud Computing. UNDERSTAND
CO5
(13) BT-L2
13. Draw and explain the virtualization reference model with REMEMBER
CO5
examples. (13) BT-L1
14. Why is virtualization of memory and I/O devices required in UNDERSTAND
CO5
Cloud environment? (13) BT-L2
15. List the name of the vendors who provide Cloud service to UNDERSTAND
CO5
users. (13) BT-L2
16. Give short notes on Cloud security governance challenges. REMEMBER
CO5
(13) BT-L1
17. Briefly explain about application services of Cloud resources? UNDERSTAND
CO5
(13) BT-L2
PART - C
Perform a Case study on Services and challenges of Cloud. APPLY
1. CO5
(15) BT-L3
Analyze how virtualization technology supports Cloud APPLY
2. CO5
Computing. (15) BT-L3
UNDERSTAND CO5
3. Write a brief note on Cloud services and platforms. (15)
BT-L2
DS 5. 36 KCE/CSE/QB/III YR/DC