Hi,

On Feb 27, 2008, at 4:06 PM, Peter Saint-Andre wrote:
Fabio Forno wrote:
On Wed, Feb 27, 2008 at 5:06 AM, Peter Saint-Andre <[EMAIL PROTECTED]> wrote:

 2.1 What people have done or suggested

 - fast reconnection
 - pipelining of stream negotiation exchanges (Tony Finch)
 - don't retrieve roster (but this doesn't really help)

Though sending roster diffs helps. There is a new possible approach
I've found only after the discussion we had: use just roster push,
that must implemented regardlessly any optimization. The client asks
for the roster adding a timestamp of the last received push, and the
server sends changes as pushes (all timestamped)

Yes, we have roster pushes so it seems like a good idea to use them (in
general I think we should make intelligent use of everything we've
already defined, such as presence and rosters and roster pushes and so
on -- other real-time communication technologies don't have these
features at the base level, so it's to our advantage to use them). I
think that something like what you suggest might work well.

Also, before the devcon Dave Cridland mentioned that he didn't like the
XEP-0150 approach but at the devcon we somehow didn't hear from him on
this topic, so perhaps he could weigh in with his ideas here.

 - compression

Under this topic nobody really seems ready to try the binary path

Yes, so it seemed. Pedro Melo mentioned some further thoughts along
these lines at dinner one night, so he and I might work on a spec for
that. Right, Pedro? ;-)

Exactly. :)

I'm trying to think on how to do a reference implementation to get more feedback.

But I agree that, from the feedback at the devcon, it does not seem to win us much, so this is very low priority work.


- BOSH (for mobile, is it better, the same, or worse than TCP?)

I'd say BOSH is the easiest way to make things work now. Almost
anything that you get with BOSH for free (implicit transactions, keep
the session alive while disconnected, no need to re-negoziate the
features) can be obtained also with adequate optimizations in TCP
sockets, but these must still be defined and implemented in servers

True. On the plane yesterday I started working on revisions to XEP-0198 (I'm now calling it "Stream Management") that will address many of these
points, but as you say BOSH already does a lot of this. We'll work to
make sure that the TCP and HTTP bindings implement the same or similar
semantics in transport-appropriate ways, so that stream management and
BOSH are not wildly different.

One feature Fabio mentioned that I liked a lot is that if your mobile device is using 3G/GPRS and then arrives at a place with open wifi, you can transparently just start using it.

For the same reasons its more resilient to network address changes on the device.

Best regards,
--
Pedro Melo
Blog: http://www.simplicidade.org/notes/
XMPP ID: [EMAIL PROTECTED]
Use XMPP!


Reply via email to