Qual è il numero massimo di connessioni tcp / ip simultanee di Windows?
Domanda
In .NET ho già provato con successo la configurazione seguente:
<system.net>
<connectionManagement>
<add address="*" maxconnection="100"/>
</connectionManagement>
</system.net>
Usando 100 HttpWebRequest simultanei hanno risposto quasi contemporaneamente (meno di un secondo).
Mi chiedo perché alcune persone hanno scritto in alcuni forum che Windows XP e Windows Server 2008 limitano questo numero a 15 o 20. Hanno ragione?
Soluzione
Potrebbe essere perché le persone confondono il numero di connessioni SMB in entrata con il numero di connessioni TCP / IP. SMB viene utilizzato per la condivisione di file e varie altre cose ed è limitato a 10 connessioni nei sistemi operativi client Windows.
Altri suggerimenti
Le versioni client di Windows sono limitate nel numero di connessioni semiaperte. Il limite di 10 per XP è ben noto, Vista ha altri limiti a seconda della versione (ad es. Home Basic ha un limite di 2, Ultimate ha 25). Puoi Google " Patch per ID evento 4226 " per alleviare questi limiti. Post Vista SP2 il comportamento è configurabile tramite una chiave di registro .
Windows Server è in grado di gestire diverse decine di migliaia di connessioni in entrata simultanee con risorse sufficienti.
A seconda della versione del server, è necessario modificare alcuni parametri predefiniti per consentire questo numero di connessioni, vedere questa guida .
L'autore riferisce di aver visto oltre 50.000 connessioni simultanee a IIS6 su WS03SP1 x64 con 4 GB di RAM.
Esistono limitazioni di connessione su connessioni (nuove) non completate. IIRC, questo è stato inserito in un aggiornamento alcuni anni fa come esperimento per ridurre la diffusione di alcuni tipi di malware. Puoi rimuovere in sicurezza questo limite:
http://technet.microsoft.com/en-us /magazine/2007.12.network.aspx
Il numero basso menzionato si applica solo a " semi-aperto " connessioni? Non conosco i dettagli, ma ricordo di aver letto qualcosa a riguardo.