Sun GlassFish Communications Server 2.0 Performance Tuning Guide

Communications Server Byte Buffers

This section provides some tips for configuring the SIP container. SIP message processing involves reading the message from the socket channel and parsing it to frame a valid SIP message.Communications Server receives traffic from Call Session Control Function (CSCF), which is spread across few TCP socket channels.

Communications Server uses the Grizzly socket connector, which associates a buffer with every thread.

Depending on the operating system you are using, you can configure these buffers appropriately, to ensure that they do not receive too little or too much traffic. On SUSE Linux, you can configure the size of the TCP buffer (to 67 MB, for example) by using the following command:

sysctl -w net.ipv4.tcp_mem="67108864 67108864 67108864"

Communications Server also provides the header-buffer-length-in-bytes attribute for setting the buffer size, which you can set using the following command:

asadmin set config.sip-service.request-processing.header-buffer-length-in-bytes=8192

The byte buffers that are used to send responses and new requests are picked up from a pool. You can configure the size of the byte buffers in this pool by using the send-buffer-size-in-bytes attribute, by using the following command:

asadmin set config.sip-service.connection-pool.send-buffer-size-in-bytes=8192