1 / 46

Collaboration and Grid Technologies

Collaboration and Grid Technologies. Geoffrey Fox Professor of Computer Science, Informatics, Physics Pervasive Technology Laboratories Indiana University Bloomington IN 47401 gcf@indiana.edu http://www.infomall.org http://www.grid2002.org. What we can discuss.

Télécharger la présentation

Collaboration and Grid Technologies

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. Collaboration and GridTechnologies Geoffrey FoxProfessor of Computer Science, Informatics, Physics Pervasive Technology Laboratories Indiana University Bloomington IN 47401 gcf@indiana.edu http://www.infomall.org http://www.grid2002.org

  2. What we can discuss • Grid and Collaboration Tools and Architectures which can address some difficulties encountered upto now in areas like distance education • Audio-Video conferencing addressing network difficulties and the integration of different approaches • Sharing material over the Internet • Shared display collaboration • Producing web pages using “re-usable” portlet architecture • Tools are in “alpha” release at moment • So they might be less reliable than unreliable tools they are trying to improve

  3. Teaching Jackson State Fall 97 to Fall 2001 JSU Syracuse Spring 2004: Course on “e-Science”/Grid

  4. Distance Learning ….. • Linking teachers to students remotely • Linking students/mentors to students/mentors for collaboration at a distance on a project • Collaboration is sharing • People (audio, video, text chat, instant messenger) • Web Pages • Other electronic resources (e.g. Word running on laptop) • Homework • Grades • Asynchronous: I post a web page; you access it • I send email • Can recover from temporary network glitches • Synchronous: I post an electronic document; you see what I post (in a second or two) • As I update, you get update • Very sensitive to network glitches

  5. Problems from Tango and all Others • Clients were unreliable – addressed by better windows and moving collaboration from Browser to an application • Networks were unreliable and firewalls are a problem • Not a lot of progress with QoS at network level • Some QoS problems are due to different collaboration streams interfering • Use application level QoS with highly robust managed messaging • Very hard to customize each application in “shared state event model” • Offer shared display • Convert Applications to Web Services • Many different standards H323, SIP, Access Grid, T120 … • Unify as single XML standard • Inconvenient to customize user interfaces • Use portlet technology supporting desktop and PDA clients

  6. 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

  7. 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

  8. Global-MMCS 2.0 XGSP based 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 Global-MMCS 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 (needs performance enhancement)

  9. 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

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

  11. Features of A/V Conferencing • Need a video camera – Polycom ViaVideo or Logicon • Plantronics or similar echo-canceling microphone such as Viavideo • VRVS or GlobalMMCS does not need hardware multicast • Messenging in GlobalMMCS very powerful • Software multicast will IMHO replace hardware multicast • Access Grid supports multiple video cameras but no special reason one needs four – depends on application • Web service will mosaic multiple streams into one • Allow Polycom to receive multiple streams • RealVideo for most reliability as 10 second buffer

  12. NaradaBrokering BrokersONLY process messages

  13. Grid Messaging Substrate SOAP+HTTPRMI TCP/IPRTP …. Standard client-server style communication. Consumer Service Service Consumer SOAP+HTTPRMI TCP/IPRTP …. Substrate mediated communication removes transport protocol dependence. Messaging Substrate Any Protocols satisfying QoS Messaging Substrate has “intelligence”, “any desired fault tolerance” “logging” etc.

  14. “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

  15. NaradaBrokering • Based on a network of cooperating broker nodes • Cluster based architecture allows system to scale in size • Grid routing topologies are open research issue? • Originally designed to provide uniform software multicast to support real-time collaboration linked to publish-subscribe for asynchronous systems. • Perhaps better thought of as stream not message handler • 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 • General software routing to avoid network problem • Distributed XML event selection using XPATH metaphor • QoS, Security profiles for sent and received messages • Interface with reliable storage for persistent events

  16. Laudable Features of NaradaBrokering • Is open sourcehttp://www.naradabrokering.org available now; major new release for SC03 • Will have end-point “plug-in” as well as standalone brokers • end-point is service or user-interface machine • Will have a discovery service to find nearest brokers • Does tunnel through most firewalls without requiring ports to be opened • Links to NWS (Network Weather Service) style performance estimation systems • Supports JXTA (peer-to-peer network), JMS (Java Message Service) and more powerful native mode • Transit time < 1 millisecond per broker • Will have setup and broker network administration module

  17. NaradaBrokering Naturally Supports • Filtering of events (streams) to support different end-point requirements (e.g,. PDA versus desktop, slow lines, different A/V codecs) • Virtualization of addressing, routing, interfaces (OGSI versus pure Web services for example) • 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

  18. 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 100-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

  19. 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

  20. 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

  21. Commercial CollaborationSystems Centra Anabas WebEx Placeware

  22. Robust Web Service Model • However hard we work, there will be disconnects and problems • Typically difficulty is client and client/server network • So we are designing a backup with a web page version of collaborative page – shared display, text chat etc. • And using instant messenger as backup control function • Have this working (roughly) for Shared PowerPoint but need to extend to other functions SynchronizationServer (NB) BackupWeb Service Fancy Collaboration Backup HTML Instant Messenger Collaboration

  23. Application Web Service Model • Anabas provides shared display (frame-buffer) as this works for all applications • Shared event is how Tango used to it and this is Access Grid PowerPoint model • Share events like “New Slide” or “New File” • Our strategy is to convert applications to Web Services and use these to produce shared event • Using NaradaBrokering as system to share events • Have implemented for Scalable Vector Graphics (SVG) and PowerPoint (partially as Microsoft makes hard) • Will extend to OpenOffice if pratical

  24. Raw (UI) Events User Interface Web Service Model for Application Development Resource Facing Ports Data Logic of Application Semantic Events Model Messaging System User FacingPorts Events as Messages Rendering as Messages Control View Interrupts in traditional monolithic applications become“real messages” not directly method calls Natural for collaboration and universal access

  25. Collaborative SVG As A Web Service NaradaBrokering

  26. NaradaBrokering SVGBrowser SVGBrowser SVGBrowser SVGBrowser SVG Model (DOM) SVGViewer SVGViewer SVGViewer SVGViewer NaradaBrokering SIMD Collaboration Non Web Service Implementation Identical Programs receiving identical eventsToken determines if browser is moving, waiting for opponent or an observer Shared Output portSIMD CollaborativeWeb Service

  27. NaradaBrokering SVG Model SVG Model SVG Model SVG Model SVGViewer SVGViewer SVGViewer SVGViewer MIMD Collaboration Shared Input portMIMD CollaborativeWeb Service NaradaBrokering

  28. NaradaBrokering Message Service Event Messages Event Messages User 1 1 User 2 User n Master Client IUnknown Outgoing interface Connectable Object Sink Connection Point PowerPoint as a Sort of Web Service As in Access Grid CollaborativeClient PPT as a Web Service Holds meta-data(sample of high level semanticevents) like slide number and title

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

  30. Portals and Web Services • Web Services allow us to build a component model (see CCA) for resources. • Each resource naturally has a user interface (which might be customized for user) • Web Service <--> Portlet • Natural to use a component model for portal building displayed web page from collection of portlets • So can customize each portlet and customize which portlets you want • Apache Jetspeed seems good open source technology supporting this model • Being used by NCSA and DoD HPCMO

  31. WSDL W S Application orContent source R P Web Service WSRP Structure of a Portlet • Each Web Service naturally has a user interface specified as “just another port” • 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 portlet at same time Application as a WSGeneral Application Ports Interface with other Web Services PortalUser ProfileAggregateUI Fragments Client WSRP isWeb Services for Remote Portals1st Meeting OASIS March 18 2002 User Face ofWeb ServiceWSRP Ports define WS as a Portlet

  32. 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

  33. 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

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

  35. 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

  36. 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

  37. 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

  38. 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

  39. 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

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

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

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

  43. Sample page with several portlets: proxy credential manager, submission, monitoring

  44. Administer Grid Portal Provide information about application and host parameters Select application to edit

More Related