[Standards] XEP-0115 redux
Peter Saint-Andre
stpeter at stpeter.im
Thu Jan 17 14:08:15 CST 2008
Dave Cridland wrote:
> On Thu Jan 17 18:08:54 2008, Kevin Smith wrote:
>> I confess that I'm starting to wonder what the difference is between
>> iq version floods and presence floods when you log on.
>>
>>
> I thought about this, too.
>
> Let us suppose a user with N contacts in the roster who are online at
> the moment the user comes online. With a presence-based versioning
> system, you're looking at N inbound, 1 outbound. (That's stanzas, of
> course)
>
> With an iq based system, you're looking at 2*N outbound, 2*N inbound,
> since for every online buddy, you send one iq:version to them, they send
> one to you, and you both return results.
>
> So it's actually 4 times the number of stanzas, plus one additional RTT.
> (I think - I've not given RTT counts much thought, I admit).
That's true *on login*.
But if my presence session is 8 hours long and I change my presence 3
times an hour and I include the version information every time, the
bandwidth consumption adds up. At that point the version flood starts to
look better than putting this in presence.
Plus the name+os+version doesn't change during the course of a session,
as service discovery features might (enable plugin, etc.). So it's not
really related to communication capabilities.
>> > Honestly, I think the best bet is an optional n='whatever' as a
>> > display name in the caps field; takes up very little additional space,
>> > and if it's there you use that for a display. That can say 'MyClient'
>> > or 'MyClient 1.0 (Win32)' or whatever. You just use the string.
>> > Otherwise, you just don't query.
>>
>> The string seems fine, although we probably don't want to mandate not
>> querying, since clients may withhold it from global presence, but let
>> some people iq:version.
>>
>>
> I'm in broad agreement with this.
But n='Psi' doesn't tell you the OS (Psi is a multi-platform client) or
the version (are you using 0.10 or the super new 0.11?). And it seems
that end users love that feature.
>> > I do agree that this bit can be pulled out of the caps discussion at
>> > this point, though; the only bearing it had on caps was that
>> > previously the node#ver values of the original caps meant that you
>> > could map that to a specific disco#info identity string as well, so
>> > the functionality had (unintentionally) rolled into the old caps.
>>
>> I think it's pertinent in as far as if it drops from caps, the
>> replacement needs to appear at the same time, but other than that,
>> sure.
>
> I have a vague feeling that we need to consider both issues together.
Well we're almost there, we could just put everything in caps and be
done with it:
<presence from='romeo at montague.lit/orchard'>
<c xmlns='http://jabber.org/protocol/caps'
hash='sha-1'
n='Psi'
node='http://code.google.com/p/exodus'
os='PPC Mac OS X Mach-O'
v='0.11'
ver='8RovUdtOmiAjzj+xI7SK5BCw3A8='/>
</presence>
What's a few more bytes between friends? ;-)
Peter
--
Peter Saint-Andre
https://stpeter.im/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 7338 bytes
Desc: S/MIME Cryptographic Signature
Url : http://mail.jabber.org/pipermail/standards/attachments/20080117/63a24c8c/attachment.bin
More information about the Standards
mailing list