Kadi Sarva Vishwavidyalaya: Fourth Year Bachelor of Engineering (Computer/IT)
Kadi Sarva Vishwavidyalaya: Fourth Year Bachelor of Engineering (Computer/IT)
Kadi Sarva Vishwavidyalaya: Fourth Year Bachelor of Engineering (Computer/IT)
Sarva Vishwavidyalaya
Faculty of Engineering & Technology
Fourth Year Bachelor of Engineering (Computer/IT)
(To be Proposed For: Academic Year 2020‐21)
Subject Code: CT704A‐N Subject Title: Distributed Systems
Pre‐requisite Operating System, Database, Computer Networks
Teaching Scheme (Credits and Hours)
Teaching scheme Evaluation Scheme
Total Mid Sem
L T P Total Theory CIA Pract. Total
Credit Exam
Hrs Hrs Hrs Hrs Hrs Marks Marks Marks Marks Marks
04 00 02 06 05 04 70 30 20 30 150
Course Objective:
This course aims to
Understanding Remote Communication and Interprocess Communication
Study about various distributed client server models
Create awareness of the major technical challenges in distributed systems design and
implementation
Emerging trends in distributed computing
Understanding Distributed Shared Memory and File System
Outline of the Course:
Sr. Minimum
Title of the Unit
No Hours
1 Concepts of Distributed Systems 6
2 Basic Network Communications 5
3 Inter process Communication 8
4 Remote Communication 6
5 Distributed System Synchronization 7
6 Distributed System Management 7
7 Distributed Shared Memory 7
8 Distributed File System 8
9 Security 5
10 Emerging Trends in Distributed System 5
Total hours (Theory): 64
Total hours (Lab): 32
Total hours: 96
Kadi Sarva Vishwavidyalaya
Faculty of Engineering & Technology
Fourth Year Bachelor of Engineering (Computer/IT)
(To be Proposed For: Academic Year 2020‐21)
Detailed Syllabus
Lecture Weightage
No Topic
(Hrs) (%)
Concepts of Distributed Systems
1 Introduction, Distributed computing models, Software concepts, 6 10
Design issues in distributed systems, Client‐server model, WWW
Basic Network Communications
2 LAN and WAN technologies, Classification of Networks, Protocols for 5 7
Network Systems, ATM, Protocols for Distributed systems‐FLIP,VMTP
Interprocess Communication
Message Passing and its features, IPC message format, IPC
synchronization, Buffering, multi datagram messaging, process
3 8 13
addressing techniques, failure handling, Formal Models for message
passing systems, Group communication, Group Management,
Message ordering.
Remote Communication
4 Introduction, RPC basics, RPC implementation, RPC Communication 6 10
and Other issues, Sun RPC, RMI basics, RMI Implementation, Java RMI
Distributed System Synchronization
Introduction, Clock synchronization, Logical clocks and Global state,
5 7 11
Mutual exclusion, Election algorithms: Bully algorithm, Ring algorithm,
Leader election in rings, Deadlocks in Distributed systems.
Distributed System Management
Resource management, Task management approach, Load balancing
6 7 11
approach, Load sharing approach, Process Management, Process
migration, threads, fault tolerance
Distributed Shared Memory
7 DSM Concepts, Hardware DSM, Design issues in DSM systems, 7 11
Implementation issues, Heterogeneous and other DSM systems
Distributed File System
8 Introduction DFS, File Models, DFS Design, Semantics File Sharing, DFS 8 13
Implementation
Security
9 Introduction, Overview of Security techniques, Cryptographic 5 7
algorithms, Digital signatures
Emerging Trends in Distributed System
10 Introduction, Grid Computing, Service Oriented Architecture, 5 7
Cloud Computing.
Total 64 100
Kadi Sarva Vishwavidyalaya
Faculty of Engineering & Technology
Fourth Year Bachelor of Engineering (Computer/IT)
(To be Proposed For: Academic Year 2020‐21)
Instructional Method and Pedagogy:
At the start of course, significance of the course, content delivery pattern, and other required details
regarding subject will be discussed.
Lectures will be conducted with the aid of multi‐media projector, black board, OHP etc.
Attendance is compulsory in lecture and laboratory which will be reflected in Continuous Internal
Assessment (CIA) component in the examination scheme of the course.
Assignments based on the course content will be given to the students and will be evaluated at
regular interval evaluation.
The course includes a laboratory, where students have an opportunity to build an appreciation for
the concepts being taught in lectures. Practicals shall be performed in the laboratory related to
course contents.
Learning Outcome:
On successful completion of the course, the student will:
On successful completion of the course, the student will be having the basic knowledge of
Distributed Computing.
Student will be able to understand Distributed Models.
To know about interposes communication and remote communication.
Student will be able to know distributed service oriented architecture.
To know about emerging trends in distributed computing.
Student will be able to know Distributed Shared Memory and File System.
e‐Resources:
1. https://www.techopedia.com/definition/18909/distributed‐system
2. http://gtu‐info.com/Subject/180701/DS/Distributed_Systems
3. https://www.geeksforgeeks.org/
Text Books:
1. Distributed Computing, Sunita Mahajan and Seema Shah, Oxford University
2. Distributed systems concepts and design, George Coulouris,Jean Dollimore,Tim Kindberg, PEARSON
3. Distributed Operating Systems by P. K. Sinha, PHI
Reference Books:
4. Distributed Systems: Principles and Paradigms, Taunenbaum
5. Distributed Computing, Fundamentals, Simulations and Advanced topics, 2nd Edition, Hagit Attiya
and Jennifer Welch, Wiley India
6. Distributed Systems: Concepts and Design, G. Coulouris, J. Dollimore, and T. Kindberg,
7. Java Network Programming & Distributed Computing by David Reilly, Michael Reilly
Kadi Sarva Vishwavidyalaya
Faculty of Engineering & Technology
Fourth Year Bachelor of Engineering (Computer/IT)
(To be Proposed For: Academic Year 2020‐21)
List of experiments:
No Name of Experiment
* Demo Practical: Write a program to print “Hello world” using NetBeans /simple JAVA
1 Write a program to implement “Hello World!” using RMI
2 Write a program to implement Calculator using RMI
3 Write a program to calculate interest rate using RMI
4 Write a program to implement Time Service application using RMI
5 Write a program to implement “Hello World!” using RPC
6 Write a program to implement Arithmetic Server using RPC
7 Write a program to implement date service using RPC
8 Write a program to implement Echo server using RPC
9 Write a program to implement Chat server using RPC
Design a Distributed Application for performing arithmetic operations using Message
10
passing Interface(MPI) for remote computation
11 Write a program to implement Echo SOCKET in JAVA
12 Write a program to find the length of string using THREAD in JAVA