[e2e] query reg improving TCP performane

Lachlan Andrew lachlan.andrew at gmail.com
Thu Jul 5 08:59:09 PDT 2007


On 05/07/07, query <query.cdac at gmail.com> wrote:
>   I was doing some Bandwidth measurement test on a 100 mbs link with a RTT
> of about 70ms.
>   Based on that, I calculated the BDP as follows.
>           BDP = Bandwidth * RTT
>               = 921600 bytes
>    I did the following adjustments. I increased the above calculated BDP by
> nearly
>    half of the value . The TCP settings now look like this.
>            /proc/sys/net/core/rmem_max  175636
>            /proc/sys/net/core/wmem_max  175636
>            /proc/sys/net/ipv4/tcp_rmem      4096    87380
> 175636
>            /proc/sys/net/ipv4/tcp_wmem      4096    87380
> 175636
>     After these settings , I find the link utilisation to be nearly 95 mbs.
>     According to many papers that I read , I found that the BDP should be
> equal
>     to the product of Bandwidth * RTT .

The papers probably said that *router* buffers need to equal the
bandwidth*RTT.  You are adjusting the sender/receiver buffers.  These
need to be significantly larger, as you have found.

In order to allow retransmissions, the sender buffer needs to be able
to store all "packets in flight", which include both those in the in
the router buffers and those "on the wire" (that is, in the nominal
RTT of the link).

In order to be able to provide in-order delivery, the receiver buffer
needs to be able to hold even more packets.  If a packet is lost, it
will receive an entire RTT (plus router buffer) worth of data before
the first retransmission of that packet will arrive.  If the first
retransmission is also lost, then it will need to store yet another
RTT worth of data.

The general rule-of-thumb for Reno is that the send buffer should be
at least twice the bandwidth*RTT.  For BIC is is probably reduced to
about 120% of the BDP (because it reduces its window by a smaller
factor when there is a loss).  The receive buffer should still be at
least equal to the BDP plus the router buffer.

I hope this help,

Lachlan Andrew  Dept of Computer Science, Caltech
1200 E California Blvd, Mail Code 256-80, Pasadena CA 91125, USA
Phone: +1 (626) 395-8820    Fax: +1 (626) 568-3603

More information about the end2end-interest mailing list