[sctp-dev] How to reduce time between message received and SCTPSACK sent
Christopher Hegarty - Sun Microsystems Ireland
Christopher.Hegarty at Sun.COM
Thu Oct 29 03:40:29 PDT 2009
Hi Sandarenu,
I think what you are seeing is the delayed acknowledgment algorithm that
is specified by the SCTP RFC section 6.2 [1]. The guidelines say that an
acknowledgment should be generated for at least every second packet
received, and SHOULD be generated within 200 ms of the arrival of any
unacknowledged DATA chunk.
I assume you are using LKSCTP on Linux. If so, you can try changing the
value of /proc/sys/net/sctp/sack_timeout. This value controls the
delayed SACK timeout, and the default value is 200 milliseconds.
However, this is a global setting and will effect all SCTP sockets.
There is a specific socket option that is available at the native level
that can set the delayed SACK timeout per socket/association. It might
be useful to expose this to the Java API. Is this something that you
think would be useful?
-Chris.
[1] http://www.ietf.org/rfc/rfc2960.txt
On 29/10/2009 08:35, Chathurika Sandarenu wrote:
> Thanks for replying Dennis,
>
> I tested with 2 suggestions you made, but still it take 200ms to send sack.
> I think there is some kind of configuration, since all the time it take
> 200ms. Couldn't find any clue on this..... :(
>
> On Thu, Oct 29, 2009 at 11:25 AM, Dennis Hjort <dennis.hjort at ericsson.com>wrote:
>
>> Hi,
>>
>> I'm not really sure if it helps you in your case, but when we've done some
>> tests with small packetsizes, we needed to set the
>>
>> SctpSocketOption <http://openjdk.java.net/projects/sctp/javadoc/b10/com/sun/nio/sctp/SctpSocketOption.html><Boolean <http://download.java.net/jdk7/docs/api/java/lang/Boolean.html?is-external=true>> *SCTP_NODELAY *
>>
>> to true, disabling Nagle Algorithm, to boost performance, as we mainly use
>> SCTP for control-signalling, thus using several small
>> packets spread over time, and the Nagle Algorithm wants to pack several
>> chunks together to improve performance, ie not useful in our case.
>>
>> // D
>>
>> ------------------------------
>> *From:* sctp-dev-bounces at openjdk.java.net [mailto:
>> sctp-dev-bounces at openjdk.java.net] *On Behalf Of *Chathurika Sandarenu
>> *Sent:* den 29 oktober 2009 06:26
>> *To:* sctp-dev at openjdk.java.net
>> *Subject:* [sctp-dev] How to reduce time between message received and
>> SCTPSACK sent
>>
>> Hi,
>>
>> I'm using OpenJDK SCTP to develop sigtran application. I have a small issue
>> SCTP SACK message. When a data message is received at SCTP
>> it acknowledges that with a SACK, the issue I'm having is that there is a
>> always 200ms delay between request receiving and SACK sending.
>>
>> *Is there a way I can reduce this delay?*
>>
>> I've attached the traces with this mail.
>>
>> Thanks in advance.
>>
>> regards,
>> Sandarenu.
>>
>>
>
More information about the sctp-dev
mailing list