locked
TcpAckFrequency and Nagle RRS feed

  • Question

  • Dear experts.

    Setting TcpAckFrequency through the registry has no effect on Windows 7.

    Plus disabling Nagle through setsockopt does nothing. When I try getsockopt, before disabling it, the Nagle returned value is garbage (123123123123 as an example). I know that my code is working as I have tried it on XP.

    Is there a reason for TcpAckFrequency not working on Windows7? And the Nagle issue is bothering me a lot!

    And before you ask if I really need those things. Yes I do and no this is not for gaming (WoW conversations end here).

    Thursday, July 29, 2010 2:27 PM

Answers

  • Hi,

     

    You need to create the keys “TcpAckFrequency” and “TCPNoDelay” to test it.

     

    Please back up the registry key before perform the steps:

     

    ·         Backup registry key

    ==================

    1. Click Start, click Run, input "REGEDIT" (without quotation marks) in the Search box and press Enter.

     

    (Click Yes when User Account Control message pops up.)

     

    2. Navigate to the following registry key by expanding the "+" beside the registry tree in the left pane:

     

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces

     

    3. Right click on "Interfaces", click "Export"; please name the file as "RegBackup" (without quotation marks) and then save it to the C:\ drive as a backup.

     

    Note: In case we need to undo the modification, we can double click this RegBackup.reg file to restore the registry key.

     

    After that, please go to take the steps as below:

     

    1. Click Start, click Run, input "REGEDIT" (without quotation marks) in the Search box and press Enter.

     

    (Click Yes when User Account Control message pops up.)

     

    2. Navigate to the following registry key by expanding the "+" beside the registry tree in the left pane:

     

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces

     

    Here you will see your network interface devices listed as random characters. The only way to really identify which one you want to modify is to click on each one and search for your IP configuration information in the right pane (ie. IPAddress > 192.168.0.100).

     

    3. You will need to create two new entries for this interface.  You can do this by right-clicking the interface in the left pane and going to New > DWORD (32-bit) Value.

     

    Name the first one “TcpAckFrequency” and the second one “TCPNoDelay”.

     

    4. After that, they will appear in the right pane of the registry editor. You need to double-click each of your new values and set their “Value Data” to “1″, and leave “Hexadecimal” checked under “Base”.

     

    5. Exit your registry and reboot.

     

    Notice: This can adversely affect other types of internet usage such as streaming video (ie. Hulu), further research on your part will provide more information.

     

    Regards,

     

    Sabrina

     

    Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread.

    • Marked as answer by Nicholas Li Tuesday, August 10, 2010 9:25 AM
    Wednesday, August 4, 2010 9:14 AM