We have an application server that observed sending headers with a TCP window size of 0 when the network was congested (on the client site).
We would like to know if it is Indy or the basic level of Windows, which is responsible for setting the TCP window size from the nominal 64K when adapting to the available bandwidth.
And we can act on it, becoming 0 (nothing sends, users wait => there is no benefit).
So, any information, link, pointer to Indy code is welcome ...
Disclaimer: I am not a network specialist. Please keep the answer clear to the average me ;-)
Note: this is Indy9 / D2007 on Windows Server 2003 Service Pack 2 (SP2).
More about the mountains:
TCP zero window cases occur at the middle level, talking to the database server.
This happens at the same time that end-users complain of a slowdown in the client application (which triggered a network investigation).
2 main network problems causing bottlenecks. A TCP null window occurred when a network congestion occurred, but may or may not be caused by this.
We want to know when this will happen, and we have a way to do something (by entering at least a minimum) in our code.
So, the main question: who sets the window size to 0 and where?
Where to get the hook (in Indy?) To find out when this condition occurs?
delphi delphi-2007 tcp indy-9
Franรงois
source share