How to Quicken TCP Re-transmission?
Joshua Blanton
jblanton at masaka.cs.ohiou.edu
Mon May 22 15:25:32 UTC 2006
mag at intron.ac wrote:
> Actually, I want to configure APACHE to distribute files (several
> mega bytes large each) to any Internet visitor.
>
> My server (host A) is served by a non-profitable Internet operator
> in China. But most of Chinese Internet users (host B) are served by two
> commercial Internet operators.
> Between the non-profitable Internet operator and each commercial
> Internet operator there is an about 2 Gbps interconnection. But China
> has a large population, and those interconnections are heavily loaded.
Unfortunately, if your loss is caused by congestion, there really
isn't anything you can do (ethically) to make it run faster. Any
changes that you would make to your TCP stack would result in
reducing usable bandwidth for every other user of the network. It
really isn't fair to make any changes at all...
> I obtained the result "packet loss 30% and return delay 60 ms"
> just by "ping -c 100 -s 1472 xxx.xxx.xxx.xxx". If an IP packet is
> smaller as 20+64=84 bytes (PING's default), it will has much higher
> possibility to pass the interconnections between Internet operators.
Now, it is possible that your loss isn't really 30% - if these links
are as overloaded as you say, I'm sure ICMP Echo packets are dropped
with much more frequency than other packets, to help reduce
congestion.
> It seems that FreeBSD 6.1 kernel enables SACK (RFC 2018) by default
> (net.inet.tcp.sack.enable: 1). And I keep it untouched.
>
> Since I want configure general WWW service, probably I could not
> request visitors to configure SCPS. It is really robust against lossy
> data link such as communication between satellites and planets.
> But above all, most of Internet users haven't enough computer skills.
>
> I would like to understand how FreeBSD runs the TCP re-transmission
> timer, especially its dynamic self-tuning mechanism. I am trying to
> read /usr/src/sys/netinet/tcp* .
> Should I really modify the value of "TCPTV_REXMTMAX" defined in
> "/usr/src/sys/netinet/tcp_timer.h" ?
I think perhaps the only solution is to learn to live with the slow
upload times, or find a provider that can guarantee better service.
--jtb
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://lists.freebsd.org/pipermail/freebsd-net/attachments/20060522/28cc48d1/attachment.pgp
More information about the freebsd-net
mailing list