1 / 52

Grids & Peer-to-Peer Networks for e-Science: Collaboration, Applications, Messaging

Explore the use of Grids and Peer-to-Peer Networks for e-Science, including portals, metadata, collaboration tools, messaging systems, and various applications. Learn about the features of NaradaBrokering, a powerful messaging system for the Grid.

tbello
Download Presentation

Grids & Peer-to-Peer Networks for e-Science: Collaboration, Applications, Messaging

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. What we do inGrids e-ScienceCyberInfrastructureand Peer-to-PeerNetworksLos AlamosSeptember 23 2003 Geoffrey Fox Community Grids Lab Indiana University gcf@indiana.edu

  2. What do we do? • Portals: co-chair of Grid Computing Environment research group at GGF • Metadata: co-chair at GGF of Semantic Grid RG • Apply to Earth Science using GML (Geography mark up) • Collaboration: built a Web Service based collaboration environment sharing applications and audio/video conferencing to desktops and PDA’s • Web Service model for all applications • Messaging: Open “Grid Messaging System” NaradaBrokering linking P2P and (Cellular) Grid • Autonomic services using managed messages • Applications • CrisisGrid – Indiana and openGIS Consortium • SERVOGrid for Earthquake Science • Biocomplexity Grid-based Computational Environment

  3. Collage of Portals Earthquakes – NASAFusion – DoE Computing Info – DoD Publications -- CGL

  4. NaradaBrokering

  5. “GridMPI” v. NaradaBrokering • In parallel computing, MPI and PVM provided “all the features one needed’ for inter-node messaging • NB aims to play same role for the Grid but the requirements and constraints are very different • NB is not MPI ported to a Grid/Globus environment • Typically MPI aiming at microsecond latency but for Grid, time scales are different • 100 millisecond quite normal network latency • 30 millisecond typical packet time sensitivity (this is one audio or video frame) but even here can buffer 10-100 frames on client (conferencing to streaming) • 1 millisecond is time for a Java server to “think” • Jitter in latency (transit time through broker) due to routing, processing (in NB) or packet loss recovery is important property • Grids need and can use software supported message functions and trade-offs between hardware and software routing different from parallel computing

  6. NaradaBrokering • Based on a network of cooperating broker nodes • Cluster based architecture allows system to scale in size • Originally designed to provide uniform software multicast to support real-time collaboration linked to publish-subscribe for asynchronous systems. • Now has several core functions • Reliable order-preserving “Optimized” Message transport (based on performance measurement) in heterogeneous multi-link fashion with TCP, UDP, SSL, HTTP, and will add GridFTP • General publish-subscribe including JMS & JXTA and support for RTP-based audio/video conferencing • Distributed XML event selection using XPATH metaphor • QoS, Security profiles for sent and received messages • Interface with reliable storage for persistent events

  7. Laudable Features of NaradaBrokering • Is open sourcehttp://www.naradabrokering.org • Will have client “plug-in” as well as standalone brokers • Will have a discovery service to find nearest brokers • Does tunnel through most firewalls without requiring ports to be opened • Supports JXTA, JMS (Java Message Service) and more powerful native mode • Transit time < 1 millisecond per broker • Will have setup and broker network administration module

  8. NaradaBrokering Naturally Supports • Filtering of events to support different client requirements (e.g,. PDA versus desktop, slow lines, different A/V codecs) • Virtualization of addressing, routing, interfaces • Federation and Mediation of multiple instances of Grid services as illustrated by • Composition of Gridlets into full Grids (Gridlets are single computers in P2P case) • JXTA with peer-group forming a Gridlet • Monitoring of messages for Service management and general autonomic functions • Fault tolerant data transport • Virtual Private Grid with fine-grain Security model

  9. Grid Messaging Substrate SOAP+HTTPGridFTPRTP …. Standard client-server style communication. Consumer Service Service Consumer SOAP+HTTPGridFTPRTP …. Substrate mediated communication removes transport protocol dependence. Messaging Substrate Any Protocol satisfying QoS Protocols have become overloaded e.g. MUST use UDP for A/V latency requirements but MUSTn’t use UDP as firewall will not support ………

  10. Heterogeneous Routing in NB FastLink FirewallHTTP B1 • Mediation in Cellular Grid using NB as interface agent • Build Virtual Private Grid SatelliteUDP A Hand-HeldProtocol B2 Software Multicast Dial-upFilter NB Brokers B3 Client Filtering Gridlets Grid formed from Multiple cells

  11. Architecture of Message Layer • Need to optimize not only routing of particular messages but classic publish/subscribe problem of integrating different requests with related topics (subscribe to sports/basketball/lakers and sports) • Related to Akamai, AOL … caching and Server optimization problem Hypercube ofNB Brokers (logical not physical) N≈100 for Distance Education Scale to billions of grid clients? 1-> N Grid Clients

  12. Autonomic Services • In a Web (Grid) Service architecture, the state of any service is defined by its initial condition and all the messages (including ordering) that it receives • This how shared event model of collaboration works • This is a “Finite State Change” model analogous to saving file and “undo” command in many editors • NB plus a robust store can “guarantee” to save all these messages for (all) services • This allows one to build both "autonomic data transport" and "autonomic services" since these services can sustain packet losses in transport and can also sustain failures of apps/brokers • archived messages (previous invocations, published events etc) can be retransmitted to reconstruct state at the service or to correct a transport error. • Further anomalies in message traffic (such as a publisher or subscriber are silent) can be detected by NB and signal problems • We are building examples of both scenarios using GridFTP as our data transport example • We will build a sample autonomic visualization service with detection of failed servers and brokers

  13. Collaborative SVG Web Service • SVG is W3C 2D Vector Graphics standard and is interesting for visualization and as a simple PowerPoint like application • Further SVG is built on W3C DOM and one can generalize results to all W3C DOM-based applications (“all” in future?) • Apache Batik SVG is Java and open source and so it is practical to modify it to explore • Real Applications as a Web Service • Collaboration as a Web Service • MVC model and web services with implications for portlets • We use NaradaBrokering and XGSP to control collaboration; support PDA Cell-phone and desktop clients; are restructuring Batik as MVC Web Service • Good progress in all areas see • http://www.svgarena.org for SVG Games • http://grids.ucs.indiana.edu/ptliupages/projects/carousel/ for PDA

  14. Data Resource Facing Ports Application as a Web service W3C DOM Semantic Events Model NaradaBrokering User FacingPorts Events as Messages Rendering as Messages Control W3C DOM Raw (UI) Events View W3C DOM User Interface Web Service Model for Application Development Natural inMVC Model Interrupts in traditional monolithic applications become“real messages” not directly method calls Natural for collaboration and universal access

  15. Collaborative SVG As A Web Service NaradaBrokering

  16. Collaborative SVG Chess Game in Batik Browser Players Observers

  17. Session Server XGSP-based Control Media Servers Filters NaradaBrokering All Messaging Admire SIP H323 Access Grid Native XGSP XGSP Web Service MCU Architecture Use Multiple Media servers to scale to many codecs and many versions of audio/video mixing WebServices NB Scales asdistributed High Performance (RTP)and XML/SOAP and .. Gateways convert to uniform XGSP Messaging NaradaBrokering

  18. Polycom, Access Grid and RealVideo views of multiple streams using CGL A/V Web Service integrating SIP and H323

  19. Integration of PDA, Cell phone and Desktop Grid Access

  20. NaradaBrokering Communication • Applications interface to NaradaBrokering through UserChannels which NB constructs as a set of links between NB Brokers acting as “waystations” which may need to be dynamically instantiated • UserChannels have publish/subscribe semantics with XML topics • Links implement a single conventional “data” protocol. • Interface to add new transport protocols within the Framework • Administrative channel negotiates the best available communication protocol for each link • Different links can have different underlying transport implementations • Implementations in the current release include support for TCP,UDP, Multicast, SSL, RTP and HTTP. • Supports communication through proxies and firewalls such as iPlanet, Netscape, Apache, Microsoft ISA and Checkpoint.

  21. Mean transit delay for message samples in NaradaBrokering: Different communication hops 9 hop-2 hop-3 8 hop-5 7 hop-7 6 5 Transit Delay (Milliseconds) 4 3 2 1 0 100 1000 Message Payload Size (Bytes) Pentium-3, 1GHz, 256 MB RAM 100 Mbps LAN JRE 1.3 Linux

  22. Average delays per packet for 50 video-clients NaradaBrokering Avg=2.23 ms, JMF Avg=3.08 ms 60 NaradaBrokering-RTP JMF-RTP 50 40 30 Delay (Milliseconds) 20 10 0 0 200 400 600 800 1000 1200 1400 1600 1800 2000 Packet Number

  23. Average jitter (std. dev) for 50 video clients. NaradaBrokering Avg=0.95 ms, JMF Avg=1.10 ms 8 NaradaBrokering-RTP JMF-RTP 7 6 5 4 Jitter (Milliseconds) 3 2 1 0 0 200 400 600 800 1000 1200 1400 1600 1800 2000 Packet Number

  24. Collaboration and Web Services • 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 …. • 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 • a) is a “Service” which is set up in many different ways (H323 SIP JXTA are standards supported by multiple implementations) – we should make it a WS

  25. Shared Event Collaboration • All collaboration is about sharing events defining state changes • Audio/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 streams • Microsoft events for shared PowerPoint (file replicated between clients) as in Access Grid • Finite State Change NOT Finite State Machine architecture • Using Web services allows one to expose updates of all kinds as messages • “Event service” for collaboration is similar to Grid notification service and we effectively define SDE’s (service data elements) in OGSI • Group (Session) communication service is needed for the delivery of the update events • Using Event Messaging middleware makes messaging universal

  26. Global-MMCS 2.0 (1) XGSP MCU • 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. • We will deploy it globally and hope to test with later this year. • The function of A/V media server will be distributed using NaradaBrokering architecture. • Media Servers mix and convert A/V streams • 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 from Indiana • Java Media Framework basis of Media Servers

  27. Shared Output Port Collaboration WSDL R U Application orContent source F F WSViewer WSDisplay I I O O Web Service Collaboration as a WSSet up Session with XGSP Web Service Message Interceptor Master WS Viewer WS Display Text Chat Whiteboard Multiple masters Event(Message)Service OtherParticipants WS Viewer WSDisplay

  28. R R R U U U WSViewer WSDisplay F F F F F F I I I I I I WebService WebService WebService O O O O O O WS Viewer WS Display WS Viewer WSDisplay Shared Input Port (Replicated WS) Collaboration Collaboration as a WSSet up Session with XGSP Master Event(Message)Service OtherParticipants

  29. XGSP Conference Control Framework Components • User session management • User session management supports user sign-in, user create/terminate/join/leave/invite-into XGSP sessions. • Application Session Management • XGSP application session management provides the services to A/V and data application endpoints and communities, controlling multipoint A/V RTP and data channels. • Floor Control • Floor control manages the access to shared collaboration resources.

  30. vic and RealVideo views of multiple streams

  31. Polycom view of multiple video streams

  32. Performance Test : GlobalMMCS1.0 • We conducted extensive performance tests on audio and video servers. • Video: • The test shows that our video server is capable of supporting 300 clients if there is only one video sender. • Video Server Machine : 1.2GHz Intel Pentium III dual CPU, 1GB MEM, RedHat Linux 7.3 • Audio: • Our tests show that audio server can support 5 concurrent sessions (250 participants in total) without any packet droppings. • Audio Server Machine:2.5GHz Pentium 4 CPU, 512MB memory, Windows XP machine • Scale with logarithmic Broker network

  33. Comparison between the performance of NaradaBrokering and JMF

  34. Comparison between the performance of NaradaBrokering and JMF

  35. Global-MMCS 2.0 (2) Portlets • Collaboration clients will be built into portlets by creating Java Applet or ActiveX controls for the non-HTML clients and adding them into HTML pages. • A collaboration portlet opens local services for XGSP application session management and floor control. • Node Manager portlet invoke the service to control local portlets • Apache Jetspeed seems good open source technology supporting this model • Portlets such as Access Grid portlet (really a VIC portlet) can be reused by Grid Portal Developers

  36. Unicast AG Portlet

  37. Multicast Multi-stream AG Portlet • Java applet supports multicast AG with multiple streams • In Jetspeed, easiest to have fixed size but this doesn’t fit well natural range of 1-20 separate streams

  38. Workflow GCEs and Problem Solving Environments (PSEs) • There is some confusion between fields of workflow (Grid Computing Environments GCE) and PSEs • To extent PSEs “just” allow manipulation of “nuggets”, they are indistinguishable from a domain specific GCE • They are distinct if they support intra nugget operations such as • Integration of mesh and simulation • Closely coupled code linkage • Generation of code from high level interface like Mathematica • Even in latter case, a new generation of PSEs should be built with Grid architecture – e.g. message based – and using Grid services like metadata and notification

  39. WSDL W S Application orContent source R P Web Service Web Services as a Portlet Application as a WSGeneral Application PortsInterface with other WebServices • EachWeb Service naturally has a user interface specified as “just another port” • Customizable for universal access • This gives each Web Service a Portlet view specified (in XML as always) by WSRP (Web services for Remote Portals) • So component model for resources “automatically” gives a component model for user interfaces • When you build your application, you define portletat same time User Face ofWeb ServiceWSRP Ports define WS as a Portlet Web Services have other ports (Grid Service) to be OGSI compliant

  40. Online Knowledge Center built from Portlets A set of UIComponents • Web Services provide a component model for the middleware (see large “common component architecture” effort in Dept. of Energy) • Should match each WSDL component with a corresponding user interface component • Thus one “must use” a component model for the portal with again an XML specification (portalML) of portal component

  41. HTML Jetspeed Architecture Turbine Servlet JSP template ECS Root to HTML Screen Manager PSML ECS PortletController PortletController ECS ECS ECS PortletControl ECS ECS ECS ECS ECS Portlet Portlet Portlet Portlet Portlet Portlets HTML Local files JSP or VM Local templates WebPage Remote HTML Portlets User implemented using Portal API XML RSS, OCS, or other Local or remote Data

  42. Portlets and Portal Stacks • User interfaces to Portal services (Code Submission, Job Monitoring, File Management for Host X) are all managed asportlets. • Users, administrators can customize their portal interfaces to just precisely the services they want. Aggregation Portals (Jetspeed) User facing Web Service Ports Message Security, Information Services Application Grid Web Services Core Grid Services

  43. Largely takenfrom other projects Emphasis Clients (Pure HTML, Java Applet ..) Aggregation and Rendering Portlet Class:WebForm Gateway (IU) Web/Gridservice Computing Remoteor ProxyPortlets Portlet Class:IFramePortlet Web/Gridservice Data Stores Portlet Class:JspPortlet GridPort Texas Web/Gridservice Instruments Portlet Class:VelocityPortlet (Java) COG Kit Jetspeed Internal Services LocalPortlets Clients Portal Portlets Libraries Services Resources (Jetspeed) IU and OGCE Portal Architecture Hierarchical arrangement

  44. 4 available portletslinking to Web ServicesI choose two Jetspeed Computing Portal: Choose Portlets

  45. Choose Portlet Layout Choose 1-column Layout Original 2-column Layout

  46. File management Tabs indicate available portlet interfaces. Lists user files on selected host, noahsark. File operations include Upload, download, Copy, rename, crossload

More Related