SlideShare a Scribd company logo
1 of 12
DISTRIBUTED SYSTEMS
B. Tech IV/IV, II Semester
COMPUTER SCIENCE & ENGINEERING
2/6/2017 © Copyright Material 1
Course Organization
2/6/2017 © Copyright Material 2
Distributed Systems
Foundation Middleware Distributed
Algorithms
Characterization
of Distributed
Systems
System Models
Distributed
Objects
Remote
Invocation
Time & Global
States
Coordination &
Agreement
Operating
System
Inter Process
Communication
Shared Data
Transactions &
Concurrency
Control
Distributed
Transactions
Replication
Course Objectives
• Characteristics of distributed systems and the prominent architectural
features of these systems.
• Describe the features and applications of important standard protocols
which are used in distributed systems.
• Characterize different implementation paradigms for distributed systems.
• Explain the working of a distributed algorithm.
• Perform simple proofs of system properties, given a formalized
description of a system.
• Select an appropriate distributed algorithm to satisfy given design
requirements for a distributed system.
• Select an appropriate implementation paradigm to satisfy given design
requirements for a distributed system.
• Develop an implementation of a distributed system from a formal or
informal description of its function and purpose.
2/6/2017 © Copyright Material 3
Preface
UNIT I : Introduction
This Chapter explains
 Evolution and the need for a Distributed System
 Several examples of modern distributed applications
 Underlying trends driving distributed systems today
 Need for resource sharing & how Distributed systems helps
 Challenges arising from the construction of distributed systems
2/6/2017 © Copyright Material 4
Preface
UNIT II: System Models
To construct a Distributed System…..
A system model provides an explanation of the important and complementary
ways in which the design of distributed systems can usefully be described and
discussed
Types of Models
 Physical Model
 Architectural Model
 Architectural elements
 Architectural Patterns
 Middleware solutions
 Fundamental Model
 Interaction Model
 Failure Model
 Security Model
2/6/2017 © Copyright Material 5
Preface
UNIT III: Interprocess Communication
 API For Internet Protocols: TCP & UDP
 Socket is an end point for communication
 TCP & UDP Sockets classes provided in Java
 External Data Representation: An agreed standard for the representation of
data structures and primitive values
2/6/2017 © Copyright Material 6
Applications
Request-Reply Protocol
Marshalling & External Data Representation
UDP and TCP
RPC, Distributed Objects & RMI
UnitIII
Middleware
Layers
Preface
UNIT IV: Distributed Objects & RMI
RPC: Remote Procedure Call is the initial way of establishing remote invocation
Distributed Objects: These are objects managed by servers and their clients
invoke their methods using remote method invocation
RMI: Remote Method Invocation is one of a means to create Distributed Object
Model
2/6/2017 © Copyright Material 7
Applications
Request-Reply Protocol
Marshalling & External Data Representation
UDP and TCP
RPC, Distributed Objects & RMI
UnitIV
Middleware
Layers
Preface
UNIT V: Operating System
This Chapter explains
 The role of Operating System to govern Hardware & Middleware
System Layers
 Core OS Functionalities
 How processes are created
 Address Space for a process
 How Thread improve Performance
 Thread Programming
2/6/2017 © Copyright Material 8
Applications, services
Computer &
Platform
Middleware
OS: kernel,
libraries &
servers
network hardware
OS1
Computer &
network hardware
Node 1 Node 2
Processes, threads,
communication, ...
OS2
Processes, threads,
communication, ...
Preface
UNIT VI: Distributed File System
This Chapter explains
 The architecture and implementation of a basic distributed file systems
 The basic characteristics of a File System
 The requirements for building a DFS
 The architecture of a Distributed File System
 Case Studies – Network File System & Andrew File System
 The characteristics of Information storage and retrieval service – Napster
 Design of Peer-to-peer middleware systems
 Routing overlays for locating Distributed nodes & globally scalable objects.
2/6/2017 © Copyright Material 9
Preface
UNIT VII: Coordination & Agreement
This Chapter explains
 How processes coordinate their actions and agree on shared values in
distributed systems
 Algorithms to achieve mutual exclusion among a collection of processes
 How a group of processes can agree on a new coordinator in case of failure
 The related problems of group communication.
 Types of Multicast approaches
 Algorithms to achieve Multicast communication
2/6/2017 © Copyright Material 10
Preface
UNIT VIII: Transactions & Replication
This Chapter explains
 3 ways of concurrency control in distributed transactions – Locking,
Timestamp Ordering, Optimistic concurrency control
 How to detect a Distributed Deadlock – Edge Chasing, Transaction priorities
 How to recover Transactions – Logging, Shadow Versions
 What is Replication & the necessity for it?
 Architectural model for performing replication
 How to achieve fault tolerant techniques – Passive & Active Replication
