1 of 24

MATRUSRI ENGINEERING COLLEGEDEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

SUBJECT NAME: DISTRIBUTED SYSTEMS

CLASS : BE VII SEMESTER

FACULTY NAME: A V MURALI KRISHNA

MATRUSRI

ENGINEERING COLLEGE

2 of 24

UNIT-1

MATRUSRI

ENGINEERING COLLEGE

Introduction: Characteristics & Properties OF Distributes Systems – Taxonomy - Types OF Distributed Systems Design GOALS – Transparency Issues.

Architectures: Architectural Styles, System Architectures, Architectures VERSUS Middleware, AND Selfmanagement IN Distributed Systems. Processes: Threads, Virtualization, Software Agents, Clients, Servers, AND Code Migration

Communication: Inter PROCESS COMMUNICATION Mechanisms,remote Procedure Call, Remote Method Invocation, Message-oriented Communication, Stream- Oriented Communication, AND Multicast Communication.

Syllabus

3 of 24

INTRODUCTION:��

PRELIMINARY CONCEPTS

MATRUSRI

ENGINEERING COLLEGE

OUTCOMES:

A distributed system in its most simplest definition is a group of computers working together as to appear as a single computer to the end-user.

These machines have a shared state, operate concurrently and can fail independently without affecting the whole system’s uptime

In Distributed Systems this course, you will learn a range of fundamental and applied techniques in distributed systems. The learning objectives for Distributed Systems are:�1. Apply knowledge of distributed systems techniques and methodologies.

2. Explain the design and development of distributed systems and distributed

systems applications.

3.To communicate that design to others.

4 of 24

CONTENTS:�1) Characterstics Of Distributed Systems�2) Types Of Distributed Systems

OUTCOMES:

One of the great benefits  that it provides interoperable communications between all types of hardware and all kinds of operating systems.

MODULE-I

MATRUSRI

ENGINEERING COLLEGE

5 of 24

Definition of a Distributed System

A distributed system is:

A collection of independent computers �that appears to its users �as a single coherent system

MATRUSRI

ENGINEERING COLLEGE

6 of 24

Definition of a Distributed System

A distributed system organized as middleware. �The middleware layer extends over multiple machines, �and offers each application the same interface

MATRUSRI

ENGINEERING COLLEGE

7 of 24

Goals of Distributed Systems

  • Easily Connect Users/Resources
  • Exhibit Distribution Transparency
  • Support Openness
  • Be Scalable:
    • in size
    • geographically
    • administratively

Looking at these goals helps use answer the question: “Is building a distributed system worth the effort?”

MATRUSRI

ENGINEERING COLLEGE

8 of 24

Transparency in a Distributed System

MATRUSRI

ENGINEERING COLLEGE

9 of 24

Scalability Limitations

Examples of scalability limitations

Concept

Example

Centralized services

A single server for all users

Centralized data

A single on-line telephone book

Centralized algorithms

Doing routing based on complete information

MATRUSRI

ENGINEERING COLLEGE

10 of 24

Scaling Techniques (1)

1.4

The difference between letting (a) a server �or (b) a client check forms as they are being filled

MATRUSRI

ENGINEERING COLLEGE

11 of 24

Scaling Techniques (2)

1.5

An example of dividing the DNS name space into zones

MATRUSRI

ENGINEERING COLLEGE

12 of 24

Characteristics of decentralized algorithms:

  • No machine has complete information about the system state.
  • Machines make decisions based only �on local information.
  • Failure of one machine does not ruin �the algorithm.
  • There is no implicit assumption that a global clock exists.

MATRUSRI

ENGINEERING COLLEGE

13 of 24

Pitfalls when Developing � Distributed Systems

  • The network is reliable
  • The network is secure
  • The network is homogeneous
  • The topology does not change
  • Latency is zero
  • Bandwidth is infinite
  • Transport cost is zero
  • There is one administrator

MATRUSRI

ENGINEERING COLLEGE

14 of 24

Types of Distributed Systems

• Distributed Computing Systems

    • High Performance Computing (HPC)

• Distributed Information Systems

    • Transaction Processing Systems (TPS)
    • Enterprise Application Integration (EAI)

• Distributed Pervasive Systems

    • Ubiquitous Systems

MATRUSRI

ENGINEERING COLLEGE

15 of 24

Clustered Systems Architecture

A. Frank - P. Weisberg

MATRUSRI

ENGINEERING COLLEGE

16 of 24

Cluster Computing Systems

  • Collection of similar workstations/PCs, closely connected by means of a high-speed LAN:
    • Each node runs the same OS.
    • Homogeneous environment
    • Can serve as a supercomputer
    • Excellent for parallel programming
  • Examples: Linux-based Beowulf clusters, MOSIX (from Hebrew University).

MATRUSRI

ENGINEERING COLLEGE

17 of 24

Architecture for Cluster Computing System

MATRUSRI

ENGINEERING COLLEGE

18 of 24

Cluster Configurations

MATRUSRI

ENGINEERING COLLEGE

19 of 24

Grid Computing Systems

  • Collection of computer resources, usually owned by multiple parties and in multiple locations, connected together such that users can share access to their combined power:
    • Can easily span a wide-area network
    • Heterogeneous environment
    • Crosses administrative/geographic boundaries
    • Supports Virtual Organizations (VOs)
  • Examples: EGEE - Enabling Grids for E-SciencE (Europe), Open Science Grid (USA).

MATRUSRI

ENGINEERING COLLEGE

20 of 24

Architecture for Grid Computing Systems

MATRUSRI

ENGINEERING COLLEGE

21 of 24

Cloud Computing Systems (1)

  • Collection of computer resources, usually owned by a single entity, connected together such that users can lease access to a share of their combined power:
    • Location independence: the user can access the desired service from anywhere in the world, using any device with any (supported) system.
    • Cost-effectiveness: the whole infrastructure is owned by the provider and requires no capital outlay by the user.
    • Reliability: enhanced by way of multiple redundant sites, though outages can occur, leaving users unable to remedy the situation.

MATRUSRI

ENGINEERING COLLEGE

22 of 24

Cloud Computing Systems (2)

    • Scalability: user needs can be tailored to available resources as demand dictates – cost benefit is obvious.
    • Security: low risk of data loss thanks to centralization, though problems with control over sensitive data need to be solved.
    • Readily consumable: the user usually does not �need to do much deployment or customization, �as the provided services are easy to adopt and ready-to-use.
  • Examples: Amazon EC2 (Elastic Compute Cloud), Google App Engine, IBM Enterprise Data Center, �MS Windows Azure, SUN Cloud Computing.

MATRUSRI

ENGINEERING COLLEGE

23 of 24

Transaction Processing Systems (TPS)

The role of a TP monitor in distributed systems

MATRUSRI

ENGINEERING COLLEGE

24 of 24

Enterprise Application Integration

MATRUSRI

ENGINEERING COLLEGE