&My::Web::footer call is deprecated now, use just: exit;
[www.jankratochvil.net.git] / project / tcp_rto / Index.pm
1 # $Id$
2 # Main page of 'My::Project::tcp_rto'
3 # Copyright (C) 2003-2005 Jan Kratochvil <project-www.jankratochvil.net@jankratochvil.net>
4
5 # This program is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; exactly version 2 of June 1991 is required
8
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 # GNU General Public License for more details.
13
14 # You should have received a copy of the GNU General Public License
15 # along with this program; if not, write to the Free Software
16 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
17
18
19 package project::tcp_rto::Index;
20 require 5.6.0;  # at least 'use warnings;' but we need some 5.6.0+ modules anyway
21 our $VERSION=do { my @r=(q$Revision$=~/\d+/g); sprintf "%d.".("%03d"x$#r),@r; };
22 our $CVS_ID=q$Id$;
23 use strict;
24 use warnings;
25
26 use My::Web;
27 Wuse 'project::Lib';
28
29
30 our @ListItem=(
31                 "name"=>"tcp_rto",
32                 "platform"=>"unixuser",
33                 "trivia"=>1,
34                 "priority"=>330,
35                 "download-Linux kernel 2.2.17 patch"=>"linux-2.2.17-tcp_rto-1.diff",
36                 "download-Linux kernel 2.4.16 patch"=>"linux-2.4.16-tcp_rto-1.diff",
37                 "summary"=>"Linux kernel maximal TCP round-trip-time patch",
38                 "license"=>"GPL",
39                 "maintenance"=>"ready",
40                 "language"=>"C patch",
41                 "description"=><<"HERE",
42 <p>Solve your problems with network connection dropping too much of your
43 packets. It forces Linux kernel to insist repeating the packages to prevent
44 slowdown of the TCP connection up to its unusable state.</p>
45 HERE
46                 );
47
48 sub handler
49 {
50 project::Lib->init();
51
52
53 print <<"HERE";
54 <p>This patch can solve your problems if you have network connection dropping too much
55 packets. In standard case the Linux kernel will correctly increase our round-trip-time
56 of connection slowing the transfer rate up to the unusable state.</p>
57 <p>After applying this patch you can set your maximal round-trip-time in file
58 &quot;<b>/proc/sys/net/ipv4/tcp_rto_max</b>&quot;, it is expressed in <tt>Hz</tt>
59 units (<tt>100-per-second</tt> on <i>x86</i> platform). You may need also to enlarge
60 your maximal retry count in &quot;<b>/proc/sys/net/ipv4/tcp_retries2</b>&quot;,
61 otherwise <b>your</b> machine will reject the connection as it will have to retry
62 the packets more than in sane states.</p>
63 <p style="color: red;">Please use this feature very carefully! You are violating
64 <tt>RFC</tt> standards and you can get your network administrators to be very angry!</p>
65 HERE
66
67
68 exit;
69 }
70 1;