Windows 7, download speeds drop to 0 kb/s and the download has to be restarted

Solution 1:

It sounds less like an issue with the SSD... and more likely an issue with your ISP. I ran into similar issues and discovered it was an issue with the MTU my ISP had. I wrote a rant on the subject a while ago... but here's the general steps to diagnose/resolve:

First... look at your current MTU setting: Open a command prompt with Administrative privledges and then run the command as follows:

netsh interface ipv4 show subinterfaces

You'll see something like:

   MTU  MediaSenseState   Bytes In  Bytes Out  Interface
------  ---------------  ---------  ---------  -------------
  1500                1  8864896253  1116506364  Local Area Connection

With that knowledge you'll note that your MTU is currently set to 1500. If that's what your ISP works with... you should be able to ping sites like msn.com or google.com with a packet size of 1500 without fragmenting the packet.

ping www.google.com -f -l 1500

if you see an error message like: Packet needs to be fragmented but DF set.

You know you need to go smaller. So, subtract 8 & try again... until you find a valid MTU. Once you find the one that gives you a reply without complaining about needing to be fragmented... it's time to change your MTU. Back to the admin command prompt... and we do this: (replace 1464 with whatever you came up with)

netsh interface ipv4 set subinterface "Local Area Connection" mtu=1464 store=persistent

If you just want to test this out... without committing changes... skip the store=persistent bit... and a reboot will set it back the way it was. You can also manually set it back to whatever you started with...

I don't know if that will work for everyone... but it "worked for me" (c)

Solution 2:

I encountered these weird behaviour back with Windows Vista, and more recently with Windows Server 2012 R2 and Windows 8.

Turns out that the TCP global auto-tuning feature introduced back in Windows Vista does not always perform a good job of being compatible with existing network environment. You may want to try disabling global auto-tuning in an administrator command prompt.

netsh interface tcp set global autotuning=disabled