Download presentation
Presentation is loading. Please wait.
Published byVanessa Joseph Modified over 9 years ago
1
Dr. Naglaa Soliman E-mail: nagla.soliman2015@gmail.com nagla.soliman2015@gmail.com NFsoliman@pnu.edu.sa Princess Nora Bint Abdulrahman University College of computer and information sciences Networks department Distributed systems (NET 422)
2
Content 1.Characterization of distributed systems. 2.System models. 3.Inter-process communication (Internet protocols, external data representation, client-servereur, group communication…). 4.Distributed objects and remote invocation (RPC, events and notifications, Java, RMI). 5.Distributed file systems (architecture, case study Sun Nfs). 6.Name services (concepts, DNS, case study X.5000). 7.P2P systems and middleware. 8.Time and global state ( synchronization of physical and logical clocks). 9.Coordination and agreement. 10.Replication (system model, fault-tolerant services). 11.Web services (service description and IDL for web services, case study: the grid…)
3
Textbooks George Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair, ‘Distributed Systems. Concepts and Design’, Fifth Edition, 2012. Kenneth P.Birman, ‘Reliable Distributed systems: technologies, web services and applications’, Springer Andrew S.Tanenbaum, Marteen Van Steen, ‘Distributed Systems: Principles and paradigms’, second edition, 2006. Arno Puder, Kay Romer, Frank Pilttofer, ‘Distributed Systems Architecture: a middle approach’, Elsevier, 2006.
4
Part 1: Characterization of distributed system Basic definitions Challenges of distributed systems Types of distributed systems
5
What is a distributed system? The litterature presents various definitions of what a distributed system is. Definition 1: A distributed system is a collection of independent computers that appears to its users as a single coherent system. No assumptions are made concerning the type of computers: mainframe, sensor,… Computers need to collaborate. Each computer carries out its actions. Caracterization of distribued systems
6
Definition 2: A distributed system consists of hardware and software components located in a network of computers that communicate and coordinate their actions only by passing messages. No shared memory – message-based communication Characterization of distribued systems Computer1 Computer 2 Computer 3 Computer 4 Message1 Message2
7
Caracterization of distribued systems Figure 1-1. A distributed system organized as middleware. The middleware layer runs on all machines, and offers a uniform interface to the system
8
Basic terminology: Program: a code we write to solve any problem. Process: an instance of a program that is being executed. Message: used to communicate between processes. Protocol: a formal description of message format and rules that two processes must follow in order to exchange thoses messages. Network: the infrastructure that links computers, servers,.. Component: can be a process or any piece of hardware required to run a process and support communication between processes. Characterization of distribued systems
9
Why building distributed systems? 1.Support cooperative networking: users that are geographically seperated can work and play together: teleconference, e-mail, file transfer,… 2.Reliability: if a small percentage of machines break, the rest can remain intact and do useful work. 3.Mobility: users can move arround with their laptops. Problems: 1.Designing and implementing distributed networks may be difficult. 2.The network may lose messages or become overloaded. 3.Security become a great concern for such systems. Characterization of distribued systems
10
Challenges of distributed systems: 1.Making resources accessible: make it easy for the users to access and share resources (printers, computers, files, web pages, …) in a controlled manner. 2.Transparency: hide the fact that processes and resources are physically distributed across multiple computers. Access: hide differences in data representation and how a resource is accessed. Location: hide where a resource is located. Migration: hide that a resource may move to another location. Caracterization of distribued systems
11
Challenges of distributed systems: Replication: hide that a resource is replicated. Concurrency: hide that a resource may be shared by several users. Failures: hide the failure and the recovery of a resource. 3.Scalability: a distributed system should operate effectively at many different scales, ranging from a small network to a big one. 4. Openess: determined by the degree to which new resources can be added and made available for use. Caracterization of distribued systems
12
ChallengeSolution TransparencyMiddleware: software layer that provides a programming abstraction as well as masking heterogeneity. OpenessThe first step in openness is publishing the documentation of software components and interfaces of the components to make them available to software developers.
13
Caracterization of distribued systems ChallengeSolution ConcurrencyConcurrency can be achieved by standard techniques such as semaphores, which are used in most operating systems. FailuresTechniques for dealing with failures: 1-Detecting failures E.g. Checksums 2- Masking failures E.g. Retransmission of corrupt messages E.g. File redundancy 3- Redundancy: at least two different routes between any two routers should be available.
14
14 General Examples of Distributed Systems Internet Intranets Mobile networks
15
15 General Examples of Distributed Systems The Internet The Internet is a vast interconnected collection of computer networks of many different types. Multimedia services are available in the Internet enabling users to access audio and video data including music, radio, TV channels, phone, and video conferencing. (Figure 1)
16
16 General Examples of Distributed Systems Figure 1. A typical portion of the Internet
17
17 General Examples of Distributed Systems Intranet An intranet is a portion of the Internet that is separately administered and has a boundary that can be configured to enforce local security policies. (Figure 2)
18
18 General Examples of Distributed Systems Figure 2. A typical Interanet
19
19 General Examples of Distributed Systems Mobile networks Technological advances in device miniatorization and wireless networking have led increasingly to the integration of small and portable computing devices into distributed systems. These devices include: Laptop computers
20
Types of distributed systems: 1.Distributed computing systems: An important class of distributed systems is the one used for high performance computing tasks. The underlying hardware consists of a collection of similar workstations or personnal computers, closely connected by means of high local area network. Each node runs the same operating system. Cluster computing is used for parallel programming in which a single program is run on multiple machines. Characteriation of distributed systems Cluster computing:
21
Computer nodes are controlled and accessed by means of a single master node. Master node: handles the allocation of nodes to a particular parallel program, maintains a batch queue of submitted jobs and provides an interface for users. Characterization of distribued systems Management application Parallel libraries Local operating system Components of parallel application Local operating system Components of parallel application Local operating system High speed network Master node Computer node
22
Master node runs the middleware needed for the execution of programs and management of the clusters. An important part of this middleware is formed by the library for executing parallel programs. A characteristic feature of such systems is homogeneity. High degree of heterogeneity. No assumptions are made concerning hardware, operating systems, security policies, etc. Caracterization of distribued systems Grid computing:
23
Resources fom different organizations are brought together to allow the collaboration of a group of people. Much of the software for realizing grid computing evolves around providing access to ressources from different administrative domains. 2. Distributed information systems: Networked application simply consisted of a server running that application (often including a database and making it available to remote programs). Example: banking system. Caracterization of distribued systems
24
Distributed pervasive systems: Previous systems are largely characterized by their stability: nodes are fixed and have a more or less permanent and high quality connection to a network. Instability is the default behavior of pervasive systems: devices in these systems are often small, battery powered, mobile, and having only a wireless connection. General lack of humain administrative control. Devices can be configured by their owners, but otherwise they need to automatically discover their environment. Characterization of distribued systems
25
Distributed Pervasive Systems The first two types of systems are characterized by their stability: nodes and network connections are more or less fixed This type of system is likely to incorporate small, battery-powered, mobile devices –Home systems –Electronic health care systems – patient monitoring –Sensor networks – data collection, surveillance
26
Home System Built around one or more PCs, but can also include other electronic devices: –Automatic control of lighting, sprinkler systems, alarm systems, etc.
27
Electronic Health Care Systems Figure 1-12. Monitoring a person in a pervasive electronic health care system, using (a) a local hub or (b) a continuous wireless connection.
28
Sensor Networks A collection of geographically distributed nodes consisting of a comm. device, a power source, some kind of sensor, a small processor… Purpose: to collectively monitor sensory data (temperature, sound, moisture etc.,) and transmit the data to a base station “smart environment” – the nodes may do some rudimentary processing of the data in addition to their communication responsibilities.
29
Sensor Networks Figure 1-13. Organizing a sensor network database, while storing and processing data (a) only at the operator’s site or …
30
Sensor Networks Figure 1-13. Organizing a sensor network database, while storing and processing data … or (b) only at the sensors.
31
Characterization of distribued systems How can an operator extract information for a sensor network? Each sensor database is directly sent to the operator. In this case, sensors do not cooperate. So, network ressources and energy may be wasted. The administrator can simply issying queries. The answer will be provided through collaboration. Another solution consists to forward a query to all sensor nodes along a tree.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.