On 2006-11-02 23:16, Ronald Wiplinger wrote:
How can I test the bandwidth of my ADSL line? Try these guys:
http://cruise.ornl.gov:7123/ or possibly http://www.dslreports.com/tweaks (I personally prefer the ORNL site -- that is Oak Ridge National Labs, in Tennessee. It has a huge bandwidth, far more than your 12 Mb/s :-) ) If either of these tells you that you are getting only 3 Mb/s inbound, then you are getting only 3 Mb/s inbound. As others have noted, your provider can only give you a bandwidth measurement inside their own company. It is quite misleading, though, for them to imply that you should expect the same bandwidth from some external source. If they buy only a limited bandwidth from their uplink, then they can hardly provide the full advertised bandwidth to any of their customers at any time. One thing that might be limiting your measured incoming bandwidth is the size of your TCP receive windows. The default values in SuSE seem to be a "middle of the road" approach, but are not necessarily optimum for any real situation. I use the following values for a 5 Mb/s bandwidth: echo 87380 128000 174760 > /proc/sys/net/ipv4/tcp_rmem echo 174760 > /proc/sys/net/core/rmem_max echo 87830 > /proc/sys/net/core/rmem_default (the best place to put this sort of thing is in /etc/boot.local). With the default values, I usually only reach about 4 Mb/s (or less) out of the rated 5; with these, I get 4.58. I'm not much in the mood to try to tweak this any higher :-) While unlikely that you need it, a second thing you might try is traffic shaping on the outbound packets. If you are transmitting many packets (which are sent at the speed of your NIC), then you may saturate the internal buffer of the ADSL router (these things do have those, just like cable modems, do they not?). Possibly you don't need even as much of a bucket system as SuSEfirewall2 will build (and it really isn't very complicated), but if you do need to do traffic shaping, then anything is better than nothing. The explanation in the SuSEfirewall config file is quite straightforward -- the variable setting is just "device_name,speed_in_kbit/s".