Classic Grid Architecture



Similar documents
A Survey Study on Monitoring Service for Grid

System Models for Distributed and Cloud Computing

COM 440 Distributed Systems Project List Summary

A Web Services Framework for Collaboration and Audio/Videoconferencing

Principles and Foundations of Web Services: An Holistic View (Technologies, Business Drivers, Models, Architectures and Standards)

Motivation Definitions EAI Architectures Elements Integration Technologies. Part I. EAI: Foundations, Concepts, and Architectures

Introduction into Web Services (WS)

An Oracle White Paper November Oracle Primavera P6 EPPM Integrations with Web Services and Events

LinuxWorld Conference & Expo Server Farms and XML Web Services

Software design (Cont.)

CHAPTER 1 INTRODUCTION

Service-Oriented Architectures

Contents. Client-server and multi-tier architectures. The Java 2 Enterprise Edition (J2EE) platform

AquaLogic Service Bus

Peer to Peer Search Engine and Collaboration Platform Based on JXTA Protocol

Web Service Robust GridFTP

3-Tier Architecture. 3-Tier Architecture. Prepared By. Channu Kambalyal. Page 1 of 19

Web Service Based Data Management for Grid Applications

Automatic Configuration and Service Discovery for Networked Smart Devices

Interacting the Edutella/JXTA Peer-to-Peer Network with Web Services

EAI OVERVIEW OF ENTERPRISE APPLICATION INTEGRATION CONCEPTS AND ARCHITECTURES. Enterprise Application Integration. Peter R. Egli INDIGOO.

Service Virtualization: Managing Change in a Service-Oriented Architecture

Lesson 4 Web Service Interface Definition (Part I)

Introduction. The Evolution of the Grid. Introduction (cont.) Grid Computing Fall 2004 Paul A. Farrell 9/2/2004

A standards-based approach to application integration

Distributed Systems Architectures

Service Oriented Architecture

Closer Look at Enterprise Service Bus. Deb L. Ayers Sr. Principle Product Manager Oracle Service Bus SOA Fusion Middleware Division

Enterprise Application Designs In Relation to ERP and SOA

Introduction to WebSphere Process Server and WebSphere Enterprise Service Bus

SOFTWARE ARCHITECTURE FOR FIJI NATIONAL UNIVERSITY CAMPUS INFORMATION SYSTEMS

Service-Oriented Architecture and Software Engineering

What is Middleware? Software that functions as a conversion or translation layer. It is also a consolidator and integrator.

The Service Revolution software engineering without programming languages

Building a Reliable Messaging Infrastructure with Apache ActiveMQ

VALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur

Developers Integration Lab (DIL) System Architecture, Version 1.0

Distributed Systems and Recent Innovations: Challenges and Benefits

What Is the Java TM 2 Platform, Enterprise Edition?

Enterprise Service Bus Defined. Wikipedia says (07/19/06)

Overview: Siebel Enterprise Application Integration. Siebel Innovation Pack 2013 Version 8.1/8.2 September 2013

Event-based middleware services

An approach to grid scheduling by using Condor-G Matchmaking mechanism

Challenges and Opportunities for formal specifications in Service Oriented Architectures

Alternatives to SNMP and Challenges in Management Protocols. Communication Systems Seminar Talk 10 Francesco Luminati

Distributed Objects and Components

Analysis of a potential use of middleware technologies for railway domain

Enterprise Application Integration (EAI) Architectures, Technologies, and Best Practices

Peer-to-peer framework of Distributed Environment for Cooperative and Collaborative Work Service Composition

Enterprise Application Integration (EAI) Architectures, Technologies, and Best Practices

Grid Computing. Web Services. Explanation (2) Explanation. Grid Computing Fall 2006 Paul A. Farrell 9/12/2006

The Service Availability Forum Specification for High Availability Middleware

Software Life-Cycle Management

XIII. Service Oriented Computing. Laurea Triennale in Informatica Corso di Ingegneria del Software I A.A. 2006/2007 Andrea Polini

A Peer-to-Peer Approach to Content Dissemination and Search in Collaborative Networks

SCA-based Enterprise Service Bus WebSphere ESB

