SlideShare a Scribd company logo
1 of 52
MCS-121
Distributed Computing II
Engr. Anila Saghir
asaghir@ssuet.edu.pk
Mobile Communication and Security
Telecommunication Engineering Department
6/20/2023 MCS-308T Dis Com II TED,SSUET 1
Week 01
Lecture 01
6/20/2023 MCS-308T Dis Com II TED,SSUET 2
Course Information Sheet
Discussion
6/20/2023 MCS-308T Dis Com II TED,SSUET 3
Course Information
6/20/2023 MCS-308T Dis Com II TED,SSUET 4
Session: Spring-2023
Course Title: Distributed Computing II
Course Code: MCS 308T
Credit Hours: 3
Semester: 6th
Pre-Requisites: MCS 307T Distributed Computing I
Instructor Name: Engr. Anila Saghir
Email and Contact Information: asaghir@ssuet.edu.pk
WhatsApp Group MCS-308T DC-II
Office Hours:
9:00am-5:00pm
Counselling Hours: Tuesday, 8:30am-11:30am
Mode of Teaching: Synchronous/Asynchronous/ Hybrid/Blended
COURSE OBJECTIVE:
• The main objective of the course is to introduce the
student with advance aspects of Distributed
Computing including Remote Method Invocation,
JavaBeans, XML and advanced GUI features study.
• The course mainly focuses on to examine the role of Java
in Distributed Systems and Web based Services
including Security issues.
• On completion of this course the student will have an
appreciation of the issues pertaining to the use of Java in
a large Distributed Enterprise Environment.
6/20/2023 MCS-308T Dis Com II TED,SSUET 5
COURSE OUTLINE:
Inter-process Communication,
Java Overview,
Multithreading in Java,
Distributed Computing Paradigms,
The Socket API,
The Client-Server Paradigm,
Group Communication,
Web Services: HTTP and Java, Java Servlets,
Distributed Objects,
Advanced RMI,
Internet Applications,
The Common Object Request Broker Architecture (CORBA), Java IDL and CORBA.
6/20/2023 MCS-308T Dis Com II TED,SSUET 6
Recommended Books:
• RECOMMENDED BOOK:
• M.L. Liu, “Distributed Computing: Principles and Applications”,
4th Edition, 2019, Pearson, ISBN: 978-0201796445
• REFERENCE BOOKS:
• David Reilly, “Java Network Programming and Distributed
Computing”, 2002, 1st Edition, Addison-Wesley, ISBN : 978-
020171037
• Raja Malleswara Rao Pattamsetti, “Distributed Computing in
Java 9”, 2017, 1st Edition, Packt Publishing , ISBN:
9781787126992
6/20/2023 MCS-308T Dis Com II TED,SSUET 7
Course Learning Outcomes
6/20/2023 MCS-308T Dis Com II TED,SSUET 8
CLO
No.
Course Learning Outcomes (CLOs) PLOs
Bloom’s
Taxonomy
1
Apply theoretical programming models and
modern programming tools for implementing
distributed-computing applications.
PLO_2
(Problem Analysis)
C3
(Applying)
2
Analyze the different distributed-system
middleware such as distributed objects, web
services, and peer-to-peer systems for their
performance.
PLO_2
(Problem Analysis)
C4
(Analyzing)
3
Design and develop a multi-tier server-side
application.
PLO_3
(Design/Developm
ent of Solutions)
C6
(Creating)
Grading Policy
Assessment Tools Percentage
Quizzes 10%
Assignments 10%
Midterm Exam 30%
Final Exam 50%
TOTAL 100%
6/20/2023 MCS-308T Dis Com II TED,SSUET 9
Assessment Tools and Their Weightage
6/20/2023 MCS-308T Dis Com II TED,SSUET 10
Assessment Tools CLO-1 (30) CLO-2 (40) CLO-3 (30)
Quizzes 12%(3) 9.1%(5) 10%(2)
Assignments
8%(2) 9.1%(5) 15%(3)
Midterm Exam 40%(10) 36.4%(20) -
Final Exam 40%(10) 45.4%(25) 75%(15)
COMPLEX COMPUTING PROBLEM:
6/20/2023 MCS-308T Dis Com II TED,SSUET 11
Included: Yes
Nature and details of Complex Computing Problem (CCP): It will be given in Assignment # 02.
CCP will be based on CLO-2 “Analyze the different distributed-system middleware such as distributed objects,
web services, and peer-to-peer systems for their performance”.
To investigate the problem, students use in-depth knowledge related to the following concepts: Java Servelets,
web services, XML, Java RMI
Attributes could be: WP1, WP3, WK5, WA3
WP1: Depth of knowledge required
WP3: Depth of analysis required
WK5: Engineering Design
WA3: Design/Development of Solution
Assessment in: Assignment # 02
CLO-01
Apply theoretical programming models and modern
programming tools for implementing distributed-computing
applications.
[C3 (Applying), PLO-2(Problem Analysis)]
6/20/2023 MCS-308T Dis Com II TED,SSUET 12
Distributed Computing, An Introduction
In this chapter, we will begin by clarifying what is meant by distributed computing. We will
do so by looking at the history of distributed computing and by comparing this type of
computing with other forms of computing. We will then understand some basic concepts in
the disciplines of operating systems and networks.
Chapter #1
6/20/2023 MCS-308T Dis Com II TED,SSUET 13
Introduction
• What is Computing?
Computing is any goal-oriented activity requiring,
benefiting from, or creating computing machinery.
6/20/2023 MCS-308T Dis Com II TED,SSUET 14
Introduction
Forms of Computing
• To understand the distributed computing, lets
understand the different types of computing's
performed by a computer.
• We can categorized computer computing roughly as :
• Monolithic Computing
• Distributed Computing
• Parallel Computing
• Cloud Computing
6/20/2023 MCS-308T Dis Com II TED,SSUET 15
Monolithic Computing
Early computing was performed on a
single processor.
A uniprocessor, or monolithic
computing, makes use of a single
central processing unit (CPU) to
execute one or more programs for each
application
The computer Is not connected to any
network, and thus it may use only those
resources within its immediate access.
6/20/2023 MCS-308T Dis Com II TED,SSUET 16
Distributed Computing
Distributed computing involves
computing performed among
multiple network-connected
computers, each of which has Its
own processors and other
resources
6/20/2023 MCS-308T Dis Com II TED,SSUET 17
Parallel Computing
• Parallel computing is a type of computing in which
one computer or multiple computers in a network
carry out many calculations or processes
simultaneously.
Note: Parallel computing is a particularly tightly coupled form of
distributed computing.
6/20/2023 MCS-308T Dis Com II TED,SSUET 18
Parallel Computing Vs Distributed
Computing
• In parallel processing, all processors have access to
shared memory for exchanging information
between them.
• On the other hand, in distributed processing, each
processor has private memory (distributed
memory). Processors use message passing to
exchange information.
6/20/2023 MCS-308T Dis Com II TED,SSUET 19
Parallel Computing Vs Distributed
Computing
6/20/2023 MCS-308T Dis Com II TED,SSUET 20
Cloud Computing
• Cloud computing is internet based computing
where virtual shared servers provide a platform,
infrastructure for application, file storage and other
resources and hosting to customers on a pay-as-
you-go basis.
6/20/2023 MCS-308T Dis Com II TED,SSUET 21
Cloud Computing
• Customers do not own the physical infrastructure
and no need to depend on the storage capacity of
their local computer network rather they rent the
usage from a third-party provider.
• Cloud computing significantly reduced the cost of
computation, content storage, and application
hosting.
6/20/2023 MCS-308T Dis Com II TED,SSUET 22
Distributed Computing Vs Cloud
Computing
6/20/2023 MCS-308T Dis Com II TED,SSUET 23
Distributed System
A distributed system is a
collection of independent computers,
interconnected via a network, that are capable of
collaborating on a task
Note: Computers are considered Independent if they do not share memory or
program execution space.
6/20/2023 MCS-308T Dis Com II TED,SSUET 24
Distributed System Vs Distributed Computing
Distributed System is the networked collection of
independent machines that can collaborate
remotely to achieve one goal
whereas,
Distributed computing is the cloud-based
technology that enables this distributed system to
operate, collaborate, and communicate.
6/20/2023 MCS-308T Dis Com II TED,SSUET 25
Distributed Computing
Distributed Computing is the computing
performed such as
Network services and Web Applications
in a distributed System.
6/20/2023 MCS-308T Dis Com II TED,SSUET 26
Distributed Computing)(Cont..)
• A network service is a service provided by a
special kind of program known as a server on a
network
• The World Wide Web, electronic email and file
transfer are some examples of such services
6/20/2023 MCS-308T Dis Com II TED,SSUET 27
Distributed Computing)(Cont..)
• A network application is an application that runs
on networked computers for end users.
• Network applications range from enterprise
applications such as online shopping carts and e-
marketing sites to noncommercial applications
such as chatrooms and network games etc.
6/20/2023 MCS-308T Dis Com II TED,SSUET 28
Distributed Computing)(Cont..)
• The distinction between network services and
network applications is not always clear-cut, and
the terms are often used Interchangeably.
6/20/2023 MCS-308T Dis Com II TED,SSUET 29
History of Distributed Computing
• The distributed computing system is all about
evolution from centralization to decentralization,
• We had a centralized system like mainframe in
early 1955
• But now we are probably using a decentralized
system like edge computing and containers.
6/20/2023 MCS-308T Dis Com II TED,SSUET 30
How does distributed computing work
• Distributed computing works by computers passing
messages to each other within the distributed
systems architecture.
• Communication protocols or rules create a
dependency between the components of the
distributed system.
6/20/2023 MCS-308T Dis Com II TED,SSUET 31
How does distributed computing work
• This interdependence is called coupling, and there
are two main types of coupling.
• Loose Coupling
• Tight Coupling
6/20/2023 MCS-308T Dis Com II TED,SSUET 32
How does distributed computing work
Loose coupling
In loose coupling, components are weakly
connected so that changes to one component do not
affect the other.
• For example, client and server computers can be loosely coupled
by time. Messages from the client are added to a server queue, and
the client can continue to perform other functions until the server
responds to its message.
6/20/2023 MCS-308T Dis Com II TED,SSUET 33
How does distributed computing work
Tight coupling
A tightly coupled system is a system architecture and
computing method in which all hardware and
software components are linked together so that
every component is dependent on the others.
6/20/2023 MCS-308T Dis Com II TED,SSUET 34
How does distributed computing work
• Tightly coupled system architecture encourages
application and code interdependence.
• High-performing distributed systems often use
tight coupling.
• Fast local area networks typically connect several
computers, which creates a cluster.
6/20/2023 MCS-308T Dis Com II TED,SSUET 35
Distributed Computing Architectures
• Various hardware and software architectures are
used for distributed computing.
• Distributed programming typically falls into one of
several basic architectures:
• client–server
• three-tier
• n-tier
• peer-to-peer
6/20/2023 MCS-308T Dis Com II TED,SSUET 36
Client–Server Architecture
• Client-server is the most common method of
software organization on a distributed system.
• The functions are separated into two categories:
clients and servers.
• Clients
• Servers
6/20/2023 MCS-308T Dis Com II TED,SSUET 37
Client–Server Architecture:
Clients
• Clients
• Clients have limited information and processing
ability. Instead, they make requests to the servers,
which manage most of the data and other
resources.
• You can make requests to the client, and it
communicates with the server on your behalf.
6/20/2023 MCS-308T Dis Com II TED,SSUET 38
Client–Server Architecture:
Servers
• Servers
• Server computers synchronize and manage access to
resources.
• They respond to client requests with data or status
information.
• Typically, one server can handle requests from several
machines.
6/20/2023 MCS-308T Dis Com II TED,SSUET 39
Client-Server Architecture:
Benefits and limitations
• Client-server architecture gives the benefits of
security and ease of ongoing management.
• focus is only on securing the server computers.
• Similarly, any changes to the database systems
require changes to the server only.
6/20/2023 MCS-308T Dis Com II TED,SSUET 40
Benefits and limitations
Client-Server Architecture
• The limitation of client-server architecture is that
servers can cause communication bottlenecks,
especially when several machines make requests
simultaneously.
6/20/2023 MCS-308T Dis Com II TED,SSUET 41
Three-tier architecture
• In three-tier distributed systems, client machines
remain as the first tier you access.
• Server machines, on the other hand, are further
divided into two categories:
• Application Servers
• Database Servers
6/20/2023 MCS-308T Dis Com II TED,SSUET 42
Three-tier architecture
• In three-tier distributed systems, client machines
remain as the first tier you access.
• Server machines, on the other hand, are further
divided into two categories:
• Application Servers
• Database Servers
6/20/2023 MCS-308T Dis Com II TED,SSUET 43
Three-tier architecture
• Application servers
• Application servers act as the middle tier for
communication.
• They contain the application logic or the core
functions that you design the distributed system for.
6/20/2023 MCS-308T Dis Com II TED,SSUET 44
Three-tier architecture
• Database servers
• Database servers act as the third tier to store and
manage the data.
• They are responsible for data retrieval and data
consistency.
6/20/2023 MCS-308T Dis Com II TED,SSUET 45
Three-tier architecture
• By dividing server responsibility, three-tier
distributed systems reduce communication
bottlenecks and improve distributed computing
performance.
6/20/2023 MCS-308T Dis Com II TED,SSUET 46
N-tier architecture
• N-tier models include several different client-server
systems communicating with each other to solve
the same problem.
• Most modern distributed systems use an n-tier
architecture with different enterprise applications
working together as one system behind the scenes.
6/20/2023 MCS-308T Dis Com II TED,SSUET 47
Peer-to-peer architecture
• Peer-to-peer distributed systems assign equal
responsibilities to all networked computers.
• There is no separation between client and server
computers, and any computer can perform all
responsibilities.
6/20/2023 MCS-308T Dis Com II TED,SSUET 48
Peer-to-peer architecture
• Peer-to-peer architecture has become popular for
content sharing, file streaming, and block-chain
networks.
6/20/2023 MCS-308T Dis Com II TED,SSUET 49
The Strengths and Weaknesses of
Distributed Computing
• Machines, able to work remotely on the same task,
improve the performance efficiency of distributed
systems.
• The fault-tolerance, agility, cost convenience, and
resource sharing make distributed computing a
powerful technology.
6/20/2023 MCS-308T Dis Com II TED,SSUET 50
The Strengths and Weaknesses of
Distributed Computing
• There are a number of reasons for the popularity of
distributed computing:
• The affordability of computers and availability of
network access.
• Resource sharing
• Scalability
• Fault tolerance
• Multiple points of failure
• Security Concerns
6/20/2023 MCS-308T Dis Com II TED,SSUET 51
Applications of distributed computing
and newer challenges
• Mobile systems
• Sensor networks
• Ubiquitous or pervasive computing
• Peer-to-peer computing
• Publish-subscribe, content distribution, and multimedia
• Distributed agents
• Distributed data mining
• Grid computing
• Security in distributed systems
6/20/2023 MCS-308T Dis Com II TED,SSUET 52

