[jdev] Bytestreams fallback mechanism

Guillaume Desmottes cass at skynet.be
Fri Dec 28 03:19:37 CST 2007


I'm working for Collabora Ltd. on the OLPC project. We developed tubes
[1] which is a Telepathy component that allows arbitrary applications to
communicate together through an existing IM infrastructure.

Tubes are currently implemented in Gabble (XMPP) and Salut (XMPP link
local). See [2] if you are interested about the XMPP protocol.
Stream tubes use stream initiation to establish their connections. For
now, only IBB is implemented in Gabble which is not very efficient. So
we'd like to add real p2p connections as OOB and, later, use Jingle
magic to perform NAT penetration.

In order to always use the "better" bytestream, we'd like to do
something like that:
a) Try normal OOB using a direct TCP connection
b) Try OOB with NAT penetration
c) Give up and use IBB

Does XMPP have a standardised way to do that?
I found this [3] proposal but it seems Spark specific.
Xep-0041: Reliable Entity Link could do the job too but is was

Any other solution or should we define our own protocol to do that?

Thanks for your help.


[2] http://people.collabora.co.uk/~smcv/tubes.html
[3] http://thread.gmane.org/gmane.network.jabber.standards-jig/10468

Guillaume Desmottes <cass at skynet.be>
Jabber <cassidy at jabber.belnet.be>
GPG 1024D/711E31B1 | 1B5A 1BA8 11AA F0F1 2169  E28A AC55 8671 711E 31B1

More information about the JDev mailing list