1 IRI-h a Java-based Distance Education System Department of Computer Science Old Dominion...
-
Upload
brenda-doyle -
Category
Documents
-
view
215 -
download
0
Transcript of 1 IRI-h a Java-based Distance Education System Department of Computer Science Old Dominion...
1
IRI-h a Java-based Distance
Education System
Department of Computer Science
Old Dominion University
Norfolk, VA 23529, USA
2
Outline
• Motivation
• The IRI-h Approach
• IRI-h Network Layout
• IRI-h Software Architecture
• IRI-h Prototype Implementation
• Future Work
3
IRI-h Motivation (Problems with the current IRI system)
•Platform-independence Problem: architecture is heavily dependent on UNIX system calls and the X windowing environment. •Heterogeneous Network Environment Problems: designed to be run over a private Intranet in which QoS is achieved by careful engineering of this controlled environment.
•Late Join Problem: The design of the tool sharing engine makes it difficult for participants to join a session late or to rejoin after network or platform failures.
•Scalability: uses a reliable multicast protocol as the communication architecture underlying the tool-sharing engine; it proved to be not truly scalable both in terms of number of users and amount of traffic generated by such heavy uses as downloading large image files in a browser.
4
The IRI-h Approach (1/2)
Delivery to the home user: Home users can access the session over a regular Internet connection using the latest generation of high speed at home Internet connections.
Platform-Independent Delivery: Collaboration Engine with Multiple-Platform-Tool-Source:
makes available the rich set of applications running on windows 9X/NT/2000 environments.
Multi-platform Audio/Video solution
Platform/environment Management including late join/early leave: A student can join an on-going session at any time and fully participate in that class.
5
The IRI-h Approach (2/2)
• Scalable Semi-Reliable Communications: uses unreliable multicast at the core with our own mechanisms for enforcing reliability.
Virtual Rooms: the class can be divided into groups by assigning each group a virtual meeting room. Students can move from room to room and join in different on-going discussions.
Situational awareness: Students, Teachers and technical engineers are made aware of the current operating environment and are notified about noteworthy changes or unusual situations.
Shared Multi-program/multi-window Graphical User Interface: The position and focus of the windows displayed on the student’s workstation is coordinated with the instructor’s machine. A student can not rearrange the shared view.
6
IRI-h Network Layout
G
Multicast disabled site
UDP tunnel
Gateway
High SpeedNetwork (Multicast)
Gateway
High SpeedNetwork(Multicast)
S1 S2
S3P1
Low Bandwidth with multicast
Multicast
P3
High Delay without multicast
UDP tunnel
P2
Low Bandwidth without multicast
UDP tunnel
Intranet
Multicast
P4P5
P6P7 P8P9
7
IRI-h Software Architecture
SMLog Server
Group Communication server
Gateway
Token Managers
Observers
SP
Audio Video
Sharing Tool
Annotation
Pointer
RcvSnd
SndSnd
RcvRcv
Gateway servers
TCP connection
Thread relationship
Service manager
Main Thread
Snd: Sender
Rcv: Receiver
8
Session Manager Components (1/2)
• Log Server– logs messages from each IRI-h process participating in the IRI-h
session;
– classifier for messages.Output to display or write to a log file.
• Group Communication Server– allocates group communication channels requested for services;
– Provides the “Communication Group Name (IP, Port)” mapping.
• Gateway (shown as part of SM for simplicity)– solves heterogeneity problem;
– tunneling services;
– adaptive content delivery (transcoding, and/or data rate control).
9
Session Manager Components (2/2)
• Token Managers– allocated by session manager to manage tokens used within
services.
• Service Observers– provides service state for any late comers in case of stateful
services;
– provides recording functionality for all services.
10
IRI-h Prototype Implementation
• Prototype Status
• Startup Scenarios
• IRI-h Desktop
• Preliminary Performance Results
11
Prototype Status (1/2)
• Fully implemented in Java– video (JPEG using Java Media Framework JMF);
– audio (G723 using JMF);
– tool sharing (lossless Video Compression PNG), and rate control;
– pointer, annotation, private note taking;
– session/resource management• allocation of resources;
• late-join (inform late-comers about running services with required resources);
• monitoring (situation-awareness).
– automated startup.
12
Prototype Status (2/2)
• Tested platforms– Unix (Solaris), Windows 9x, NT, 2000.
• Current Development Effort– Gateway (Home User delivery);
– recording/playback of multimedia/data streams;
– solution for bugs due to JMF;
– generic solution for late-join problem (service state);
– reliability/semi reliability schemes in multicast transmission;
– Uploading participant notes on server side.
13
IRI-h Startup Scenarios
E, F: Automated Startup by Java Server B: Manual Join by contacting the Directory Server
H: Session Manager manually invoked G: Manual Join by contacting H directly
SP Startup
B
SPStartup Applet
A
G
SP
E
SPHA
H
SM
F
HA SM
C
Java Server
D
Directory Server
SM: Session ManagerSP: Session ParticipantHA: Host AmbassadorX Y: X initiates protocol with YX Y: X spawn Y server
14
IRI-h DesktopToken controlled tools Private panel
Shared view
Room cards
Audio control
Annotation token holder utilitiesVideo control
Private panelLogin box
Class name and semester
15
Performance Results (1/2)
• Tool Sharing (IPV)– The performance of IPV depends on the following activities.
• Capture images of the windows in the application being shared,
• Compare these images with previous images to see if the image has changed (for removing temporal redundancy),
• Compress the image,
• Transfer,
• Decompress,
• Display images on client machine.
– Capture time is a function of the image size only (measured around 220 msec for a 700x700 image on a Unix machine).
– Comparison time is between 300-500 msec.
16
Performance Results (2/2)
• IPV (continued)– Compression time is a function of the compression algorithm and
ranges from 1000 to 3000 msec. since this is performed in software.
– Transmission time depends on image type and ranges from 20msec for text images to 350 msec. for picture images (using PNG).
– On the receiver's side, performance is dominated by the time to decompress which is around 500 msec.
• IRI-h Scalability– scalability tests have been performed by running IRI-h on all
Intranet machines (35) with no degradation in performance (video/audio/IPV reception).
17
Future Work
• Gateway– target bandwidth setup
• uplink (to gateway) 256Kbps
• downlink (from gateway) 1 Mbps.
– Tunneling, and integration within current session/resource management framework.
– format transcoding and/or data rate limiting.
• Inter-Stream Synchronization• Late-Join mechanisms (service state)