Nagle's algorithm

Major BBS or Worldgroup - get and give support here.

Moderator: Mod Squad

Post Reply
User avatar
Iceman
Posts: 93
Joined: Mon Mar 12, 2007 8:49 pm
Contact:

Nagle's algorithm

Post by Iceman »

Wondering if anyone knows about WG 3.x NT variants and if there was ever some hidden option to disable Nagle's in worldgroup like you could back with vircom's tcp/ip package on the dos variants?

I know I can edit this with a registry change, but was hoping there was some hidden thing in worldgroup like with vircoms package so I could limit it to just worldgroup itself.

Stoneslinger76
Posts: 427
Joined: Wed Apr 23, 2008 12:01 pm
Location: Kitchener, ON, Canada
Contact:

Re: Nagle's algorithm

Post by Stoneslinger76 »

Iceman wrote:Wondering if anyone knows about WG 3.x NT variants and if there was ever some hidden option to disable Nagle's in worldgroup like you could back with vircom's tcp/ip package on the dos variants?

I know I can edit this with a registry change, but was hoping there was some hidden thing in worldgroup like with vircoms package so I could limit it to just worldgroup itself.
Thier were a few other posts here somewhere on the subject from a few years back. Setting TCP_NODELAY socket option to disabled will increase the amount of lan traffic. This may not be the best for improving bbs performance, if thats what your trying to achieve. From the old post's on the subject you will find we found changeing "ACKs" helped performance greatly and reduces the buffer overflow messages. If you want you can to do this in the registry or try downloading TCP Optimizer from speedguide.net and change to custom settings, then set "ACKs=1".
Stoneslinger
telnet://theswampbbs.net or http://theswampbbs.net

User avatar
Iceman
Posts: 93
Joined: Mon Mar 12, 2007 8:49 pm
Contact:

Re: Nagle's algorithm

Post by Iceman »

Stoneslinger76 wrote:
Thier were a few other posts here somewhere on the subject from a few years back. Setting TCP_NODELAY socket option to disabled will increase the amount of lan traffic. This may not be the best for improving bbs performance, if thats what your trying to achieve. From the old post's on the subject you will find we found changeing "ACKs" helped performance greatly and reduces the buffer overflow messages. If you want you can to do this in the registry or try downloading TCP Optimizer from speedguide.net and change to custom settings, then set "ACKs=1".
Yeah I know I can set it in windows like I said, but was hoping the built in ICO package had a hidden option like vircoms tcp/ip had so you could disable nagles in just worldgroup without having to affect every program on the computer...

I have a couple programs I want it enabled for, and a couple I don't want it enabled for... various programs doing various things... unfortunately windows won't treat every program different, it will only use the value for this on the first program loaded with a change.

You CAN edit the registry multiple times and add the DWORD to specific software, but it will ignore all of them and simply pick whichever loads first to set the whole system to... which kinda kills my ideal situation.

Hopefully future windows releases will address this but its a low priority to them for now...

TcpDelAckTicks=0-6

0=disabled
1-6=100-600ms

