[Standards-JIG] Re: WHACK

Peter Saint-Andre stpeter at jabber.org
Tue Apr 25 22:12:54 UTC 2006

Hash: SHA1

Tijl Houtbeckers wrote:
> On Tue, 25 Apr 2006 22:58:33 +0200, Peter Saint-Andre
> <stpeter at jabber.org> wrote:
>> Kevin mentioned to me an alternative approach, which he swears is also
>> Justin's idea -- whitespace acks (since I like fun names for things, I
>> dub these "whacks"). Whenever an entity receives a stanza, it sends one
>> whitespace character ("whack") to the immediate sender. So my previous
>> flow would be as follows:
>> ...
> At the time that justin suggested his orginal ACK proposal, we had a
> discussion where I suggested using "a"/"A", and "p"/"P" instead of XML
> stanzas for ack and ping.
> However, two things came up there (I can't remember who said them, but
> they are worth repeating).
> The first one is the one also mentioned in the JEP, using namespaces you
> can reduce the size of the acknowledgements to <ack:a/>.
> Secondly, the overhead of <ack:a/> vs. " " or "a", and even acking vs.
> no acking is often small in network terms, because (due to the small
> size) the extra data will often "piggyback" on other packets (the TCP
> ACK, or other data that happens to be going that way). Only if you have
> a unidirectional socket (such as with S2S) it could create many extra
> packets if there's no data going the other way. But then the difference
> between <ack:a/> and "a" is still small.
> I'm bringing that up because if I remember correctly that was the reason
> to go with xml based acking and not my proposal at the time, it might
> still make sense. It did to me at the time :) Using whitespaces seemed
> like a bad idea because they're already in use, but back then use of
> <stream:features> wasn't as wide spread as it is now (seems fine to
> require it now). I admit I don't know if there's any different from an
> XML standards point of view between white space data or character data
> such as "a", instinctivly I'd say only when canonicalizing XML but maybe
> there's a real XML expert around? :) Or is it that XMPP CORE explicitly
> allows this because of the whitespace pinging many clients already did?

Whitespace is allowed over an XML stream between stanzas. Character data
is not (mixed schemas? ick). The stanza acking proposal introduces at
least one new top-level element, and that is a non-starter because it
would break things. To do XML we'd need to send things like this:

<message to='client' from='server'><a xmlns='jabber:ack'/></message>

Or so it seems to me right now.


Version: GnuPG v1.4.1 (Darwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 3641 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://mail.jabber.org/pipermail/standards/attachments/20060425/72652448/attachment.bin>

More information about the Standards mailing list