Nagle algorithm which I think was something invented to aid asynchronous connections has long been something I havent liked. Basically it prevents acknowledgement of every downloaded packet but instead is every other packet, this is to save upload bandwidth which is great for cable isp's and anyone who struggles with upload bandwidth. The flipside is it hurts performance on things shifting small amount of data.
Since windows 8, microsoft no longer allow the setting to be toggled unless one has paid handsomly for either a server OS or the enterprise version. (I am not even sure the enterprise version can toggle it, as planning to test on my spare laptop).
Also a hotfix on windows 7 stopped the registry key that controls it from working as well.
It can be toggled freely on FreeBSD and MAC OS.
On linux it cannot be toggled however linux automatically disables it for small packets and enables it for large packets which is a very clever solution.
Interestingly tho there is a side affect of using hit man pro alert a security product.
This product loads a network driver which intercepts all traffic on the system, now this driver has caused me some issues, so I am not entirely a fan of it but it does inject NO_DELAY on all traffic meaning it disables nagle on windows. The affect on things like ftp and ssh command line is very nice, but it can also be felt on web browsing. Really baffling that this tech remains the default and microsoft wont allow it to be disabled.