Service Oriented Architectures

Big Data JAMES WARREN. Principles and best practices of NATHAN MARZ MANNING. scalable real-time data systems. Shelter Island

Monitoring Clusters and Grids

WSO2 Message Broker. Scalable persistent Messaging System

JoramMQ, a distributed MQTT broker for the Internet of Things

Universal Event Monitor for SOA Reference Guide

Enterprise Application Integration

1 What Are Web Services?

Network Applications

Lesson 18 Web Services and. Service Oriented Architectures

Middleware Lou Somers

Collaborative & Integrated Network & Systems Management: Management Using Grid Technologies

Using DDS to Enable The Real-Time Enterprise Service Bus (RT-ESB)

Creating Web Services in NetBeans

Enterprise Application Integration (Middleware)

Software Development around a Millisecond

How To Create A C++ Web Service

Advanced Peer to Peer Discovery and Interaction Framework

Oracle WebLogic Foundation of Oracle Fusion Middleware. Lawrence Manickam Toyork Systems Inc

Introduction to Web services architecture

How To Develop A Web Service In A Microsoft J2Ee (Java) 2.5 (Oracle) 2-Year Old (Orcient) 2Dj (Oracles) 2E (Orca) 2Gj (J

Virtual machine interface. Operating system. Physical machine interface

Service Oriented Architecture (SOA) Implementation Framework for Satellite Mission Control System Software Design

How To Understand The Concept Of A Distributed System

Part 2: The Neuron ESB

Getting Started with Service- Oriented Architecture (SOA) Terminology

A SOA Based Framework for the Palestinian e-government Integrated Central Database

What is a Web service?

SOA Blueprints Concepts

Chapter 2: Remote Procedure Call (RPC)

SOA REFERENCE ARCHITECTURE: SERVICE TIER

1 What Are Web Services?

Transcription:

Peer-to to-peer Grids

Classic Grid Architecture Resources Database Database Netsolve Collaboration Composition Content Access Computing Security Middle Tier Brokers Service Providers Middle Tier becomes Web Services Clients Users and Devices

Traditional P2P Network The global sharing of resources for a specific task. Homogeneous resources within a distrustful environment Special uses such as SETI.

Peer-to to-peer Networks Resource Sharing & Discovery CPU cycles: SETI@home, Folding@HOME File Sharing: Napster, Gnutella Deployments user driven No dedicated management Management of resources Expose resources & specify security strategy Replicate resources based on demand Dynamic peer groups, fluid group memberships Sophisticated search mechanisms Peers respond to queries based on their interpretations Responses do not conform to traditional templates.

A democratic organization Peer to Peer Grid Database JXTA Database Web Service Interfaces Event/ Message Brokers Integrate P2P Event/ Peer and Grid/WS to Peer Grid Message Brokers Web Service Interfaces JXTA

Grid Web Services The grid web services uses the Open Grid Services Architecture (OGSA) to facilitate operations between clients and backend resources. The OGSA is the main link between resources such as databases and clients, users, and devices. This is accomplished through distributed object technology.

Web Services Definition Language The Web Services Definition Language (WSDL) is an XML-based IDL (Interface Definition Language) language. WSDL is used as a service description layer within the web service protocol stack. It is an XML based language for specifying a public interface for a web service. Not tied to any specific messaging system, has some extensions for SOAP services. Can allow use of CORBA or Java RMI to be used with an XML wrapper to provide a uniform interface.

XML and IDL XML stands for EXtensible Markup Language XML is a markup language much like HTML XML was designed to describe data XML uses a Document Type Definition (DTD) or an XML Schema to describe the data

Raw Resources Raw Data Raw Data (Virtual) XML Data Interface Web Service (WS) WS WS XML WS to WS Interfaces etc. WS WS WS WS WS WS (Virtual) XML Knowledge (User) Interface Render to XML Display Format Clients (Virtual) XML Rendering Interface

Service Model A service accepts one or more inputs and gives some type of output. In WSDL, these inputs and outputs are known as ports. WDSL defines a structure for these messages. Allows the interoperability of services from different sources.

Areas on which the Peer-to to-peer Grid is Built Basic capabilities for web services. Such as security, access to computers and databases. The databases include LDAP (Lightweight Directory access protocol and XML). Messaging subsystems: Between web services and resources addressing such issues as fault tolerance and performance. Creation of libraries and toolkits containing web services. Libraries for bioinformatics, gene searching etc Provide services for network monitoring and collaboration. Use of the services of the Semantic grid to discover grid resources. User interfaces using portals on web services.

Implementation of Web Services Access to resources can be done by servers or by direct P2P interactions. The distributed object paradigm allows either of these two implementations. This is due to the fact that there is a separate service and message layer. The performance is the deciding factor on the implementation choice. P2P is the best for local dynamic use and server best for global but not short-lived use.

Peer-to to-peer Grid A P2P grid with peer groups managed locally arranged into a global system supported by servers. Grids would control the central servers while services at the edge are grouped into middleware peer groups. In this case the P2P technologies are part of the services of the middleware.

Peer-to to-peer grid continued Can use the JXTA search technology to use middle-tier database systems. Can use grid or P2P technologies for organization and management of services.

Database Database M P G r o u p Grid Middleware MP Group Grid Middleware Grid Middleware MP Group Grid Middleware M P G r o u p MP=Middleware Peer

Peer-to to-peer Grid Event Services The event service provides the messaging between web services and resources. The idea is to use a single messaging subsystem to provide service to all forms of different technologies such as TCP/IP, RMI, UDP, XML, etc

Event Service Implementation The event service is implemented through messaging by three different ways: 1) Simple Object Access Protocol (SOAP) 2) The JXTA peer-to-peer Protocol 3) The Java Message Service (JMS)

