You are on page 1of 8

Presented by Koko & Friends

How to Disable TCP Delay in Windows 7 Professional


A potential method to decreasing lag type effects in online games

Kokotewa 1/23/2013 K&F is not liable for any damages relating to the execution of these instructions and makes no promises or guarantees to their results

Table of Contents
Introduction ..................................................................................................................................... 2 What is TCP Delay? ...................................................................................................................... 2 How will disabling TCP Delay affect my computer? .................................................................... 2 How does TCP Delay work? ......................................................................................................... 2 Enabling Microsoft Message Queue (MSMQ) ................................................................................. 3 Adding D - Words to the Registry .................................................................................................... 4 Refreshing MSMQ Services .............................................................................................................. 7 Frequently Asked Questions ............................................................................................................ 7 What if I use a different Windows OS (operating system)? ........................................................ 7 What if I use a Mac or Linux OS? ................................................................................................. 7 What if my latency increased after disabling TCP Delay?............................................................ 7 How do I enable TCP Delay after I disabled it? ............................................................................ 7

Introduction
These instructions serve to allow intermediate computer users to disable TCP Delay. The procedure will take approximately 30 minutes; however can be significantly less depending on your familiarity with the Windows registry. These instructions assume the computer is freshly booted, without any open programs. In addition, it is assumed you are the administrator of the operating computer.

What is TCP Delay?


Transmission Control Protocol (TCP) groups packets before broadcasting them to the server. TCP Delay allows packets to be grouped before transmission, thus saving bandwidth. However, delaying packets for grouping can increase latency.

How will disabling TCP Delay affect my computer?


The effects of TCP Delay are most noticeable in time sensitive applications. To most individuals, the difference between a latency of 20 and 300 milliseconds is irrelevant. However, in an online gaming setting, this difference can determine successful or disastrous results. The tradeoff for decreased latency is increased bandwidth usage. If bandwidth is the limiting factor for server/client interaction, load times will increase. In addition, since many ISPs are imposing bandwidth caps, increasing bandwidth usage is often undesired. TCP Delay is enabled by default for these reasons, and it is assumed the user will disable it as necessary.

How does TCP Delay work?


The process of TCP Delay can most easily be explained by comparison to the postal service. When mailing letters, it is less expensive to mail multiple letters together. This is due to their grouping; it easier for the post office to mail one package than two or more. Thus, to save on postage, letters are often mailed in batches. In exchange, some letters schedules are delayed to make the batch. This causes these letters to arrive later than normal, but this is frequently inconsequential to the success/failure of the letter. Usually, the cost of mailing the letter is paramount compared to a small deviation in its time of arrival. Think of postage as bandwidth, and letters as packets. The tradeoff of cost for speed is often detrimental to the majority of users for the post office. However, some tasks require letters to arrive as quickly as possible, therefore they are sent immediately instead of waiting for grouping.

Enabling Microsoft Message Queue (MSMQ)


Enabling Microsoft Message Queue (MSMQ) allows the user to modify the priority of messages to external servers. MSMQ is necessary to access and alter the registry files in step 2. Some computers may require a restart to completely install MSMQ. 1. Open the Control Panel. a. Open the Start Menu. b. Click the Control Panel. 2. Open Turn Windows Features On/Off. a. Click Programs. b. Click Turn Windows Features On/Off under Programs and Features. 3. Enable MSMQ, reference Figure 1. a. Select Microsoft Message Queue (MSMQ) Server. b. Click Ok. 4. Close the Control Panel. 5. Restart your computer to complete the installation of MSMQ if necessary.
Figure 1: Windows features

Adding D - Words to the Registry


The majority of actions take place within the program regedit, the registry editor for Windows operating systems. Take caution when changing registry values, as incorrect inputs can cause harm to your computer. 1. Access regedit through the Start Menu, reference Figure 2. a. Open the Start Menu. b. Access the Search Bar. c. Type regedit into the Search Bar. d. Open the regedit program.
Figure 2: Finding regedit

2. Locate
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters\Interfaces.

3. Verify the location within the Registry Editor is identical to Figure 3.

Figure 3: Target location within the Registry Editor

4. If you know your IP address, continue to step 6.

5 5. Find your IP address. a. Access Command Prompt through the Start Menu. b. Open the Start Menu. c. Access the Search Bar. d. Type command prompt into the Search Bar. e. Open Command Prompt. f. Use Command Prompt to find your IP address. i. Type ipconfig into Command Prompt. ii. Enter the command. iii. Locate your IP address on the report, reference Figure 4.

Figure 4: Finding your IP address

6. Access the subfolder with your IP address in the data field. 7. Add the D-WORD TcpActFrequency to the folder. a. Access the Edit tab on the regedit interface. b. Move to the New tab. c. Select D-WORD (32 bit) Value. d. Rename the D-WORD to TcpActFrequency. e. Change the Hexadecimal Base Value to 1, reference Figure 5. Figure 5: Edit value f. Right click TcpActFrequency. g. Select Modify. h. Input 1 into Value data.

8. Add the D-WORD TCPNoDelay to the folder. a. Access the Edit tab on the regedit interface. b. Move to the New tab. c. Select D-WORD (32 bit) Value. d. Rename the D-WORD to TCPNoDelay. e. Change the Hexadecimal Base Value to 1, reference Figure 6. f. Right click TCPNoDelay. g. Select Modify. h. Input 1 into Value data. 9. Review completed modifications, reference Figure 7. 10. Close Registry Editor.

Figure 6: Edit value

Figure 7: Completed modifications

Refreshing MSMQ Services


The modifications to the registry will not take effect until the next refresh of MSMQ services. There are numerous methods to do this, however the easiest is a full system reset or restart of your computer. When your computer reboots, it will automatically load the new configuration for MSMQ. 1. Restart your computer. a. Open the Start Menu. b. Under Shut Down, click Restart.

Frequently Asked Questions

Figure 8: Restarting your computer

What if I use a different Windows OS (operating system)?


These instructions are intended for use with a Windows 7 Professional operating system only. However, the basic principles regarding TCP Delay and MSMQ should remain intact. Thus the procedure for disabling TCP Delay in Windows operating systems should be similar. I still recommend using an alternative guide for your operating system.

What if I use a Mac or Linux OS?


These instructions are not applicable to your computer.

What if my latency increased after disabling TCP Delay?


Your bandwidth is limiting the relay of data between your computer and the server. The grouping performed by TCP maximized bandwidth efficiency, and since your speed is bandwidth limited, disabling TCP Delay forces packets to wait for available bandwidth before their transmission. In the postal service example, this is the equivalent of wanting to send two letters and sending one immediately but lacking the stamps to send the secondary letter. Thus the second letter is delayed until the user obtains more stamps.

How do I enable TCP Delay after I disabled it?


Deleting the D Word strings and restarting your computer should enable TCP Delay. There is no need to disable MSMQ services.

You might also like