Distributed Systems - PowerPoint PPT Presentation

About This Presentation
Title:

Distributed Systems

Description:

Examples: Workflow Systems, WWW-services (URL) 1.1. 5. Goals of Distributed Systems ... condition unblocked; public: int value () { return count;} void incr ... – PowerPoint PPT presentation

Number of Views:147
Avg rating:3.0/5.0
Slides: 40
Provided by: steve1804
Category:

less

Transcript and Presenter's Notes

Title: Distributed Systems


1
Distributed Systems
  • Alexis Delis
  • ad_at_di.uoa.gr
  • Monday 600-900
  • Spring 2002
  • www.di.uoa.gr/ad/MDE519.html

2
Grades - Evaluation
Final Examination 35
In-class Presentations Homeworks 30
Project(s) 35
Book A.S. Tanenbaum, M. van Steen, Distributed
Systems, Prentice Hall, 2002. Other Papers
(available from the courses WWW site)
3
Definition of a Distributed System
  • A distributed system is
  • A collection of independent computers that
    appears to its users as a single coherent system.

4
Definition of a Distributed System
1.1
A distributed system is organized as
middleware.Note that the middleware layer may
extend over multiple machines. Examples Workflow
Systems, WWW-services (URL)
5
Goals of Distributed Systems
  • connecting users with resources
  • transparency
  • openess
  • scalability

6
Transparency in a Distributed System
Different forms of transparency in a distributed
system.
7
Openness
  • Open DS a system that offer services
  • according to Standard Rules.
  • Such rules are described in terms of protocols
  • IDLs help in the description of such protocols.
  • Interoperability?
  • Portability?
  • Difference between the two?

8
Scalability
  • Numerous definitions of scalability
  • system can be scalable in terms of size
  • Add more users/resources into the system
  • Geographically Scalable system
  • Users/resources may lie far apart
  • Administratively Scalable
  • Easy to manage even if it spans multiple orgs.
  • GOLDEN RULE as system becomes scalable in one of
    these
  • three dimension exhibits loss in performance.

9
Scalability Problems
Examples of scalability limitations.
10
Scaling Techniques
  • asynchronous communication
  • filling (database) forms.
  • distribution (take a component, break into
  • smaller pieces, spread these components
  • across the system
  • Example DNS Domain Name Service.
  • Division in (non-overlapping) zones domains

11
Scaling Techniques
1.4
  • The difference between letting
  • a server (character/string-based communication)
    or
  • a client check forms as they are being filled
    (bulk uploading).

12
Scaling Techniques
1.5
An example of dividing the DNS name space into
zones.
13
Scalability - Caching
  • Generally Good Idea Replicate (data/services)
  • Replication increases availability (of systems)
  • Caching (difference from replication?)
  • Main problem with caching/replication?
  • Is this a serious problem?
  • CDNs (how do they do it?)

14
Hardware Concepts
1.6
Different basic organizations and memories in
distributed computer systems
15
Multiprocessors
1.7
  • A bus-based multiprocessor.

16
Multiprocessors
1.8
  • A crossbar switch (nn crosspoint switches
    needed)
  • An omega switching network (low latency problem)
  • How to avoid latency?
  • use hierarchical schemes NUMA (NonUniform
    Memory Access)

17
Homogeneous Multicomputer Systems(building is
easy-probleminterconnection network)
Homogeneous Multi-computers System Area Networks
(SANs)
1-9
  • Bus-based (FDDI/ Fast-Ethernet /Gigabit network )
  • Grid (switched based messages are routed via the
    interconnection network)
  • Hypercube(switched based four dimensional (b)
    two ordinary cubes with 8 vertices and 12 edges)

18
Switched Multi-computers
  • Can vary significantly
  • From
  • Massively Parallel Processors ( MPP CM5, IBM
    SP2 etc.)
  • To..
  • Clusters/Networks of Workstations (cheap -
    COWs or NOWs)

19
Software Concepts
  • An overview between
  • DOS (Distributed Operating Systems)
  • NOS (Network Operating Systems)
  • Middleware

20
Uniprocessor Operating Systems
1.11
  • Separating applications from operating system
    code through a microkernel.

21
Multiprocessor Operating Systems
monitor Counter private int count
0 public int value() return count void
incr () count count 1 void decr()
count count 1
  • A monitor to protect an integer against
    concurrent access.

22
Multiprocessor Operating Systems (2)
monitor Counter private int count 0 int
blocked_procs 0 condition unblocked public
int value () return count void incr ()
if (blocked_procs 0) count
count 1 else signal
(unblocked)
void decr() if (count 0) blocked_procs
blocked_procs 1 wait (unblocked)
blocked_procs blocked_procs 1 else
count count 1
  • A monitor to protect an integer against
    concurrent access, but blocking a process.

23
Distributed Shared Memory Systems (DSM)
  • Pages of address space distributed among four
    machines
  • Situation after CPU 1 references page 10
  • Situation if page 10 is read only and replication
    is used

Trick replicate pages that are referenced
frequently! Another replicate all pages (??)
problems? Solutions?
24
Distributed Shared Memory Systems
  • Always an issue size of a page in DSM why?
  • Large sized page are potentially good but they
    may
  • entail false sharing
  • Having data belonging to two independent
    processes in the
  • same page

25
Network Operating System
1-19
  • General structure of a network operating system.

26
Network Operating System
1-20
  • Two clients and a server in a network operating
    system.
  • Services allowed to users
  • rlogin machineA
  • rcp machineAfile1 machineBfile2
  • ftp, http, sftp, ssh, etc.

27
Network Operating System
  • Issue of FS mount-ing

1.21
  • Different clients may mount the servers in
    different places.

28
Positioning Middleware
1-22
  • General structure of a distributed system as
    middleware.

29
Middleware and Openness
1.23
  • In an open middleware-based distributed system,
    the protocols used by each middleware layer
    should be the same, as well as the interfaces
    they offer to applications.

30
Comparison between Systems
  • A comparison between multiprocessor operating
    systems, multicomputer operating systems, network
    operating systems, and middleware based
    distributed systems.

31
Clients and Servers
1.25
  • General interaction between a client and a server.

32
An Example Client and Server
  • The header.h file used by the client and server.

33
An Example The Server
  • A sample server.

34
An Example The Client
1-27 b
  • A client using the server to copy a file.

35
Three Processing Levels
1-28
  • The general organization of an Internet Search
    Engine into three different layers

36
Multitiered Architectures
1-29
  • Alternative client-server organizations (a) (e).

37
Multitiered Architectures
1-30
  • An example of a server acting as a client.

38
Modern Architectures
1-31
  • An example of horizontal distribution of a Web
    service.

39
Ongoing (Research) Work
  • DSs based on Horizontal Distribution(of
    data/services)
  • DSs based on Horizontal and/or Vertical
    Distribution (of data/services)
  • Peer-to-Peer
  • Distributions of data
  • Services (indexing, querying, TP processing)
  • Self-organizing systems
Write a Comment
User Comments (0)
About PowerShow.com