2/6/2017 © Copyright Material 11
2/6/2017 © Copyright Material 12

More Related Content

Recently uploaded

How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactPECB
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxRoyAbrique
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...
Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...
Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...RKavithamani
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxpboyjonauth
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3JemimahLaneBuaron
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104misteraugie
 

Recently uploaded (20)

How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...
Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...
Privatization and Disinvestment - Meaning, Objectives, Advantages and Disadva...
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptx
 
Staff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSDStaff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSD
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 

Featured

How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...DevGAMM Conference
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationErica Santiago
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellSaba Software
 
Introduction to C Programming Language
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming LanguageSimplilearn
 

Featured (20)

How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy Presentation
 
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them wellGood Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
 
Introduction to C Programming Language
Introduction to C Programming LanguageIntroduction to C Programming Language
Introduction to C Programming Language
 

Preface

  • 1. DISTRIBUTED SYSTEMS B. Tech IV/IV, II Semester COMPUTER SCIENCE & ENGINEERING 2/6/2017 © Copyright Material 1
  • 2. Course Organization 2/6/2017 © Copyright Material 2 Distributed Systems Foundation Middleware Distributed Algorithms Characterization of Distributed Systems System Models Distributed Objects Remote Invocation Time & Global States Coordination & Agreement Operating System Inter Process Communication Shared Data Transactions & Concurrency Control Distributed Transactions Replication
  • 3. Course Objectives • Characteristics of distributed systems and the prominent architectural features of these systems. • Describe the features and applications of important standard protocols which are used in distributed systems. • Characterize different implementation paradigms for distributed systems. • Explain the working of a distributed algorithm. • Perform simple proofs of system properties, given a formalized description of a system. • Select an appropriate distributed algorithm to satisfy given design requirements for a distributed system. • Select an appropriate implementation paradigm to satisfy given design requirements for a distributed system. • Develop an implementation of a distributed system from a formal or informal description of its function and purpose. 2/6/2017 © Copyright Material 3
  • 4. Preface UNIT I : Introduction This Chapter explains  Evolution and the need for a Distributed System  Several examples of modern distributed applications  Underlying trends driving distributed systems today  Need for resource sharing & how Distributed systems helps  Challenges arising from the construction of distributed systems 2/6/2017 © Copyright Material 4
  • 5. Preface UNIT II: System Models To construct a Distributed System….. A system model provides an explanation of the important and complementary ways in which the design of distributed systems can usefully be described and discussed Types of Models  Physical Model  Architectural Model  Architectural elements  Architectural Patterns  Middleware solutions  Fundamental Model  Interaction Model  Failure Model  Security Model 2/6/2017 © Copyright Material 5
  • 6. Preface UNIT III: Interprocess Communication  API For Internet Protocols: TCP & UDP  Socket is an end point for communication  TCP & UDP Sockets classes provided in Java  External Data Representation: An agreed standard for the representation of data structures and primitive values 2/6/2017 © Copyright Material 6 Applications Request-Reply Protocol Marshalling & External Data Representation UDP and TCP RPC, Distributed Objects & RMI UnitIII Middleware Layers
  • 7. Preface UNIT IV: Distributed Objects & RMI RPC: Remote Procedure Call is the initial way of establishing remote invocation Distributed Objects: These are objects managed by servers and their clients invoke their methods using remote method invocation RMI: Remote Method Invocation is one of a means to create Distributed Object Model 2/6/2017 © Copyright Material 7 Applications Request-Reply Protocol Marshalling & External Data Representation UDP and TCP RPC, Distributed Objects & RMI UnitIV Middleware Layers
  • 8. Preface UNIT V: Operating System This Chapter explains  The role of Operating System to govern Hardware & Middleware System Layers  Core OS Functionalities  How processes are created  Address Space for a process  How Thread improve Performance  Thread Programming 2/6/2017 © Copyright Material 8 Applications, services Computer & Platform Middleware OS: kernel, libraries & servers network hardware OS1 Computer & network hardware Node 1 Node 2 Processes, threads, communication, ... OS2 Processes, threads, communication, ...
  • 9. Preface UNIT VI: Distributed File System This Chapter explains  The architecture and implementation of a basic distributed file systems  The basic characteristics of a File System  The requirements for building a DFS  The architecture of a Distributed File System  Case Studies – Network File System & Andrew File System  The characteristics of Information storage and retrieval service – Napster  Design of Peer-to-peer middleware systems  Routing overlays for locating Distributed nodes & globally scalable objects. 2/6/2017 © Copyright Material 9
  • 10. Preface UNIT VII: Coordination & Agreement This Chapter explains  How processes coordinate their actions and agree on shared values in distributed systems  Algorithms to achieve mutual exclusion among a collection of processes  How a group of processes can agree on a new coordinator in case of failure  The related problems of group communication.  Types of Multicast approaches  Algorithms to achieve Multicast communication 2/6/2017 © Copyright Material 10
  • 11. Preface UNIT VIII: Transactions & Replication This Chapter explains  3 ways of concurrency control in distributed transactions – Locking, Timestamp Ordering, Optimistic concurrency control  How to detect a Distributed Deadlock – Edge Chasing, Transaction priorities  How to recover Transactions – Logging, Shadow Versions  What is Replication & the necessity for it?  Architectural model for performing replication  How to achieve fault tolerant techniques – Passive & Active Replication 2/6/2017 © Copyright Material 11
  • 12. 2/6/2017 © Copyright Material 12

