[sugar] Efficiently sharing content across mesh

Simon McVittie simon.mcvittie
Thu Jun 28 04:20:56 EDT 2007

On Thu, 28 Jun 2007 at 09:00:23 +0200, Bert Freudenberg wrote:
> On Jun 28, 2007, at 6:12 , Dan Williams wrote:
> > the mesh is just another network like wifi or ethernet, strictly
> > Layer 2.  It's up to the activity to use the network as best it can  
> > for
> > it's particular requirements.
> I thought there were Tubes? OMG Tubes!

Tubes are an application-level protocol (strictly speaking, extensions
to each of several application-level protocols, with a common API).

The reason OLPC apps are expected to use Tubes is that they integrate with
Telepathy contacts (which we use for Buddy communication/identification) and
have a common API regardless of whether you're using local sockets on the
mesh, forwarding through a server, traversing through NATs (in future
versions), etc. - if you write an app to use Tubes for mesh communication,
it'll also work for communication across the world via an XMPP server.
The Telepathy connection manager will work out the right way to get the
bytes to the other participants.

You can't just open a socket and do TCP/UDP if the peers aren't behind the
same NAT (e.g. collaboration between two schools, or a child at school and a
child in an internet cafe).


More information about the Sugar-devel mailing list