CORRECTIF : Algorithme de Nagle de TCP/IP de Microsoft Message Queue Server peut être désactivé.


Symptômes


Lors de l’envoi de messages à l’aide de Microsoft Message Queue et le protocole TCP/IP comme protocole de transport, il peut y avoir un délai d’environ de 300 MS avant que le paquet est envoyé sur le réseau. C’est parce que la pile TCP/IP de Windows utilise l’algorithme Nagle. L’algorithme de Nagle améliore les performances en garantissant les paquets TCP/IP sont utilisées de manière efficace et en empêchant l’inondée de petits paquets TCP/IP du réseau. Bien que, dans certains scénarios, il peut être avantageux pour autoriser les paquets plus petits pour des raisons de performances spécifiques. Cet article décrit comment désactiver l’algorithme Nagle TCP/IP lorsque MSMQ envoie des messages.

Important Cet article contient des informations sur la façon de modifier le Registre. Veillez à sauvegarder le Registre avant de le modifier. Assurez-vous que vous savez comment restaurer le Registre si un problème survient. Pour plus d’informations sur la façon de sauvegarder, restaurer et modifier le Registre, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :
256986 description du Registre Microsoft Windows

Résolution


Remarque Le correctif logiciel suivant n’est pas nécessaire pour MSMQ 2.0 (Windows 2000) ou MSMQ 3.0 (Windows XP et Windows 2003). Toutefois, la valeur de Registre décrite dans la section « Informations supplémentaires » de cet article vous devez toujours à ajouter.

Un correctif pris en charge est désormais disponible auprès de Microsoft, mais il ne vise qu’à corriger le problème décrit dans cet article. Il s’applique uniquement aux systèmes rencontrant ce problème spécifique.

Pour résoudre ce problème, contactez les Services de Support technique Microsoft pour obtenir le correctif. Pour obtenir une liste complète des numéros de téléphone des Services de Support technique Microsoft et des informations sur les coûts de support, visitez le site Web de Microsoft à l'adresse suivante :Remarque Dans des cas particuliers, des frais généralement encourus pour les appels au support technique peuvent être annulés si un technicien du support technique Microsoft détermine qu'une mise à jour spécifique peut résoudre votre problème. Les coûts habituels du support technique s’appliqueront aux autres questions et problèmes qui ne relèvent pas de la mise à jour spécifique en question.

La version anglaise de ce correctif doit avoir les attributs de fichier suivants ou une version ultérieure :

Date Time Version Size File name Platform
-------------------------------------------------------------
6/22/1999 1:34 PM 1.00.0294 481,552 MQQM.DLL x86

État


Microsoft a confirmé l'existence de ce problème dans les produits Microsoft répertoriés dans la section « S'applique à ».

Ce bogue a été corrigé dans Windows NT 4.0 Service Pack 6.

Plus d'informations


L’algorithme de Nagle TCP/IP

L’algorithme de Nagle TCP/IP a été conçu pour éviter les problèmes avec les petits paquets, appelés tinygrams, sur les réseaux lents. L’algorithme indique qu’une connexion TCP/IP peut avoir qu’un seul segment de petit en attente qui n’a pas encore été confirmé. Varie en fonction de la définition de la « petite », mais il est généralement défini en tant que « inférieure à la taille de segment », qui sur ethernet est de 1 500 octets.

Désactivation manuelle de l’algorithme de Nagle

Vous pouvez désactiver l’algorithme Nagle en modifiant le paramètre de Registre suivant et en suivant les instructions dans la section « Activation de la Modifications ».

  1. Sous la sous-arborescence HKEY_LOCAL_MACHINE, recherchez la clé suivante :

    \Software\Microsoft\MSMQ\Parameters
  2. Cliquez sur Ajouter une clé dans le menu Edition et utilisez les informations suivantes :

    Value Name: TcpNoDelay
    DWord: 1

Activer les Modifications

Le Gestionnaire de file d’attente doit être arrêté et redémarré les après avoir apporté les modifications du Registre. Ceci est possible par l’arrêt et le démarrage du Service Microsoft Message Queue à partir du Panneau de contrôle de services.

Références


Remarque L’algorithme Nagle est défini dans la RFC 896 de TCP/IP.