[sctp-dev] How to reduce time between message received and SCTPSACK sent

Chathurika Sandarenu sandarenu at gmail.com
Thu Oct 29 05:01:25 PDT 2009


Hi Chris,

I changed the value of /proc/sys/net/sctp/sack_timeout to 50 and now sack is
sending after 50ms :).

Thanks for helping me to solve the issue......

regards,
Sandarenu.

On Thu, Oct 29, 2009 at 4:10 PM, Christopher Hegarty - Sun Microsystems
Ireland <Christopher.Hegarty at sun.com> wrote:

> 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.
>>>
>>>
>>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/sctp-dev/attachments/20091029/b065b04b/attachment.html 


More information about the sctp-dev mailing list