Editor's Notes

  1. Distributed System: A distributed system is one in which components located at networked computers communicate and coordinate their actions only by passing messages
  2. Physical Model: A physical model is a representation of the underlying hardware elements of a distributed system that abstracts away from specific details of the computer and networking technologies employed. Architectural Model: The architecture of a system is its structure in terms of separately specified components and their interrelationships. The overall goal is to ensure that the structure will meet present and likely future demands on it. Fundamental Model: Fundamental model illustrates only the essential ingredients which need to be considered in order to understand and reason about some aspects of a system’s behavior. This internally is categorized into 3 categories Interaction Model: Computation occurs within processes; the processes interact by passing messages, resulting in communication (information flow) and coordination (synchronization and ordering of activities) between processes. In the analysis and design of distributed systems we are concerned especially with these interactions Failure Model: The correct operation of a distributed system is threatened whenever a fault occurs in any of the computers on which it runs (including software faults) or in the network that connects them. This model defines and classifies the faults Security Model: It defines and classifies the forms of any attack which forms the basis for the analysis of threats to a system and for the design of systems that are able to resist them.
  3. Interprocess communication is concerned with the characteristics of protocols for communication between processes in a distributed system. Interprocess communication in the Internet provides both datagram and stream communication Sockets originate from BSD UNIX but are also present in most other versions of UNIX, including Linux as well as Windows and the Macintosh OS. Interprocess communication consists of transmitting a message between a socket in one process and a socket in another process. Messages sent to a particular Internet address and port number can be received only by a process whose socket is associated with that Internet address and port number. Processes may use the same socket for sending and receiving messages. Each socket can be addressed using a 16bit unique address, thus giving 216 port addresses. There are 4 types of sockets created through Java API 1. TCP Socket used for clients – Used for Connection oriented communication Socket s = new Socket(int portNumber) 2. TCP Server Socket – Used for Connection oriented communication ServerSocket ss = new ServerSocket(int portNumber) 3. UDP Socket for client/server – Used for Connection less communication DatagramSocket d = new DatagramSocket(int portNumber) 4. Multicast Socket – Used for Group Communication MulticastSocket m = new MulticastSocket(int portNumber) External data representation allows the sending and receiving of information in one of the 2 ways Marshalling is the process of taking a collection of data items and assembling them into a form suitable for transmission in a message. Unmarshalling is the process of disassembling them on arrival to produce an equivalent collection of data items at the destination.
  4. Middleware: The term middleware applies to a software layer that provides a programming abstraction as well as masking the heterogeneity of the underlying networks, hardware, operating systems and programming languages. Remote object references: Other objects can invoke the methods of a remote object if they have access to its remote object reference Remote interfaces: Every remote object has a remote interface that specifies which of its methods can be invoked remotely
  5. A distributed file system enables programs to store and access remote files exactly as they do local ones, allowing users to access files from any computer on a network
  6. Locking: When locking is used for concurrency control, the objects remain locked and are unavailable for other transactions during the atomic commit protocol, although an aborted transaction releases its locks after phase 1 of the protocol Timestamp Ordering: In a single server transaction, the coordinator issues a unique timestamp to each transaction when it starts. Serial equivalence is enforced by committing the versions of objects in the order of the timestamps of transactions that accessed them. In distributed transactions, we require that each coordinator issue globally unique timestamps. A globally unique transaction timestamp is issued to the client by the first coordinator accessed by a transaction. The transaction timestamp is passed to the coordinator at each server whose objects perform an operation in the transaction. Optimistic Concurrency Control: Each transaction is validated before it is allowed to commit. Transaction numbers are assigned at the start of validation and transactions are serialized according to the order of the transaction numbers. A distributed transaction is validated by a collection of independent servers, each of which validates transactions that access its own objects. This validation takes place during the first phase of the two-phase commit protocol. Distributed deadlock is where there can be a cycle in the global wait-for graph that is not in any single local one. Phantom deadlock is a deadlock that is ‘detected’ but is not really a deadlock