The problem actually is a network issue. . .sort of. In IIS 6.0, the default buffer size allocated to CGI applications is now only 8,192 bytes. The smaller buffer size means that the kernel-level HTTP protocol stack (HTTP.SYS) may break the responses into packets that don't use the full network segment size. This results in greater latency and slower responses, especially when serving a great many connections at once. The same applications should behave fine as-is in IIS 5.0.
Note: In a LAN, this problem won't be as noticeable, since the problem doesn't manifest until WAN-style latencies come into play. Therefore, if you do a local test for the slowdown effect, it may not manifest itself.
There is a workaround for this issue, but it requires that Windows Server 2003 Service Pack 1 be installed. If that's the case, then you can change the buffer size for CGI applications by adding a value to the Registry. In HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters, create a new DWORD value named MaxBufferedSendBytes and set it to 65536 (decimal). After you make this change, you'll need to stop and restart IIS; you can do that from the command line with the IISRESET /RESTART command.
Serdar Yegulalp is editor of The Windows Power Users Newsletter. Check it out for the latest advice and musings on the world of Windows network administrators -- and please share your thoughts as well!
More information from SearchWinSystems.com
- News: What
Microsoft should do to harden IIS
- Topic: Server
- RSS: Sign up for our RSS feed to receive expert advice every day.
This was first published in June 2006