#5078 NORM Opportu: A more mesh-friendly presence protocol for salut
Zarro Boogs per Child
bugtracker at laptop.org
Wed Jan 7 08:50:51 EST 2009
#5078: A more mesh-friendly presence protocol for salut
---------------------------------------+------------------------------------
Reporter: sjoerd | Owner: sjoerd
Type: defect | Status: new
Priority: normal | Milestone: Opportunity
Component: telepathy-salut | Version:
Resolution: | Keywords:
Next_action: design | Verified: 0
Deployment_affected: | Blockedby:
Blocking: |
---------------------------------------+------------------------------------
Changes (by gnu):
* cc: gnu (added)
* next_action: => design
Comment:
The idea of pushing the Presence protocol into the mesh chip is
interesting but complex.
THere's a simpler way.
The mesh implementation already keeps track of all the participants in the
mesh, using its own internal protocols. So assume your laptop is using
the mesh for connectivity, and not using a Jabber server. Then rather
than polling other nodes with IP packets, or sending out its own periodic
status updates as IP packets, the Presence service could query the mesh
firmware about what nodes are in the mesh. This query would only be chip-
to-chip and nothing would go out over the air. Even when the main cpu is
powered down, the mesh chip remains up (if mesh is on), and maintains its
neighbor information.
To get notifications (that can awaken the CPU to update the display) when
particular nodes appear or disappear, it might require some firmware
updates to define such a notification protocol between the CPU and the
mesh chip.
When it needed to talk to another node directly, it would use unicast IP
packets, which would avoid both useless mesh retransmission, and awakening
lots of nodes. E.g. after a new node comes on the air, my laptop would
wake up its CPU, which would send
a UDP packet to the new node asking its name and icon. My laptop should
not awaken at all unless my screen was showing a display that would need
to be updated when new nodes
arrived. Or unless the new node was on my already-known list of friends
that I want
to be awakened and notified about. Otherwise, my laptop would sleep on.
If and when I later brought up a display of network nodes, at that later
point my laptop would query the mesh chip and then possibly use unicast IP
to fetch names/icons from nodes it didn't already have cached.
I think this is the first practical idea for how to provide Presence in
the mesh with low power consumption & long CPU power-downs. This would be
unrelated to mdns, of
course; it would probably be a new telepathy-marvellmesh protocol or
something like that.
Mdns would still be used when connected to an access point and without a
Jabber server.
(Of course, if we plan to eliminate the Mesh in future products, it might
not be worth defining a Presence protocol that relies so heavily on it.)
--
Ticket URL: <http://dev.laptop.org/ticket/5078#comment:6>
One Laptop Per Child <http://laptop.org/>
OLPC bug tracking system
More information about the Bugs
mailing list