Our client, SoapBox Communicator, makes extensive use of IBB.

We also went with an IQ based IBB mechanism that uses flow control. 

We allow the sender to have a configurable number of IQ Packets to be
"in the network" (e.g. the sender hasn't yet gotten a response) at a
time, and when that limit is reached, no more data is sent until a
response is received. 

This made it preferable to the message based bytestreams, which had some
major congestion issues around them, especially if the two endpoints
were on very asymmetric connections. 

The IQ Packet we use inherits directly from an IQSetPacket, and looks
more-or-less like:

<iq type=set ...> 
  <data sequence='[Some Integer Value]' 
          streamid='stream this packet is for'>
        Data Being Sent
  </data>
</iq> 

--
Chris Mullins

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On
Behalf Of Peter Saint-Andre
Sent: Thursday, July 19, 2007 7:58 AM
To: XMPP Extension Discussion List
Subject: Re: [Standards] XEP-0047 (Flow rate control for IBB)

William Voorsluys wrote:
> Hello,
> 
>> > But, according to the XEP, it is not allowed to include any inner
XML
>> > stanza on the <iq> of type RESULT used as ACK:
>> >
>> > <iq from='[EMAIL PROTECTED]/balcony'
to='[EMAIL PROTECTED]/orchard'
>> > type='result' id='ibb1'/>
>>
>> That's just an example.
>> The RFC allows zero or one child element in IQ result stanzas.
>> This would work:
>>
>> <iq from='[EMAIL PROTECTED]/balcony' to='[EMAIL PROTECTED]/orchard'
>>     type='result' id='ibb1'>
>>   <data xmlns='http://jabber.org/protocol/ibb' sid='mySID' seq='0'>
>> </iq>
> 
> Well, I don't think that XEP-0047 would allow such a response. It is
> not clear in the XEP that a client should reply including a <data>
> element preserving 'sid' and 'seq'. So, most clients wouldn't do that,
> preventing our implementation to interoperate.
> Am I right?

AFAIK, few clients have implemented IBB. We could definitely update the
spec to reflect this kind of acking, which makes a lot of sense IMHO.

Justin, what say you?

/psa

Reply via email to