this allows you to change the default 200ms delay (without it being in the registry its by default a value of 2 for 200ms) between ACK to say 100ms for people who want a slight edge but still want to keep the pause for overall system performance versus a specific no delay. (this would be ideal for most systems who would stand to benefit from both but don't want to pick either or)

TcpAckFrequency=0-255

1=Immediate reply
2-255=sets how many ACK before reply

I would recommend this for people who are going to enable or disable oustanding number of ACKs before sending a response. (if you don't have a registry value by default its enabled to 2, I wouldn't change it unless its to disable it completely) a setting of 1 will make it acknowledge immediately.

TCPNoDelay=0-1

0=enabled
1=disabled

This regedit is actually just for systems running MSMQ on their systems I believe, which for most is not installed by default if I remember (well windows systems, unix does anything you want)... so you'd have to actually go out of your way to install this, then edit the registry... so its easier to just use the TcpAckFrequency and set it to 1 for systems who want to reply immediately without waiting for further things to ACK.

Just keep in mind, when you set this to reply immediately, depending on the program you could actually hurt your performance more than you help as you were hinting to... this is mostly for very small files like sayyyy telnet communications that would stand under some circumstances to benefit from this... however large file transfers and many other programs would actually slow down or create twice the work on your networks and kinda kill any benefits you would expect to get.

this is mostly being done to lower latency... small packets being sent and waiting for another packet to ack, kinda creates a slow pause albeit maybe not noticeable by humans for the most part? but under some circumstances when you can change a 30ms latency down to 20ms or 10ms its just nice to squeeze the performance out of the system when you can. (I know years and years ago some heavy game players did this when they had 300ms responses to servers and were simply sending small TCP packets to the server while hosting the client and this cut game responses down dramatically, most games today though build this into their programs now assuming they use TCP instead of UDP)

Oh yeah I should probably mention that... this only affects TCP traffic not UDP traffic... which many programs use so before considering this find out what your program is doing to see if you'll get any benefit.

Also depending which version of software you're running, you may need the hotfixes or service packs that address bugs in original versions that made them simply not work... love windows.

TCP_NODELAY is what programmers would put in their software, or some unix variants, its not the right regedit for windows systems, right track just wrong wording... sooooo anyone know if this is hidden someplace in worldgroups ICO like it was in vircoms tcp/ip package?

Guess for now I just keep running it virtualized in a seperate window.

User avatar
Iceman
Posts: 93
Joined: Mon Mar 12, 2007 8:49 pm
Contact:

Post by Iceman »

haha I saw a response for galactic empire of all things when someone found nagles in vircoms tcp/ip... sure would be nice to have GE back... some day I'll find a nice usb hard drive enclosure for these ultra scsi drives so I can pull old backups off and take a stab at the old mbbs game server.

Stoneslinger76
Posts: 427
Joined: Wed Apr 23, 2008 12:01 pm
Location: Kitchener, ON, Canada
Contact:

Re: Nagle's algorithm

Post by Stoneslinger76 »

Sounds like you should try switching to Vircomms ICO and see how it performs. Then you would be able to set things the way you want for WG and other programs can use defualt tcip as set in the registry. I doubt any changes to the Galacticomm ICO to include configuration options of ack's and other advanced tcip setting will become standard.
You may be able to have Dspain create you a custom ico but it would probably interfere with operations of other core or addon wg modules
Stoneslinger
telnet://theswampbbs.net or http://theswampbbs.net

User avatar
Iceman
Posts: 93
Joined: Mon Mar 12, 2007 8:49 pm
Contact:

Re: Nagle's algorithm

Post by Iceman »

Stoneslinger76 wrote:Sounds like you should try switching to Vircomms ICO and see how it performs. Then you would be able to set things the way you want for WG and other programs can use defualt tcip as set in the registry. I doubt any changes to the Galacticomm ICO to include configuration options of ack's and other advanced tcip setting will become standard.
You may be able to have Dspain create you a custom ico but it would probably interfere with operations of other core or addon wg modules
Well I'm not sure because I haven't found any files, but I don't see any version of major tcp/ip for wg3.2nt because I'm guessing there was no longer a need for it by then? Plus I'm not sure my old mbbs reg code for major tcp/ip would work with any updated module... thats the problem I run into with 99% of my old modules, they were sold or licensed to other ISV's and now none of the codes work with newer versions, and now everyone is gone. tis sad.

at least there are still work arounds in some ways for worldgroup, just wondering about the future when I really will have to find old hardware and software to run things... I'm actually saving my NT4 CD's along with server 2000 since I was able to get service packs on CD... oh and good ole dos 5.0 but those floppy disks I'm sure are toast by now lol.

Stoneslinger76
Posts: 427
Joined: Wed Apr 23, 2008 12:01 pm
Location: Kitchener, ON, Canada
Contact:

Re: Nagle's algorithm

Post by Stoneslinger76 »

Iceman wrote:
Well I'm not sure because I haven't found any files, but I don't see any version of major tcp/ip for wg3.2nt because I'm guessing there was no longer a need for it by then? Plus I'm not sure my old mbbs reg code for major tcp/ip would work with any updated module... thats the problem I run into with 99% of my old modules, they were sold or licensed to other ISV's and now none of the codes work with newer versions, and now everyone is gone. tis sad.

at least there are still work arounds in some ways for worldgroup, just wondering about the future when I really will have to find old hardware and software to run things... I'm actually saving my NT4 CD's along with server 2000 since I was able to get service packs on CD... oh and good ole dos 5.0 but those floppy disks I'm sure are toast by now lol.
Vircom is still around, vircom.com altho it might take some work to get a reg code. Someone around will have the vircom tcpip modules available for dl but you will probably need a new code for wg3nt.

Atleast now you can buy older servers and many parts for penuts.
Stoneslinger
telnet://theswampbbs.net or http://theswampbbs.net

Post Reply