Slashdot Mirror


Unix TCP Equivalent Settings in Windows 2000?

sameerdesai asks: "While working on a project that required client-server functionality I was running into processes that wouldn't finish and eventually hang. While running packet tracing, I found out the tcp_fin_wait_2_timeout setting on the server side (UNIX) was too low for the Windows client, and after increasing that value it worked great. I am trying to apply a similar technique for a Windows server and was wondering what the equivalent registry key is for UNIX's tcp_fin_wait_2_timeout setting? Also, is there a guide out there that compares TCP setting in UNIX with Windows?"

10 of 65 comments (clear)

  1. The registry key for windows by esac17 · · Score: 5, Informative

    Is HKLM\System\CurrentControlSet\Services\Tcpip\Param eters
    REG_DWORD
    30

    Setting this to anything below 30 decimal will just set it to 30 anyway though.

    http://www.microsoft.com/windows2000/techinfo/re sk it/en-us/default.asp?url=/windows2000/techinfo/res kit/en-us/regentry/58811.asp

    1. Re:The registry key for windows by sporktoast · · Score: 5, Informative

      Looks like you forgot to mention one thing, and the slashed up URL made it slightly more difficult to discover.

      There are about a hundred different entries contained in HKLM\System\CurrentControlSet\Services\Tcpip\Param eters. The REG_DWORD in question is the one labeled "TcpTimedWaitDelay". Accepted values are between 30 and 300 (seconds).

      --
      In a related story, the IRS has recently ruled that the cost of Windows upgrades can NOT be deducted as a gambling loss.
  2. User Friendly by dpilot · · Score: 2, Informative

    Because of course using regedit to tweak the value of HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Param eters is MUCH more intuitive and user friendly than doing something in /proc/sys/net/ipv4. Actually, I don't see any sort of tcp_fin_wait_2_timeout in there, nor do I see anything that looks like an equivalent parameter in the Windows help page. At least I see tcp_fin_timout in /proc, but don't see anything like it in the registry documentation page.

    On a slightly more usable scale, if I'm going to use an obscure interface, at LEAST I'd prefer it be in cleartext than some odd binary thingy that can only be edited with a special tool. OK, perhaps /proc and the Registry are equally binary, since the tools let you plug in equivalent numbers. But it remains that I can do directory navigation on /proc, and must use a special tool for the Registry.

    Even better, looking in /usr/src/linux/Documentation/networking/ip-sysctl. txt I find that tcp_fin_timeout is indeed used to control the time to hold the socket in FIN-WAIT-2, so it turns out that it is indeed the correct parameter. That still doesn't help me find the same parameter in the Microsoft documentation, which is on the web, not on the system, and if I can't get the networking running, how do I search?

    --
    The living have better things to do than to continue hating the dead.
    1. Re:User Friendly by shufler · · Score: 3, Informative

      Ubscure interface?

      REGEDIT [/v|-v] [/s|-s] <FILENAME>

      [/s|-s]
      When a filename is specified on the command line, this switch is used to suppress any informational dialog boxes that would normally be displayed. This is useful when the Setup program for an application wants to execute REGEDIT.EXE with a .REG file, but does not want the user to be confused by any dialog boxes that are displayed.

      Put what you need in the file you wish to import.

      http://support.microsoft.com/default.aspx?scid=htt p://support.microsoft.com:80/support/kb/articles/Q 82/8/21.ASP&NoWebContent=1

    2. Re:User Friendly by dpilot · · Score: 3, Informative

      "REGEDIT " isn't the obscure part. Just IMHO everything about the bits and handles after that is about equally obscure between regedit and /proc. Both are equally unfriendly. But you can do /proc without a special GUID program, so also IMHO it wins the toss.

      --
      The living have better things to do than to continue hating the dead.
    3. Re:User Friendly by shufler · · Score: 2, Informative

      I never said Regedit was better! However, as mentioned many times above, /proc is most definately not available in Windows. The question was to find a solution for Windows. I was merely showing you could handle the registry using a command line utility (which is technically the very same program used to edit in the Windows GUI). It uses text files and simple CLI commands, which can be implemented from a batch or install process.

      For example, if the final solution for the original question requires a reg hack on every client it is installed on, this would be the easiest way to implement the change, short of using Registry objects (or their equivalent) in whatever programming language you're using.

      You can also view the registry without a GUI: there is an export switch (/E outfile.reg), which I beleive outputs the registry to a text .reg file.

      All these switches should work in every version of Windows that uses the registry -- that includes Windows 3.x.

  3. unix to windows rosetta stone by lylonius · · Score: 2, Informative

    rosetta stone: performance tuning

    this is conceptually similar to http://bhami.com/rosetta.html, but my table focuses on design choices, specifically performance and security tuning, not daily operations.

    note: i couldn't find a value for windows TCP FIN timeout (fin-wait-[12]). The TcpTimedWaitDelay that somebody else suggested is for the TCP TIME_WAIT.

  4. URL lives at nonstandard port 81 by mosel-saar-ruwer · · Score: 2, Informative

    The URL you just referenced lives at nonstandard port 81:
    http://foureleven.org:81/rosetta-stone-performance -tuning.html
    Does the Google spider look for nonstandard ports?

  5. Here's how to do it by swissmonkey · · Score: 2, Informative

    1) Go get the relevant hotfix for it (kb813056) from MS support : http://support.microsoft.com/default.aspx?scid=kb; en-us;813056

    2) Go to HKLM\SYSTEM\CurrentControlSet\ Services\TcpIp\Parameters and add the reg key TCPFinWait2Delay

    3) Set the reg key value to the appropriate delay you want