Why autotuning may slow your computer down

First off, how does the Receive Windows Auto-Tuning work?    This feature basically lets Windows monitor the routing conditions in your network.   Conditions can be things such as application delay, network delay or actual bandwidth.  This allows connections to be configured by Windows thus scaling the TCP receive window to take advantage of your network performance.

This seems like it could be a great feature.   Here’s the catch.  If the Receive Windows Auto-Tuning feature is enabled for your HTTP traffic, some older firewalls, routers or even older operating systems may cause a slow data transfer — even if the devices are beyond your organizations, WAN, LAN or network.  Microsoft notes that this issue (latency) will remain.

So how can you disable this feature?  Open a command prompt as an administrator.  Type the following in the open window:

netsh interface tcp set global autotuninglevel=disabled

 

Autotuning

Reboot your computer

 

 

 

 

Link – Although this says Vista, disabling Autotuning may improve performance – even on Windows 7

How can I improve my internet performance with DNS information in my router?

There are dozens of tips on the web from MTU size to tweaking network card or wireless router alternate firmware.  What isn’t covered a lot is DNS queries.   DNS or Domain Name Services is used when you type the ‘friendly’ name (url) into your address bar of your browser.   The friendly name goes out onto the worldwide web to your ISPs DNS servers where it is changed to an IP address and routing then takes place.

How can you improve this?  Here’s some ideas.  When programming your router, you can statically define the DNS servers in your router and disable DNS Relay.  This will cause the dhcp leases to contain the hard coded ip addresses of the DNS servers you typed in instead of the router’s  ip address (leaving DNS relay on, your router will act as the go between).   With several combinations, which is best?

If your router has a SPI firewall, the impact of this is that the stateful-packet-inspection (SPI) table will have to track additional DNS(Port:53)  streams as each individual  device (tablet, computer, smartphone, smart TV) makes its unique request (websites typed into the address bar) directly to the DNS servers on the Internet.

You can program your router with several options.  Here are a few combinations.

DNS Relay on Your router DNS Servers entered into the
router
Pros Cons
Enabled Yes Computers receive fixed local DNS server number. Your router can immediately proxy dns queries and you can travel directly to your site.  Use your router’s IP as the first DNS address and a public DNS as the secondary.  Fastest DNS servers (secondary) could change (rare) and become out of date
Enabled No Computers receive fixed local DNS server. Router receives update-to-date DNS entries. Some small delay in  querying a website
Disabled Yes Computers receive fixed DNS servers. DNS queries are now part of your standard traffic and are inspected by the SPI engine. Can be slower.
Disabled No Computers receive your ISP’s update-to-date dns server entries if known. Request pass through to outside DNS servers and can be slower

If you need to check your DNS entries after you save your router’s settings, in Windows, go to a command prompt and type ipconfig /all. Running Linux? Type ifconfig to get your IP address or cat /etc/resolv.conf  to get your ip address and dns  information after you program and reboot your router.

Great Networking tools to analyze your network

ICSI Netalyzer is an excellent online tool that measures over 100 areas of your internet connectivity.  Use this to troubleshoot your internet connectivity.  Hosted by the University of Berkeley, this online tool is a must have when optimizing your network.  http://netalyzr.icsi.berkeley.edu/

This slideshow requires JavaScript.

NANO Project – “NANO identifies performance degradations that result from network neutrality violation by an Internet service provider (ISP), such as, differential treatment of specific classes of applications, users, or destinations by the ISP.”   http://www.gtnoise.net/nano/   (Currently available for Linux only – Windows coming soon)

HostView -“HostView is an end-host measuring tool to collect network performance data annotated with users’ perceived quality of the network. Traces collected with HostView will be invaluable for us to design algorithms that automatically diagnose performance problems in individual applications as perceived by end-users.  (Currently for Mac)  http://cmon.lip6.fr/EMD/Download.html

HomeNet Profiler – gives a look at your network around your home – results are uploaded and a private link is given (research only)  http://cmon.lip6.fr/hnp/pages/home

Test your ISP’s Quality

Almost everyone is familiar with testing their internet for speed.  With sites such as   Testmy.net, a true internet speed test and Speedtest.net, you can see how fast your internet is (download and upload speeds) performing.

But what about quality?   Here’s a site that will test your ping response time and jitter. Pingtest.net

Quality

Find and set your optimal MTU setting to improve your connectivity

MTU Ping Test

