On Thu, Mar 19, 2009 at 7:49 PM, XMPP Extensions Editor <edi...@xmpp.org> wrote:
> Version 0.6 of XEP-0198 (Stream Management) has been released.
>
> Abstract: This specification defines an XMPP protocol extension for active 
> management of an XML stream between two XMPP entities, including features for 
> stanza acknowledgements, pings, and stream resumption.

I see one issue for perfect stream reliability: stanza suplication. An example:

[C]<message/>
[C]<r u="1"/>

[S]<a h="1/>

[C]<message/>
[C]<r u="2"/>

---- server sends back <a h="2"/> but the connection dies ---

---- client resumes the stream and the last ack is 1 ---

[C]<message/> <-- this packet is duplicated since the server processes
it as it arrives, without awaiting for the <r/>
[C]<r u="2"/>

This is a simple case and it can be avoided with some heuristic, but
there are many others also when we force an ack for each packet, since
the stanza the following ack aren't atomically processed.

-- 
Fabio Forno, Ph.D.
Bluendo srl http://www.bluendo.com
jabber id: f...@jabber.bluendo.com

Reply via email to