1/22
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
Distributed System
A collection of loosely coupled nodes interconnected by a communication network
Nodes in a Distributed System
An individual computer or server that is part of a larger system
Advantages of Distributed Systems
Scalability, Speedup, High performance, Openness, Reliability, Flexibility
Disadvantages of Distributed Systems
Difficult troubleshooting, Less software support, High network infrastructure costs, Security issues
Resource Sharing
A user at one site may be able to use the resources available at another
Computation Speedup
Sub-computations can be distributed among the various sites and run simultaneously
Reliability
If one site fails in a distributed system, the remaining sites can continue operating
Communication
Users at various sites can exchange information at different levels
Process in a Distributed System
A program being executed
How Processes Communicate
Using inter-process communication if within same host. Exchange messages across network if in different end systems
Client
The process that initiates the communication
Server
The process that waits to be contacted to begin the session
Sockets
Where a client and server process communicate with each other by reading from and writing to
Two Socket Types
UDP and TCP
UDP (User Datagram Protocol)
Is connectionless, unreliable where group of bytes (datagram) is sent through the socket
TCP (Transmission Control Protocol)
Is connection-oriented, reliable where a stream of bytes is sent through the socket
Echo Server Network Application
Simple client server program that sends and received echoes from client to server
Single Client Knock-Knock Network Application
Client-server program that implements the knock-knock jokes
RPCs (Remote Procedure Calls)
Allows a client to call a procedure on a remote host
Pipes
Acts as a channel allowing two processes to communicate
Ordinary Pipes
Allow communication in standard producer-consumer style
How Ordinary Pipes Work
Producer write to one end and consumer reads from other end. They are unidirectional and require parent-child relationship
Named Pipes
Several processes can use the pipe for communication and allows inter-process communication over a network. They are bidirectional