L2 ArchitectualModels
L2 ArchitectualModels
Introduction
Physical Models:
Three Generations of DS: Early, Internet-Scale, Contemporary
Architectural Models
Software Layers
System Architectures
Client-Server
Clients and a Single Server, Multiple Servers, Proxy Servers with Caches, Peer
Model
Alternative Client-Sever models driven by:
Mobile code, mobile agents, network computers, thin clients, mobile devices,
and spontaneous networking
Design Challenges/Requirements
Fundamental Models – formal description
Interaction, failure, and security models.
Summary
2
Introduction
3
Architectural Model
4
Fundamental Models
5
Physical Models
7
Architectural Models
peer
peer
peer
peer 8
Software Architecture and Layers
Layer N
Layer 2
Layer 1
9
Software and hardware service layers in
distributed systems
Applications, services
Middleware
Operating system
Platform
10
Platform
11
Middleware
12
System Architecture
13
Client Server Basic Model:
Clients invoke individual servers
result result
Server
Client
Key:
Process: Computer:
14
Client-Server Architecture Types
Two-tier model (classic)
client
client server
server
Three-tier (when the server, becomes a client)
client
client Server/client
Server/client server
server
Multi-tier (cascade model)
server
server
client
client Server/client
Server/client Server/client
Server/client
server
server
15
Clients and Servers
16
A service provided by multiple servers
Service
Server
Client
Server
Client
Server
17
Proxy Servers and Caches
Client Web
server
Proxy
server
Client Web
server
18
Peer Processes: A distributed application
based on peer processes
Peer 2
Peer 1
Application
Application
Sharable Peer 3
objects
Application
Peer 4
Application
Peers 5 .... N
peer
peer
peer
peer
peer
peer
peer
peer
peer
peer
peer
peer
peer
peer
20
Variants of Client Sever Model: Mobile
code and Web applets
a) client request results in the downloading of applet code
Client Web
Applet code server
Web
Client Applet server
A running program (code and data) that travels from one computer to
another in a network carrying out an autonomous task, usually on
behalf of some other process
Its main advantages are flexibility and savings in communications cost
Potential security threat to the resources in computers they visit. The
environment receiving agent should decide which of the local resource
to allow.
Agents themselves can be vulnerable – they may not be able to
complete task if they are refused access.
22
Thin clients and compute servers
Compute server
Network computer or PC
23
Interaction Model
24
Interaction Model:
Performance of Communication Channel
25
Interaction Model:
Computer clocks and timing events
26
Interaction Model:
Two variants of the interaction model
27
Interaction Model:
Event Ordering
28
Real-time ordering of events
send
Z
receive receive
m3 m1 m2
A
receive receive receive
t1 t2 t3
29
Inbox of User A looks like:
31
Processes and Channels
process p process q
send m receive
Communication channel
Outgoing message buffer Incoming message buffer
Class of failure
Affects Description
Fail-stop Process
Process halts and remains halted. Other processe
detect this state.
Crash Process
Process halts and remains halted. Other processe
not be able to detect this state.
Omission AChannel
message inserted in an outgoing message buffer
arrives at the other end’s incoming message buff
Send-omission A process completes send,
Process a but the
put in its outgoing message
message buffer.
is not
Receive-omission
Process
A message is put in a process’s incoming messag
buffer, but that process does not receive it.
Arbitrary Process/channel
Process or exhibits arbitrary behaviour: it
(Byzantine)send/transmit
channel arbitrary messages at arbitrary ti
commit omissions; a process may stop or take an
incorrect step.
33
Timing Failures
Class of Failure
Affects Description
Clock Process
Process’s local clock exceeds the bounds
rate of drift from real time.
Performance Process
Process exceeds the bounds on the interv
between two steps.
Performance Channel
A message’s transmission takes longer th
stated bound.
34
Masking Failures
35
Security Model
36
Protecting Objects: Objects and principals
Client
result Server
Copy of m
The enemy
m’
Process p m Process q
Communication channel
PrincipalA PrincipalB
39
Summary
40