Lecture 1
Lecture 1
Lecture 1
DISTRIBUTED SYSTEM
Er. Bibat Thokar
BCA Program Coordinator, Lecturer
(Department of Computer Application)
Lecturer, Project Assistant
(Department of Computer Engineering)
Lalitpur Engineering College
MARK DISTRIBUTION
Theory Practical Total
Sessional 20 25 45
Final 80 - 80
Total 100 25 125
REFERENCE BOOKS
• George Coulouris, Jean Dollimore, Tim Kindberg, “Distributed Systems Concepts and
Design”, Third Edition, Pearson Education.
• A.S. Tanenbaum, M. VanSteen, “Distributed Systems”, Pearson Education.
• Mukesh Singhal, “Advanced Concepts in Operating Systems”, McGraw-Hill Series in
Computer Science.
PRACTICAL
• Implementation of Election Algorithm.
• Simulation for Clock Synchronization in Distributed System using Lamport’s Algorithm.
• Implementation of Banker’s Algorithm for avoiding Deadlock
• Experiment on DFS
• Case Study – CORBA,JINI, Mach, TIB/Rendezvous
INTRODUCTION
4 Hours
8 Marks (Approx.)
OUTLINES
• Introduction to Distributed Systems
• Examples of Distributed Systems
• Main Characteristics
• Advantages and Disadvantages of Distributed System
• Design Goals
• Main Problems
• Models of Distributed System
• Resource Sharing and the Web Challenges
• Types of Distributed System: Grid, Cluster, Cloud
OUTLINES
• 2.1 Introduction • 2.8 Sun Network File System
• 2.2 Communication between distributed • 2.9 Introduction to Name Services
objects • 2.10 Name Services and DNS
• 2.3 Remote Procedure Call
• 2.11 Directory and Discovery Services
• 2.4 Events And Notifications
• 2.12 Comparison of Different Distributed File
• 2.5 Java RMI Case Study Systems
• 2.6 Introduction to DFS
• 2.7 File Service Architecture
OPERATING SYSTEM
SUPPORT
3 Hours
OUTLINES
• 3.1 The operating system layer
• 3.2 Protection
• 3.3 Process and threads
• 3.4 Communication and invocation
• 3.5 Operating system architecture
DISTRIBUTED
HETEROGENEOUS
APPLICATIONS AND CORBA
3 Hours
OUTLINES
• 4.1 Heterogeneity in Distributed Systems
• 4.2 Middleware
• 4.3 Objects in Distributed Systems
• 4.4 The CORBA approach
• 4.5 CORBA services
OUTLINES
• 5.1 Time in Distributed Systems,
• 5.1.1 Physical Clocks
• 5.1.2 Logical Clocks
• 5.1.3 Vector Clocks
• 5.1.4 Clock Synchronization
• 5.2 Causal Ordering of Messages
• 5.3 Global State and State Recording
• 5.4 Distributed debugging
COORDINATION AND
AGREEMENT
4 Hours
OUTLINES
• 6.1 Mutual Exclusion in Distributed Systems
• 6.2 Algorithms for Mutual Exclusion
• 6.3 Distributed Elections
• 6.4 Multicast communication
• 6.5 Consensus
REPLICATION
4 Hours
OUTLINES
• 7.1 Reasons for Replication
• 7.2 Object Replication
• 7.3 Replication as Scaling Technique
• 7.4 Fault Tolerant Services
• 7.5 High Available Services
• 7.6 Transaction with Replicated Data
TRANSACTION AND
CONCURRENCY CONTROL
6 Hours
OUTLINES
• 8.1 Transactions • 8.7 Introduction to Distributed Transactions
• 8.2 Nested Transaction • 8.8 Flat and Nested Distributed Transactions
• 8.3 Locks • 8.9 Atomic Commit Protocols
• 8.4 Optimistic Concurrency Control • 8.10 Concurrency Control in Distributed
Transactions
• 8.5 Timestamp Ordering
• 8.6 Comparison of Methods For • 8.11 Distributed Deadlocks
Concurrency Control • 8.12 Transaction Recovery
FAULT TOLERANCE
4 Hours
OUTLINES
• 9.1 Introduction to Fault Tolerance
• 9.2 Process Resilience
• 9.3 Reliable Client Server Communication
• 9.4 Distributed Commit
• 9.5 Recovery
CASE STUDIES
5 Hours
OUTLINES
• 10.1 CORBA
• 10.2 Mach
• 10.3 JINI
• 10.4 TIB/Rendezvous
CHAPTER 1
INTRODUCTION
4 Hrs
• Internet
• Internet is the largest collection of interconnected computer networks.
• Program running on the computers interact with each other within the
internet by the mechanism of message passing.
• Basically, the internet is not a distributed system as it only provides
essential communication and connectivity channels to the distributed
system but the services provided by the internet are the distributed
systems.
• Concurrency :
• Distributed System allows the programs that share resources to
execute concurrently(i.e. at the same time).
• It is a property that enables processes running in different machines
to form a common system that is capable of executing codes on
multiple machines at the same time.
• Example: A web application is concurrent as it can be used by various
users at the same time.
• No Global Clock :
• In other to coordinate to the remote networks it is necessary to
synchronize clock in primitive technologies.
• But as there is no single correct global timing system, it is very difficult
to synchronize global clock across all the networks of the system
located at different locations.
• Distributed System does not need any global clock system to
coordinate with the network at different locations because the only
way of communication is message passing through the network.
Prepared By: Er. Bibat Thokar 6/30/2023 33
• Independent Failures :
• Computer System can fail or crash at any time.
• In primitive centralized system, if the server fails then the whole
system fails to operate leaving the negative consequences to the end
users.
• With distributed system, even one network fails, it does not hamper
the overall system.
• Workload of the failed network can be overcome by the other
networks within the system situated at different locations.
• All the nodes in the distributed system are connected to each other. So
nodes can easily share data with other nodes.
• More nodes can easily be added to the distributed system i.e. it can be
scaled as required.
• The failure of one node does not lead to the failure of the entire
distributed system. Other nodes can still communicate with each other.
• Resources like printers can be shared with multiple nodes rather than
being restricted to just one.
HETEROGENEITY
OPENNESS
SECURITY
SCALABILITY
FAILURE HANDLING
TRANSPARENCY
CONCURRENCY
• Cloud Computing
• It uses distributed computing to provide customers with highly
scalable cost-effective infrastructures and platforms.
• Cloud providers usually offer their resources through hosted services
that can be used over the internet.
• Service Models of Cloud Computing:
• Software as a service (SaaS)
• Platform as a service(PaaS)
• Infrastructure as a service (IaaS)
PLATFORM AS A SERVICE(PAAS)
• Grid Computing
• Based on the idea of a supercomputer with enormous computing
power. Servers and computers can thus perform different tasks
independently of one another.
• Advantage of this is that highly powerful systems can be quickly used
and the computing power can be scaled as needed.
• Since grid computing can create a virtual supercomputer from a
cluster of loosely interconnected computers, it is specialized in solving
problems that are particularly computationally intensive.
• This method is often used for ambitious scientific projects and
decrypting cryptographic codes.
Prepared By: Er. Bibat Thokar 6/30/2023 49
• Cluster Computing
• It can not be clearly differentiated from cloud and grid computing.
• It is a more general approach and refers to all the ways in which
individual computers and their computing power can be combined
together in clusters.
• Examples: Server clusters, clusters in big data and in cloud
environments, database clusters, and application clusters.
• Computer networks are also increasingly being used in high-
performance computing which can solve particularly demanding
computing problems.
Prepared By: Er. Bibat Thokar 6/30/2023 50
• Architectural Models
• Fundamental Models
ARCHITECTURAL MODELS
• Client-Server Model
• The system is structured as a set of processes, called servers that offer
services to the users, called clients.
• The client-server model is usually based on a simple request/reply
protocol, implemented with send/receive primitives or using remote
procedure calls (RPC) or remote method invocation (RMI).
• The client sends a request (invocation) message to the server asking for
some service.
CLIENT-SERVER MODEL
FUNDAMENTAL MODELS
END OF CHAPTER
ASSIGNMENT-1
• Solve the questions from ‘old questions collection’ starting from 2079
Bhadra to 2068 Magh related to chapter-1.
• You may avoid repeated questions
• Please refer reference books prescribed by syllabus of IOE.
• Remember: Assignments contains 20 % overall internal marks!!!
• No copy paste, no skip of questions!!!
THANK YOU