Video Conferencing with NaradaBrokering - PowerPoint PPT Presentation

Loading...

PPT – Video Conferencing with NaradaBrokering PowerPoint presentation | free to download - id: 601a8c-ZTIzN



Loading


The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
About This Presentation
Title:

Video Conferencing with NaradaBrokering

Description:

Video Conferencing with NaradaBrokering Mark Baker and Rahim Lakhoo Outline Introduction Motivation Technologies: GridSphere, Java Media Framework, NaradaBrokering. – PowerPoint PPT presentation

Number of Views:72
Avg rating:3.0/5.0
Slides: 27
Provided by: razmanOrg
Learn more at: http://razman.org
Category:

less

Write a Comment
User Comments (0)
Transcript and Presenter's Notes

Title: Video Conferencing with NaradaBrokering


1
Video Conferencing with NaradaBrokering
  • Mark Baker and Rahim Lakhoo

2
Outline
  • Introduction
  • Motivation
  • Technologies
  • GridSphere,
  • Java Media Framework,
  • NaradaBrokering.
  • System Architecture
  • Experiments
  • Issues
  • Conclusions

3
Introduction
  • Portsmouth and Readings role in the Sakai VRE
    project is to develop and deploy a number of
    portlet-based tools and services.
  • In particular we are looking at
  • Collaborative tools based on NaradaBrokering,
  • Semantic Web tools based on RDF,
  • Bridging technologies to enable legacy
    applications,
  • Peer-to-Peer technologies.
  • Portsmouth and Reading are developing JSR-168
    portlets, on the basis that Sakai will consume
    portlets via the WSRP consumer developed within
    the project.
  • In this talk we will recount our experiences
    developing, deploying and testing chat and video
    conferencing services based on NaradaBrokering,
    GridSphere and the Java Media Framework.

4
Collaborative Service
  • Motivation
  • Investigate NaradaBrokering that is also
    partially funded by the e-Science programme,
    which other UK Universities and organisations are
    interested.
  • Add useful tools for the Sakai Demonstrator,
  • To create a chat and video conferencing system
    that work-site users and external users may
    communicate with.
  • To provide the ability to conference with many
    participants, i.e. meetings or teleconferences.
  • Note this work was completed in Jan 2005.

5
Technologies Choices
  • GridShpere
  • Supports JSR-168 and WebSphere portlets,
  • Provides a portal framework, not just a portal,
    but a development infrastructure.
  • Has an active support and user community.
  • NaradaBrokering
  • Unified messaging framework with support for Grid
    and Web Services,
  • Software multi-casting with support for different
    transport protocols,
  • Supports video conferencing with Global-MMCS.
  • Java Media Framework
  • Java-based solution for handling time-sensitive
    data,
  • Ability to capture video and compress streams in
    different formats,
  • Supports the Real-Time Protocol.

6
Portals - GridSphere
  • The GridSphere framework provides an open-source
    portlet-based Web portal.
  • The framework allows developers to manage and
    deploy portlets within the container.
  • GridSphere supports JSR-168 and WebSphere-based
    portlets.
  • GridSphere also supports GridPortlets for
    managing jobs and data on the Grid.
  • GridSphere uses Apache Tomcat as its container
    though it can also use Jetty.

7
Java Media Framework (JMF)
  • JMF provides an interface for Java applications
    to interact with media or time sensitive data.
  • JMF includes codecs and protocols, such as
  • Support for Quick Time movies,
  • MP3 playback,
  • Video/audio capture,
  • Supports the Real Time Protocol (RTP),
  • H.263 video conferencing codec (compression
    format).
  • JMF is available in two formats
  • Performance Pack, for only Linux, Solaris and
    Windows
  • Includes native libraries for codecs and
    capturing from devices,
  • Platform Independent version
  • Includes partial capability for codecs and no
    video capturing.

8
NaradaBrokering
  • NaradaBrokering is developed by the Community
    Grids Lab at Indiana University.
  • Originally designed to provide software
    multi-casting for real-time collaborative
    systems.
  • Asynchronous messaging system that is JMS 1.02b
    compliant.
  • Publish, subscribe and bind architecture with JMS
    topics.
  • NaradaBrokering supports other capabilities
  • Video Conferencing via Global-MMCS,
  • Peer-to-Peer with JXTA,
  • Grid and Web Services.
  • Provides a number of transport protocols
  • HTTP/HTTPS, TCP/NIO-TCP and UDP.

9
NB Chat and Video Architecture
  • The NB Chat and Video System consists of
    portlets, portlet services and Java applets from
    a users perspective
  • Chat portlet,
  • Video Conferencing portlet,
  • NaradaBrokering portlet service,
  • Userlist portlet service,
  • JMF applet.
  • The servers consist of
  • NaradaBrokering,
  • Apache Tomcat,
  • GridSphere,
  • Global-MMCS.

