Grid Architecture an
Some Core Services
US-Australia Workshop on High-Performance
Grids and Applications
Sydney June 8 2004
Geoffrey Fox
Community Grids Lab
Indiana University
WSGA Web Service Grid Architecture
• With UK e-Science program, developing list of best practices inGrids based on a pure Web Service infrastructure
• Use WS-I Web Service Interoperability Profiles
– WSDL, SOAP, UDDI, WS-Security (No Risk Grid Profile)
• Some risk for those where IBM and Microsoft agree but not a broader consensus
– WS-Addressing, WS-MessageDelivery
– WS-ReliableMessaging and WS-Reliability
– Workflow: BPEL and WSCL,WSCI (No streams in BPEL but expected to win)
• Higher risk where IBM and Microsoft do not agree
– WSRF (No Microsoft equivalent; unclear relation to metadata services) – WS-Notification, WS-Eventing (Can be federated to each other and JMS) • Use Service not Distributed Object Paradigm
• Use portlet-based portals with user interface fragments for each service
• Build Grids of Grids of Simple Services
• Identify and build key services (in UK OMII Open Middleware Infrastructure Institute)
Education Grid
Inservice Teachers Preservice Teachers School of Education
Teacher Educator Grids Informal Education (Museum) Grid Student/Parent …
P2P (e.g. AOL) 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
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
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
QueuesWeb Service B
Stream
P2P Messaging
Server-enhance Messaging
NB supports messages and streams
1-100 ms. v 1-10 µs NB role for Grid is
Similar to
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
Allows Highest performance transport Multiple transport support
In publish-subscribe Paradigm with different Protocols on each link
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
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
Grids involve streams as well as compute and data nodes
Workflow and dataflow like BPEL imply
Future/Ongoing NB Enhancements
n Server/Broker-free P2P version to support “immediate
deployment” of NB-based Community Grids
• Direct integration of P2P and Grids
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
Web Services and M-MVC
n Web Services are naturally
M-MVC – Message based
Model View Controller with
• Model is Web Service • Controller is Portal and
Messages (NaradaBrokering)
• View is rendering
n OGCE builds M-MVC
OGCE
Consortiu m
NSF NMI Project for Making Portal
Components Robust
•
University of Chicago
– Gregor von Laszewski
•
Indiana University
– Marlon Pierce, Dennis Gannon, Geoffrey Fox, and Beth Plale
•
University of Michigan
– Charles Severance, Joseph Hardin
•
NCSA/UIUC
– Jay Alameda, Joe Futrelle
•
Texas Advanced Computing Center
– Mary Thomas
OGCE
Consortiu m
Individual portlet for the Proxy Manager
Use tabs or screen real estate to navigate through
interfaces to different
OGCE
Consortiu m
Aggregation Portal Architecture
• Supply component model for user interfaces to
match component model for middeware
Client s (P ure HT ML, Java Applet ..) Aggregat ion and Rendering Jetspeed Internal Services Portlet Class IFramePortlet Portlet Class VelocityPortlet Portlet Class JspPortlet Portlet Class
WebForm Gateway(IU) Web/Griservice
Web/Gri service Web/Gri service Computing Data Stores Instruments GridPort etc. (Java) COG Kit
OGCE
Consortiu m
OGCE Grid Portal Components
• Provides Portlets for
– Management of user proxy certificates
– Remote file Management via Grid FTP
– News/Message systems
• for collaborations
– Grid Event/Logging service
– Access to OGSA/WSGA Grid services
– Access to directory services
– Specialized Application Factory access
• Distributed applications
• Workflow
– Access to Metadata Index tools
• User searchable index
– Collaboration Supports distributed modular
OGCE
Consortiu m
Portlet Component and Container
Technologies
•
Jakarta Jetspeed
– Open source Java portlet project
– Jetspeed is both a framework and reference implementation
– Defines portlets, portal service APIs (login, authorization, customization, etc.)
•
CHEF from University of Michigan
– Uses Jetspeed as a framework
• Reimplements many of the core classes
– Basis for UM CourseTools
– NEESGrid portal
OGCE
Consortiu m
Desktop and Web Services with MMVC
n OGCE uses message-based MVC as is obvious for Web Services 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
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 collaboration support for thousands of simultaneous users
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 projects
• openh323 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”
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
Break up into Web Services
n Monolithic MCU becomes many different “Simple Services”
• Session Control
• Thumbnail “image” grabber • Audio Mixer
• Video Mixer
• Codec Conversion • Helix Real Streaming • PDA Conversion
• H323/SIP Gateways
n As independent can replicate particular services as needed
• Codec 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
• Future billion way “Video over IP” serving 3G Phones and home media
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