Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: TCP tuning



Paul Lacatus wrote:

>     Has somebody made a TCP tuning on a EON DVB conection ? I want to
> share some ideeas about .
>
>     Paul

I did some experiments. I followed the instructions for Linux in
http://www.psc.edu./networking/perf_tune.html . I am using SuSE 6.2 with
kernel upgraded to 2.2.14.

The main point is to change your kernel configuration to allow for large
windows. It is in the Networking Section, option "IP: Allow large
windows".

Then, you can change some parameters in two kernel files,
/usr/src/linux/include/net/tcp.h and
/usr/scr/linux/include/linux/skbuff.h .

After that, compile and run the kernel.

With the examples below I got (on silent Internet hours) 2
Megabits/second in 4 parallel ftp downloads on transponder 114.
The parameters used in the example are not really tuned, they maybe set
at too high values. I have not enough TCP and IP knowledge yet to
calculate or argument about the right ones.

Frank.

/usr/src/linux/include/net/tcp.h
/*
/* Never offer a window over 32767 without using window scaling. Some
 * poor stacks do signed 16bit maths!
 */
#define MAX_WINDOW 131071
#define MIN_WINDOW 2048
#define MAX_ACK_BACKLOG 4
#define MAX_DELAY_ACK  4
#define TCP_WINDOW_DIFF 2048

/usr/scr/linux/include/linux/skbuff.h
/* These are just the default values. This is run time configurable.
 * FIXME: Probably the config option should go away. -- erics
 */
#ifdef CONFIG_SKB_LARGE
#define SK_WMEM_MAX 131071
#define SK_RMEM_MAX 131071
#else
#define SK_WMEM_MAX 65535
#define SK_RMEM_MAX 65535
#endif



Home | Main Index | Thread Index