current research directions in collaboration tools
DESCRIPTION
Current Research Directions in Collaboration Tools. Deb Agarwal Lawrence Berkeley National Laboratory. Motivation. Collaboration size ranges from two to hundreds - a collaboration likely begins with just two or three members who decide to work together - PowerPoint PPT PresentationTRANSCRIPT
ESnet Workshop October 2004
1
Current Research Directions in Collaboration Tools
Deb Agarwal
Lawrence Berkeley National Laboratory
ESnet Workshop October 2004
2
Motivation
⢠Collaboration size ranges from two to hundreds - a collaboration likely begins with just two or three members who decide to work together
⢠Interaction capabilities needed vary over time and are determined by the activity being pursuedâ Meeting/presentationâ Document editingâ Computations and dataâ Remote experimentâ Shared coding
⢠Interactions are often asynchronous⢠Collaborators prefer to use secure systems for their interactions⢠Denial of service for legitimate users has serious consequences
and will lead to use of insecure systems if available or lack of adoption
ESnet Workshop October 2004
3
Example Existing Tools
⢠Collaborative environmentsâ Groove â www.groove.netâ Sakai/Chef - collab.sakaiproject.org
⢠VideoconferencingâH.323 - www.ecs.es.netâ Access Grid â www.accessgrid.orgâ VRVS â www.vrvs.orgâConference XP â www.conferencexp.net
⢠ComponentsâWiki â www.twiki.orgâXMPP/Jabber â www.jabber.orgâE-beam shared white board - www.e-beam.comâSciShare file sharing system - www.dsd.lbl.gov/P2P/file-
share/âPlone content management system â www.plone.org
ESnet Workshop October 2004
4
Typical Decision Variables
⢠Capabilities provided⢠Ease of use⢠Available to collaborators⢠Interoperability with other tools⢠Required hardware, software, and operating system⢠Availability of support and servers⢠Security⢠Availability of âkillerâ content or capability⢠Robustness and reliability⢠Flexibility to add features or customizations
ESnet Workshop October 2004
5
Primary Research Directions
⢠User interfacesâ Asynchronyâ Persistenceâ Immersion
⢠Security â Protect content â Limit access
⢠Sociology of collaborationâ Motivations of collaboratorsâ What tools will be successful and whyâ Determine âkillerâ contentâ Learn lessons from the existing collaborations
ESnet Workshop October 2004
6
User Interface Issues
⢠Support for time zone and work time differences (asynchrony)âArchiving of content for later viewingâPersistence across login sessions
⢠Information provided about the remote environment and peopleâPresenceâBusy
⢠Integration of the environmentâSingle combined interfaceâInteroperable toolsâCompletely separate components
⢠Amount of engagement requiredâFull attentionâOccasional glanceâNotification of changes
ESnet Workshop October 2004
7
Asynchrony Research
⢠Archiving of contentâ Where should the content be archived?â How to index the archive?â How to correlate the streams?â How to maintain authorization?
⢠Presence informationâ How to gather accurate information?â How much information is enough?â How do we maintain privacy?
⢠Asynchronous interactionâ How do you support a multi-day conversation?â What is the best way to notify people of content?
ESnet Workshop October 2004
8
Partial Answer - Personal Archives
⢠Each person or group can run and control their own archive
⢠Archiver is visible in the collaboration space so people know it is recording
⢠Archiver can be invited to record a session⢠Access to the archive is controlled by the owner of
the archive⢠Metadata stored to define context⢠Search capabilities to locate particular content
ESnet Workshop October 2004
9
Partial Answer â Jabber Instant Messaging
⢠Provides presence and idle indication⢠Allows users to control who can see their presence
information ⢠Chat rooms and instant message sessions survive
individual login sessions and provide scroll back buffer for context
⢠Clients available that can notify users of content appearing
ESnet Workshop October 2004
10
Security Issues
⢠Restrict accessâ Authenticate usersâ Limit access to authorized users onlyâ Protect sensitive content using encryption
⢠Provide ease of useâ Add new users without requiring system
administratorâ User authorization managed by users
⢠Robust and reliable securityâ Minimize denial of service for legitimate usersâ Debugging information provided when access
fails
ESnet Workshop October 2004
11
Security questions
⢠How much security do we need and how secure is the resulting system?
⢠Can users access the collaboration from an Internet cafÊ?
⢠Can we minimize the threshold for new user entry into the system?
⢠Do all the components in the system require the same level of authentication for access?
⢠Can we eliminate the dependence on servers? (particularly while the collaboration is small in number)
⢠Can we build security that makes sense to users?
ESnet Workshop October 2004
12
Partial Answer - Authentication Model
⢠A user has multiple means of authentication⢠Registration methods
â Selfâ Trusted userâ Administrator
⢠Authentication for a particular session based onâ Locationâ Methods availableâ Security of local machineâ Availability of connection to serversâ Software available on local machine
⢠Authentication method for a session a property of a userâs session
⢠Authentication method parameter to authorization
ESnet Workshop October 2004
13
Partial Answer - Crossing the borders
⢠Escortâ Accompany a user in an area they are not
normally authorized to accessâ Only provides privileges of the host or lessâ Host able to control the guestâs access
⢠Vouchingâ A user vouches for a less privileged userâ Temporarily elevates privileges of the voucheeâ Vouchee able to act without escort
⢠Elevation of credentialsâ Registration of a userâs credentials to allow
higher privileges â can be done by anyone with the higher credential level
ESnet Workshop October 2004
14
Authorization Issues to be Solved
⢠Authorization decision points/coordinationâ Joining a private conversationâ Entering a shared venueâ Looking at files/shared dataâ Accessing archives
⢠Authorization decision needs to take into accountâ Method of registrationâ Method of authenticationâ Vouching information
⢠Escort affect on authorizationâ Filter escorted userâs access to real-time information
⢠Limitation of access granted by vouching
ESnet Workshop October 2004
15
Prototype Development Environment
⢠Needed an application to implement the research ideasâ Gain experienceâ Test assumptionsâ Gather user feedback
⢠Collaborations desperately need this model⢠Early experiments in our IRC-based presence and
messaging application indicate that these ideas have great promise
ESnet Workshop October 2004
16
Jabber - Presence and Messaging
⢠âJabberâ is a set of standard protocols for streaming XML elements between any two points on a network
⢠Provides near-real-time messaging⢠Provides presence, messaging, and multi-user chats⢠Open and extensible protocols⢠Stable and widely used (perhaps millions of users)⢠Large and active developer community, organized by
the âJabber Software Foundationâ
ESnet Workshop October 2004
17
Jabber Protocol Architecture
⢠âStreamingâ XML messages over a (duplex) TCP connection
⢠Messages are addressed to a âJabber IDâ (JID), which is user@server/resource
⢠Network of servers handle messages, and route messages not intended for them
⢠Clients live at the âedgesâ and talk to servers
ESnet Workshop October 2004
18
Jabber Messaging
ESnet Workshop October 2004
19
Jabber Message Delivery
capulet.com montague.net
[email protected]/[email protected]/orchard
<Message>
<Message>
<Message>
persistent TCPconnection
ESnet Workshop October 2004
20
XMPP Standards
⢠2002 - present: XMPP-WG in IETF, drafts:â âcoreâ Jabber protocolâ âIMâ, Instant Messaging with Jabber protocolâ âe2eâ, End-to-End securityâ âCPIMâ, mapping Jabber to CPIM
⢠You can store your contact list (ârosterâ) and other data (like a vCard) on the server
⢠Standard IM 'presence' features⢠The server queues up messages for you when you're away and
delivers them as âdelayedâ messages when you come back⢠Logging available at servers and clients
ESnet Workshop October 2004
21
Jabber Existing Software
⢠Serversâ âjabberdâ from jabber.com
⢠GPL⢠Stable version is 1.4; beta 2.0 supports IETF protocol
extensions (security)
â Other open-source: ejabberd, WPJabberâ Commercial: Rhombus, Accept
⢠Clientsâ Gaim (popular universal IM client, works on
Windows and Linux using Qt library, Mac?)â PSI (Jabber-only client, Win/Lin/Mac)â Many more: Exodus, RhymBox, Yabber, ...â Still evaluating web interfaces
ESnet Workshop October 2004
22
Jabber Clients & Devices
Palm SMS RIM Pocket PC J2ME Symbian WAP
Windows Linux Web
Source: http://downloads.weblogger.com/gems/andredurand/JabberNetworkInterop.ppt
ESnet Workshop October 2004
23
LBNL Jabber Enhancements
⢠Personal Archiverâ Built a Python agent that archives chats and web page to
search archivesâ Runs with its own credentialsâ Visible entity in the spaceâ Invite archiver to chatroom to archive a conversationâ Archive controlled by individual running archiveâ Archives to searchable database or web page
⢠Securityâ Implementing multiple authentication methods capabilitiesâ Plan to provide a lobby that all can enter but still restrict
entry to other spacesâ Plan to implement escort and vouching
⢠Persistence â working with ANL to integrate into the Access Grid venue client and for use as the back channel