Education as a Peer to Peer Grid Service
Geoffrey Fox
Computer Science, Informatics, Physics
Indiana University
Bloomington IN 47404
[email protected]
PTLIU Laboratory
Some Technology Trends
l
Increasing performance
of Internet backbone and last
mile (access)
l
Hand-held
devices and
wireless
Pervasive Access
lPeer to peer technologies
enable new ways of
collaborating and blurs distinction between clients and
servers
l
Client-Server
Multi-tier
Architectures
l
XML Schema
and tools
All data defined as
objects
lSeparation
of client, system and persistent storage
models for information
l
Development of
(application) service model
to capture
common (maybe centralized) capabilities
l
Semantic Web
,
Grid
or … “Next Generation Web”
New Technologies implNew Opportunities requirin typically New Business models
For Education and Training 2
What is a Grid Service?
l The Grid is distributed system allowing communities to access
seamlessly heterogeneous resources from heterogeneous clients
– Resources are web-pages, instruments, Object repositories,
Simulation codes running on supercomputers ….
l A Service is a generic application or capability respecting
standards (general web and application specific) allowing multiple providers to compete on a given service
Back en Capabilit y
Middle Tie Broker
Portal is
customizable User
interface Resourc
e
3
Some General Grid Services
l
Business is developing “web service” concept to support
areas like e-commerce where one composes atomic
services like
– Security
– Payment
– Catalog
– Goods supply
Securit
y Catalog
Paymen Credit
Card
Warehous e
shipping
Each of these services could allow Multiple choices of provider
In a given session
WSDL is new standard for web services
4
Architecture of Grid: Commodity
Science
l
Commerce, Entertainment, Healthcare, Science,
Computing, Education …. will be Grid Services
Science Portals & Workbenches
Twenty-First Century University and laboratory Computational Services P e r f o r m a n c e
Networking, Devices and Systems Grid Services (resource independent)
Grid Fabric (resource dependent)
Research Services & Technology
Research
Grid ComputationalGrid
Community Portals Next Generation Consumer Web Education Services Business Services Commerce
Grid EducationGrid
Why use Service Idea?
l
Well a major lesson for me of HPCC effort was the
importance of sustainable hardware and software
l
Software like MPI is sustainable because it is simple
lSoftware like HPF and POOMA (DoE) illustrate the
difficulties of either commercial or academic entities
– Much more powerful than MPI but difficult to advise users to
adopt as such “heroic (software development) efforts” can be halted for a variety of reasons
l
So we need to build great software where possible on
simple sustainable bases
l
So use the Web where ever possible and try to address
its obvious difficulties (performance)
l
Try to abstract capabilities so can build hierarchically to
support range of users
6
Simple Minded View of Services
l
So we are building a “component” model of software
systems
l
Components are “just web applications” or more
precisely support the web standards
– You can access them from portals for Graphical User Interface – You can link to them and discover them like web applications
l
So Grid Services concept is a sustainable “framework”
for developing parallel and distributed systems
– Parallel version implies low latency / high bandwidthcommunications in both hardware and software
– So Grid services must be implementable with high
functionality (SOAP) or high performance protocols (RMI, threads)
l
They are subroutine library model for the Grid
7
Why use Distance Education and Training?
l New and rapidly changing Curriculum suggest the use of distance
education as it will allow a few experts to deliver instruction to more students and this addresses both
– The shortage of trained faculty
– Offering classes with small enrollments at one university
– cost of developing new curriculum QUICKLY requires many
students (say around 5-10 times traditional class) to amortize cost
l Distance Education is technically sound based on web
curricula--both synchronously and asynchronously -- today with very robust clear implementations available over next few years
l Both delivery mechanism and identification of knowledge nuggets
that are smaller than or different in content from a traditional degree suggests different approaches to certification
– Courses are given, graded etc. by multiple organizations
--University integrate degrees?
l Similar arguments for distance training with relative importance of
synchronous and asynchronous learning differing by customer group
8
The Virtual University
l
Motivated either by
decreased cost
or
increased quality
of learning environment
l
Will succeed due to
market pressures
(it will offer the
best product)
l
Assume that as with text books,
only a few pedagogically
excellent teachers
will produce lectures; only a
few
charismatic souls
deliver them
l
“Centers of Excellence” (“
Hermits Cave Virtual
University
”) are natural entities to produce and deliver
classes supported by
good technology and wonderful
graphics
l
University acts as an
integrator
putting together a set of
classes where it may only
teach some 20% but acts as a
mentor to all
9
Capabilities of the Education Grid Service
l
Curriculum or
“Learning Objects”
–
Web Pages becoming more sophisticated
(Flash)
l
Audio-Video
Conferencing,
Chat rooms
,
white boards
to
support student, teacher, mentor
interactions
l
Shared Documents for synchronous collaboration
lLearning Management Systems
–
Student registration, Quizzes, Grading, Security
–Database Storage (persistent Learning Objects)
l
IMS
and
ADL
standards for interoperability
lAsynchronous
self paced access
10
Some Education Grid Services
l
Registration
l
Performance
(grading)
lAuthoring
of Curriculum
l
Online laboratories
for real and virtual instruments
lHomework submission
l
Quizzes
of various types (multiple choice, random
parameters)
l
Assessment
data access and analysis
lSynchronous Delivery
of Curricula
l
Scheduling
of courses and mentoring sessions
l
Asynchronous access, data-mining and
knowledge
discovery
11
Portal for Education Service
l The User Model is that of a Portal familiar
from Yahoo and the growing effort in
Enterprise Information Portals (Lotus Notes implemented with Web or Object Grid technology)
l Education service must use generic Portal
service
12
3-Tier Architecture for Education Portal
l Everything is an Object: Curriculum, Users, grades, computers –
all are defined in XML
l XML very important in online education as objects quite small,
are naturally decentralized and have rich important metadata
l There are several important Object
Models: COM, CORBA, Java, Exce Web, flat file, Oracle Database ……
l But model doesn’t matter!!
Database
File Syste (Web Site)
Or
Middle Tie “Business Logic
dissociates User and Back End
Export/Import
Reques t
Information
Objec Repository
XML
13
ADL Learning Management Model
Learnin Server Conten t Server( s) External systems: HR, E-Commerce, ERP... Migrati onAdapt er Learning Server A PI Adapter Application
Brows er Adapt er Server Side Client Side HTM L+ Services or Adapter Cours eInterchan ge: Cours eStructu re Format (CSF), Metada ta Runti me Environme nt: Launch, API, Data Model “Learni ng Managem entSyste m”LM S Common Gri Services & Objects Client Server
www.adlnet.org
Good but …
Client-Server not Multi-tier Not built in terms of services
Some General Grid Services
Portals
customization Registration (security)
People Collaboration(Access Grid -- Desktop Audio Video)
Resource Collaboration (P2P, Document Sharing) News groups Channels Instant Messenger White board Anonymity
Payment -- Digital Cash Catalog Support
Comments as in Amazon
Surveys Decision Making Authoritarian Consensus Group Mediation Advertising
Search/Knowledge Discovery (Digital Library Service)
MyGoogle
Need for structured (Directory in Google, Indexed Databases etc.)
Unstructured Data (basic Google)
Computing Interface Workflow
Support flow of information
(approval) through some process secure authentication of this flow
Authoring
Multi-fragment pages Charts
Multimedia
Video on Demand
Tenure evaluation support
Generate CV Refereeing
Universal Access
from PDA/Phone to disabilities
caching
Akamai
Scaling
performance
trouble shooting grid
15
Science as a Grid Service I
l Science Generic Servicesbuilding on previous Grid services
l Storage Rendering and Authoring
of Mathematics
l Other specialized authoring and
rendering
l Scientific Whiteboard l nD (n=2 3) Support l GIS
l Virtual worlds
l Integration of different sciences
– optimization (NEOS) – image processing – "SCALAPACK" etc.
(NETSOLVE)
– Matlab as a Grid Service
l Education as a Grid service
l Authoring
l Curriculum specification and
associated services specification:
– prerequisites
– completion requirements
l Grading
l Homework Submission l Quiz Setting including
individualized questions
l Quiz Taking l Office Hours l Mentoring l Delivery
l Assessment including
– evaluation of material
– evaluation of student interaction with material
l Self paced learning
l Particular learning models from
K-12 to Lifelong
16
Science as a Grid Service II
General Science Research
Computing Interface Job Control/Submission Scheduling Visualization Programming Parameter Specification
Legacy Code support (wrapping) Application Integration
Software version control Monitoring ...
Scientific Data services
High Performance Special Formats
Virtual data as in Gryphyn
Fastlane/ Report submission Science Library
Publication
Comparison of Theory/Expt
evaluation
Research -- Theory/Discussion
Scientific Notebook/Whiteboard Brainstorming
Seminars
Theorem proving
Research -- Experimental
Virtual Control Room from accelerator to satellite
Data Analysis
Virtual Instrument Sensors
Satellites to Field work to wireless in the Amazon
to Video cameras recording earthquake damage
to LED in rack of accelerator control module medical instruments (Telemedicine Grid Service)
Outreach
Multi-cultural customization Multi-level presentations
Note Outreach Shares many services with Researc but some components are at a “less detailed” level
17
Why use Distance Education and Training?
l New and rapidly changing Curriculum suggest the use of distance
education as it will allow a few experts to deliver instruction to more students and this addresses both
– The shortage of trained faculty
– Offering classes with small enrollments at one university
– cost of developing new curriculum QUICKLY requires many
students (say around 5-10 times traditional class) to amortize cost
l Distance Education is technically sound based on web
curricula--both synchronously and asynchronously -- today with very robust clear implementations available over next few years
l Both delivery mechanism and identification of knowledge nuggets
that are smaller than or different in content from a traditional degree suggests different approaches to certification
– Courses are given, graded etc. by multiple organizations
--University integrate degrees?
l Similar arguments for distance training with relative importance of
synchronous and asynchronous learning differing by customer group
18
Courses at Jackson State
l Taught using Tango since fall 97 over Internet and defense high
performance network DREN twice a week from Syracuse
– Course material based on Syracuse Senior Undergraduate class
CPS406(Web Technologies) and graduate classes CPS615/616/640(Base Computational science/Internetics)
– Curricula, Homework, Grading, Facilities done by Syracuse – Students get JSU NOT Syracuse Credit
l Jackson State major HBC University with many computer science
graduates
l Do not compete with base courses but offer addon courses with “leading
edge” material (Web Technology, modern scientific computing) which give JSU (under)graduates skills that are important in their career
l Fall 99 Semester CPS640 offered to 40 students in 5 distant places and
separately 40 at Syracuse
l Fall 2001 restart with “latest technology” (Access Grid, HearMe,
Garnet)
19
Architecture of Tango Distance Education
NPAC We Server JSU Web
(Proxy)Server
Java Tang Server
…….
Share URL’s Audio Video
Conferencin Chat Rooms White Boards etc.
Address at JSU o Curriculum Page
Teacher’s View o Curriculum Page Student’s View o
Curriculum Page
Participants at JSU Teacher/Lecturer atNPAC
…….
Java Sockets HTTPJava
Control Clients
All Curricula placed on the Web
20
What is Web-based Collaboration?
l Collaboration means sharing objects (Web Page very importantobject)
l Web-based Collaboration implies use of Web to share distributed
objects accessible through the Web
– Shared Web Pages; Resources accessed through Web Servers
or Brokers; Client-side applications with programmatic interfaces such as Java Physics Simulations
We
Page PageWe
Specify Page
We Page
Receive Identical Page
Web Site
Shared Page
Shared Pointer
21
> Two Shared Physics
Simulations – SHO and
Vector cross produc
> Chat Roo
> Audio video conferencing
22
What did this lead to?
l
Jackson State students got access to curricula that was not
otherwise available to them
l
Developed quite good
Information Technology and
computational science curricula
l
Jackson State faculty acted as mentors in course and now
teach some of material in their own courses and to other
HBCU colleges
–
Make rapidly changing and important curricula available
to an
HBCU network
-- could dramatically improve
curricula opportunities for HBCU students
–
JSU has institutional commitment to area
l
Used in
High School Java
, DoD wide training and
Winter 00
semester as part of
ERDC Graduate Institute
l
Supports
migrant teachers
-- I have delivered course spring
00 semester from Syracuse, FSU and ERDC, Vicksburg
23
Saturday Java Academy
http://old-npac.csit.fsu.edu/projects/k12javaspring99/
24
Hierarchical Delivery Model
l
One could teach to
1000 different students
– each at a
separate workstation but …
l
No real opportunity for questions so better to use
broadcast technology – not conferencing
l
Further could better deliver to 40 classrooms – each
with an average of 25 students
l
Each classroom has central high quality A/V
conferencing, displays and
– A Mentor monitoring and helping students
– Each student could have wireless laptop or PDA
l
So synchronous systems must support simultaneously
disparate clients – high end display to PC to PDA
25
Authoring of Curriculum
l Market pressures push to high end authoringl Authoring approaches for the Web can include
– Basic HTML
– Macromedia/Adobe/etc. packages like Fireworks,
Dreamweaver, Illustrator
– PowerPoint and Word exported
l Also can include RealNetworks or Microsoft or .. Format
Multimedia
– Note Streaming multimedia formats have larger buffers than
A/V conferencing formats
l Certainly use XML to specify content and render this into
attractive portal
l SVG and SMIL are important 2D vector graphics and multimedia
standards
– HTML does not give reproducible pages
– Flash can be thought of as “proprietary SVG”
26
Current Status and Futures
l Commercial Systems such as Centra, WebEx, Anabas andPlaceware offer similar functionality to our old system Tango for synchronous collaboration
– Shared applications, chatroom, whiteboard, A/V conferencing
l Blackboard, WebCT, Lotus offer learning management systems –
Can they switch to IMS, ADL standards; high-end authoring and XML based object technology (not databases or files)
l Access Grid (community e.g. classroom) and HearMe (desktop)
are new internet audio-video systems which are be used with shared object systems
l I develop research system Garnet for education portals
– Features hand-held and desktop clients, integrated
collaboration and some “technical advances” – major use of XML, shared SVG
l Peer to Peer Grids suggest decentralized architecture
(http://www.jxta.org)
27
Commercial
Collaboratio
Systems
PlaceWar e
WebEx
Centra Anabas
28
SVG Sharing PC to PDA
PowerPoint can be converted to SV via Illustrator or Web export
Batik Viewer on PC
29
Access Grid (Argonne, NCSA) and HearMe
Ambient mic (tabletop)
Presente r camera
Audience camera
Presenter mic
Access Grid: Communit
HearMe: desktop integrates phone and Internet Audio
30
Garnet Heritage/Assumptions
l
Support
Education, Training
and if possible
Computing
as Grid(Web) Services
l
Use best practice commercial and academic
capabilities
– Access Grid, HearMe, Anabas, (JMS, WSDL, EJB, Castor,
Oracle etc.)
– Worry about Centra, WebEx, Placeware, Blackboard,
WebCT, Saba, Groove, Docent etc.
– Respect IMS/ADL Learning Object standards
(http://www.adlnet.org) and GGF Computing Objects
l
Integrate
Synchronous
and
Asynchronous
( “learning
management system”) collaboration
l
Support
hand held
and
desktop
clients (universal
access)
31
Garnet Technology
l
Uniform XML
event (message) based architecture
–
Linked with a
publish-subscribe
paradigm
l
XML Schema GXOS
supports hierarchical data
structures (compatible with DoD ADL SCORM for
learning objects)
–
XML for all
metadata
(Users, documents, computers)
and
object changes
-- from text chats to display changes
etc.)
l
Java Middleware using
Enterprise Javabeans
l
Production system uses
JMS
(Java Message
Service) to implement publish-subscribe
–
JMS does
Synchronous and Asynchronous
Messaging
l
MyXoS
manages XML information nuggets
32
Important Capabilities in Initial Garnet
l Standard stuff: built in shared display, whiteboard, HearMe
Audio control, quizzes, annotations, chat/IM (Jabber.org)
– Desktop video will be special case of shared display
l Record and replay all features of session (SMIL)
– A/V, Presentation, Annotations, Text Chat
l Several Specialized Collaborative Shared Export Viewers: JSP,
( later HTML, Acrobat ..)
l Initial SVG (Scalable Vector Graphics) Shared Batik Viewer
– 2D Scientific Visualization/Whiteboard
– Macromedia (Flash~SVG) and Adobe (already “all” to SVG)
l Initial source of SVG: Convert PowerPoint VML/WMF to SVG
– Gives shared export model for PowerPoint with each client
able to scale independently at high resolution
33
JMS (Java Message Service) Structure in Garnet
Convert Event to JMS
JavaScript Java C++ …..
Publish
JMS Global (distributed) Event Receptor (Queue)
HHMS Subscribe
HHMS (Hand Held Message
Service) Optimized for Performance.
Basic primitive is a topic/property labeled queue = JXTA Pipe
Subscribe
Pipes are collections of either messages or other pipe and just “nodes” in information hierarchy labeled by a URI
34
Performance of Commercial JMS I
Non-persistent a We do databas
backup outside JMS
One millisecond latency is
fine for Synchronous Collaboration and
fine for Grid Implementation
35
Peer to Peer P2P Networks
l
Publish/Subscribe
is mechanism we use to establish who
gets what information for
Collaboration and P2P and
may be ALL Grid and ALL Web Services
?
l
Gnutella
and
JXTA
are different implementations (from
JMS) of P2P information propagation
– GMS can be built on top of JXTA or JMS architecture
l
JXTA
like
MyXoS
identifies the implicit
distributed
operating (control messages/metadata) system
–
Both have
message queues
as primitives
–Both have
Shell
–
Both use
XML based messages
–
JXTA
Advertisements
are similar to GXOS
metadata for
objects
Message (or event) services underlie P2P
Grids
36
Classic Grid Architecture
Database Database
Netsolv e
Neo s
Securit y Porta
l
Compositio n
Porta l
Resources
Client
s Users and Devices
Middle Tie Brokers Service Providers
Typically separate Clients Servers Resources
37
Peer to Peer Network
User
Resource Service
Routing
User
Resource Service
Routing
User
Resource Service
Routing User
Resource Service
Routing
User
Resource Service
Routing
User
Resource Service
Routing
Peers
Peers are Jacks of all Trades linked to “all” peers in communityTypically Integrated Clients Servers and Resources
38
Services GMS Routing
Peer to Peer Grid
User Resource Service Routing User Resource Service Routing User Resource Service Routing User Resource Service Routing User Resource Service Routing User Resource Service Routing Dynami Message or Even Routing fro Peers o Servers GMS or GES is Grid Message/Event
Service
39
Single Server P2P Illusion
JMS/GM Server
Data base
Traditional Collaboration Architectur e.g. commercial WebEx and old Syracus system Tango
40
P2P Grid Event Service – a better JMS
l
Dynamic Collection of some billion computers each of
which can either generate, route or consume events
l
Publisher labels events by an (XML) object which is at
simplest a URI but in general a collection of tag-values
or instance of XML Schema
l
Subscribers issue some sort of XML Query e.g. deliver
all
gxos://garnet/Education/Graduate/ComputerScience
Indiana/Spring2001/CPS616/Lecture3/*
l
Need Secure, High Performance, Efficient (don’t
propagate events further than they need), Fault Tolerant
delivery service
l
Shrideep Pallickara PhD June 1 2001
l
Current version
Java RMI
based – could be
SOAP
41
Proposed GMS Model for Messages
l All message publication labels and subscription profiles are
defined in XML
Publisher
s Subscribers
Message Queue Labeled by (XML
Topic Object
Subscribe Profile Objects Specify Query to
Event Label
Database Subscribes to all events to gepersistence
42
Multiple Server P2P Illusion
JMS Serve
r
Data base
JMS Serve
r
JMS Serve
r Generate
“Automatically”
We are moving from client – server – resource model
with
Clearly defined responsibilities to a
Heterogeneous Dynamic Grid of service providers and
Service consumers which are not necessarily distinct
43
Some Results – 22 Servers
Servers ar logically bu not necessaril physically distinct
from clients
44
Match Rates of 10%
&
Server Hop to client = 1
45
Event-based Garnet Architecture
l
All Objects are defined in XML
(metadata)– this XML view
could be “virtual” but can be used to discover, edit (etc.)
objects – labeled by a
URI
l
GXOS manages meta data defining all Objects -- it doesn’t
really want to manage Objects, just information required to
find, access, store, render and share
it
–
MUST have a good object management system to build
collaboration service
–
Rendering includes Palm devices as well as PC’s
–
Entities are people, cuuricula, grades, computers etc.
l
All actions including object changes are events
– all events
are GXOS objects
–
Instant Messenger access, Framebuffer changes etc. are
all GXOS events uniformly routed/archived etc.
l
There is a
Shell MyXoS
with basic Services (copy, create,
collaborate etc.) – similar in concept to
JXTA Shell
46
Overall Structure of GXOS for a MegaMeeting
Global Root
Users Devices Documents Admin Multimedia
MegaMe eting
Meetin g
Have a hierarchy of MegaMeeting (any collection of meetings
Course, Degree .. Are MegaMeetings
Meetin
g Meeting
Even Archive Capabilities
gxos://Education/University/Indiana/CS/PhD/Course/Lecture
Any level (except lowest) can be a pipe
47
Interface of XML and Java I
l
How will we teach computing?
–
K-4:
Internet Access
–
Middle School:
(Simple) XML Schema interfaced to
some scripting language
–
High School:
Java as the programming model with
Java classes (for external data) generated
l
Probably don’t want to specify objects twice
–
Start in Java; generate Schema
l
Or
Start with Schema and generate Java
l
Need a natural API of computer code to real or virtual
XML
–
Current mechanisms seem quaint (JDBC), inefficient
(parsers), or non standard (Castor)
48
Interface of XML and Java II
l
Suppose we have a
quadrillion (10
15)
XML objects as say produced by a
physics accelerator per year
(
Enterprise GXOS
)
l
Need to combine:
– Search Interface to select nodes of XML
Tree
l Specify URI
l JDBC or Google like Interfaces
– Castor like Interface to map XML into
Java but need to control depth of conversion from XML into Java
Database
(Virtual) XML View
Choose And Convert
Middleware(EJ B)
49
Current GXOS API Architecture
l
Initially implement “
Personal GXOS
” – Information
Repository small enough that we can afford to read all
possibly relevant information into memory and refine
this
– E.g. Support course data for individual faculty
l
File.xml
XML Object
Java Object
and vice versa
– Use Castor to automate XML Schema to Java Object
l
Primitives
Supported Initially
– Get a “leaf Object”
– Get a Collection (Internal Node) – “handle” and self.xml (the
GXOS properties associated with this node)
– List Contents of a collection (recursively) – Get Contents of a collection (recursively)
50