Microsoft limite à 10 le nombre de connexions TCP sortantes semi-ouvertes simultanées sous Windows XP SP2(x86,x64)/SP3, 2003 Server SP1(x86)/SP2(x86,x64), Vista without SP(x86,x64) and with SP1(x86,x64) afin d'empêcher un virus ou un programme malveillant d'ouvrir sans limite des connexions vers d'autres systèmes. Ces systèmes ralentissent l'analyse de plages d'adresses IP par connexion à un port TCP, pour toutes les applications en cours d'exécution sur le PC (le ping ICMP n'est pas concerné).
Notre programme peut être concerné par cette limite.
Lorsque cette limite est atteinte, le journal des événements d'application contient l'événement 4226 et le message « TCP/IP has reached the security limit imposed on the number of concurrent TCP connect attempts ».
Les résultats d'analyse du réseau et de surveillance des hôtes fournis par le programme peuvent être affectés. Certains hôtes peuvent ne pas être trouvés, et le système peut bloquer le programme pendant 10 secondes ou plus, de façon périodique.
Si cela se produit, envisagez les solutions suivantes :
- Fermez les autres programmes qui ouvrent de nombreuses connexions TCP sortantes semi-ouvertes.
- Lorsque vous créez une carte réseau ou analysez des plages d'adresses à la recherche de nouveaux équipements, augmentez les délais d'analyse des ports TCP dans l'assistant d'analyse, de façon à ne pas contrôler plus de 10 adresses IP par tranche de 10 secondes.
- Désactivez le contrôle des ports TCP lorsqu'il n'est pas nécessaire pendant l'analyse du réseau ou la surveillance des hôtes.
- Voyez plus bas comment désactiver la limite.
La suppression complète de la limite des connexions TCP sortantes semi-ouvertes, fixée par défaut à 10, a été finalisée avec Windows Server 2008 et Vista SP2 build 17506. En pratique, cette limite est contournée par défaut depuis Windows Vista SP2 RC build 16670.
Microsoft ajoute une clé de registre qui permet à l'utilisateur ou à l'administrateur d'activer ou de désactiver la limite des connexions TCP semi-ouvertes sous Windows Vista Service Pack 2 et Windows Server 2008 Service Pack 2.
Il existe de nombreux correctifs du pilote tcpip.sys qui désactivent la limite ou augmentent le nombre de connexions autorisées. Une recherche sur « half-open TCP connections limit » permet de les trouver.