Performance Problems
OldSam
Join Date: 2003-10-30 Member: 22133Members
<div class="IPBDescription">bad pings with more than ca. 8 players</div> Hi,
first I have a question about the hardware-requirements for an Linux-hlds-Server with NS-2.01 for 16-20
players (slots). I have a Server with a 2 Ghz Celeron Cpu, 256MB RAM (unfortunately not more...) and a broadband-ethernet-connection about 100Mbit/s. In my opinion this should be enough for a small dedicated game-server, right? When there are only a few players on my server pings are really good (some get 30ms) but with more than ca. 8-10 players pings really suck and go up to an average about 300ms :-(
I watched the cpu and ram-usage via top and some other utils and the values are mostly about 50% cpu and 30% ram so far away from limit...
So, if the hardware is good enough (I think so?!) ..then the question is - what could be wrong or what could I do?
Ok, I'll describe here in short what I did so far:
Normal install from hlds_l_3110_full.tar.gz and I patched with hlds_l_3111d_update.tar.gz.
I installed a new metamod_i386.so, cheating death 4.5.0 and amx-0.9.3.
I start the hlds-process as user "hlds" (not as root due to security) just with a
command like this:
./hlds_run -game ns +exec server.cfg +ip ..... +maxplayers 18 +map ns_bast
I also tried it with -pingboost 1 but that doesn't seem to affect much, -pingboost 3 slows things really down, because then cpu-usage goes near 100%! :/
- And I even tried it with a optimized self-compiled kernel 2.4.22-cck3 that should bring better latency and so on but actually nothing really helped...
Plz help me
<!--emo&;)--><img src='http://www.unknownworlds.com/forums/html/emoticons/wink.gif' border='0' style='vertical-align:middle' alt='wink.gif'><!--endemo-->
Greetz
OldSam
first I have a question about the hardware-requirements for an Linux-hlds-Server with NS-2.01 for 16-20
players (slots). I have a Server with a 2 Ghz Celeron Cpu, 256MB RAM (unfortunately not more...) and a broadband-ethernet-connection about 100Mbit/s. In my opinion this should be enough for a small dedicated game-server, right? When there are only a few players on my server pings are really good (some get 30ms) but with more than ca. 8-10 players pings really suck and go up to an average about 300ms :-(
I watched the cpu and ram-usage via top and some other utils and the values are mostly about 50% cpu and 30% ram so far away from limit...
So, if the hardware is good enough (I think so?!) ..then the question is - what could be wrong or what could I do?
Ok, I'll describe here in short what I did so far:
Normal install from hlds_l_3110_full.tar.gz and I patched with hlds_l_3111d_update.tar.gz.
I installed a new metamod_i386.so, cheating death 4.5.0 and amx-0.9.3.
I start the hlds-process as user "hlds" (not as root due to security) just with a
command like this:
./hlds_run -game ns +exec server.cfg +ip ..... +maxplayers 18 +map ns_bast
I also tried it with -pingboost 1 but that doesn't seem to affect much, -pingboost 3 slows things really down, because then cpu-usage goes near 100%! :/
- And I even tried it with a optimized self-compiled kernel 2.4.22-cck3 that should bring better latency and so on but actually nothing really helped...
Plz help me
<!--emo&;)--><img src='http://www.unknownworlds.com/forums/html/emoticons/wink.gif' border='0' style='vertical-align:middle' alt='wink.gif'><!--endemo-->
Greetz
OldSam
Comments
Is this what it really is? or is that just the Network card that you have in the Machine?
Where is the server located? Does the network have bandwidth restrictions?
Here's the reasoning: the 8 player limit sounds like a cable/DSL connection, hence the ping jumps. When you can verify that there isn't a problem with the service provider of your bandwidth, then I advise that you start looking at your computer, but overall it looks like a problem with your connection, and not with your computer.
<i>Pebbs</i>
Is this what it really is? or is that just the Network card that you have in the Machine?
<!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->
<!--QuoteEnd--> </td></tr></table><span class='postcolor'> <!--QuoteEEnd-->
Your explanation of the problem is good but I don't think it is the key to my special situation...
The server is located at 1&1 one of the greatest european isp's, so the 100Mbit/s is the connection to their network (-> backbone), but of course I don't have all this bandwith for my own. After some badwith-tests I don't think this is the bottleneck: When I download with ftp or something I get dl-rates of about 360Kb/s to another broadband-point at a differnet isp, this is not bad in my opinion but it seems that it is even more the limit of the other isp and not of my server. Anyway, if I calculate: One Halflife-Connection shouldn't need more than 5Kb/s -> So for 16 players 5x16 this would be 80Kb/s which is clearly under the bandwith-limit... (I play with 2 Computers over one isdn-line, so I don't even get the 5Kb/s for one player but I have playable pings ~60ms if I play on other public NS-Servers).
I heard about this, too...
If this is true I ask myself: What are the valve-developers paid for? <!--emo&:D--><img src='http://www.unknownworlds.com/forums/html/emoticons/biggrin.gif' border='0' style='vertical-align:middle' alt='biggrin.gif'><!--endemo-->
..But, ok.. I'll try if it works for me, but unfortunately this leaves some security-holes open which were fixed in the patches.
As I wrote I have a ethernet-connection so of course it is sync-speed in both directions...
And btw my sample meant the upstream of my server because I downloaded from the other point <!--emo&;)--><img src='http://www.unknownworlds.com/forums/html/emoticons/wink.gif' border='0' style='vertical-align:middle' alt='wink.gif'><!--endemo-->
As I wrote I have a ethernet-connection so of course it is sync-speed in both directions...
And btw my sample meant the upstream of my server because I downloaded from the other point <!--emo&;)--><img src='http://www.unknownworlds.com/forums/html/emoticons/wink.gif' border='0' style='vertical-align:middle' alt='wink.gif'><!--endemo--> <!--QuoteEnd--> </td></tr></table><span class='postcolor'> <!--QuoteEEnd-->
No, downloading = downstream.
What can you upload to the server at? FTP into the server and upload a file from that remote point.
exactly <!--emo&:)--><img src='http://www.unknownworlds.com/forums/html/emoticons/smile.gif' border='0' style='vertical-align:middle' alt='smile.gif'><!--endemo-->
It really sounds as if the limiting factor is the upstream bandwidth. When you did a measurement of your download speed did you use a metering program or did you just look at the guestimate that the windows IE download program gives you. This is important because unless you download a file that allows a sustainded transfer, IE can be inaccurate since it averages its measurements.
Try downloading and installing <a href='http://readerror.gmxhome.de/' target='_blank'>this freeware application</a> to meter your bandwidth second-by-second while you download from your server.
Remember, you want to download over the internet to simulate how players will be connecting to the server, downloading over a LAN will show you nothing.
On another note pingboost will raise your CPU usage quite a bit. Pingboost 1 has the least effect on both pings and CPU usage and Pingboost 3 has the greatest effect by removing all "waits" from the process.
Why u don't believe me? <!--emo&;)--><img src='http://www.unknownworlds.com/forums/html/emoticons/wink.gif' border='0' style='vertical-align:middle' alt='wink.gif'><!--endemo-->
A last evidence... ^^
I copied two sample files via ftp in both ways to another server:
(and of course the speed is (nearly) the same - because uploading <to> another server is the same as downloading <from> my server... =))
mput ram-kq52.r0*
ram-kq52.r00: 14.31 MB 1.41 MB/s
ram-kq52.r01: 14.31 MB 1.99 MB/s
mget ram-kq52.r0*
ram-kq52.r00: 14.31 MB 1.55 MB/s
ram-kq52.r01: 14.31 MB 1.65 MB/s
Ok, I hope now there are other suggestions than bandwith ;-)
I have now tested the difference between the old patch 3110 and the new 3111 and found
out that the old one really goes faster for me!
-> seems that the new patch sucks.
Now -with the old patch- I got pings of ca. 140ms with 12 players which is not really good but its playable.
With the new patch I had pings about 300ms (also with 12 players) <- that was horrible <!--emo&:p--><img src='http://www.unknownworlds.com/forums/html/emoticons/tounge.gif' border='0' style='vertical-align:middle' alt='tounge.gif'><!--endemo-->
Now here are the values I tested with the old-patch:
With 12 Players 51.8% CPU 28.4% RAM
Are there any other tuning-tricks you can recommend?
use hlds booster <-- good way to get ur cpu at 100% usage and lag everyone
use hlguard <-- good way to spam everyone with random random commands
wait, don't use those i mean <!--emo&:)--><img src='http://www.unknownworlds.com/forums/html/emoticons/smile.gif' border='0' style='vertical-align:middle' alt='smile.gif'><!--endemo-->
Running 3110c-boffix hlds, with 15 players cpu eats around 40-50%
As for 3111+: IT SUCKS!!!! Really, got no way to get the performance like 3110