powered by Jive Software

How to let openfire STOP respecting packets order


#1

We have an app that using heavily custom IQ, we used that to transfer all type of data form simple call to loading big binary files. Now if we make 2 calls , the first will response with huge payload (1MB+) and the second with a tiny payload (<1KB) , openfire/smack, seem to always maintain the order of packets and we always get the first payload first, this is a good thing for a chat app, but not in our case, we want the lite stuff to pass. So my questions are :

  1. Is it really true that Openfire or Smack have a packet order mechanism ?
  2. if Q 1 is true, how to disable that
  3. What is my other options, should we open extra connection to retrieve the heavy packets ?

Thanks in advance !


#2

try with async stanza listener with smack.

which type of stanza listener you have added.


#3
  1. The XMPP protocol (https://xmpp.org/rfcs/rfc3920.html#rules) actually says “Compliant server implementations MUST ensure in-order processing of XML stanzas between any two entities”, so yes, Openfire does have a packer order mechanism.

  2. You can’t.

  3. Yes, I’d suggest two connections, each with a different resource, one for the large packets.

Greg