Notes based on http://www.psc.edu/networking/perf_tune.html
------------------------------
1. Windows 98
-----------
To install the mentioned keys in the registry in not enough!
You have to install 1 additional key: 
        DefaultRcvWindow
HKLM\system\currentcontrolset\services\VXD\MSTCP
DefaultRcvWindow is a string type and the value describes the default 
receive windowsize for the TCP stack. Otherwise the windowsize has to be
programmed in apps with setsockopt.
2. Linux Kernel > 2.1.100
-----------------
A lot of enhancements for TCP are avaiable in the new kernels >  2.1.00 and 
I hope the stable release 2.2.x will come soon.
With the help of Alan Cox  <[email protected]> I could tune the TCP
stack for using it in satellite enviroment.
2.1. tuning with the sysctl interface
-------------------------
There is no sysctl apllication for changing values, but  you can change the
values very easy with a editor like vi.
- tuning the default and maximum window size:
/proc/sys/net/core/rmem_default   - default receice window
/proc/sys/net/core/rmem_max       - maximum receive window
/proc/sys/net/core/wmem_default  - default send window 
/proc/sys/net/core/wmem_max      - maximum send window
In /proc/sys/net/ipv4/ you will find some other possibilities to tune TCP:
        tcp_timestamps
        tcp_windowscaling
        tcp_sack 
        ...
You will find a short description in 
<LINUX-SOURCE_DIR>/Documentation/networking/ip-sysctl.txt
            
2.2 tuning at compile time
------------------
All the above values are set default by a header file in the directory:
/<LINUX-SOURCE-DIR>/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     65535
#define SK_RMEM_MAX      65535
#else
#define SK_WMEM_MAX     32767
#define SK_RMEM_MAX     32767
#endif/*
in <LINUX-SOURCE-DIR>/include/net
        tcp.h
you can change the MAX-WINDOW value
 * Never offer a window over 32767 without using window scaling. Some
 * poor stacks do signed 16bit maths!
 */
#define MAX_WINDOW      32767
#define MIN_WINDOW      2048
With the tuned TCP stacks it was possible to get a maximum throughput 
between 1.5 - 1.8 Mbit/s via a 2Mbit/s satellite link, measured wih netperf.
with regards
Olaf Menzel
---- (:-) Olaf Menzel <[email protected]> (:-) http://www.gmd.de (:-) (:-) German National Research Centre of Information Technology (:-) (:-) Schloss Birlinghoven, 53754 Sankt Augustin, Germany (:-) (:-) Tel.: +49 2241 14 2334 Fax: +49 2241 14 1050 (:-)
This archive was generated by hypermail 2b29 : Mon Feb 14 2000 - 16:14:45 EST