More Related Content

Similar to distributed

A Comparative Study: Taxonomy of High Performance Computing (HPC)
A Comparative Study: Taxonomy of High Performance Computing (HPC) A Comparative Study: Taxonomy of High Performance Computing (HPC)
A Comparative Study: Taxonomy of High Performance Computing (HPC) IJECEIAES
 
Towards Energy and Carbon Footprint and Testing for AI-driven IoT Services
Towards Energy and Carbon Footprint and Testing for AI-driven IoT ServicesTowards Energy and Carbon Footprint and Testing for AI-driven IoT Services
Towards Energy and Carbon Footprint and Testing for AI-driven IoT ServicesDemetris Trihinas
 
Ant colony Optimization: A Solution of Load balancing in Cloud  
Ant colony Optimization: A Solution of Load balancing in Cloud  Ant colony Optimization: A Solution of Load balancing in Cloud  
Ant colony Optimization: A Solution of Load balancing in Cloud  dannyijwest
 
Trends and Hot Topics in Networking 2023 - IA377 Seminar FEEC-UNICAMP
Trends and Hot Topics in Networking 2023 - IA377 Seminar FEEC-UNICAMPTrends and Hot Topics in Networking 2023 - IA377 Seminar FEEC-UNICAMP
Trends and Hot Topics in Networking 2023 - IA377 Seminar FEEC-UNICAMPChristian Esteve Rothenberg
 
