Upload
steve-smith
View
143
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Presentation to accompany the paper I presented to APAC '05 on XMPP and AccessGrid integration.
Citation preview
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
Towards a Standards-based,Message-Oriented Access-Grid
Steve Smith
Vislab, School of ITUniversity of Sydney
5th October 2005
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
A stock-take of AccessGrid 2
We have serveral years of AGTK2 usage to learn from.Largely successful, and the number of nodes is increasing,but its adoption outside of the HPC community hashighlighted some core problems with the architecture:
I It is an implementation, not a standard.
I Heavy-weight; creates barrier to entry.
I Performance problems: It’s slow to startup and connect.
I Limited communication scope: “Where are they?”
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
A stock-take of AccessGrid 2
We have serveral years of AGTK2 usage to learn from.Largely successful, and the number of nodes is increasing,but its adoption outside of the HPC community hashighlighted some core problems with the architecture:
I It is an implementation, not a standard.
I Heavy-weight; creates barrier to entry.
I Performance problems: It’s slow to startup and connect.
I Limited communication scope: “Where are they?”
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
What does the AG actually do?
AG provides coordination of services ...
I Built-in servicesI File-sharingI Group-chat
I Coordination: Endpoints for out-of-band exchange ofdata.
I eg. Multicast addresses for Vic, Rat, etc.I Server address for VNC viewer.
I Collaboration: Communications conduit forshared-applications
I Presentations, Shared-whiteboard, etc.
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
What does the AG actually do?
AG provides coordination of services ...I Built-in services
I File-sharingI Group-chat
I Coordination: Endpoints for out-of-band exchange ofdata.
I eg. Multicast addresses for Vic, Rat, etc.I Server address for VNC viewer.
I Collaboration: Communications conduit forshared-applications
I Presentations, Shared-whiteboard, etc.
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
What does the AG actually do?
AG provides coordination of services ...I Built-in services
I File-sharingI Group-chat
I Coordination: Endpoints for out-of-band exchange ofdata.
I eg. Multicast addresses for Vic, Rat, etc.I Server address for VNC viewer.
I Collaboration: Communications conduit forshared-applications
I Presentations, Shared-whiteboard, etc.
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
What does the AG actually do?
AG provides coordination of services ...I Built-in services
I File-sharingI Group-chat
I Coordination: Endpoints for out-of-band exchange ofdata.
I eg. Multicast addresses for Vic, Rat, etc.I Server address for VNC viewer.
I Collaboration: Communications conduit forshared-applications
I Presentations, Shared-whiteboard, etc.
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
A different view: AG as IM
The last few years have seen the addition of AG-like featuresto most of the commercial IM clients:
I Voice
I Video
I File-transfer
I White-boards
However, the number of participants is limited.
Meanwhile, AGTK2 added IM-like functionality: Integratedchat, presence.However, these are inferior to the IM equivalents.Why not integrate the two and be done with it ...
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
A different view: AG as IM
The last few years have seen the addition of AG-like featuresto most of the commercial IM clients:
I Voice
I Video
I File-transfer
I White-boards
However, the number of participants is limited.
Meanwhile, AGTK2 added IM-like functionality: Integratedchat, presence.However, these are inferior to the IM equivalents.Why not integrate the two and be done with it ...
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
Open instant-message protocol: XMPP
I Otherwise known as Jabber.I XML based protocol (yeah, I know).
I Extensible, extensions guarded by XML namespaces.
I Recently made IETF standard for IM.
I Already being used to build shared appsI Last year has seen mindshare increase:
I iChat support built-inI Google Talk!
I Already being used on the AG
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
Community supported and enhanced
Extensions defined in ’JEP’s: Proposed enhancements, likeRFCs, PEPs, etc:
I File-transfer, and advertising of files.
I Multi-user chat rooms. Moderator system providesaccess-control. Users can be invited to rooms.
I PubSub: Server data-store, with observer-patternprotocol.
I Events, data-forms. Commands and queries can betunneled in messages, including in chat-rooms.
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
Mapping the AG to Jabber: Basic
I AG rooms are just Jabber chat-rooms withowner/moderator.
I Moderator publishes multicast info in room-private datathat can be retrieved by valid participants.
I Room moderator can be a bot, interface to bookingsystem to lock rooms.
I Big win: We don’t have to write a server, just use anexisting one that supports the right JEPs.
I ejabberd currently best suitedI Written in Erlang, which has some interesting
properties.I Minor patch required for MUC-private data (JEP
coming).
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
Mapping the AG to Jabber: Advanced
I File-transfer: Peer-to-peer, possibly in conjuction with’publishing’. Would also be good to integrate withdata-grid.
I Shared-app events can publish pubsub nodes or sendcustom-messages through room.
I For more complex communication JEPs exist forXML-RPC, SOAP and ad-hoc command discovery.
I Security. Currently can guarantee within single server,becomes problematic with S2S (more later).
I Interop: It would be good to interoperate with existingAG. Should be possible, Jabber was designed as agateway system.
I Can we also do things not currently possible with AGdesign? ...
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
SOCKS proxy as P2P Unicast bridge?
File-transfer uses SOCKS5 proxy for data-transfer, alsosupports UDP.Can we use this to enable P2P (“venue-less”) AG?
Server
Client
Server
Client
AG−Media AG−Media
SOCKS5
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
Put-up or ShutUp
Any opensource Jabber client could be modified to supportthese extensions; however a custom one would obviouslyprovide better integration.
We’ve written an X-platform client Jabber client ...
I Named “ShutUp”, in accordance with Vislab directive#1.
I Python/Twisted based for RAD, UI is also pluggable;allows for better integration into user environment.
I Plugin-oriented for experimentation.
I Currently Linux-oriented, help needed to support otherplatforms (or write your own).
The demo ...
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
Put-up or ShutUp
Any opensource Jabber client could be modified to supportthese extensions; however a custom one would obviouslyprovide better integration.
We’ve written an X-platform client Jabber client ...
I Named “ShutUp”, in accordance with Vislab directive#1.
I Python/Twisted based for RAD, UI is also pluggable;allows for better integration into user environment.
I Plugin-oriented for experimentation.
I Currently Linux-oriented, help needed to support otherplatforms (or write your own).
The demo ...
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
Put-up or ShutUp
Any opensource Jabber client could be modified to supportthese extensions; however a custom one would obviouslyprovide better integration.
We’ve written an X-platform client Jabber client ...
I Named “ShutUp”, in accordance with Vislab directive#1.
I Python/Twisted based for RAD, UI is also pluggable;allows for better integration into user environment.
I Plugin-oriented for experimentation.
I Currently Linux-oriented, help needed to support otherplatforms (or write your own).
The demo ...
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
Put-up or ShutUp
Any opensource Jabber client could be modified to supportthese extensions; however a custom one would obviouslyprovide better integration.
We’ve written an X-platform client Jabber client ...
I Named “ShutUp”, in accordance with Vislab directive#1.
I Python/Twisted based for RAD, UI is also pluggable;allows for better integration into user environment.
I Plugin-oriented for experimentation.
I Currently Linux-oriented, help needed to support otherplatforms (or write your own).
The demo ...
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
Screenshot (Main)
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
Screenshot (Config)
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
Further work
I Authentication and encryption needs more thought:I PGP/GPG based web-of-trust?I JEP-0116: SSH-like end-to-end encryptionI This is all academic until multicast is properly secured.
I Interoperation with AG 2
I More applications, file-transfer.
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
The big picture
I Being protocol-based, we’re no longer tied to a specificimplementation.
I Increases scalability downwards (to smaller devices) andoutwards (to better integration with the environment).
I But ultimately Vic and Rat are the problem ...
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
Discussion ...
More information:
I http://blogs.vislab.usyd.edu.au/
I http://wiki.vislab.usyd.edu.au/
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
Interop
Simple interop:
I Map existing venues to MUC rooms, duplicateMulticast addresses.
I Basically the same as AG1/AG2 transition.
Advanced interop:
I Can we support existing shared apps, etc?
I Jabber was always intended to enable gateways to otherIM transports.
I Most servers can support ’components’ ; plugins thatrun in external processes (JEP-114).
I JEP-100 codifies best practices for gateways.
I However, due to the large amount of client librariesavailable in most cases porting the shared app will besimpler.
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
DPPT style apps
I Presenter makes PPT available by publishing stream(JEP-0137)
I Presenter sends page-update information in messagestanza. This stanza contains stream identifier.(JEP-xxx (eventually))
I Audience member receives page-update for first time,downloads file and jumps to page.
I Subsequent page-updates operate on existing file.
I (Bonus: People joining MUC receive recent history, soperiodic sending not required.)
I Basic pattern applies to most existingshared-applications.
Towards aStandards-based,Message-Oriented
Access-Grid
Steve Smith
Setting-up a server
I Download ejabberd website: http://ejabberd.jabber.ru/
I Download latest patch:http://people.vislab.usyd.edu.au/~ssmith/patches/
I Patch and compile. The result can be installed or runin-place.
I Configure ejabberd. This is mostly a case of settingyour domain and permissions.
I Create room by joining and configuring, makingpersistent and setting access-controls where appropriate.
I Set the multicast information for the room usingShutup (right-click in room resources pane).