Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
Applications of Distributed Systems
DISTRIBUTED SYSTEMS
DR. BASSEM KUSSAYBA
Layout
• Distributed Operating Systems
• Distributed File Systems
• Distributed Shared Memory
• Distribution Database Systems
• “Killer” Applications
2
Distributed Operating Systems
3
Distributed Operating Systems - Definition
Not all operating systems are on a single CPU
4
DOS
A model where distributed applications are running
on multiple computers linked by communications
An extension of the network operating system that
supports higher levels of communication and
integration of the machines on the network
Looks like a centralized operating system
but its not!
Distributed Operating Systems – Types and Services
5
Multiprocessors
Multicomputers
Types
File & print services
Process & terminal
services
Mail & gateway
services
Services
Distributed Operating Systems – Examples
• IRIX operating system
• DYNIX operating system
• AIX operating system
• Solaris operating system
• OSF/1 operating system
• …
6
Distributed Operating Systems – Goals
7
Efficiency
Data propagation
Overhead of
communication
protocols
Load distribution
Consistency
in using the system
Predict User’s
perspective
• Uniformity ability
of the system’s
behavior
System’s
perspective
• Integrity
maintenance
Robustness
Fault tolerance
• Handling of exceptional
situations and errors
• Changes in the system
topology
• Long message delays
• Inability to locate a server
Security for the users and the
system
• Access control
• varying security models
Distributed Operating Systems – Implementation Issues
• Identification/Name
• Resources must have unique address
• naming scheme such as URL
• Distributed Coordination
• Processes required to synchronization
• Interprocess Communication
• Client/server model
• Remote Procedure Call (RPC)
• Distributed Resources
• Fault Tolerance and Security
8
Distributed Operating Systems – Synchronization
9
Barrier Synchronization
• Process must have synchronization
points to continue
Condition Coordination
• Process must wait for conditions -
from others- to continue
Mutual Exclusion
• Processes must exclusion each
other in critical shared resource
Types
State information sent by
messages
Decision if process may
continue must rely on a
message resolution protocol
Deadlocks
Issues
Layout
• Distributed Operating Systems
• Distributed File Systems
• Distributed Shared Memory
• Distribution Database Systems
• “Killer” Applications
10
Distributed File System
A subsystem of an operating system
Controls how data is stored and
retrieved
Without a file system, information
placed in a storage area would be
one large body of data
11
Implements a common file system that
can be shared by all autonomous
computers in a distributed system
Network transparency
High availability
File System Distributed File System
Distributed File System
• Architectural options
1. Fully distributed
• files distributed to all sites
2. Client-server Model
• Fileserver: dedicated sites storing files perform storage and retrieval operations
• Client: rest of the sites use servers to access files
12
Distributed File System – Client/Server Architecture
13
Distributed File System - Services
14
NameServer
Provides mapping the
names supplied by clients
into objects (files and
directories)
Takes place when process
attempts to access file or
directory the first time
Cachemanager
Improves performance through file
caching
Caching at the client - When client
references file at server
• Copy of data brought from server to client
machine
• Subsequent accesses done locally at the client
Caching at the server
• File saved in memory to reduce subsequent
access time
Distributed File System – Data Access in Client/Server
15
Distributed File System – Issues - Protection
• Access Failure  Replication (distributing copies of data on
multiple servers)
 Additional Storage in the Data Center
