Announcement

Collapse

New Sub-Forum

In an effort to help make sure there are appropriate categories for topics of discussion that are happening, there is now a sub-forum for databases and database programming under Special Interest groups. Please direct questions, etc., about this topic to that sub-forum moving forward. Thank you.
See more
See less

improving tcp transfer speeds

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • improving tcp transfer speeds

    Is your network speed improving?
    Maybe time to change some tcp settings.
    I found some good links.


    http://www.psc.edu/networking/projec...historical.php

    http://rdweb.cns.vt.edu/public/notes/win2k-tcpip.htm

    http://technet.microsoft.com/en-us/l.../bb726981.aspx

    I use mostly windows professional 2000 and i have been adjusting my tcp settings to achieve higher transfer rates.
    I have not found the perfect settings yet, i will post when i do.
    If your internet download rates are fast and you access fast servers, you definitely want to increase the top receive window.
    Off site locations where my mtu is set to 1492 due to dsl internet, i have adjusted my mtu from 1500 where i have a cable modem to 1492 to match the mtu of 1492 and i have a more stable and faster connection, so you may want to match on non vista systems the same for off site locations.
    but reading those articles above helps.
    Last edited by Paul Purvis; 7 Nov 2007, 11:18 PM.
    p purvis

  • #2
    by making the below changes on my windows professional 2000 computers,
    i have made significant improvements in transfer speeds and stabilization on internet transfers. i have not tested intranet connections but expect speed improvements as well.

    at one site, on a network with dsl modem with a pppoe connection to the internet, i setup the router with a mtu size of 1492 typical of dsl modems.

    do some speed test before and after changing. i use dslreports.com and go to the tools section under speed for speed test and tweak test to sometimes see values already set on the computer being tested.

    get your hands on the drtcp.exe program
    use drtcp.exe to set your network card to a mtu size of 1492 then exit the program.

    the below code should change your rwin, window scaling, and a few other changes in the registry under the tcp parameters section, see the listing.


    and change or create a registry setting in AFD/parameters section as well.
    you can use the windows progam regedit to make changes later.
    if you have not used the regedit program before, make sure you know what you are doing while using regedit or you could crash your system.
    i use a program erunt to backup my registery.

    use these only on windows 2000 professional and xp os computers.
    do not use on vista

    create a file tcpchange.reg the copy and paste the below code in the file.

    these setting are for a dsl connection with a mtu of 1492 and a download speed connection of 3000/384.
    Code:
    Windows Registry Editor Version 5.00
    
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\AFD\Parameters]
    "DefaultSendWindow"=dword:000126f0
    "BufferMultiplier"=dword:000005ac
    
    
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
    "TcpWindowSize"=dword:00015450
    "EnablePMTUDiscovery"=dword:00000001
    "DefaultTTL"=dword:00000080
    "Tcp1323Opts"=dword:00000001
    "GlobalMaxTcpWindowSize"=dword:00015450
    then execute the file.

    here is how i came up with my numbers


    Take this value and use it for latency in the formula: (latency) x 1.5 x (advertised speed in kbps) divide by 8

    To find the value of MSS:
    MTU size minus 40 equals MSS size
    1492-40=1452



    Example: MSS is 1452, RTTavg is 150ms and advertised download speed is 3000kbps.
    150 x 1.5 = 225
    225 x 3000kbps = 675000
    675000 divide by 8 = 84375
    84375 divide by 1452 (MSS) = 58.109
    Round up to next even number = 60
    60 x 1452 = 87120 (optimal RWIN)


    compute for defaultsendwindow

    60 x .9 = 54
    i reduced 54 to 52 on mistake but still 52 is ok here
    52 x 1452 = 75504

    sendwindow should be about 90% of rwin and divisible evenly by mss(1452)


    i made changes on another computer that was hookup to a cable modem.
    inside the internet router hooked to the cable modem, i set a mtu to 1500.
    but i set my computers to use a mtu of 1492 because that is what most of my other sites are setup to use and i believe a lot of computer are setup like that on the internet.

    these setting are helping me, the only difference is calcuations are different for my computer behind the cable modem.
    my speed now on the cable modem is 10000/1000
    here is what i have on those computers
    Code:
    Windows Registry Editor Version 5.00
    
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\AFD\Parameters]
    "DefaultSendWindow"=dword:00041ef8
    "BufferMultiplier"=dword:000005ac
    
    
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
    "TcpWindowSize"=dword:00044c58
    "EnablePMTUDiscovery"=dword:00000001
    "EnablePMTUBHDetect"=dword:00000000
    "DefaultTTL"=dword:00000080
    "Tcp1323Opts"=dword:00000001
    "GlobalMaxTcpWindowSize"=dword:00044c58
    use your windows calc program and change all hex to dec to get the decimal values.
    you can use regedit to make the changes or use drtcp to make any changes that drtcp can make.
    if you change values to use another mtu size on your computer be sure to change the values above in the AFD/Parameters section of the registry to reflect mtu size.

    if this has help you to speed up your computers networking, post something, or if not maybe a setting is not correct.
    Last edited by Paul Purvis; 8 Nov 2007, 04:43 AM.
    p purvis

    Comment


    • #3
      fyi
      http://documents.exfo.com/appnotes/anote159-ang.pdf
      p purvis

      Comment

      Working...
      X