[standards-jig] JEP-0047 (IBB) Updated

David Waite mass at akuma.org
Mon Apr 7 23:05:35 UTC 2003


Justin Karneges wrote:

>Since XMPP guarantees the order of packet delivery, there is not even the need 
>for a timestamp or a seq# or anything.  I was not aware of such a guarantee 
>until just a moment ago, when I chatted with Peter.
>
>Assuming we switch to messages, this is what I propose for the data packet 
>format:
>
>  <message to="joe at blow.com/Home" id="inband_2">
>    <x xmlns="http://jabber.org/protocol/ibb" sid="mySID">
>      <data>A1B2C3D4E5F6</data>
>    </x>
>  </message>
>
I would recommend keeping the sequence, since you do not have guaranteed 
delivery (i.e. things MUST arrive in the right order, but may have 
breaks in delivery.)

There are advantages to either message or iq - a message-based system 
generates less traffic overall, while an IQ system which waits for 
replies to previous requests could deal better with karma penalities 
(increase and decrease the time delay based on the time delay of the iq 
result).

With message traffic, this begins to look almost exactly like ZMODEM (at 
least to my untrained eyes :-)). You send all the data assuming that the 
other side is getting it all - indeed, they should for most of the time. 
Then, once the stream is requested to close, the recipient requests any 
packets it didn't receive by sequence for resend.

Note however that message stanzas now have delivery semantics defined 
that they will go to another resource if the resource specified becomes 
unavailable. This is something you may want to bring up on the XMPP list 
if you really want to use messages, as you will start spamming another 
resource which may not even support IBB with the remainder of some 
inband transfer.

-David Waite




More information about the Standards mailing list