The information in this article applies to:
SYMPTOMS
When sending messages with Microsoft Message Queue and TCP/IP as the transport protocol, there may be a delay of approximately 300ms before the packet is sent over the network. This is because the Windows TCP/IP stack uses the Nagle algorithm. The Nagle algorithm improves performance by ensuring TCP/IP packets are used efficiently and preventing the network from being flooded with small TCP/IP packets. Although, in some scenarios it may be advantageous to allow the smaller packets for specific performance reasons. This article describes how to disable the Nagle TCP/IP algorithm when MSMQ is sending messages. RESOLUTIONA supported fix that corrects this problem is now available from Microsoft, but
it has not been fully regression tested and should be applied only to systems
experiencing this specific problem. http://www.microsoft.com/support/supportnet/overview/overview.aspThe English version of this fix should have the following file attributes or later:
STATUSMicrosoft has confirmed this to be a problem in the Microsoft products listed
at the beginning of this article. MORE INFORMATIONThe Nagle TCP/IP AlgorithmThe Nagle TCP/IP algorithm was designed to avoid problems with small packets, called tinygrams, on slow networks. The algorithm says that a TCP/IP connection can have only one outstanding small segment that has not yet been acknowledged. The definition of "small" varies but usually it is defined as "less than the segment size", which on ethernet is about 1500 bytes.Manually Disabling the Nagle AlgorithmYou can disable the Nagle algorithm by modifying the following registry setting and using the instructions in the "Activating the Modifications" section.
Activating the ModificationsThe Queue Manager must be stopped and restarted after the registry changes have been made. This can be accomplished by stopping and starting the Microsoft Message Queue Service from the services control panel.REFERENCESNOTE: The Nagle algorithm is defined in TCP/IP RFC 896. Additional query words: msmq delay tcp ip nagle
Keywords : kbMSMQ kbMSMQ100 kbMSMQ100bug kbMSMQ100fix kbDSupport |
Last Reviewed: October 14, 1999 © 2000 Microsoft Corporation. All rights reserved. Terms of Use. |