A Review Paper On Grid Computing
A Review Paper On Grid ComputingA Review Paper On Grid Computing
A Review Paper On Grid ComputingFiona Phillips
 
Pit Overload Analysis in Content Centric Networks
Pit Overload Analysis in Content Centric NetworksPit Overload Analysis in Content Centric Networks
Pit Overload Analysis in Content Centric NetworksMatteo Virgilio
 
Unit-1 Foundations for systems Development.pptx
Unit-1 Foundations for systems Development.pptxUnit-1 Foundations for systems Development.pptx
Unit-1 Foundations for systems Development.pptxPuskar Bhandari
 
Models of Distributed System
Models of Distributed SystemModels of Distributed System
Models of Distributed SystemAshish KC
 
www.ejkm.com ©Academic Conferences Limited 2003 Knowledge.docx
www.ejkm.com  ©Academic Conferences Limited 2003 Knowledge.docxwww.ejkm.com  ©Academic Conferences Limited 2003 Knowledge.docx
www.ejkm.com ©Academic Conferences Limited 2003 Knowledge.docxodiliagilby
 
Grid and Cloud Computing Lecture-2a.pptx
Grid and Cloud Computing Lecture-2a.pptxGrid and Cloud Computing Lecture-2a.pptx
Grid and Cloud Computing Lecture-2a.pptxDrAdeelAkram2
 
