• No results found

Pervasive Grid and Web Services

N/A
N/A
Protected

Academic year: 2020

Share "Pervasive Grid and Web Services"

Copied!
33
0
0

Loading.... (view fulltext now)

Full text

(1)

Pervasive Grid and Web Services

Advanced Research Workshop o

High Performance Computing

Cetraro June 1 2004

Geoffrey Fox

Community Grids Lab

Indiana University

(2)

Grids of Grids of Simple Services

• Link via methods  messages  streams

• Services and Grids are linked by messages

• Internally to service, functionalities are linked by methods

• A simple service is the smallest Grid

• We are familiar with method-linked hierarch

Lines of Code  Methods  Objects  Programs  Packages

Overlay and Compose

Grids of Grids Methods Services Functional Grids

CPUs Clusters Compute Resource Grids MPPs

Databases DatabasesFederated

Sensor Sensor Nets

Data

(3)

Education Grid

Inservice Teachers Preservice Teachers School of Education

Teacher Educator Grids Informal Education (Museum) Grid Student/Parent … Community Grid Science Grids

Typical Science Gri Service such as Research

Database or simulation Transformed by Grid Filte to form suitable for education

Learning Management

or LMS Grid

Publisher Grid Campus o Enterprise Administrative Grid

Education as a Grid of Grids

Digital Library

Grid

(4)

Database Database Analysis and Visualizatio Portal Repositorie Federated Databases Data Filte Services

Field Trip Data

Streaming Data Sensor s

?

Discovery Services SERVOGrid Researc Simulation s Research Education Customization Services From Researc to Education Educatio Grid Computer Farm

Geoscience Research and Education Grids

GI Grid

Sensor Grid Database Grid

(5)

Critical Infrastructure (CI) Grids built as Grids of Grids

Gas Service and Filters

Physical Network Registr

y Metadata

Flood Service and Filters

Flood CIGrid

Electricity Gas CIGrid CIGrid

Data

Access/Storage Securit

y Notification Workflow Messaging Portal

s VisualizationGrid Collaboration

Grid

Sensor Grid Compute

Grid GIS Grid

(6)

What is a Simple Service?

• Take any system – it has multiple functionalities

– We can implement each functionality as an independent distributed service

– Or we can bundle multiple functionalities in a single service • Whether functionality is an independent service or one of many

method calls into a “glob of software”, we can always make them as Web services by converting interface to WSDL

• Simple services are gotten by taking functionalities and making as small as possible subject to “rule of millisecond”

– Distributed services incur messaging overhead of one (local) to

100’s (far apart) of milliseconds to use message rather than method call

– Use scripting or compiled integration of functionalities ONLY when require <1 millisecond interaction latency

• Apache web site has many projects that are multiple functionalities presented as (Java) globs and NOT (Java) Simple Services

(7)

Minicompute r Firewall Compute r Serve r PDA Mode m Laptop computer Workstatio n Peer s Peer s Audio/Video Conferencing Client Audio/Video Conferencing Client NaradaBrokering Broker Network

NaradaBrokering

Queues

Web Service B

Stream

P2P Messaging

Server-enhance Messaging

NB supports messages and streams

NB role for Grid is Similar to

(8)

Prototype implementation of WS-Notification Web Service Notifications

Prototype implementation of WS-ReliableMessaging Web Service reliability

NaradaBrokering enhanced Grid-FTP. Bridge to the Globus TK3. Grid Application Support

Java Message Service (JMS) 1.0.2b compliant Support for routing P2P JXTA interactions. Messaging Related

Compliance

Compression and Decompression of payloads Fragmentation a nd Coalescing of payloads Message Payload options

Message-level WS-Security compatible security Security

Recovery from failures and disconnects. Replay of events/messages at any time. Recovery and Replay

Producer Order and Total Order over a message type

Time Ordered delivery using Grid-wide NTP based absolute time Ordered delivery

Robust and exactly-once delivery of messages in presence of failures

Reliable delivery

Subscription can be Strings, Integers, XPath queries, Regular Expressions, SQL and tag=value pairs.

Subscription Formats

Transport protocols supported include TCP, Parallel TCP streams, UDP, Multicast, SSL, HTTP and HTTPS.

Communications through authenticating proxies/firewalls & NATs. Network QoS based Routing

Multiple transport support In publish-subscribe

Paradigm with different Protocols on each link

(9)

NaradaBrokering Service Integration

S1 P1 P2 S2

S1 S2

S1 S2

Proxy Messaging

Handler Messaging

Notification

S? Service P? Proxy

NB Transport

Internal to Service: SOAP Handlers/Extensions/Plug-ins Java (JAX-RPC) .NET Indigo and special cases: PDA's gSOAP, Axis C++

Standard SOAP Transport

(10)

NaradaBrokering and JMS (Java Message Service)

Low Rate; Small

(11)

Pentium-3, 1GHz, 256 MB RAM

