Jump to content
Sign in to follow this  
gossamersolid

Help me Find a good Server Config for my Specs

Recommended Posts

Right now we have problems that we didn't seem to have problems on our old server (same specs, but we had different configs back then. Long story short, we no longer have possession of that server so we lost the configs).

We're looking to get a config that works better for our server (less strain on the CPU mainly). We're definetly getting more server FPS issues than before.

Server Specs:

Xeon 4 Cores @ 2.27Ghz

4GB DDR3

100mbit Connection

Here's my current server config:

MinBandwidth=15000000;
MaxBandwidth=100000000;
MaxMsgSend=1024;
MaxSizeGuaranteed=1024;
MaxSizeNonguaranteed=64;
MinErrorToSend=0.0024999999;
MaxCustomFileSize=0;

Can anybody chime in with some improvements we could make to our server config?

NOTE: These are the values from the Kelly's Heroes A2 server tutorial.

Share this post


Link to post
Share on other sites

Well...

Since you have posted the pipe is 100Mbps, why would you use 15Mbps as a minbandwidth? Even guessing for overhead should be between 88 and 92Mbps.

Bandwidth is typically the issue, you should have little to no problems.

I've been doing some research on the MaxMsgSend, and the MaxSizeGuaranteed, MaxSizeNonguaranteed. If MaxMsgSend is actually how many packets the server can send, in one simulation cycle, and MaxSizeGuaranteed is the packet. Then MaxMsgSend can be a very high number.

Example 100Mbps can send 12,207 1,024byte packets.

Somewhere I read that smaller packets is better for gaming than larger packets, and that larger packets are better for file transferring. But, thats using TCP, UDP is mostly used for gaming, and is connectionless and does not ack. With this, I have been experimenting with:

MaxMsgSend=2048;

MaxSizeGuaranteed=128;

MaxSizeNonguaranteed=64;

Because my upload speed is 2.2Mbps, which should be capable of 2148 packets at 128byte size. Giving myself a little headroom, there.

Then I also read somewhere, that TCP treats packets smaller than 64bytes, as a fragmented packet. Which would be bad for gaming, but again we're using UDP here. So, with that in mind, MaxSizeNonguaranteed shouldn't be less than 64bytes.

Hopefully someone else has more information, because mostly, the config file lets you fine tune network settings, and not really how the cpu runs the server. Pretty much go with the fastest CPU you can get and goo-gob's of ram!

...Syn...

Edited by VisceralSyn
typos and other grammatical errors, as usual...

Share this post


Link to post
Share on other sites

I'll try that MaxMsgSend value you posted.

But you said that with high bandwidth you should send larger packets, why are you using 128 and 64 for those MaxSizex values?

Share this post


Link to post
Share on other sites

Because everywhere else, I'm finding that large packets are for file transferring, and that gaming wants to use smaller packets.

More Smaller packets, vs Less Larger packets. and thats where I've been playing around.

I do note, that it seems to be less strain on the cpu with more smaller packets, than with packets larger than 512Bytes. but with the Larger packets, I see the server bandwidth stay closer to my 2Mbps upload. With the smaller packets, it seems to fluctuate alot more on the lesser than 2Mbps upload speed. Hard to judge, other than to keep testing different settings.

...Syn...

Share this post


Link to post
Share on other sites

So then I should set my MaxMsgSend way lower.

Remember what I said, Bandwidth isn't the issue here. I'm trying to work around the hardware I'm provided with.

Share this post


Link to post
Share on other sites

Do some research...

If you set your MaxMsgSend lower, you will limit the bandwidth the server uses. Find the smallest packet the server will send, then set the MaxMsgSend to use the maximum bandwidth you have.

Bandwidth shouldn't be an issue, because you have so much. But if you do not determine the optimal usage of said bandwidth, then its wasted.

With the guideline, that for TCP, 64byte packets are the smallest that it uses, before it determines its a fragmented packet. UDP *should* be able to go smaller, because it doesn't acknowledge.

I'm currently down to MaxMsgSend=4096; MaxSizeGuaranteed=64, and MaxSizeNonguaranteed=32; 2Mbps upload pipe to work with.

PacketsPerSecond Tool

Try that to see what I'm talking about, PPS and MaxMsgSend, should be the same term.

...Syn...

Share this post


Link to post
Share on other sites

Excellent thread guys! About time we got this stuff out in the open!