Achieving High Performance Distributed System: Using Grid, Cluster and Cloud ...
Achieving High Performance Distributed System: Using Grid, Cluster and Cloud ...Achieving High Performance Distributed System: Using Grid, Cluster and Cloud ...
Achieving High Performance Distributed System: Using Grid, Cluster and Cloud ...IJERA Editor
 
Efficient architectural framework of cloud computing
Efficient architectural framework of cloud computing Efficient architectural framework of cloud computing
Efficient architectural framework of cloud computing Souvik Pal
 
Final Evaluation.pptx
Final Evaluation.pptxFinal Evaluation.pptx
Final Evaluation.pptxuzmasulthana3
 
lec1.pptx
lec1.pptxlec1.pptx
lec1.pptxMusab58
 
An optimization framework for cloud based data management model in smart grid
An optimization framework for cloud based data management model in smart gridAn optimization framework for cloud based data management model in smart grid
An optimization framework for cloud based data management model in smart grideSAT Journals
 
Intelligent Internet of Things (IIoT): System Architectures and Communica...
   Intelligent Internet of Things (IIoT): System  Architectures and Communica...   Intelligent Internet of Things (IIoT): System  Architectures and Communica...
Intelligent Internet of Things (IIoT): System Architectures and Communica...Raghu Nandy
 
Authentication system with Decentralized chat app
Authentication system with Decentralized chat appAuthentication system with Decentralized chat app
Authentication system with Decentralized chat appIRJET Journal
 

Similar to distributed (20)

A Comparative Study: Taxonomy of High Performance Computing (HPC)
A Comparative Study: Taxonomy of High Performance Computing (HPC) A Comparative Study: Taxonomy of High Performance Computing (HPC)
A Comparative Study: Taxonomy of High Performance Computing (HPC)
 
Towards Energy and Carbon Footprint and Testing for AI-driven IoT Services
Towards Energy and Carbon Footprint and Testing for AI-driven IoT ServicesTowards Energy and Carbon Footprint and Testing for AI-driven IoT Services
Towards Energy and Carbon Footprint and Testing for AI-driven IoT Services
 
Ant colony Optimization: A Solution of Load balancing in Cloud  
Ant colony Optimization: A Solution of Load balancing in Cloud  Ant colony Optimization: A Solution of Load balancing in Cloud  
Ant colony Optimization: A Solution of Load balancing in Cloud  
 
