Overview of Garnet Collaboration System

Slides:



Advertisements
Similar presentations
6/2/2015 doecomponentsjuly01 1 Architecture of Garnet Collaborative Portal DoE Components Meeting July July Geoffrey Fox IPCRES Laboratory.
Advertisements

Integration of Hand-Held Devices into Collaboration Environments IC’02 Las Vegas, NV June June Geoffrey Fox, Sung-Hoon Ko, Kangseok Kim,
Department of Computer Science and Engineering, CUHK 1 Final Year Project 2003/2004 LYU0302 PVCAIS – Personal Video Conference Archives Indexing System.
Principles for Collaboration Systems Geoffrey Fox Community Grids Laboratory Indiana University Bloomington IN 47404
Client/Server Architectures
Beyond DHTML So far we have seen and used: CGI programs (using Perl ) and SSI on server side Java Script, VB Script, CSS and DOM on client side. For some.
Building a UI with Zen Pat McGibbon –Sales Engineer.
Design of a Collaborative System Minjun Wang Department of Electrical Engineering and Computer Science Syracuse University, U.S.A
Department of Computer Science and Engineering, CUHK 1 Final Year Project 2003/2004 LYU0302 PVCAIS – Personal Video Conference Archives Indexing System.
National Center for Supercomputing Applications NCSA OPIE Presentation November 2000.
Putting it all together Dynamic Data Base Access Norman White Stern School of Business.
Active Server Pages  In this chapter, you will learn:  How browsers and servers interacted on the Internet when the Internet first became popular 
1 Schema Registries Steven Hughes, Lou Reich, Dan Crichton NASA 21 October 2015.
Garnet GXOS GMS GNDI JMS MyXoS 23 January Goals Near Term (May 2001): 1) Build a collaboration system to support distance education 2) Illustrate.
Collaboration in Grid Systems Activities where collaboration important Functional Structure of a Collaborative System Collaborative Visualization Grid.
Ipgdec5-01 Remarks on Web Services PTLIU Laboratory for Community Grids Geoffrey Fox, Marlon Pierce, Shrideep Pallickara, Choonhan Youn Computer Science,
A Demonstration of Collaborative Web Services and Peer-to-Peer Grids Minjun Wang Department of Electrical Engineering and Computer Science Syracuse University,
AMQP, Message Broker Babu Ram Dawadi. overview Why MOM architecture? Messaging broker like RabbitMQ in brief RabbitMQ AMQP – What is it ?
Copyright © 2002 Pearson Education, Inc. Slide 3-1 Internet II A consortium of more than 180 universities, government agencies, and private businesses.
Ubiquitous Access for Collaborative Information System Using SVG July Sangmi Lee, Geoffrey Fox, Sunghoon Ko, Minjun Wang, Xiaohong Qui
2/25/ Services-based Systems Architecture, Design and Implementation B.Ramamurthy.
Apache Cocoon – XML Publishing Framework 데이터베이스 연구실 박사 1 학기 이 세영.
National College of Science & Information Technology.
12. DISTRIBUTED WEB-BASED SYSTEMS Nov SUSMITHA KOTA KRANTHI KOYA LIANG YI.
J2EE Platform Overview (Application Architecture)
DHTML.
The Object-Oriented Thought Process Chapter 13
Distributed Control and Measurement via the Internet
Topic Map & SMIL Prototypes KUL-ESAT-DOCARCH
Supervisor: Prof Michael Lyu Presented by: Lewis Ng, Philip Chan
Distribution and components
CHAPTER 3 Architectures for Distributed Systems
#01 Client/Server Computing
Overview of Garnet Collaboration System
Web Authoring Trends and Implications for Collaboration
Education as a Peer to Peer Grid Service
Physics meets the Virtual University
WebEx and Comparison of WebEx, Centra, PlaceWare, Latitude
Education as a Peer to Peer Grid Service
Peer to Peer Grids and Collaboration
Research and Internet Technologies
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
Prepared for Md. Zakir Hossain Lecturer, CSE, DUET Prepared by Miton Chandra Datta
Some remarks on Portals and Web Services
IMS ADL IEEE LTSC Overview and Critique of Standards
Ch 15 –part 3 -design evaluation
Overview of Garnet Collaboration System
Peer to Peer Grids and Collaboration
Collaboration within an Event based Computing Paradigm
Garnet Collaboration Framework
Portlets and Web Services for Collaboration and Videoconferencing
Services-based Systems Architecture, Design and Implementation
The Narada Event Brokering System: Overview and Extensions
Architecture of Garnet Collaborative Portal
BlackBoard 5 A Definitive e-Learning Software Platform Ozgur Balsoy,
JXTA and Web Services and Messages
Application Web Services and Event / Messaging Systems
MWCN`03 Singapore 28 October 2003
Gateway and Web Services
Remarks on Peer to Peer Grids
Physics meets the Virtual University
Geoffrey Fox Florida State University
Collaboration and Web Services
WebDAV Design Overview
Collaboration and Web Services
Enterprise Integration
New Tools In Education Minjun Wang
Centra Symposium 4.0 Live, Interactive virtual Learning
#01 Client/Server Computing
SDMX IT Tools SDMX Registry
Presentation transcript:

Overview of Garnet Collaboration System 22 February 2001 University of Michigan CHEF Collaboration Geoffrey Fox Florida State University Department of Computer Science and CSIT (School of Computational Science and Information Technology) 400 Dirac Science Library Tallahassee Florida 32306-4120 fox@csit.fsu.edu 11/12/2018 http://aspen.csit.fsu.edu/collabtools

Goals and Features of Garnet Support distance education, collaborative computing and building electronic communities Uses desktop (HearMe VOIP, Polycomm) Conferencing or Access Grid at higher end Garnet has a “low-end heritage” Builds on lessons from Tango (Syracuse) and commercial NetMeeting WebEx Placeware Centra etc. Integrate synchronous and asynchronous collaboration Integrate concept of a portal (web interfaces to applications) with collaboration Supports universal access including PDA’s collaborating with desktops PDA Control of device or PDA alternative kiosk access gotten as a collaborative session between device and PDA 11/12/2018 http://aspen.csit.fsu.edu/collabtools

Publish/Subscribe Collaboration The web is full of objects – web pages sitting on web servers – and these support asynchronous collaboration You post a web page and I later look at it in my own time Replacing web document by a “CGI script” or servlet (web interface to program, database etc.) gives general multi-tier object sharing This is Publish/Subscribe mechanism If add some mechanism (automatic email or word of mouth) to tell viewing client when new information is posted We build on JMS (Java Message Service) as Industry standard for publish/subscribe systems Synchronous Collaboration provides “real-time” notification and automatic update of changed objects JMS seems fast enough to do real-time 11/12/2018 http://aspen.csit.fsu.edu/collabtools

JMS Latency 11/12/2018 http://aspen.csit.fsu.edu/collabtools

Bandwidth of JMS 11/12/2018 http://aspen.csit.fsu.edu/collabtools

Garnet Architecture Underpinnings All software written in Java (EJB); all data structures defined in XML GXOS Unified Event Model – assume all systems communicate with XML based messages (possibly wrapped); universal rendering – portalML All entities – client and server devices, users, programs -- defined in XML – resourceML All events archived to enable fault tolerance and replay GMS -- Garnet(Grid?) Message Service -- extends JMS to XML not text properties to allow server side intelligence Assume clients can crash but servers persistent 11/12/2018 http://aspen.csit.fsu.edu/collabtools

GMS Model for Messages Agent based messaging with server (broker) side intelligence and archiving Database Subscribes to all events to get persistence Agent combines Message Properties Subscriber Requests to decide on message recipient Central Knowledge Server Message Input Queue Subscriber Profiles GMS: Garnet Message Service built on commercial JMS Set via GMS Publishers Subscribers 11/12/2018 http://aspen.csit.fsu.edu/collabtools

Different Ways of Sharing All forms of Collaboration are Event based Different modes: Display, Export, “Event” correspond to events generated at different places in object realization/rendering pipeline Shared Display – Events contain updates to frame buffer Shared “Event” – Events contain updates to state of either original or transformed object Shared Dynamic Export – Convert (rendering of) object to some standard form that is more flexible than bitmap of Shared Display. Build a custom sharing for this exported form WebEx uses “patented sharing of virtual printer” which is equivalent to sharing export to PDF I like shared HTML (web pages) or SVG described later 11/12/2018 http://aspen.csit.fsu.edu/collabtools

A Lesson from UNIX, Windows, Yahoo … Structured information is always labeled as a hierarchy with symbolic links e.g. //A(home=root)/B/C/D …. We have search engines for unstructured information Symbolic Links 11/12/2018 http://aspen.csit.fsu.edu/collabtools

Confirmed by ADL and W3C DOM DoD’s advanced distributed learning effort (and IMS more academic consortium) use a tree structure for educational material in SCORM http://www.adlnet.org Add educational specific tags like prerequisites and completion requirements Node of tree is called block W3C DOM is at times a document object model but it is really “general object instance” looked at as a tree The basic XML Node is extended for each XML artifact (element, atttribute ..) in appropriate ways For HTML, one has further extensions for each tag (<body> <form> <a> etc.) Consider “world” as a bunch of trees with domain dependent extensions 11/12/2018 http://aspen.csit.fsu.edu/collabtools

XML DTD Structure for Block Element Internal Node Leaf Node 11/12/2018 http://aspen.csit.fsu.edu/collabtools

More on Trees ADL have an educational hierarchy with extensions for the rest of the world Rather one should have a general tree with extensions for documents, people, education, computers, events,transactions …. One must as always distinguish location from name from type of node Location and name are in general distinct hierarchies Xlink/Xpath would normally identify an object component (value of an element) by hierarchical external location (URL) and hierarchical internal name (id or tag sequence for DOM) 11/12/2018 http://aspen.csit.fsu.edu/collabtools

MetaObject Event-based Computing Paradigm All entities are MetaObjects defined in universal GXOS XML Syntax – Meta means GXOS doesn’t really want to manage Object, just information required to find, render and share it Rendering includes Palm devices as well as PC’s Entities are people, computers, data sources, information from e-mail, scientific visualization to digitized Bible All actions including object changes are events – all events are GXOS objects e-mail, paging etc. are all GXOS events uniformly routed/archived etc. All action is instantiated or recorded in messages which are events themselves All events are archived allowing actions to be undone and to be reviewed There is an MetaObject Shell MyXoS with basic Services (copy, create, collaborate etc.) Discovery etc. via Jini/Napster mechanisms 11/12/2018 http://aspen.csit.fsu.edu/collabtools

GXOS GNDI Structure I Typically GXOS does NOT hold the object but rather all the metadata for object including where to find it internalND (XML/EJB) defines where the metadata is (GNDI Garnet Naming/Directory) -- essentially XPATH externalND where the object is (JNDI Java Naming/Directory Interface or CORBA or COM or SOAP) Idea used in WebFlow/Gateway portals – implies efficient as use natural high performance mechanisms for “real objects” GXOS uses classic UNIX style directory structure such as //Education/University/FSU/CS/PhD/Course/Lecture Structure says can handle quadrillion meta-objects //Jefferson/HallD/Run1/May132005/Tape5/Event1234/Detector3 … Events are a special type of GXOS object defined with GMS Extension to basic hierarchical object 11/12/2018 http://aspen.csit.fsu.edu/collabtools

GXOS GNDI Structure II The more you know about an object, the easier it is to build a collaborative system It is hard to share a general program as properties are not explicit You put in GXOS metadata precisely those properties that need to be shared All GXOS objects can be containers as well as having full object characteristics Unlike UNIX where directories (only containers) and files (never explicit containers) are different Can create a link (internalND pointer) with a profile to define special properties of this object in a new context Intelligent symbolic links One links User, Client Device to VE (Virtual Environment) with XML profiles mapping user to this session --> Universal Access 11/12/2018 http://aspen.csit.fsu.edu/collabtools

Overall Structure of GXOS for a MegaMeeting Event Archive Capabilities Global Root Users Devices Documents Admin Multimedia Have a hierarchy of MegaMeetings (any collection of meetings) MegaMeeting Meeting Meeting Meeting 11/12/2018 http://aspen.csit.fsu.edu/collabtools

Important Concepts in Initial Garnet Standard stuff: built in shared display, whiteboard, HearMe control, quizzes, annotations, chat (Jabber.org) Must be able to record and replay all features of session (SMIL) A/V, Presentation, Annotations, Text Chat Developing SVG (Scalable Vector Graphics) Shared Export 2D Scientific Visualization/Whiteboard Macromedia (Flash~SVG) and Adobe (already) Initial source of SVG: Convert PowerPoint VML to SVG Would give shared export model for PowerPoint with each client able to scale independently at high resolution Shared Java Server Pages for Gateway Computing Portal “Universal Access” and support of Palm/Windows CE Clients Java based MyProfessor or MyCommunity Yahoo Messenger like interface 11/12/2018 http://aspen.csit.fsu.edu/collabtools

Typical Shared Information Allow customizable “skins” in portalML Allow auditorium participant interface as in Placeware Control buttons for Audio/Video/Floor Control etc. Lecture Page superimposed on a Java White Board Annotations (student, teacher) Pointers etc. Index Manage Info Alert/ Raise Hands Video or HearMe controls or ….. Invoke Quiz Chat Room/IM 11/12/2018 http://aspen.csit.fsu.edu/collabtools