Thread (4 messages) 4 messages, 2 authors, 2011-09-22

TCP_DELACK_MIN vs TCP_ATO_MIN

From: Daniel Baluta <hidden>
Date: 2011-09-21 12:59:54
Also in: kernelnewbies

Hello,

RFC2582, Section 4.2 says:

"... an ACK SHOULD be generated for at least every second
full-sized segment, and MUST be generated within 500 ms
of the arrival of the first unacknowledged packet. ".


I guess that the delayed ACK timeout is computed in tcp_send_delayed_ack:

===
void tcp_send_delayed_ack(struct sock *sk)
{
        struct inet_connection_sock *icsk = inet_csk(sk);
        int ato = icsk->icsk_ack.ato;
        unsigned long timeout;

       /* .... */
        /* Stay within the limit we were given */
        timeout = jiffies + ato;
====


Can one explain what is the difference between TCP_DELACK_MIN and
TCP_ATO_MIN, specifically if the timeout (ato) is always in the interval
[TCP_DELACK_MIN, TCP_DELACK_MAX] ?

I want to make the delayed ack timeout configurable as some guys tried
here [1],
so for this reason I plan to make TCP_DELACK_MIN and TCP_DELACK_MAX
tunable via proc entries.

thanks,
Daniel.

[1] http://kerneltrap.org/mailarchive/linux-netdev/2008/9/9/3245554
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help