1999Q1/
<!-- MHonArc v2.4.4 -->
<!--X-Subject: Re: [MUD&#45;Dev] How to support 1000+ simultaneous connections,  and some philosophy. -->
<!--X-From-R13: Qnyvona Fverfvnf Rnexybpx <pnyvonaNqnexybpx.pbz> -->
<!--X-Date: Thu, 11 Mar 1999 13:30:01 &#45;0800 -->
<!--X-Message-Id: 4.1.19990311124812.03c9aeb0#pop,darklock.com -->
<!--X-Content-Type: text/plain -->
<!--X-Reference: 4.1.19990310185412.03ee2420#pop,darklock.com -->
<!--X-Reference: Pine.GSO.4.05.9903110822450.19524&#45;100000@uhunix2 -->
<!--X-Head-End-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title>MUD-Dev message, Re: [MUD-Dev] How to support 1000+ simultaneous connections,  </title>
<!-- meta name="robots" content="noindex,nofollow" -->
<link rev="made" href="mailto:caliban#darklock,com">
</head>
<body background="/backgrounds/paperback.gif" bgcolor="#ffffff"
      text="#000000" link="#0000FF" alink="#FF0000" vlink="#006000">

  <font size="+4" color="#804040">
    <strong><em>MUD-Dev<br>mailing list archive</em></strong>
  </font>
      
<br>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
<br clear=all><hr>
<!--X-Body-Begin-->
<!--X-User-Header-->
<!--X-User-Header-End-->
<!--X-TopPNI-->

Date:&nbsp;
[&nbsp;<a href="msg00535.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00537.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Thread:&nbsp;
[&nbsp;<a href="msg00533.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00540.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Index:&nbsp;
[&nbsp;<A HREF="author.html#00536">Author</A>
&nbsp;|&nbsp;<A HREF="#00536">Date</A>
&nbsp;|&nbsp;<A HREF="thread.html#00536">Thread</A>
&nbsp;]

<!--X-TopPNI-End-->
<!--X-MsgBody-->
<!--X-Subject-Header-Begin-->
<H1>Re: [MUD-Dev] How to support 1000+ simultaneous connections,  and some philosophy.</H1>
<HR>
<!--X-Subject-Header-End-->
<!--X-Head-of-Message-->
<UL>
<LI><em>To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI>
<LI><em>Subject</em>: Re: [MUD-Dev] How to support 1000+ simultaneous connections,  and some philosophy.</LI>
<LI><em>From</em>: Caliban Tiresias Darklock &lt;<A HREF="mailto:caliban#darklock,com">caliban#darklock,com</A>&gt;</LI>
<LI><em>Date</em>: Thu, 11 Mar 1999 13:26:04 -0800</LI>
<LI><em>Reply-To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI>
<LI><em>Sender</em>: <A HREF="mailto:mud-dev-admin#kanga,nu">mud-dev-admin#kanga,nu</A></LI>
</UL>
<!--X-Head-of-Message-End-->
<!--X-Head-Body-Sep-Begin-->
<HR>
<!--X-Head-Body-Sep-End-->
<!--X-Body-of-Message-->
<PRE>
On 08:39 AM 3/11/99 -1000, I personally witnessed Nathan F Yospe jumping up
to say:
&gt;On Wed, 10 Mar 1999, Caliban Tiresias Darklock wrote:
&gt;
&gt;Of course, I have none of your qualms about a dedicated
&gt;client...

The primary reason I don't like dedicated clients is that I want to play
all my games from the same client. I play too many different kinds of games
to lock myself into some dedicated thing. I would consider it virtually
mandatory to release the protocol specs to the community, so a thoughtful
client author could add support for your server to his own client.
(Usually, this happens because a half-dozen persistent players bother him
to add it -- and it helps a lot when they can point him at a detailed
description of the implementation.)

&gt;Perhaps a few minor alterations:
&gt;
&gt;In the preferences, a default server and port... perhaps linked to the game,
&gt;with a reset default configuration for a host-server that provides a list of
&gt;known games that support the client and sets the default to a chosen game; I
&gt;can always make that more robust. 

An added bonus; since you have something monitoring the load, it can spawn
and kill port monitors when the load rises and falls. It might be helpful
to look at some FTP server source... instead of spawning connections on
unprivileged port random-X, you spawn listeners on it.

&gt;The client should be able to make two or
&gt;more connections... I'm still mulling on that.

Shouldn't be that tough, really. You just have two sockets; one for
negotiation, one for connection. When a request to reconn comes over a
connection socket, you state-change it to negotiation and use the other one
for connection. Ideally, the user never has to see anything happening. 

A potential problem, which you should cover somehow, is how to handle it
when server 1 says to connect to server 2 but server 2 is down. The player
should still have his connection to server 1, and be able to say that
server 2 is not responding without being bodily kicked off the server.
There's also the possibility that between "go here" and the client going
there, the other port's listener has somehow died or gotten overloaded. You
want to AVOID the possibility of something like "go here, no go there, no
go here, no there, CONNECTION REFUSED, NO CARRIER" (apologies for the
archaic terminology there, but it's quick and concise and nothing else is).
You need some sort of "cant do it" response which will allow the player to
stay right where he is and not get booted.

There are a lot of potential pitfalls, but you have to strike a balance
somewhere between covering problems and actually writing the code. It's
possible to think too much about the details, and not get around to
actually doing anything.

&gt;:The obvious extension to this is to manage distributed machines. 
&gt;
&gt;Yes; and possibly to use this to pass clients to remote servers when
&gt;their character has been transfered as well. 

Exactly. I'm working on something similar to this myself... but I really
don't like the idea, so I'm not investing much in it. It's sort of a
grudging acknowledgement that people will want this, and if it's an
"obvious" extension, they'll bother me to do it. (See the half-dozen users
up there bothering the client author? Server authors tend to have a
half-THOUSAND users bothering them.)

-----
| Caliban Tiresias Darklock            caliban#darklock,com 
| Darklock Communications          <A  HREF="http://www.darklock.com/">http://www.darklock.com/</A> 
| U L T I M A T E   U N I V E R S E   I S   N O T   D E A D 
| 774577496C6C6E457645727355626D4974H       -=CABAL::3146=- 


_______________________________________________
MUD-Dev maillist  -  MUD-Dev#kanga,nu
<A  HREF="http://www.kanga.nu/lists/listinfo/mud-dev">http://www.kanga.nu/lists/listinfo/mud-dev</A>


</PRE>

<!--X-Body-of-Message-End-->
<!--X-MsgBody-End-->
<!--X-Follow-Ups-->
<HR>
<ul compact><li><strong>Follow-Ups</strong>:
<ul>
<li><strong><A NAME="00540" HREF="msg00540.html">[MUD-Dev] Multiple clients (was Re: How to support 1000+ simultaneous connections)</A></strong>
<ul compact><li><em>From:</em> "Matthew D. Fuller" &lt;fullermd#futuresouth,com&gt;</li></ul>
</UL></LI></UL>
<!--X-Follow-Ups-End-->
<!--X-References-->
<UL><LI><STRONG>References</STRONG>:
<UL>
<LI><STRONG><A NAME="00522" HREF="msg00522.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</A></STRONG>
<UL><LI><EM>From:</EM> Caliban Tiresias Darklock &lt;caliban#darklock,com&gt;</LI></UL></LI>
<LI><STRONG><A NAME="00533" HREF="msg00533.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections,  andsome philosophy.</A></STRONG>
<UL><LI><EM>From:</EM> Nathan F Yospe &lt;yospe#hawaii,edu&gt;</LI></UL></LI>
</UL></LI></UL>
<!--X-References-End-->
<!--X-BotPNI-->
<UL>
<LI>Prev by Date:
<STRONG><A HREF="msg00535.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections, andsome philosophy.</A></STRONG>
</LI>
<LI>Next by Date:
<STRONG><A HREF="msg00537.html">[MUD-Dev] Elder Games</A></STRONG>
</LI>
<LI>Prev by thread:
<STRONG><A HREF="msg00533.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections,  andsome philosophy.</A></STRONG>
</LI>
<LI>Next by thread:
<STRONG><A HREF="msg00540.html">[MUD-Dev] Multiple clients (was Re: How to support 1000+ simultaneous connections)</A></STRONG>
</LI>
<LI>Index(es):
<UL>
<LI><A HREF="index.html#00536"><STRONG>Date</STRONG></A></LI>
<LI><A HREF="thread.html#00536"><STRONG>Thread</STRONG></A></LI>
</UL>
</LI>
</UL>

<!--X-BotPNI-End-->
<!--X-User-Footer-->
<!--X-User-Footer-End-->
<ul><li>Thread context:
<BLOCKQUOTE><UL>
<LI><STRONG>Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</STRONG>, <EM>(continued)</EM>
<ul compact>
<ul compact>
<LI><strong><A NAME="00525" HREF="msg00525.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</A></strong>, 
Ben Greear <a href="mailto:greear#cyberhighway,net">greear#cyberhighway,net</a>, Thu 11 Mar 1999, 03:24 GMT
</LI>
</ul>
<LI><strong><A NAME="00521" HREF="msg00521.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</A></strong>, 
Chris Gray <a href="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA">cg#ami-cg,GraySage.Edmonton.AB.CA</a>, Thu 11 Mar 1999, 02:51 GMT
<UL>
<LI><strong><A NAME="00522" HREF="msg00522.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</A></strong>, 
Caliban Tiresias Darklock <a href="mailto:caliban#darklock,com">caliban#darklock,com</a>, Thu 11 Mar 1999, 03:13 GMT
<UL>
<LI><strong><A NAME="00533" HREF="msg00533.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections,  andsome philosophy.</A></strong>, 
Nathan F Yospe <a href="mailto:yospe#hawaii,edu">yospe#hawaii,edu</a>, Thu 11 Mar 1999, 18:40 GMT
<UL>
<LI><strong><A NAME="00536" HREF="msg00536.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections,  and some philosophy.</A></strong>, 
Caliban Tiresias Darklock <a href="mailto:caliban#darklock,com">caliban#darklock,com</a>, Thu 11 Mar 1999, 21:30 GMT
<UL>
<LI><strong><A NAME="00540" HREF="msg00540.html">[MUD-Dev] Multiple clients (was Re: How to support 1000+ simultaneous connections)</A></strong>, 
Matthew D. Fuller <a href="mailto:fullermd#futuresouth,com">fullermd#futuresouth,com</a>, Fri 12 Mar 1999, 02:21 GMT
<UL>
<LI><strong><A NAME="00549" HREF="msg00549.html">Re: [MUD-Dev] Multiple clients (was Re: How to support 1000+ simultaneous connec</A></strong>, 
Marc Bowden <a href="mailto:ryumo#merit,edu">ryumo#merit,edu</a>, Fri 12 Mar 1999, 12:17 GMT
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
<LI><strong><A NAME="00528" HREF="msg00528.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</A></strong>, 
Oliver Jowett <a href="mailto:icecube#ihug,co.nz">icecube#ihug,co.nz</a>, Thu 11 Mar 1999, 04:28 GMT
</LI>
<LI><strong><A NAME="00529" HREF="msg00529.html">Re: [MUD-Dev] How to support 1000+ simultaneous connections, and some philosophy.</A></strong>, 
Jason Spangler <a href="mailto:stormwind#wombatgames,com">stormwind#wombatgames,com</a>, Thu 11 Mar 1999, 05:07 GMT
</LI>
</UL>
</LI>
</ul>
</LI>
</UL></BLOCKQUOTE>

</ul>
<hr>
<center>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
</center>
<hr>
</body>
</html>