[jdev] Re: Presence packets bottleneck on huge rosters

Stephen Marquard scm at marquard.net
Thu Dec 9 08:33:55 CST 2004


Bresler, Jonathan wrote:
> One practical consequence for the XML stream is a separate <presence>
> Stanza is sent from the server to the client for each contact.  I have
> To check the karma code to see if the client connection's karma is charged
> For this traffic.  
> 
> 500 contacts means 500 <presence> stanzas, each one being something like 
> 150 bytes longs (payload, not including Ethernet, TCP and IP headers, 
> call it 200 bytes in round numbers).  So we get 5 contacts per 1kB on the 
> Wire or 100kB, which is 800kb on the wire.  Rather heavy duty. ;(  But there
> Does not appear to be any choice at this time....so dribbling the presence
> Data out to the client over some time period appears to be desireable.

Although 1 stanza is not necessarily 1 ethernet packet, and 800KB is not 
much on a LAN for example.

Do you have a real-life application in mind where such large rosters 
would be used with frequent enough login/logouts to be an issue?

Another possibility for addressing this case efficiently is stream 
compression - http://www.jabber.org/jeps/jep-0138.html

Regards
Stephen




More information about the JDev mailing list