A fellow clan told me (and I confirmed) that JIP Lag and CPU stress are increased when you increase MinBandwidth/MaxBandwidth to those values.

Judging from watching stats while playing games, bandwidth per player ranges between 256kbps and 512kbps. Depending on your average missions, you want to use those numbers to work out the values. Currently I'm using the following:

language="English";
adapter=-1;
3D_Performance=1;
Resolution_Bpp=32;
Windowed=0;
MaxMsgSend=2048;
MaxSizeGuaranteed=1024;
MaxSizeNonguaranteed=64;
MinErrorToSend=0.0025;
MinBandwidth=4096000;
MaxBandwidth=16384000;

Share this post


Link to post
Share on other sites
Excellent thread guys! About time we got this stuff out in the open!

A fellow clan told me (and I confirmed) that JIP Lag and CPU stress are increased when you increase MinBandwidth/MaxBandwidth to those values.

Judging from watching stats while playing games, bandwidth per player ranges between 256kbps and 512kbps. Depending on your average missions, you want to use those numbers to work out the values. Currently I'm using the following:

language="English";
adapter=-1;
3D_Performance=1;
Resolution_Bpp=32;
Windowed=0;
MaxMsgSend=2048;
MaxSizeGuaranteed=1024;
MaxSizeNonguaranteed=64;
MinErrorToSend=0.0025;
MinBandwidth=4096000;
MaxBandwidth=16384000;

I'll have to give these settings a try.

I don't really get much time to be fiddling with the bandwidth settings and testing so much.

Share this post


Link to post
Share on other sites

I'm not sure what your point is, Jman. If you do not define the bandwidth requirements, then the application does what it wants.

retarded?

Altering the MaxMsgSend, and the packet size, I managed to configure the server to use 100Mbps-LAN, and it sent me 12Mbps to just me alone.

Do what you will of others' information, or do your own research?

...Syn...

Edited by VisceralSyn
typos's and other grammatical errors

Share this post


Link to post
Share on other sites

Chill out my friend, my point was to point the thread starter to the linked thread which contains much of the information required since this has been asked many, many times before.

Share this post


Link to post
Share on other sites

Sorry but what you linked to was a single post that illustrates more of the typical guesswork on this subject. The type of experimentation and calculation that Syn is engaged in and which has the potential to yield maximal usage of available bandwidth (i.e. hopefully no more warping on a LAN) is long overdue.

Syn, I'd be very interested in seeing your cfg's in full (both for LAN and 2mbs Up).

Share this post


Link to post
Share on other sites

Whatever and FYI it's not 'guess work'. Cross did some extensive testing on this subject, PM if you like. I'll leave you chaps to it.

Edited by [KH]Jman

Share this post


Link to post
Share on other sites

The Kelly's Heroes configs are the benchmark for many server admins.

Re bandwidth, if your server cpu can take then load, then pump it up. Otherwise it will have the opposite effect.

Share this post


Link to post
Share on other sites

Anyone can put up a webpage, it doesn't endow the information contained with any significance or accuracy and the fact that it's the only web page on the subject (and/or its contents frequently quoted or linked to) doesn't make it a benchmark, just the only one. Those numbers have never stacked up for me but I've never been willing to invest the time time required for a decent analysis and I'm very pleased somebody finally is. If Syn's config can require 12Mbps for a single LAN client then clearly saying "[...to utilise maxbandwidth] you'll need to have 120-130 people playing" betrays a significant gap in understanding, to infer the thread linked to already has all the answers is patently ludicrous.

Share this post


Link to post
Share on other sites

Smaller packet sizes, with the MinErrorToSend, has provided less stutter in MP. That last 100Mbps LAN test where I got 12Mbps was the last time I did a LAN test, all changes have been using the 2Mbps uppipe, and my brit gamin bud.

If I was to do a 100Mbps LAN config it would be:

MaxMsgSend=204800;

MaxSizeGuaranteed=64;

MaxSizeNonguaranteed=32;

MinBandwidth=92000000;

MaxBandwidth=100000000;

MinErrorToSend=0.001; // Any lower is just as bad as 0.1

Which should leave room for overhead. And, I might get to test that this weekend. For now, I'm trying to find where I read, setting packets as large as they can be is for file transferring, and Gaming should use much smaller packet sizes.

Then to determine, how much like TCP, UDP is.

Kelly's setting didn't make much sense to me either. And, no-one has gone thru and explained the config's tuning options. Which have the exact same information since Operation Flashpoint.

...Syn...