Want to determine the optimal MTU for your ISP connection?

  1. Go to Search or Run (Windows 7 vs. XP)
  2. Type in cmd. Hit the enter. A Command prompt window will open.
  3. Type ping http://www.speedtest.net -f -l 1500 and hit Enter (or a website of your choice).

  1. Look at your results.  Does the packet need to be fragmented?  Try lowering the size of the packet in increments of 8 to 10) until you have a packet size that does not fragment.

  1. Once the packets are not fragmented, begin increasing the packet size from the number you find in small increments until you find the largest size that does not fragment.  You will need to add 28 to that number  for IP/ICMP headers to get the optimal MTU setting.
  2. If you get 1410 as the largest packet size, add 28 to that number and 1438 would be your optimal MTU setting.
  3. To change the number, use TCP Optimizer.

Remember to change all computers on the network including the router’s MTU setting.

Reset TCP/IP – Network Troubleshooting

  • Click Start Menu, type cmd in the search box or run box ( Hold down Ctrl + Shift and hit Enter)Type the following commands, each followed by pressing enter.
  • ipconfig /flushdns
  • nbtstat -R
  • nbtstat -RR
  • netsh int ip reset all
  • netsh int ipv4 reset
  • netsh winsock reset catalog
This will rebuild the tcp/ip protocol stack (fully)

After rebooting, run a command prompt as an administrator and type:

  • netsh interface tcp set global autotuninglevel=disabled

Reboot

See also -
Speed up Windows 7 and Vista internet connections

Analyze your internet connection – then optimize it!

Want an optimal connection to the internet?  Speedguide has an excellent analyzer.  Remember don’t just use a benchmark to analyzer your connection.   It is good to look at all aspects of your connection.

You can run their analyzer and see if you need to tweak your connection.   Remember set a control by using a benchmark such as before you begin then tweak with TCP Optimizer (Note: I have Verizon 3g in the middle of nowhere):

http://speedtest.net/

http://reviews.cnet.com/internet-speed-test/

http://www.bandwidthplace.com/


Then run:

http://www.speedguide.net/analyzer.php
Example (above)

After reading the recommendations, use TCP Optimizer .  Windows 7 users must right click and run as administrator after saving this file.  This file runs stand alone and is not installed.   TCP Optimizer makes a backup that you can restore if you forget your settings.

 

 

Your internet is not as fast as you think

Many people get megabits and megabytes confused.  Typically internet service provides provide download speeds that are listed as Mbps (Megabits).  So how fast are the speeds?

ISP Speeds

  • 1 megabit is about .125 megabytes per second
  • 3 megabits is roughly .375 megabytes per second
  • 6 megabits is .75 megabytes per second
  • 10 is 1.250 megabytes per second
  • 20 is 2.5 megabytes per second

Time to download 1 Gigabyte of data theoretically = 6.82 minutes  (realistically >15+ minutes)

LAN

  • 100 megabit network is 12.5 megabytes per second
  • 1000 megabit network (1Gbps) is roughly 125 megabytes per second

 

Wireless

  • 802.11b  11 megabit connection is 1.375 megabytes per second connection
  • 802.11g  54 megabit connection is 6.75 megabytes per second connection
  • 802.11n  540 megabit rated (100-300+ is typical)  theoretically – 67.5 megabytes

3G Networks

  • 3G = 3.1 megabits or .3875 megabytes per second

So my speed is above?  Well, nope.  Throughput is roughly 66% of the speed. (Average rate of successful packet delivery.)

Improve Your Internet Speed

Over the years the QoS settings under your network settings have been controversial.     I never really tried it until tonight.  To disable QoS, don’t just uncheck it under the network adapter properties.

To change how much bandwidth is reserved for QoS (the default is 20% of your total bandwidth), do the following:

1. Log in as “Administrator” (Administrator Only).
2. Navigate to START-Run (or Search in Windows 7) and type: gpedit.msc   Hit Enter.


3. Navigate to Local Computer Policy – Administrative Templates – Network – QOS Packet Scheduler


4. In the right pane, double-click the limit reservable bandwidth setting
5. On the setting tab, check the enabled setting.
6. In the  “Bandwidth limit %”, change the value to read 0 (the numeric value of zero)


7. Click OK, close gpedit.msc

Reboot your computer.

If you disable this setting (by clicking disable) or do not configure it, the system uses the default value of 20 percent of the connection.

Before

After

At only .5 Mb/s down, it’s a little improvement that goes a long way.

Here’s another way to improve your networking even more.  Link

The above tips are for Professional or greater versions.   You can type services.msc and disable QoS in the Home Edition.