[Home] [Downloads] [Search] [Help/forum]


Register forum user name Search FAQ

Gammon Forum

[Folder]  Entire forum
-> [Folder]  MUSHclient
. -> [Folder]  Suggestions
. . -> [Subject]  setsockopt TCP_NODELAY on mushclient's TCP

setsockopt TCP_NODELAY on mushclient's TCP

It is now over 60 days since the last post. This thread is closed.     [Refresh] Refresh page


Posted by Khannon   (32 posts)  [Biography] bio
Date Fri 29 Apr 2022 08:35 PM (UTC)

Amended on Sat 30 Apr 2022 02:54 PM (UTC) by Khannon

Message
I've used software called Leatrix Latency Fix(LLF) since I started using Mushclient, during my PC upgrade in 2016, I noticed how MushClient was somehow slow compared to before (with an older PC that had LLF installed). Couldn't figure it out for a very long time, until I remembered LLF.

Also going to post this from Fiendish:

Please drop a suggestion in the mushclient forum for Nick to:

"setsockopt TCP_NODELAY mushclient's TCP sockets because mushclient is unlikely to benefit from nagle's algorithm."

Edit: "and maybe also TCP_QUICKACK"
[Go to top] top

Posted by Nick Gammon   Australia  (23,016 posts)  [Biography] bio   Forum Administrator
Date Reply #1 on Sun 01 May 2022 06:12 AM (UTC)
Message
I'm having a few problems with my build environment (it's still Windows XP) so I'll see if my colleague Fiendish can do it for you. :)

- Nick Gammon

www.gammon.com.au, www.mushclient.com
[Go to top] top

Posted by Fiendish   USA  (2,525 posts)  [Biography] bio   Global Moderator
Date Reply #2 on Mon 02 May 2022 03:56 PM (UTC)

Amended on Mon 02 May 2022 04:06 PM (UTC) by Fiendish

Message
I have a test build that sets TCP_NODELAY (the download link should be available for one month)
https://ci.appveyor.com/api/buildjobs/5jaqk7418lld82fh/artifacts/MUSHclient.exe

It does not set SIO_TCP_SET_ACK_FREQUENCY (the windows equivalent of TCP_QUICKACK) because that is not well documented and less portable and therefore harder for me to assess. But here is how cygwin does that flag for future reference: https://cygwin.com/git/?p=newlib-cygwin.git;a=commitdiff;h=ee2292413792f0360d357bc200c5e947eae516e6

John Nagle appears to think that disabling ACK delays systemwide is almost always a good idea (https://news.ycombinator.com/item?id=10608356). I'm not sure why Microsoft enables ACK delays then, but the registry entry for toggling it globally appears to be https://docs.microsoft.com/en-US/troubleshoot/windows-server/networking/registry-entry-control-tcp-acknowledgment-behavior (set the TcpAckFrequency value to 1). If Nagle thinks it's a good idea, I might see if I can just make my installer flip that registry flag.

Maybe people can test these things out independently because I don't have a Windows setup myself to test with.

https://github.com/fiendish/aardwolfclientpackage
[Go to top] top

The dates and times for posts above are shown in Universal Co-ordinated Time (UTC).

To show them in your local time you can join the forum, and then set the 'time correction' field in your profile to the number of hours difference between your location and UTC time.


6,121 views.

It is now over 60 days since the last post. This thread is closed.     [Refresh] Refresh page

Go to topic:           Search the forum


[Go to top] top

Quick links: MUSHclient. MUSHclient help. Forum shortcuts. Posting templates. Lua modules. Lua documentation.

Information and images on this site are licensed under the Creative Commons Attribution 3.0 Australia License unless stated otherwise.

[Home]


Written by Nick Gammon - 5K   profile for Nick Gammon on Stack Exchange, a network of free, community-driven Q&A sites   Marriage equality

Comments to: Gammon Software support
[RH click to get RSS URL] Forum RSS feed ( https://gammon.com.au/rss/forum.xml )

[Best viewed with any browser - 2K]    [Hosted at HostDash]