Edited by VisceralSyn
typos and other grammatical errors, as usual...

Share this post


Link to post
Share on other sites

This is great info guys, and im grateful (and im sure most admins are) but lets not Diss the one bunch of guys that up until now have been the only peeps to actually try and help us out (us= useless admins like myself) without them I would have still been on stock settings..

So thanks Kellys heroes..

going to try these new settings this evening.....

Thankyou very much for these...

Share this post


Link to post
Share on other sites
Smaller packet sizes, with the MinErrorToSend, has provided less stutter in MP. That last 100Mbps LAN test where I got 12Mbps was the last time I did a LAN test, all changes have been using the 2Mbps uppipe, and my brit gamin bud.

If I was to do a 100Mbps LAN config it would be:

MaxMsgSend=204800;

MaxSizeGuaranteed=64;

MaxSizeNonguaranteed=32;

MinBandwidth=92000000;

MaxBandwidth=100000000;

MinErrorToSend=0.001; // Any lower is just as bad as 0.1

Which should leave room for overhead. And, I might get to test that this weekend. For now, I'm trying to find where I read, setting packets as large as they can be is for file transferring, and Gaming should use much smaller packet sizes.

Then to determine, how much like TCP, UDP is.

Kelly's setting didn't make much sense to me either. And, no-one has gone thru and explained the config's tuning options. Which have the exact same information since Operation Flashpoint.

...Syn...

So with these settings it would technically use all of 100mbps?

Share this post


Link to post
Share on other sites

Yes, 204,800 64byte packets equals 100Mbps. Do note, thats not counting for overhead, 100Mbps is impossible to reach on a 100Mbps LAN connection.

After some more scouring the internet for more information on UDP, I think i can nail down the stuttery AI. UDP, while connectionless, also does not guarantee delivery or order. So if a client receives packets out of order, it drops it. Since unit location updates fall under MaxSizeNonguaranteed, I have commented the line out. In case its buffering to fill the packet, instead of just sending the information. Currently testing my server with:

MaxMsgSend=8192;

MaxSizeGuaranteed=32;

// MaxSizeNonguaranteed=;

MinBandwidth=2000000;

MaxBandwidth=2200000;

MinErrorToSend=0.001;

I got to fire it up this morning, seems to be less CPU utilization on Warfare BE 2.066. Will monitor CPU usage during the day, when I get off, will try to get some clients in it. To double check AI stutter, which I noted, was amazingly less when I started the mission.

...Syn...

Share this post


Link to post
Share on other sites

could you tell me.... If im not using ANY AI would these settings improve our server ?

Share this post


Link to post
Share on other sites

You would need to set your server, in accordance with the bandwidth availible to your server.

If there is little to no AI, then scripts would be the next resource to bog down the processor. If you have the stutter of other units, and you have the MinErrorToSend=0.001; then the next parameter to start working with is the packetsize regarding unit updates. MaxSizeNonguaranteed. AI units are not the only cause of processor usage, from what I'm finding the stutter everyone hates is a cause of UDP, dropping packets that are out of order. But AI units aren't the only thing that needs updates.

Test of commenting out the MaxSizeNonguaranteed, so far CPU usage is down, just over 3 hours later.

...Syn...

Edited by VisceralSyn
typos, and other grammatical errors...

Share this post


Link to post
Share on other sites

I have run the Benchmark mission (from the other thread) on both of your latest cfg's and I am getting lower server fps than my original KH setup....

will give it a go this evening on Pvp Missions to see how it plays out buddy... will update tomorrow.

(regards to cpu, no noticeble diff with our server)

Share this post


Link to post
Share on other sites

MaxMsgSend=204800;

MaxSizeGuaranteed=64;

MaxSizeNonguaranteed=32;

MinBandwidth=92000000;

MaxBandwidth=100000000;

MinErrorToSend=0.001

Tried those settings.... PvP with only about 7 peeps on...Low cpu yes............ Desync on server was through the roof.. everyone had around 10000.... unplayable matey... had to revert to original

---------- Post added at 23:11 ---------- Previous post was at 23:10 ----------

I guess, your settings maybe ok for lan but sadly not dedicated server

least not the ones I tested

Share this post


Link to post
Share on other sites

What if it didn't work because your host doesn't "really" have a 100mbit connection? Unless you host your own, I've found that many server hosts out there usually have two or 3 different games on one PC, but they're all sharing not only system resources, but the 100mbps connection as well. Some are very shifty...

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×