The document discusses different models for distributed systems including physical, architectural and fundamental models. It describes the physical model which captures the hardware composition and different generations of distributed systems. The architectural model specifies the components and relationships in a system. Key architectural elements discussed include communicating entities like processes and objects, communication paradigms like remote invocation and indirect communication, roles and responsibilities of entities, and their physical placement. Common architectures like client-server, layered and tiered are also summarized.
System Models • Threatsto consider for modeling - Widely varying modes of use: component parts are subject to wide variations in workload. - Wide range of system environments: Able to accommodate heterogenous h/w, s/w, OS etc. - Internal problems: Failures, inconsistency of data etc - External threats: Attack on data integrity. • Types - Physical - Architectural - Fundamental Isha Padhy, Department of CSE, CBIT, Hyderabad 1
2.
Physical Model • Modelthat capture the hardware composition of a system in terms of computer and their interconnecting networks. • Three generations of distributed systems: –Early distributed systems –Internet-scale distributed systems: CORBA –Contemporary distributed systems Isha Padhy, Department of CSE, CBIT, Hyderabad 2
3.
Architectural Model • Architecture:The structure of a system specifying its components and their interrelationships. • Why architecture? – To ensure that the structure will meet the current and future demands on it – To provide a reliable, manageable, adaptable and cost-effective system(MARC) • Ways of organization of DS - Software Architecture - System ArchitectureIsha Padhy, Department of CSE, CBIT, Hyderabad 3
4.
Architectural model • Architecturalelements: How to understand the fundamental building blocks of a distributed system? • What are the entities that are communicating in the distributed system (communicating entities)? • How do they communicate, or, what communication paradigm is used (communication paradigms)? • What roles and responsibilities do they have in the overall architecture (roles and responsibilities)? • How do they map on to the physical distributed architecture (what is their placement)? Isha Padhy, Department of CSE, CBIT, Hyderabad 4
5.
Architectural elements • Communicatingentities: Entities that take part - Processes - Objects - Components - Web services Isha Padhy, Department of CSE, CBIT, Hyderabad 5
6.
Architectural Elements Communication paradigms:How they communicate Inter-process communication – low-level process support. E.g. message passing primitives, direct access to API, multicast communication Remote invocation – common communication paradigm in distributed systems. Two-way exchange between communicating entities, common techniques; RPC, RMI, request-reply protocols Indirect communication– E.g. group communication, publish-subscribe systems, message queues, tuple spaces, distributed shared memory Isha Padhy, Department of CSE, CBIT, Hyderabad 6
7.
Indirect communication • Groupcommunication • Publish- subscribe systems(Event Based systems) • Message queues • Tuple spaces • Distributed shared memory Isha Padhy, Department of CSE, CBIT, Hyderabad 7
8.
Centralized Architecture: Client- ServerModel - Components are server, client , communication Server Client Client invocation result Server invocation result Process: Key: Computer: Isha Padhy, Department of CSE, CBIT, Hyderabad 8
9.
Layered Architecture - Acomplex system partitioned into layers with each layer using service offered by layer below. Application , Services Middleware Operating System Computer and network hardware Platform Isha Padhy, Department of CSE, CBIT, Hyderabad 9
10.
Example : Internetsearch engine Isha Padhy, Department of CSE, CBIT, Hyderabad 10
11.
Tiered Architecture • Techniqueto organize functionality of a given layer and place this functionality into appropriate servers. • The functional decomposition is as - Presentation Logic - Application logic - Data Logic Isha Padhy, Department of CSE, CBIT, Hyderabad 11
12.
2 tier Architecture •Server provides processing and data management; client provides simple graphical display (thin-client) • At the other extreme, all application processing and some data resides at the client (fat-client approach) Isha Padhy, Department of CSE, CBIT, Hyderabad 12
13.
3 Tier Architecture Anexample of a server acting as client. -In some applications servers may also need to be clients, leading to a three level architecture. Ex -Distributed transaction processing -Web servers that interact with database servers Isha Padhy, Department of CSE, CBIT, Hyderabad 13