Simple Object Access Protocol (SOAP) SOAP is an XML based protocol used for exchanging information by remote procedure calls transported via HTTP. Easily invokes remote services and methods. Can be used in both grid and P2P Networks.

JXTA Protocol JXTA short for Juxtapose is a Sun technology used on peer-to-peer networks. It creates a virtual network where any peer can interact with other peers and resources directly. Advantages include: Interoperability - across different peer-to-peer systems and communities Platform independence - multiple/diverse languages, systems, and networks Ubiquity - every device with a digital heartbeat

Java Message Service The Java Message Service (JMS) is a messaging standard that allows application components based on the Java 2 Platform to create, send, receive, and read messages. It enables distributed communication that is loosely coupled, reliable, and asynchronous.

Event service continued The servers provide services at the event service level. An event and a message are defined by an XML schema and can be a resource also. Event service uses some form of the publishsubscribe system. Messages are queued from publishers and then clients subscribe to them.

Routers and brokers Provide message or event services whereas servers provide traditional distributed object services as Web services. Only depend on event itself and perhaps the data format; they do not depend on details of application and can be shared among several applications These are called event brokers by the authors or are called rendezvous peers in JXTA.

Broker Network For message/events service (P2P) Community (P2P) Community Broker Broker Resource Broker Broker (P2P) Community Broker Data base Software multicast Broker (P2P) Community

Event service continued-2 All services that are independent of the web service that produced the message are gathered together. Such services that depend on message headers (destination), message formats (multimedia), or message processes (such as publishsubscribe). Figure 18.9 event service architecture

Event Web Service Architecture Routing Destination Source Matching Filter workflow Web Service 1 (Virtual) Queue Web Service 2 WSDL Ports Broker WSDL Ports

Event service Architecture Filter: is mapping to PDA or slow communication channel (universal access) see our PDA adaptor Workflow: implements message process Routing: illustrated by JXTA Destination-Source: matching illustrated by JMS using Publish-Subscribe mechanism

Event service architecture The event service architecture supports communication channels between web services which can be direct or pass through. Can be low-level events such as routing or higher-level such as publish-subscribe. Messages must support multiple interfaces such as: SOAP, filtering, pub-sub, collaboration, and workflow. XML is an example which defines all the above services.

Collaboration in P2P Grids Both P2P networks and grids are used in collaborative environments. P2P are used in ad hoc environments and grids are parts of virtual organizations. The collaboration deals with sharing of web services, objects, and resources. Two main approaches to collaboration asynchronous and synchronous.

