Linux problem with lag & TCP/IP revisted.

From: Chris Jacobson (fear@ATHENET.NET)
Date: 09/09/97


Yes, this >is< a repost, I didn't get any responses last time, and this
problem is driving me crazy.  I would like to hear from those of you who
have had this problem, and are currently having it, as I intend to get to
the root of it and patch it once and for all, then release the patch :-)
I'm also on mudsrus.com, which has a 2.0.30 kernel, and I doubt I could
convince them to upgrade it.


Ok folx, here we go again!  :-/

I have installed a 'patch' into my new_descriptor function, to catch that
Linux TCP/IP stack problem that caused major lag to the system.


  if (sockets_connected >= max_players) {
    write_to_descriptor(desc, "Sorry, CircleMUD is full right now...
please try again later!\r\n");
    CLOSE_SOCKET(desc);
    return 0;
  }

  /* Make sure the socket is valid... */

        if((write_to_descriptor(desc, "Validating socket...\r\n")) < 0) {
                //close(desc);
                CLOSE_SOCKET(desc);
                return 0;
        }

  /* create a new descriptor */
  CREATE(newd, struct descriptor_data, 1);
  memset((char *) newd, 0, sizeof(struct descriptor_data));



The problem seemed to go away, for the most part.  Now it seems to be
back just as strong as ever.  This is very confusing.

Remember, as I stated before, the effects are MAJOR lag on the Circle
app, plus the CPU time soars.

- Chris Jacobson


     +------------------------------------------------------------+
     | Ensure that you have read the CircleMUD Mailing List FAQ:  |
     | http://democracy.queensu.ca/~fletcher/Circle/list-faq.html |
     +------------------------------------------------------------+



This archive was generated by hypermail 2b30 : 12/08/00 PST