100 Mbps LAN

JRE 1.3 Linux

hop-3 0 1 2 3 4 5 6 7 8 9 100 1000 Transit Delay (Milliseconds)

Message Payload Size (Bytes)

Mean transit delay for message samples in NaradaBrokering: Different communication hops

hop-2

(12)
(13)
(14)

Streams and Workflow

n

NaradaBrokering can

manage streams

from

Audio/Video conferences

Sensors

Inter-service communication in workflow

n

http

://www.hpsearch.org/demo/ des

cribes scripting

managemen

interface to

NaradaBrokering

Could be a standalone workflow engine but better used to interface with GUI’s such as

(15)

Future/Ongoing NB Enhancements

n Server/Broker-free version to support “immediate deployment” of NB-based Community Grids

Support local file systems as “stable consistent cross client”

storage

Support local implementations of Grid services

n Rich handler and proxy support for WS-ReliableMessaging and WS-Reliability with federation between standards

n Federated support of WS-Eventing, WS-Notification and JMS n Other Mediation/Federation to heterogeneous Grids

n Replicated Subscriber (Fault-tolerance/Performance) Services

NaradaBrokering will choose between several subscribing replicated services

n VPG Virtual Private Grid: Build standard VPN transport

(PPTP, L2TP, IPSec) into NB

Could offer new Grid Security options and/or more choice on

(16)

P2P and NaradaBrokering

n JXTA is a well known P2P framework from Sun with a similar

transport model to NaradaBrokering

n We have integrated NB into JXTA to link peer groups

n Server/Broker free version will support P2P versions of Grid

applications

Day 1: Use a server (broker) free version of NB

If successful, add brokers in the Grid sky to achieve better performance (if broker has better network link than clients)

Service providers could sell such Grid Farm services

n Add DHT (Distributed Hash Table) approach (used in latest

JXTA) to matching topics and subscriptions in NB

n GridTorrent: Merge NB-enhanced GridFTP and P2P BitTorrent

(17)

Collaboration and Web Services

n

Collaboration

has

Mechanism to set up members (people, devices) of a

“collaborative sessions”

Shared generic tools such as text chat, white boards,

audio-video conferencing

Shared applications such as Web Pages, PowerPoint,

Visualization, maps, (medical) instruments ….

n

b)

and

c)

are “just shared objects” where objects

could be Web Services but rarely are at moment

We can port objects to Web Services and build a general approach for making Web services collaborative

n

a)

is a “Service” which is set up in many different

(18)

Shared Event Collaboration

n All collaboration is about sharing events defining state changesAudio/Video conferencing shares events specifying in

compressed form audio or video

Shared display shares events corresponding to change in

pixels of a frame buffer

Instant Messengers share updates to text message streamsMicrosoft events for shared PowerPoint (file replicated

between clients) as in Access Grid

n Finite State Change NOT Finite State Machine architecture n Using Web services allows one to expose update events of all

kinds as message streams

n Need publish/subscribe approach to share messages (NB) plus n System to control “session” – who is collaborating and rules

XGSP is XML protocol for controlling collaboration building

(19)

Web Services and M-MVC

n Web Services are naturally

M-MVC – Message based Model View Controller with

Model is Web ServiceController is Portal and

Messages (NaradaBrokering)View is rendering

(20)

Desktop and Web Services with MMVC

n

Most desktop applications are in fact roughly

MVC

with

controller

formed by “system interrupts” with

View

and

Model

communicating by “post an event”

and define a “listener” programming mode

n

We propose to

integrate desktop and Web Service

approach by systematic use of MMVC and

NaradaBrokering

n

Allows easier porting to

diverse clients

and automatic

collaboration

n

Attractive for next generation of

Linux desktop clients

n

We have demonstrated for

SVG

Browser (Scalable

Vector Graphics),

OpenOffice

and

PowerPoint

(21)

SM-MV Collaboration

Shared Output por

Single Model, Multiple

View SM-MV Collaborativ

Web Service

(22)

MM-MV Collaboration

Shared Input por

(23)

Global-MMCS Community Grid

n We are building an open source protocol independent Web

Service “MCU” which will scale to an arbitrary number of users and provide integrated thousands of simultaneous users

collaboration services.

n The function of A/V media server is distributed using

NaradaBrokering architecture.

Media Servers mix and convert A/V streams

n Open XGSP MCU based on the following open source projectsopenh323 is basis of H323 Gateway

NIST SIP stack is basis of SIP Gateway

NaradaBrokering is open source messaging

Java Media Framework basis of Media Servers

Helix Community http://www.helixcommunity.org for Real

Media

n http://www.globalmmcs.org open source “non advertised”

(24)

XGSP Web Service MCU Architecture

SIP H323 AccessGrid NativeXGSP

Admire

Gateways convert to uniform XGSP Messaging