10
System Architecture
11
The Chat Service (1)
  • The Chat Service consists of
  • A Chat portlet,
  • A NaradaBrokering portlet service,
  • A Userlist portlet service.
  • The Chat portlet provides the interface and user
    notification messages.
  • The NaradaBrokering portlet service, handles all
    connections and messages to be sent/received for
    all connected users.
  • The Userlist portlet service tracks connected
    users and stores user information.

12
The Chat Service (2)
The User Interface
13
The Chat Service (3)
Configuration Interface
14
An Example System Set-up
15
The Chat Service (4)
  • Each user has a PortletSession, which hold all
    connection information per a user.
  • The Chat portlet and the NaradaBrokering portlet
    service use PortletSessions for the communication
    of messages and connection information.
  • Messages are sent by the NaradaBrokering portlet
    service to a JMS Chat topic on the broker.
  • Each user has an associated asynchronous
    MesaageListener, which stores any received
    messages inside their PortletSession.

16
The Video Service (1)
  • The Video Service consists of
  • A Video Conferencing portlet,
  • JMF Applets,
  • A Userlist portlet service.
  • The Video Conferencing portlet displays a list of
    available cameras and loads the relevant JMF
    applet.
  • The Userlist portlet provides the video stream
    topics and other details, to initiate the video
    conference.

17
The Video Service (2)
The Video Camera Subscription Interface
18
The Video Service (3)
  • Users may publish a web-cam or subscribe to other
    registered web-cams.
  • The video conferencing portlet gathers user
    information from the Userlist portlet service, to
    display a list of any available cameras.
  • The video conferencing portlet generates an
    applet tag with the connection details.
  • The applet then connects to a broker to
    initialise a video conference.

19
Video Service (4)
  • There are two JMF applets
  • A transmitting applet which captures a device,
  • A receiving applet which displays a video stream.
  • The transmitting applet captures a users Web-cam
    as RTP data and encapsulates it within the
    NaradaRTPConnector.
  • The receiving applet uses the NaradaRTPConnector
    to extract the video stream and plays it with a
    JMF player.
  • This means that only one UDP port is required to
    be open on the broker for users to use the video
    conferencing.
  • The chat facility also only requires one TCP port
    on the broker.
  • This is unlike VRVS or Access Grid which requires
    a range of ports to be open.

20
Chat and Video Services
  • The presentation layers are separated from the
    logic an MVC design pattern.
  • All inter-portlet communications are undertaken
    with either PortletSessions or via portlet
    services.
  • The portlet services interact with external
    sources, while the portlets only deal with the
    layout and passing of information to the
    services.

21
NB Chat and Video System Experiment
  • The Chat and Video Portlet was tested with four
    cameras and five users.
  • Each participant was connected to the chat room
    and four cameras where published.
  • All participants subscribed to all four cameras.
  • To stress test the system all participants
    subscribed multiple times to all four cameras.
  • The limitations of the number of subscriptions
    each user could make, was only limited by their
    system resources.
  • The maximum obtained was 18 subscriptions with
    one published camera, by a single user.
  • The broker and GridSphere consistently utilised
    500 MBytes of memory, peaking to 643 MBytes.

22
NB Chat and Video System Experiment
23
Issues
  • The RTPLinkManager in NaradaBrokering (0.99RC4)
    has hardwired ports, even though there is a
    configuration file.
  • NaradaBrokerings RTP session configuration file
    is not dynamic it requires a broker restart.
  • When many messages are sent to the broker memory
    usage increases and eventually the broker fails.
  • The system suffers from session bloating with
    this portlet and thus consumes a lot of memory.
  • Memory is not reclaimed by the system.
  • JMF has compatibility issues with web-cams and
    Linux.
  • Refreshing the chat room messages automatically
    requires other technologies, such as AJAX and/or
    JavaScript.
  • Closing the an applets connection is
    problematic needs the whole browser to be
    shutdown.

24
Conclusions
  • As proof of concept the system does work,
    however, some of the technologies and standards
    need to mature.
  • Installing JMF is still problematic for platforms
    other than Windows and seems to be a dormant
    project, with few updates.
  • JSR-168 does not accommodate for the concept of
    portlet services, thus portlets could be very
    large and not easily reusable.
  • NaradaBrokerings RTP support and JMS API needs
    to be extended to improve its capabilities.

25
References
  • http//www.gridpshere.org
  • http//www.naradabrokering.org
  • http//java.sun.com/products/java-media/jmf/
  • http//www.globalmmcs.org/
  • http//java.sun.com/products/java-media/jmf/2.1.1/
    guide/JMFArchitecture.html
  • http//www.javaworld.com/javaworld/jw-08-2003/jw-0
    801-portlet.html
  • http//www-128.ibm.com/developerworks/websphere/li
    brary/techarticles/0312_hepper/hepper.html

26
  • Questions?

http//dsg.port.ac.uk http//acet.rdg.ac.uk
About PowerShow.com