The Broadband Guide
SG
search advanced

Windows 9x/ME Registry Tweaks

2001-03-31 (updated: 2009-12-08) by
Tags: , , , , , , , , , ,

Different Network protocols benefit from different Network settings in the Windows Registry. The optimal Registry settings for broadband Internet connections are somewhat different than the Windows defaults. Windows is somewhat optimized for dialup, as well as Ethernet (high speed / low latency), however that isn't the case with Cable modems, DSL, Satellite, etc.

Below you will find OS specific information on how to optimize the Registry for broadband, which assumes some proficiency in customizing Windows. If you don't feel comfortable with editing the Registry, please visit our Downloads Section for ready to use patches and programs that can assist you in setting the optimal values in the Windows Registry automatically.

  

Recommended settings for Windows 9x

Since the introduction of Windows 98, MS has added support for RFC1323 ( the 'DefaultRcvWindow' has a maximum value of 2^30 rather than 2^16 - that is up to 1 GB instead of 64 KBytes limit), support for Selective Acknowledgments (SACK), Fast Retransmission and Fast Recovery.

Below is a list of the Registry setting and values we recommend for residential broadband connections.

Registry Key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VxD\MSTCP
Value Name: DefaultRcvWindow
Value Type: String Value
Value Data: 64240
Details:

has to be a multiple of MSS for best results, i.e. (MaxMTU-40) x number... Best settings to try with MSS=1460 are 64240, 46720 and 23360, in that order


Registry Key:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans\000n
(Where "000n" is your TCP / IP protocol. It contains "TCP / IP" assigned to the "DriverDesc" Value)
 

Value Name: MaxMTU
Value Type: String Value
Value Data: 1500
Details: If you're using DSL and your ISP has implemented PPPoE, you should set MaxMTU to 1492 or less.

Registry Key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VxD\MSTCP
Value Name: DefaultTTL
Value Type: String Value
Value Data: 64
Details: range 1-255, use any number between 32 and 128

Registry Key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VxD\MSTCP
Value Name: PMTUDiscovery
Value Type: String Value
Value Data: 1
Details: Boolean vlue, 0-false or 1-true. Many connections perform better with this entry at 1, however, if you prefer to set your upstream to send fixed 1500 packets, you might want to use 0 instead. When set at 1, establishing connections and initial transfer speed might slow down a bit, however you will get better throughput if somewhere in the path large packets need to be fragmented.

Registry Key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VxD\MSTCP
Value Name: PMTUBlackHoleDetect
Value Type: String Value
Value Data: 0
Details: zero for optimal performance

Registry Key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VxD\MSTCP
Value Name: Tcp1323Opts
Value Type: String Value
Value Data: 1
Details: The possible settings are 0 - No Windowscaling and Timestamp Options, 1 - Window scaling but no Timestamp options, 3 - Window scaling and Time stamp options. The value is documented in RFC 1323. According to Microsoft, Tcp1323Opts should be a DWORD, rather than a string value, however seems that the documentation is incorrect and a string value is necessary to enable large RWIN suppert.

Registry Key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VxD\MSTCP
Value Name: SackOpts
Value Type: String Value
Value Data: 1
Details: Possible settings are 0 - No Sack options or 1 - Sack Option enabled. Selective Acknowledgements are documented in RFC 2018

Registry Key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VXD\MSTCP\Parameters
Value Name: MaxDupAcks
Value Type: DWORD Value
Value Data: 2
Details: taking integer values from 2 to N

 

  User Reviews/Comments:
    rate:
   avg:
by anonymous - 2007-10-05 16:00
INCREASED DSL SPEED FROM 983MB/S to 2410MB/S !!!
(Thinkpad 600e w98se PII/300Mhz)
by Stu33 - 2008-07-03 17:52
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans\000n

I think there may be an error in the Win9x Registry Tweak article for the above key. In my 98SE, at least, an entry for MaxMTU in this key does not appear to work, and does not show in TCP-Optimizer. When I changed it to IPMTU, as it already was in the entry for my Dial-Up Adapter, it does display in Optimizer.

Otherwise, a great article and most helpful to this newly escaped denizen of the dial-up world.

Stu 33
News Glossary of Terms FAQs Polls Cool Links SpeedGuide Teams SG Premium Services SG Gear Store
Registry Tweaks Broadband Tools Downloads/Patches Broadband Hardware SG Ports Database Security Default Passwords User Stories
Broadband Routers Wireless Firewalls / VPNs Software Hardware User Reviews
Broadband Security Editorials General User Articles Quick Reference
Broadband Forums General Discussions
Advertising Awards Link to us Server Statistics Helping SG About