[Standards] Proposed XMPP Extension: Bind 2.0

Georg Lukas georg at op-co.de
Mon Jan 23 15:38:41 UTC 2017


* XMPP Extensions Editor <editor at xmpp.org> [2017-01-17 16:24]:
> Abstract: This specification provides a single-request replacement for several activities an XMPP client needs to do at startup.

I know this is a bold request, but as a client developer, I wish for the
following from bind2:

1. Client performs authentication (outside of bind2 focus)

2. Client sends a bind2 element with the following optional payloads:
   - last received MAM-ID,
   - last-used-resource
   - last SM session-ID + h

3. Server performs magic:

- if the SM session is valid, perform a SM resume, otherwise:

- kill the old server-side session identified by last-used-resource

- bind a new session, using last-used-resource or a uuid

- enable SM + resumption

- start sending MAM messages to the client starting after last received MAM-ID

This approach would have multiple benefits:

* Less roundtrips (when <resume> would fail; for MAM response)

* Smarter server, dumber client (original XMPP design goal)

* One-step creation/restore of a properly configured session


Regarding the random vs. client-supplied resource, I'm strongly in favor
of having the client generate a random resource like "yaxim.DEADBEAF" on
first use. This makes debugging problems easier for server operators,
and I can say from experience that running a server is hard enough
already.

You can't always <query xmlns='jabber:iq:version'/> the client,
especially when doing a post-mortem analysis of client or server bugs.
Having at least an indication ("this only affects conversations users")
is a great win.


Greetings


Georg
-- 
|| http://op-co.de ++  GCS d--(++) s: a C+++ UL+++ !P L+++ !E W+++ N  ++
|| gpg: 0x962FD2DE ||  o? K- w---() O M V? PS+ PE-- Y++ PGP+ t+ 5 R+  ||
|| Ge0rG: euIRCnet ||  X(+++) tv+ b+(++) DI+++ D- G e++++ h- r++ y?   ||
++ IRCnet OFTC OPN ||_________________________________________________||
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 811 bytes
Desc: Digital signature
URL: <http://mail.jabber.org/pipermail/standards/attachments/20170123/cb767c75/attachment.sig>


More information about the Standards mailing list