• Two related concepts
1. Capabilities
2. Access Control Lists
• Cryptographic File System
16
Distributed File System – Issues - Naming
• Approaches to naming files in a distributed system
• Concatenate name of host to names of files on that host
• Have a single global directory
• All files belong to a single name space
• Having unique system wide filenames require a single computing facility
or cooperating facilities
17
Advantage Disadvantages
unique filenames Conflicts with network transparency
simple resolution Moving file to another host requires changing its name and the
applications using it
Distributed File System – Issues - Caching
Caching at the Client
18
Main Memory Disk
+ - + -
Fast Expensive
memory
Large files Requires local
disk
Works for diskless
clients
Complex Virtual
Memory
Management
Simpler Virtual
Memory
Management
Distributed File System – Issues - Caching
Cache consistency
19
• Server informs cache managers when data in client caches is stale
• Client cache managers invalidate stale data or retrieve new data
• Extensive communication
Server initiated
• Cache managers at the clients validate data with server before
returning it to clients
• Extensive communication
Client initiated
• Several clients open a file, at least one of them for writing
• Server informs all clients to purge that cached file
Prohibit file caching when
concurrent-writing
Lock files when concurrent-write
sharing (at least one client opens for
write)
Distributed File System – Issues – Writing Policy
once a client writes into a file (and the local cache), when should
the modified cache be sent to the server?
• Write-through
• All writes at the clients, immediately transferred to the servers
• Reliability
• It does not take advantage of the cache
• Slow Performance
20
Distributed File System – Issues – Writing Policy
once a client writes into a file (and the local cache), when should
the modified cache be sent to the server?
• Delayed writing
• Delay transfer to servers
• Many writes take place (including intermediate results) before a transfer
• Some data may be deleted
• No reliability
21
Distributed File System – Issues – Writing Policy
once a client writes into a file (and the local cache), when should
the modified cache be sent to the server?
• Delayed writing until file is closed at client
• For short open intervals, same as delayed writing
• For long intervals, reliability problems
22
Distributed File System – Issues – Availability
what is the level of availability of files in a distributed file system?
• Use replication to increase availability
• Many copies (replicas) of files are maintained at different sites/servers
• How to keep replicas consistent
• How to detect inconsistency among replicas
23
Layout
• Distributed Operating Systems
• Distributed File Systems
• Distributed Shared Memory
• Distribution Database Systems
• “Killer” Applications
24
Distributed Shared Memory
• A shared memory abstraction what is implemented on a loosely
coupled system
25
Distributed Shared Memory-Stumm and Zhou's
Classification
• Central-server algorithm
• Non-migrating and non-replicated
• Client: Sends a data request to the central server
• Central server: Receives the request, performs data access and
sends a response
• Client: Receives the response
• Migration algorithm
• Migrating and non-replicated
• Client: If the needed data object is not local, determines the
location and then sends a request.
• Remote host: Receives the request and then sends the object.
• Client: Receives the response and then accesses the data object (read and /or
write)
26
Distributed Shared Memory-Stumm and Zhou's
Classification
• Read-replication algorithm
• Migrating and replicated
• Client: If the needed object is not local, sends a request
• Remote host: Receives the request and then sends the object
• Client: Receives the object and then multicasts by sending either
invalidate or update messages to all sites that have a copy of the data
object
• Remote host: Receives an invalidation signal and then invalidates its local
copy, or receives an update signal and then updates the local copy.
• Client: Accesses the data object (write)
27
Distributed Shared Memory-Stumm and Zhou's
Classification
• Full-replication algorithm
• Non-migrating and replicated
• Client: If it is a write, sends the data object to the sequencer.
• Sequencer: Receives the data object and adds a sequence number. Sends
the client a signal with the sequence number and multicasts the data
object together with the sequence number to all the other sites
• (Client) Receives the acknowledgment and updates local memory based
on the sequence number of each data object.
• (Other sites) Receive the data object and update local memory based on
the sequence number of each data object
28
Layout
• Distributed Operating Systems
• Distributed File Systems
• Distributed Shared Memory
• Distribution Database Systems
• “Killer” Applications
29
Distributed Database Systems
• A collection of multiple, logically interrelated databases distributed
over a computer network
• Possible design alternatives
• Autonomy
• Distribution
• Heterogeneity
30
Distributed Database Systems - Essentials
31
Local
autonomy
No reliance
on a central
site
Continuous
operation
Location
independence
Fragment
independence
Replication
independence
Distributed
query
processing
Distributed
transaction
management
Hardware
independence
Operating
system
independence
Network
independence
Data
independence
Distributed Database Systems - Issues
• Network scaling problem
• Distributed query processing
• Integration with distributed operating systems
• Heterogeneity
• Concurrency control
• Security
32
Layout
• Distributed Operating Systems
• Distributed File Systems
• Distributed Shared Memory
• Distribution Database Systems
• “Killer” Applications
33
“Killer” Applications
• Distributed Object-based Systems
• CORBA
• Distributed Document-based Systems
• WWW
• Distributed Coordination-based Systems
• JINI
• Distributed Multimedia Systems
• QoS requirements
• Emerging Systems
• Wireless networks & mobile computing
• Grid
34
Presented by:
• Abdul Majeed Al-Kattan
• Rabee Al-Rass
• Rahaf Aamer
• Rimon Koroni
• Sandra Sukarieh
35
THANK YOU.