Trends and Hot Topics in Networking 2023 - IA377 Seminar FEEC-UNICAMP
Trends and Hot Topics in Networking 2023 - IA377 Seminar FEEC-UNICAMPTrends and Hot Topics in Networking 2023 - IA377 Seminar FEEC-UNICAMP
Trends and Hot Topics in Networking 2023 - IA377 Seminar FEEC-UNICAMP
 
Architectural reference model
Architectural reference modelArchitectural reference model
Architectural reference model
 
Cluster computing report
Cluster computing reportCluster computing report
Cluster computing report
 
A Review Paper On Grid Computing
A Review Paper On Grid ComputingA Review Paper On Grid Computing
A Review Paper On Grid Computing
 
Pit Overload Analysis in Content Centric Networks
Pit Overload Analysis in Content Centric NetworksPit Overload Analysis in Content Centric Networks
Pit Overload Analysis in Content Centric Networks
 
Unit-1 Foundations for systems Development.pptx
Unit-1 Foundations for systems Development.pptxUnit-1 Foundations for systems Development.pptx
Unit-1 Foundations for systems Development.pptx
 
Models of Distributed System
Models of Distributed SystemModels of Distributed System
Models of Distributed System
 
www.ejkm.com ©Academic Conferences Limited 2003 Knowledge.docx
www.ejkm.com  ©Academic Conferences Limited 2003 Knowledge.docxwww.ejkm.com  ©Academic Conferences Limited 2003 Knowledge.docx
www.ejkm.com ©Academic Conferences Limited 2003 Knowledge.docx
 
Grid and Cloud Computing Lecture-2a.pptx
Grid and Cloud Computing Lecture-2a.pptxGrid and Cloud Computing Lecture-2a.pptx
Grid and Cloud Computing Lecture-2a.pptx
 
Achieving High Performance Distributed System: Using Grid, Cluster and Cloud ...
Achieving High Performance Distributed System: Using Grid, Cluster and Cloud ...Achieving High Performance Distributed System: Using Grid, Cluster and Cloud ...
Achieving High Performance Distributed System: Using Grid, Cluster and Cloud ...
 
Efficient architectural framework of cloud computing
Efficient architectural framework of cloud computing Efficient architectural framework of cloud computing
Efficient architectural framework of cloud computing
 
Grid computing
Grid computingGrid computing
Grid computing
 
Final Evaluation.pptx
Final Evaluation.pptxFinal Evaluation.pptx
Final Evaluation.pptx
 
lec1.pptx
lec1.pptxlec1.pptx
lec1.pptx
 
An optimization framework for cloud based data management model in smart grid
An optimization framework for cloud based data management model in smart gridAn optimization framework for cloud based data management model in smart grid
An optimization framework for cloud based data management model in smart grid
 
Intelligent Internet of Things (IIoT): System Architectures and Communica...
   Intelligent Internet of Things (IIoT): System  Architectures and Communica...   Intelligent Internet of Things (IIoT): System  Architectures and Communica...
Intelligent Internet of Things (IIoT): System Architectures and Communica...
 
Authentication system with Decentralized chat app
Authentication system with Decentralized chat appAuthentication system with Decentralized chat app
Authentication system with Decentralized chat app
 

Recently uploaded

Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort servicejennyeacort
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxDeepakSakkari2
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girlsssuser7cb4ff
 
Artificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxArtificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxbritheesh05
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile servicerehmti665
 
chaitra-1.pptx fake news detection using machine learning
chaitra-1.pptx  fake news detection using machine learningchaitra-1.pptx  fake news detection using machine learning
chaitra-1.pptx fake news detection using machine learningmisbanausheenparvam
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerAnamika Sarkar
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVRajaP95
 
main PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidmain PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidNikhilNagaraju
 
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AIabhishek36461
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130Suhani Kapoor
 

Recently uploaded (20)

Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptx
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girls
 
Artificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxArtificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptx
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile service
 
chaitra-1.pptx fake news detection using machine learning
chaitra-1.pptx  fake news detection using machine learningchaitra-1.pptx  fake news detection using machine learning
chaitra-1.pptx fake news detection using machine learning
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
 
main PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidmain PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfid
 
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
 
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCRCall Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
 
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AI
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
 