High Performance (RTP and XML/SOAP and ..

Media Servers

Filters Session Server

XGSP-based Control

NaradaBrokerin g

All Messaging

Use Multiple Media servers to scale to many codecs and many versions of audio/video mixing

NB Scales a distributed

We Services

(25)

Break up into Web Services

n Monolithic MCU becomes many different “Simple Services”

Session Control

Thumbnail “image” grabberAudio Mixer

Video Mixer

Codec ConversionHelix Real StreamingPDA Conversion

H323/SIP Gateways

n As independent can replicate particular services as neededCodec conversion might require 20 services for 20 streams

spread over 5 machines

n 1000 simultaneous users could require:

1 session controller, 1 audio mixer, 10 video mixers, 20 codec

converters, 2 PDA converters and 20 NaradaBrokers

n Support with a stream optimized Grid Farm in the sky

(26)

GlobalMMCS and NaradaBrokering

n All communication – both control and “binary” codecs are

handled by NaradaBrokering

n Control uses SOAP and codecs use RTP transport n Each stream is regarded as a “topic” for NB

n Each RTP packet from this stream is regarded as an “event” for

this topic

n Can use replay and persistency support in NB to support

archiving and late clients

n Can build customized stream management to administer replay,

and who gets what stream in what codec

n NaradaBrokering supports unicast and multicast

n Use firewall penetration and network monitoring services in NB

(27)

0 1 0 2 0 3 0 4 0 5 0 6 0

0 20

0 400 600 800 1000 1200 1400 1600 1800 2000 Delay (Milliseconds)

Packet Number

Average delays per packet for 50

video-clientsNaradaBrokering Avg=2.23 ms, JMF Avg=3.08

ms

NaradaBrokering-RTP

(28)

0 1 2 3 4 5 6 7 8

0 20

0 400 600 800 1000 1200 1400 1600 1800 2000

Jit

ter

(Milliseconds)

Packet Number

Average jitter (std. dev) for 50 video clients.

NaradaBrokering Avg=0.95 ms, JMF Avg=1.10

ms

NaradaBrokering-RTP

(29)

Polycom, Access Grid

and RealVideo views of

(30)

Integration of PDA, Cell phone and Desktop Grid Access

(31)

GlobalMMCS Futures

n Current “release” has very rudimentary session managementShould support adding members and applications to a

collaborative session

Administration and master/non-master roles

n Collaborative PowerPoint, OpenOffice, SVG release waiting

XGSP session manager

n Most interesting clients are Java applets supporting portlet

model for modern portals

n Linux and Macintosh clients require higher performance JMF –

Java Media Framework

n Need to support use of NB QoS features

n Add additional codecs like MPEG2 and MPEG4 n Improve video codec-based shared display

n Need scheduler of dynamic services sensitive to streaming

(32)

Points to Remember I

MPI (successful parallel computing) and Web Services

teach us that programming is

Message-based not Method

based …

– i.e. use distributed not shared memory

M-MVC: Message

Based

Model View Control

paradigm

for

desktop applications

and

Web Services

Paradigm for new generation of

Linux

, PDA, Macintosh

clients

better than Windows!

M-MVC Collaboration is either

– MM-MV: Shared Input Port Web Services (Multiple Model Multiple View) cf. MIMD

(33)

Points to Remember II

2 Principles for

Software Engineering for Grids

– Build Grids of Grids of Simple Services

– Rule of the Millisecond – Build as a service if can tolerate inter-functionality latency of a few milliseconds

Need to handle streams (ordered collections of messages)

as well as messages

Grids are high performance

P2P Networks

NaradaBrokering

supports messaging needed between

services

– http://www.naradabrokering.org is pretty solid open source

GlobalMMCS

is an improving scalable Web Service based

collaboration environment to build

community Grids

– A/V Conferencing, Shared desktop, shared OpenOffice, PowerPoint ….

References

Related documents

MDC Museum of Art + Design (MOAD) is Miami Dade College’s flagship institution dedicated to the presentation and exhibition of visual art and design, housed at the National

– Installation program that can selectively install all components (Management Server software, Video Recording Manager software, Configuration.. Client software, Operator

Therefore, determining the number of people who will be served, their per capita use, and the factors that who will be served, their per capita use, and the factors that affect

ity. Enhancement of excitatory neurotransmitter release in- duced by BDNF in cult ured hippocampal neurons. Expression of a dominant negative Trk B receptor, T1, reveals a

fusion rules, compute the ground state degeneracy on the torus, and study the modular transformations of the theory... In Chapters 4 and 5 , we present a collection of more

A problem question- What is the effect of the different types of flavored dog bones on the amount of time the dog spends with the.

depending on the voltages applied to it, and the engineer chooses the device he wishes by adjusting the values of the power supply voltages. It is obvious that these voltages must

This study tends to investigate the injection pressure conditions necessary to achieve miscibility, various injection patterns and how they affect miscibility as