More Related Content

Applications of Distributed Systems

  • 1. Applications of Distributed Systems DISTRIBUTED SYSTEMS DR. BASSEM KUSSAYBA
  • 2. Layout • Distributed Operating Systems • Distributed File Systems • Distributed Shared Memory • Distribution Database Systems • “Killer” Applications 2
  • 4. Distributed Operating Systems - Definition Not all operating systems are on a single CPU 4 DOS A model where distributed applications are running on multiple computers linked by communications An extension of the network operating system that supports higher levels of communication and integration of the machines on the network Looks like a centralized operating system but its not!
  • 5. Distributed Operating Systems – Types and Services 5 Multiprocessors Multicomputers Types File & print services Process & terminal services Mail & gateway services Services
  • 6. Distributed Operating Systems – Examples • IRIX operating system • DYNIX operating system • AIX operating system • Solaris operating system • OSF/1 operating system • … 6
  • 7. Distributed Operating Systems – Goals 7 Efficiency Data propagation Overhead of communication protocols Load distribution Consistency in using the system Predict User’s perspective • Uniformity ability of the system’s behavior System’s perspective • Integrity maintenance Robustness Fault tolerance • Handling of exceptional situations and errors • Changes in the system topology • Long message delays • Inability to locate a server Security for the users and the system • Access control • varying security models
  • 8. Distributed Operating Systems – Implementation Issues • Identification/Name • Resources must have unique address • naming scheme such as URL • Distributed Coordination • Processes required to synchronization • Interprocess Communication • Client/server model • Remote Procedure Call (RPC) • Distributed Resources • Fault Tolerance and Security 8
  • 9. Distributed Operating Systems – Synchronization 9 Barrier Synchronization • Process must have synchronization points to continue Condition Coordination • Process must wait for conditions - from others- to continue Mutual Exclusion • Processes must exclusion each other in critical shared resource Types State information sent by messages Decision if process may continue must rely on a message resolution protocol Deadlocks Issues
  • 10. Layout • Distributed Operating Systems • Distributed File Systems • Distributed Shared Memory • Distribution Database Systems • “Killer” Applications 10
  • 11. Distributed File System A subsystem of an operating system Controls how data is stored and retrieved Without a file system, information placed in a storage area would be one large body of data 11 Implements a common file system that can be shared by all autonomous computers in a distributed system Network transparency High availability File System Distributed File System
  • 12. Distributed File System • Architectural options 1. Fully distributed • files distributed to all sites 2. Client-server Model • Fileserver: dedicated sites storing files perform storage and retrieval operations • Client: rest of the sites use servers to access files 12
  • 13. Distributed File System – Client/Server Architecture 13
  • 14. Distributed File System - Services 14 NameServer Provides mapping the names supplied by clients into objects (files and directories) Takes place when process attempts to access file or directory the first time Cachemanager Improves performance through file caching Caching at the client - When client references file at server • Copy of data brought from server to client machine • Subsequent accesses done locally at the client Caching at the server • File saved in memory to reduce subsequent access time
  • 15. Distributed File System – Data Access in Client/Server 15
  • 16. Distributed File System – Issues - Protection • Access Failure  Replication (distributing copies of data on multiple servers)  Additional Storage in the Data Center • Two related concepts 1. Capabilities 2. Access Control Lists • Cryptographic File System 16
  • 17. Distributed File System – Issues - Naming • Approaches to naming files in a distributed system • Concatenate name of host to names of files on that host • Have a single global directory • All files belong to a single name space • Having unique system wide filenames require a single computing facility or cooperating facilities 17 Advantage Disadvantages unique filenames Conflicts with network transparency simple resolution Moving file to another host requires changing its name and the applications using it
  • 18. Distributed File System – Issues - Caching Caching at the Client 18 Main Memory Disk + - + - Fast Expensive memory Large files Requires local disk Works for diskless clients Complex Virtual Memory Management Simpler Virtual Memory Management
  • 19. Distributed File System – Issues - Caching Cache consistency 19 • Server informs cache managers when data in client caches is stale • Client cache managers invalidate stale data or retrieve new data • Extensive communication Server initiated • Cache managers at the clients validate data with server before returning it to clients • Extensive communication Client initiated • Several clients open a file, at least one of them for writing • Server informs all clients to purge that cached file Prohibit file caching when concurrent-writing Lock files when concurrent-write sharing (at least one client opens for write)
  • 20. Distributed File System – Issues – Writing Policy once a client writes into a file (and the local cache), when should the modified cache be sent to the server? • Write-through • All writes at the clients, immediately transferred to the servers • Reliability • It does not take advantage of the cache • Slow Performance 20
  • 21. Distributed File System – Issues – Writing Policy once a client writes into a file (and the local cache), when should the modified cache be sent to the server? • Delayed writing • Delay transfer to servers • Many writes take place (including intermediate results) before a transfer • Some data may be deleted • No reliability 21
  • 22. Distributed File System – Issues – Writing Policy once a client writes into a file (and the local cache), when should the modified cache be sent to the server? • Delayed writing until file is closed at client • For short open intervals, same as delayed writing • For long intervals, reliability problems 22
  • 23. Distributed File System – Issues – Availability what is the level of availability of files in a distributed file system? • Use replication to increase availability • Many copies (replicas) of files are maintained at different sites/servers • How to keep replicas consistent • How to detect inconsistency among replicas 23
  • 24. Layout • Distributed Operating Systems • Distributed File Systems • Distributed Shared Memory • Distribution Database Systems • “Killer” Applications 24
  • 25. Distributed Shared Memory • A shared memory abstraction what is implemented on a loosely coupled system 25
  • 26. Distributed Shared Memory-Stumm and Zhou's Classification • Central-server algorithm • Non-migrating and non-replicated • Client: Sends a data request to the central server • Central server: Receives the request, performs data access and sends a response • Client: Receives the response • Migration algorithm • Migrating and non-replicated • Client: If the needed data object is not local, determines the location and then sends a request. • Remote host: Receives the request and then sends the object. • Client: Receives the response and then accesses the data object (read and /or write) 26
  • 27. Distributed Shared Memory-Stumm and Zhou's Classification • Read-replication algorithm • Migrating and replicated • Client: If the needed object is not local, sends a request • Remote host: Receives the request and then sends the object • Client: Receives the object and then multicasts by sending either invalidate or update messages to all sites that have a copy of the data object • Remote host: Receives an invalidation signal and then invalidates its local copy, or receives an update signal and then updates the local copy. • Client: Accesses the data object (write) 27
  • 28. Distributed Shared Memory-Stumm and Zhou's Classification • Full-replication algorithm • Non-migrating and replicated • Client: If it is a write, sends the data object to the sequencer. • Sequencer: Receives the data object and adds a sequence number. Sends the client a signal with the sequence number and multicasts the data object together with the sequence number to all the other sites • (Client) Receives the acknowledgment and updates local memory based on the sequence number of each data object. • (Other sites) Receive the data object and update local memory based on the sequence number of each data object 28
  • 29. Layout • Distributed Operating Systems • Distributed File Systems • Distributed Shared Memory • Distribution Database Systems • “Killer” Applications 29
  • 30. Distributed Database Systems • A collection of multiple, logically interrelated databases distributed over a computer network • Possible design alternatives • Autonomy • Distribution • Heterogeneity 30
  • 31. Distributed Database Systems - Essentials 31 Local autonomy No reliance on a central site Continuous operation Location independence Fragment independence Replication independence Distributed query processing Distributed transaction management Hardware independence Operating system independence Network independence Data independence
  • 32. Distributed Database Systems - Issues • Network scaling problem • Distributed query processing • Integration with distributed operating systems • Heterogeneity • Concurrency control • Security 32
  • 33. Layout • Distributed Operating Systems • Distributed File Systems • Distributed Shared Memory • Distribution Database Systems • “Killer” Applications 33
  • 34. “Killer” Applications • Distributed Object-based Systems • CORBA • Distributed Document-based Systems • WWW • Distributed Coordination-based Systems • JINI • Distributed Multimedia Systems • QoS requirements • Emerging Systems • Wireless networks & mobile computing • Grid 34
  • 35. Presented by: • Abdul Majeed Al-Kattan • Rabee Al-Rass • Rahaf Aamer • Rimon Koroni • Sandra Sukarieh 35 THANK YOU.