[CF-Devel] Bug in cvs checkout on 09-Jan-2001?

Mark Wedel mwedel at scruz.net
Thu Jan 11 23:32:05 CST 2001


Michael Toennies wrote:
>
     
     
     >
     
      Thats also exactly what i think about it.
     
     >
     
      What are your plans for the linux client?
     
     >
     
      Will you also do a ping or simply list the metaserver servers?
     
     
 I don't have any plans to add ping or anything else.  metaserver list and thats
it.

 I will note that if the server list grows very long (say 30 or 40), then all
the server connects/disconnects can become costly on the client side.  I don't
know how your client currently does it (if it does all servers in parallel
(threaded), or does one, gets data, does next, etc), but either way, with a
large number of servers this could be problematic - if you do it parallel, then
all the requests the client is making could soak up enough bandwidth (especially
if the client is at the end of a slower connection) to skew the results, if you
do one at a time, then the time to check out 40 servers could be significant
enough to be annoying for the user.

 Especially if some of the servers are alive but fairly unresponsive (say the
connection between you and the server is dropping some packets, then those need
to get re-transmitted, and that could very well mean several second delays).

>
     
     
     >
     
      I find, we should stay set with the server ping, because it its useful
     
     >
     
      and its works, but we should give him always an eye when the user base
     
     >
     
      starts growing.
     
     >
     
     
     >
     
      Perhaps one time, we must decide to skip this feature.
     
     >
     
      Then the problem are the older client versions out there doing it.
     
     
 You probably want to at least add a toggle option even on the current DX
client.  As said, if the server base gets very large, it may not be desirable to
do it from a client perspective.

>
     
     
     >
     
      The good point of the direct server us ping way is, that we can more easier
     
     >
     
      change this (for example to change the server port as worst szenario) - if
     
     >
     
      we
     
     >
     
      start using real pings we have to shut down the ping cmd for the server to
     
     >
     
      end it
     
     >
     
      and thats starts some more problem (at last we not own the server hardware
     
     >
     
      in most times).
     
     
 changing server port is a pretty harsh scenario.  Especially because as an
oversite, the port is actually not reported to the metaserver.

 Note that most hosts support ping, so that is fairly trivial to do.  granted,
it can easily be disabled.

 It would be possible to the server to report to the metaserver at leasts its
local load.  For example, the server currently tracks its performance - each
tick is 120 ms (standard), and the server does track how many times its
processing for a tick took more than 120 ms as well as average time (do the
'time command for details).  so the server could report some of those details to
the metaserver, so at least the server loading is available (just looking at
players is not accurate, as obviously a p4-1500 will do a much better job than a
p1-100 with the same number of players).

 For now, I don't see any problem with the DX client doing its
connect/disconnect.  But we may need to revisit it later on.


>
     
     
     
    


More information about the crossfire mailing list