[jdev] Re: Presence packets bottleneck on huge rosters

Richard Dobson richard at dobson-i.net
Thu Dec 9 08:44:01 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

Or maybe automatically using JEP-0033 to more efficiently distribute the 
presence updates to other servers using the bcc function?


More information about the JDev mailing list