Asynchronous collaboration In asynchronous collaboration different members have access to the same resource. Such as a web page being updating by one and accessed by many. Asynchronous collaboration has no time constraint, is fault-tolerant, and uses caching techniques to improve performance.

Synchronous collaboration Synchronous collaboration is more difficult than asynchronous. Fault-sensitive, has modest real-time constraints and requires fine grain object states. Example: Recovering from an error. Does not have a mechanism to go back to original place.

Sharing mechanisms for collaboration For asynchronous or synchronous the sharing mechanism is the same. Need to establish peer groups by either direct or indirect methods. In direct methods the members join a specific session. Audio-Video conferencing. In indirect the members express an interest and is used in P2P systems with JXTA using XML.

Asynchronous collaboration methods In an asynchronous collaboration the pub-sub method is used. In this method the authors assume that every Web service has one or more ports in each of three classes. 1) Resource facing input ports: which supply information used to define the state of the web service. 2) User-facing input ports: allow control information to be passed by the user. 3) User-facing output ports: Supply information used to create the user interface.

Synchronous collaboration methods Three cases exist in synchronous collaboration shared display, shared input port, and shared user-facing output port. In shared display model: a bitmap display is shared and the state is maintained between the clients by transmitting the changes in the display. Uses multiple event types with full and update displays. Key advantage can immediately be applied to all shared objects. Disadvantages: Difficult to customize and require a lot of bandwidth.

Shared Display Collaboration Master Object or WS Object or WS Object or WS Object or WS Viewer Object or WS Viewer Shared Display WS Display Event Message Service Other participants WS Display

Shared input port Shared input port collaboration: a replication is made of the Web service with one copy for each client. The sharing is achieved by intercepting the Web service and directing copies of the messages on each input port to the replicated copies. Example: All clients have a copy of PowerPoint. On the master client uses a form of COM wrapper to detect PowerPoint events. The changes are then sent to all participating clients. Still being developed for replicated Web services with shared input ports.

Shared Input Port (Replicated WS) Collaboration F I R U Web Service O O F I Collaboration as a WS Set up Session WS Viewer Master WS Display Event (Message) Service F I R U Web Service O O R U F Web I Service O O F I F I WS Viewer WS Viewer Other Participants WS Display WS Display

Shared output ports Shared output port collaboration: uses a single Web service with ports providing interfaces to the client. The user-facing ports defines a user interface. Example: A multimedia server with multiple output streams. Gives identical view for each user but with less bandwidth than shared display model.

Shared Output Port Collaboration Web Service Message Interceptor Collaboration as a WS Set up Session R F I O WSDL Application or Content source Web Service U O F I WS Viewer Master WS Display WS Viewer WS Display Event (Message) Service WS Viewer Other Participants WS Display

User interfaces and Universal Access Universal access means a user interface which has the capability to define the interaction between the user profile and the web service. Three User-facing ports are used for the interaction: 1) Main user-facing output port: delivers a menu with many possible views.

User interfaces and Universal Access 2) Customized user-facing output port: delivers the view from 1) to the Web service 3) Input/output ports: Is the main control channel in figure 18.14. Example: Apache portal event service for all web services. Shares workflow, filters, and collaboration.

NaradaBrokering Based on a network of cooperating broker nodes Cluster based architecture allows system to scale to arbitrary size Originally to provide uniform software multicast to support realtime collaboration linked to publish-subscribe for asynchronous systems. Incorporates algorithms for Topic matching and calculation of destinations Efficient routing to computed destinations

NaradaBrokering continued Now has four major core functions Message transport: (based on performance) in multi-link fashion Publish-subscribe including JMS & JXTA Support for RTP-based audio/video conferencing. Federation of multiple instances (just starting) of Grid services

NaradaBroker Network For message/events service (P2P) Community (P2P) Community Broker Broker Resource Broker Broker (P2P) Community Broker Data base Software multicast Broker (P2P) Community

Bibliography Grid Computing : Making the Global Structure a Reality by Berman, Fox, and Hey. 2003 Wiley publishers. http://www.naradabrokering.org The GRID2: The Blueprint for a New Computing Infrastructure by Foster and Kesselman. 2004 Morgan Kaufamnn publishers