Middleware & Web Services. Layered Protocols: IP Layers, interfaces, and protocols in the...

Preview:

Citation preview

Middleware &Web Services

Purpose of Layered Models

mask the heterogeneity of systems

provide convenient programming abstraction

Layered Protocols: OSI

TvS 2.2

Layers, interfaces, and protocols in the OSI model.

Middleware Protocols

An adapted reference model for networked communication.TvS 2.6

Purpose of Middleware ‘Middleware is primarily a set of programming abstractions developed to facilitate the development of complex distributed systems.’

– Gustavo Alonso

Middleware provides…

protocols to support general-purpose services to more specific applications, e.g.authentication protocolsauthorization protocolsdistributed commit protocolsdistributed locking protocolshigh-level communication protocols

remote procedure calls (RPC) remote method invocation (RMI)

Middleware

1-22

TvS 1.24

General structure of a distributed system as middleware.

Old-style Middlewareprogramming models

Remote Calls Remote Procedure Calls (RPC) Distributed objects and Remote Method Invocation

E.g. Java RMI

Common Object Request Broker Architecture (CORBA) Cross-language RMI

Other Programming Models Remote event notification Remote SQL access Distributed transaction processing

©Gustavo Alonso, ETH Zürich.

WS architecture: application integration A popular interpretation of Web

services is based on IBM’s Web service architecture which is based on three elements: Service requester: The potential

user of a service

Service provider: The entity that implements the service and offers to carry it out on behalf of the requester

Service registry: A place where available services are listed and which allows providers to advertise their services and requesters to query for services

The goal is just-in-time integration of applications by discovering and orchestrating network-available services

©Gustavo Alonso, ETH Zürich.

How is it ‘bottom up’? The Web service architecture

proposed by IBM is based on two key concepts: architecture of existing

synchronous middleware platforms

current specifications of SOAP, UDDI and WSDL

The architecture has a remarkable client/server flavor

It reflects only what can be done with SOAP (Simple Object Access

Protocol) UDDI (Universal Description

and Discovery Protocol) WSDL (Web Services

Description Language)

UDDI

SOAP

WSDL

Message-based Middleware

AsynchronousSending and receiving documentsNo remote procedure calls or object invocation

Less coordination required

©Gustavo Alonso, ETH Zürich.

The message world

Sources: MiddlewareAdapted from Introduction to Distributed Systems: Slides for CSCI 3171

Lectures by E. W. Grundke

References: [TvS] A. Tanenbaum and M. van Steen

Distributed Systems: Principles and Paradigms, Prentice-Hall (2002)<URL:http://www.prenhall.com/divisions/esm/app/author_tanenbaum/custom/dist_sys_1e/

>

[CDK] G. Coulouris, J. Dollimore and T. Kindberg Distributed System: Concepts and Design, Addison-Wesley (2001) <URL:http://www.cdk3.net/ig/beida/>

[ISO] International Organization for Standardization/ International Electrotechnical CommissionStandard ISO/IEC 7498-1: Information Technology — Open Systems Interconnection — Basic Reference Model: The Basic Model (Second ed., corrected and reprinted 1996-06-15)Reference number ISO/IEC 7498-1:1994(E)

<URL:http://standards.iso.org/ittf/PubliclyAvailableStandards/s020269_ISO_IEC_7498-1_1994(E).zip>

Recommended