distributed

  • 1. MCS-121 Distributed Computing II Engr. Anila Saghir asaghir@ssuet.edu.pk Mobile Communication and Security Telecommunication Engineering Department 6/20/2023 MCS-308T Dis Com II TED,SSUET 1
  • 2. Week 01 Lecture 01 6/20/2023 MCS-308T Dis Com II TED,SSUET 2
  • 3. Course Information Sheet Discussion 6/20/2023 MCS-308T Dis Com II TED,SSUET 3
  • 4. Course Information 6/20/2023 MCS-308T Dis Com II TED,SSUET 4 Session: Spring-2023 Course Title: Distributed Computing II Course Code: MCS 308T Credit Hours: 3 Semester: 6th Pre-Requisites: MCS 307T Distributed Computing I Instructor Name: Engr. Anila Saghir Email and Contact Information: asaghir@ssuet.edu.pk WhatsApp Group MCS-308T DC-II Office Hours: 9:00am-5:00pm Counselling Hours: Tuesday, 8:30am-11:30am Mode of Teaching: Synchronous/Asynchronous/ Hybrid/Blended
  • 5. COURSE OBJECTIVE: • The main objective of the course is to introduce the student with advance aspects of Distributed Computing including Remote Method Invocation, JavaBeans, XML and advanced GUI features study. • The course mainly focuses on to examine the role of Java in Distributed Systems and Web based Services including Security issues. • On completion of this course the student will have an appreciation of the issues pertaining to the use of Java in a large Distributed Enterprise Environment. 6/20/2023 MCS-308T Dis Com II TED,SSUET 5
  • 6. COURSE OUTLINE: Inter-process Communication, Java Overview, Multithreading in Java, Distributed Computing Paradigms, The Socket API, The Client-Server Paradigm, Group Communication, Web Services: HTTP and Java, Java Servlets, Distributed Objects, Advanced RMI, Internet Applications, The Common Object Request Broker Architecture (CORBA), Java IDL and CORBA. 6/20/2023 MCS-308T Dis Com II TED,SSUET 6
  • 7. Recommended Books: • RECOMMENDED BOOK: • M.L. Liu, “Distributed Computing: Principles and Applications”, 4th Edition, 2019, Pearson, ISBN: 978-0201796445 • REFERENCE BOOKS: • David Reilly, “Java Network Programming and Distributed Computing”, 2002, 1st Edition, Addison-Wesley, ISBN : 978- 020171037 • Raja Malleswara Rao Pattamsetti, “Distributed Computing in Java 9”, 2017, 1st Edition, Packt Publishing , ISBN: 9781787126992 6/20/2023 MCS-308T Dis Com II TED,SSUET 7
  • 8. Course Learning Outcomes 6/20/2023 MCS-308T Dis Com II TED,SSUET 8 CLO No. Course Learning Outcomes (CLOs) PLOs Bloom’s Taxonomy 1 Apply theoretical programming models and modern programming tools for implementing distributed-computing applications. PLO_2 (Problem Analysis) C3 (Applying) 2 Analyze the different distributed-system middleware such as distributed objects, web services, and peer-to-peer systems for their performance. PLO_2 (Problem Analysis) C4 (Analyzing) 3 Design and develop a multi-tier server-side application. PLO_3 (Design/Developm ent of Solutions) C6 (Creating)
  • 9. Grading Policy Assessment Tools Percentage Quizzes 10% Assignments 10% Midterm Exam 30% Final Exam 50% TOTAL 100% 6/20/2023 MCS-308T Dis Com II TED,SSUET 9
  • 10. Assessment Tools and Their Weightage 6/20/2023 MCS-308T Dis Com II TED,SSUET 10 Assessment Tools CLO-1 (30) CLO-2 (40) CLO-3 (30) Quizzes 12%(3) 9.1%(5) 10%(2) Assignments 8%(2) 9.1%(5) 15%(3) Midterm Exam 40%(10) 36.4%(20) - Final Exam 40%(10) 45.4%(25) 75%(15)
  • 11. COMPLEX COMPUTING PROBLEM: 6/20/2023 MCS-308T Dis Com II TED,SSUET 11 Included: Yes Nature and details of Complex Computing Problem (CCP): It will be given in Assignment # 02. CCP will be based on CLO-2 “Analyze the different distributed-system middleware such as distributed objects, web services, and peer-to-peer systems for their performance”. To investigate the problem, students use in-depth knowledge related to the following concepts: Java Servelets, web services, XML, Java RMI Attributes could be: WP1, WP3, WK5, WA3 WP1: Depth of knowledge required WP3: Depth of analysis required WK5: Engineering Design WA3: Design/Development of Solution Assessment in: Assignment # 02
  • 12. CLO-01 Apply theoretical programming models and modern programming tools for implementing distributed-computing applications. [C3 (Applying), PLO-2(Problem Analysis)] 6/20/2023 MCS-308T Dis Com II TED,SSUET 12
  • 13. Distributed Computing, An Introduction In this chapter, we will begin by clarifying what is meant by distributed computing. We will do so by looking at the history of distributed computing and by comparing this type of computing with other forms of computing. We will then understand some basic concepts in the disciplines of operating systems and networks. Chapter #1 6/20/2023 MCS-308T Dis Com II TED,SSUET 13
  • 14. Introduction • What is Computing? Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. 6/20/2023 MCS-308T Dis Com II TED,SSUET 14
  • 15. Introduction Forms of Computing • To understand the distributed computing, lets understand the different types of computing's performed by a computer. • We can categorized computer computing roughly as : • Monolithic Computing • Distributed Computing • Parallel Computing • Cloud Computing 6/20/2023 MCS-308T Dis Com II TED,SSUET 15
  • 16. Monolithic Computing Early computing was performed on a single processor. A uniprocessor, or monolithic computing, makes use of a single central processing unit (CPU) to execute one or more programs for each application The computer Is not connected to any network, and thus it may use only those resources within its immediate access. 6/20/2023 MCS-308T Dis Com II TED,SSUET 16
  • 17. Distributed Computing Distributed computing involves computing performed among multiple network-connected computers, each of which has Its own processors and other resources 6/20/2023 MCS-308T Dis Com II TED,SSUET 17
  • 18. Parallel Computing • Parallel computing is a type of computing in which one computer or multiple computers in a network carry out many calculations or processes simultaneously. Note: Parallel computing is a particularly tightly coupled form of distributed computing. 6/20/2023 MCS-308T Dis Com II TED,SSUET 18
  • 19. Parallel Computing Vs Distributed Computing • In parallel processing, all processors have access to shared memory for exchanging information between them. • On the other hand, in distributed processing, each processor has private memory (distributed memory). Processors use message passing to exchange information. 6/20/2023 MCS-308T Dis Com II TED,SSUET 19
  • 20. Parallel Computing Vs Distributed Computing 6/20/2023 MCS-308T Dis Com II TED,SSUET 20
  • 21. Cloud Computing • Cloud computing is internet based computing where virtual shared servers provide a platform, infrastructure for application, file storage and other resources and hosting to customers on a pay-as- you-go basis. 6/20/2023 MCS-308T Dis Com II TED,SSUET 21
  • 22. Cloud Computing • Customers do not own the physical infrastructure and no need to depend on the storage capacity of their local computer network rather they rent the usage from a third-party provider. • Cloud computing significantly reduced the cost of computation, content storage, and application hosting. 6/20/2023 MCS-308T Dis Com II TED,SSUET 22
  • 23. Distributed Computing Vs Cloud Computing 6/20/2023 MCS-308T Dis Com II TED,SSUET 23
  • 24. Distributed System A distributed system is a collection of independent computers, interconnected via a network, that are capable of collaborating on a task Note: Computers are considered Independent if they do not share memory or program execution space. 6/20/2023 MCS-308T Dis Com II TED,SSUET 24
  • 25. Distributed System Vs Distributed Computing Distributed System is the networked collection of independent machines that can collaborate remotely to achieve one goal whereas, Distributed computing is the cloud-based technology that enables this distributed system to operate, collaborate, and communicate. 6/20/2023 MCS-308T Dis Com II TED,SSUET 25
  • 26. Distributed Computing Distributed Computing is the computing performed such as Network services and Web Applications in a distributed System. 6/20/2023 MCS-308T Dis Com II TED,SSUET 26
  • 27. Distributed Computing)(Cont..) • A network service is a service provided by a special kind of program known as a server on a network • The World Wide Web, electronic email and file transfer are some examples of such services 6/20/2023 MCS-308T Dis Com II TED,SSUET 27
  • 28. Distributed Computing)(Cont..) • A network application is an application that runs on networked computers for end users. • Network applications range from enterprise applications such as online shopping carts and e- marketing sites to noncommercial applications such as chatrooms and network games etc. 6/20/2023 MCS-308T Dis Com II TED,SSUET 28
  • 29. Distributed Computing)(Cont..) • The distinction between network services and network applications is not always clear-cut, and the terms are often used Interchangeably. 6/20/2023 MCS-308T Dis Com II TED,SSUET 29
  • 30. History of Distributed Computing • The distributed computing system is all about evolution from centralization to decentralization, • We had a centralized system like mainframe in early 1955 • But now we are probably using a decentralized system like edge computing and containers. 6/20/2023 MCS-308T Dis Com II TED,SSUET 30
  • 31. How does distributed computing work • Distributed computing works by computers passing messages to each other within the distributed systems architecture. • Communication protocols or rules create a dependency between the components of the distributed system. 6/20/2023 MCS-308T Dis Com II TED,SSUET 31
  • 32. How does distributed computing work • This interdependence is called coupling, and there are two main types of coupling. • Loose Coupling • Tight Coupling 6/20/2023 MCS-308T Dis Com II TED,SSUET 32
  • 33. How does distributed computing work Loose coupling In loose coupling, components are weakly connected so that changes to one component do not affect the other. • For example, client and server computers can be loosely coupled by time. Messages from the client are added to a server queue, and the client can continue to perform other functions until the server responds to its message. 6/20/2023 MCS-308T Dis Com II TED,SSUET 33
  • 34. How does distributed computing work Tight coupling A tightly coupled system is a system architecture and computing method in which all hardware and software components are linked together so that every component is dependent on the others. 6/20/2023 MCS-308T Dis Com II TED,SSUET 34
  • 35. How does distributed computing work • Tightly coupled system architecture encourages application and code interdependence. • High-performing distributed systems often use tight coupling. • Fast local area networks typically connect several computers, which creates a cluster. 6/20/2023 MCS-308T Dis Com II TED,SSUET 35
  • 36. Distributed Computing Architectures • Various hardware and software architectures are used for distributed computing. • Distributed programming typically falls into one of several basic architectures: • client–server • three-tier • n-tier • peer-to-peer 6/20/2023 MCS-308T Dis Com II TED,SSUET 36
  • 37. Client–Server Architecture • Client-server is the most common method of software organization on a distributed system. • The functions are separated into two categories: clients and servers. • Clients • Servers 6/20/2023 MCS-308T Dis Com II TED,SSUET 37
  • 38. Client–Server Architecture: Clients • Clients • Clients have limited information and processing ability. Instead, they make requests to the servers, which manage most of the data and other resources. • You can make requests to the client, and it communicates with the server on your behalf. 6/20/2023 MCS-308T Dis Com II TED,SSUET 38
  • 39. Client–Server Architecture: Servers • Servers • Server computers synchronize and manage access to resources. • They respond to client requests with data or status information. • Typically, one server can handle requests from several machines. 6/20/2023 MCS-308T Dis Com II TED,SSUET 39
  • 40. Client-Server Architecture: Benefits and limitations • Client-server architecture gives the benefits of security and ease of ongoing management. • focus is only on securing the server computers. • Similarly, any changes to the database systems require changes to the server only. 6/20/2023 MCS-308T Dis Com II TED,SSUET 40
  • 41. Benefits and limitations Client-Server Architecture • The limitation of client-server architecture is that servers can cause communication bottlenecks, especially when several machines make requests simultaneously. 6/20/2023 MCS-308T Dis Com II TED,SSUET 41
  • 42. Three-tier architecture • In three-tier distributed systems, client machines remain as the first tier you access. • Server machines, on the other hand, are further divided into two categories: • Application Servers • Database Servers 6/20/2023 MCS-308T Dis Com II TED,SSUET 42
  • 43. Three-tier architecture • In three-tier distributed systems, client machines remain as the first tier you access. • Server machines, on the other hand, are further divided into two categories: • Application Servers • Database Servers 6/20/2023 MCS-308T Dis Com II TED,SSUET 43
  • 44. Three-tier architecture • Application servers • Application servers act as the middle tier for communication. • They contain the application logic or the core functions that you design the distributed system for. 6/20/2023 MCS-308T Dis Com II TED,SSUET 44
  • 45. Three-tier architecture • Database servers • Database servers act as the third tier to store and manage the data. • They are responsible for data retrieval and data consistency. 6/20/2023 MCS-308T Dis Com II TED,SSUET 45
  • 46. Three-tier architecture • By dividing server responsibility, three-tier distributed systems reduce communication bottlenecks and improve distributed computing performance. 6/20/2023 MCS-308T Dis Com II TED,SSUET 46
  • 47. N-tier architecture • N-tier models include several different client-server systems communicating with each other to solve the same problem. • Most modern distributed systems use an n-tier architecture with different enterprise applications working together as one system behind the scenes. 6/20/2023 MCS-308T Dis Com II TED,SSUET 47
  • 48. Peer-to-peer architecture • Peer-to-peer distributed systems assign equal responsibilities to all networked computers. • There is no separation between client and server computers, and any computer can perform all responsibilities. 6/20/2023 MCS-308T Dis Com II TED,SSUET 48
  • 49. Peer-to-peer architecture • Peer-to-peer architecture has become popular for content sharing, file streaming, and block-chain networks. 6/20/2023 MCS-308T Dis Com II TED,SSUET 49
  • 50. The Strengths and Weaknesses of Distributed Computing • Machines, able to work remotely on the same task, improve the performance efficiency of distributed systems. • The fault-tolerance, agility, cost convenience, and resource sharing make distributed computing a powerful technology. 6/20/2023 MCS-308T Dis Com II TED,SSUET 50
  • 51. The Strengths and Weaknesses of Distributed Computing • There are a number of reasons for the popularity of distributed computing: • The affordability of computers and availability of network access. • Resource sharing • Scalability • Fault tolerance • Multiple points of failure • Security Concerns 6/20/2023 MCS-308T Dis Com II TED,SSUET 51
  • 52. Applications of distributed computing and newer challenges • Mobile systems • Sensor networks • Ubiquitous or pervasive computing • Peer-to-peer computing • Publish-subscribe, content distribution, and multimedia • Distributed agents • Distributed data mining • Grid computing • Security in distributed systems 6/20/2023 MCS-308T Dis Com II TED,SSUET 52

Editor's Notes

  1. Explanation: A user, using a workstation, has full use of the resources on the local computer to which its workstation is connected. In addition, through the interaction of the local computer and the remote com-puters, the user may access mount on the remote computers. The World Wide Web is an excellent example of this type of computing. When you use a browser to visit a Web site, a program such as Netscape or Internet Earldom runs on your local system and interacts with a program (known as a Web server) running on a remote system to fetch a file that may reside on yet another remote system.
  2. Reference: https://www.analyticssteps.com/blogs/4-types-and-advantages-theory-computation
  3. Reference: https://www.geeksforgeeks.org/evolution-of-distributed-computing-systems/ Recommended Reading: Text Book Chapter 1, page 22-24
  4. Refrence: https://aws.amazon.com/what-is/distributed-computing/#:~:text=Distributed%20computing%20is%20the%20method,to%20deal%20with%20complex%20challenges.
  5. https://en.wikipedia.org/wiki/Distributed_computing