Howto:Set up a multiplayer server: Difference between revisions

Jump to navigation Jump to search
m
no translations
m (no translations)
Line 1: Line 1:
{{Languages|Howto: Set up a multiplayer server}}
How to use [[FlightGear Multiplayer Server]]
= Intro =
This page is dedicated to providing a short overview about installing the [[FlightGear Multiplayer Server]] ('fgms'). The reader is assumed to be reasonably familiar with working in a Unix/Linux shell environment.
This page is dedicated to providing a short overview about installing the [[FlightGear Multiplayer Server]] ('fgms'). The reader is assumed to be reasonably familiar with working in a Unix/Linux shell environment.


= Pre-Requisites =
== Pre-Requisites ==
* A computer running a variant of *nix to compile and host the server. Speed of the machine isn't of great consequence as the protocol is a multiplexer which doesn't require much processing grunt.
* A computer running a variant of *nix to compile and host the server. Speed of the machine isn't of great consequence as the protocol is a multiplexer which doesn't require much processing grunt.
* direct/physical or remote access to the server (i.e. SSH/telnet, a conventional web hosting package will usually '''not''' be sufficient!)-suitable hosting packages are: dedicated root servers, virtual private servers, shell servers - for a collection of '''free''' shell account providers that may be suitable for fgms, see [[Free Shell Providers]] (you may want to check this out if you are interested in running fgms but don't have hosting yet)
* direct/physical or remote access to the server (i.e. SSH/telnet, a conventional web hosting package will usually '''not''' be sufficient!)-suitable hosting packages are: dedicated root servers, virtual private servers, shell servers - for a collection of '''free''' shell account providers that may be suitable for fgms, see [[Free Shell Providers]] (you may want to check this out if you are interested in running fgms but don't have hosting yet)
Line 16: Line 11:
* about 5-10 MB of hard disk space (mainly required for building the binary)
* about 5-10 MB of hard disk space (mainly required for building the binary)


= Traffic & Bandwidth Considerations =
== Traffic & Bandwidth Considerations ==


Note: Currently (May 2008), the server code basically boils down to a packet multiplexer (i.e. most data is -unconditionally- transmitted to all 'active' clients), which may thus create considerable amounts of traffic; this ought to be taken into consideration due to bandwidth limitations in most hosting packages (i.e. '''fgms may create considerable amounts of traffic!'''). For basic calculations: inbound traffic is 25 Kilobit per second while outbound is 25 Kbits per second for each plane/client that can 'see' another.  
Note: Currently (May 2008), the server code basically boils down to a packet multiplexer (i.e. most data is -unconditionally- transmitted to all 'active' clients), which may thus create considerable amounts of traffic; this ought to be taken into consideration due to bandwidth limitations in most hosting packages (i.e. '''fgms may create considerable amounts of traffic!'''). For basic calculations: inbound traffic is 25 Kilobit per second while outbound is 25 Kbits per second for each plane/client that can 'see' another.  
Line 30: Line 25:
[http://www.gidenstam.org/FlightGear/fgms/fgms_bandwidth_estimates.txt brief note on the theoretical bandwidth behaviour of fgms.]
[http://www.gidenstam.org/FlightGear/fgms/fgms_bandwidth_estimates.txt brief note on the theoretical bandwidth behaviour of fgms.]


== Facts ==
=== Facts ===
In March 2008, the main fgms multiplayer server (pigeond.net) was reported to consume approximately 15 gb of bandwidth per '''day''', with an average throughput of 200 kB/sec and peak loads of up to ~ 650 kB/sec [http://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg16016.html].
In March 2008, the main fgms multiplayer server (pigeond.net) was reported to consume approximately 15 gb of bandwidth per '''day''', with an average throughput of 200 kB/sec and peak loads of up to ~ 650 kB/sec [http://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg16016.html].


Line 37: Line 32:
In September 2009, mpserver 05 had a massive peak bandwidth of 1.0 MB/sec. Average bandwidth consumed was about 9 GB of bandwidth per day. The average bandwidth usage per day is climbing due to more users moving from 02 to 05.
In September 2009, mpserver 05 had a massive peak bandwidth of 1.0 MB/sec. Average bandwidth consumed was about 9 GB of bandwidth per day. The average bandwidth usage per day is climbing due to more users moving from 02 to 05.


== Reducing bandwidth requirements ==
=== Reducing bandwidth requirements ===
Total network traffic is mainly determined by the number of active clients that 'see eachother' and configured mirrors.  
Total network traffic is mainly determined by the number of active clients that 'see eachother' and configured mirrors.  
If traffic considerations are relevant, the following options exist to reduce overall server/network load:
If traffic considerations are relevant, the following options exist to reduce overall server/network load:
Line 47: Line 42:
* for local testing/development purposes, you may want to run only a private fgms session, that may be specific to your LAN or even computer.
* for local testing/development purposes, you may want to run only a private fgms session, that may be specific to your LAN or even computer.


== Hosting Packages known to be suitable for fgms hosting ==
=== Hosting Packages known to be suitable for fgms hosting ===
(yet to be filled in)
(yet to be filled in)


= Getting fgms =
== Getting fgms ==


* download the latest stable version via http://fgms.sourceforge.net/stableversion.php / http://fgms.sourceforge.net/download.php, follow the instructions
* download the latest stable version via http://fgms.sourceforge.net/stableversion.php / http://fgms.sourceforge.net/download.php, follow the instructions
Line 60: Line 55:
  $ FGMSURL=http://www.o-schroeder.de/fg_server/fgms-0.9.11.tar.gz wget $FGMSURL
  $ FGMSURL=http://www.o-schroeder.de/fg_server/fgms-0.9.11.tar.gz wget $FGMSURL


= Compiling FGMS =
== Compiling FGMS ==
('''Note:''' if you want to build/install fgms using customized paths or settings (i.e. as non-root user, installing into your $HOME), you may want to consult the INSTALL file located in the source directory for additional help)
('''Note:''' if you want to build/install fgms using customized paths or settings (i.e. as non-root user, installing into your $HOME), you may want to consult the INSTALL file located in the source directory for additional help)


Line 73: Line 68:
(In general, on any current machine this should ''not'' take any longer than 30-60 seconds)
(In general, on any current machine this should ''not'' take any longer than 30-60 seconds)


= Setting up the config file =
== Setting up the config file ==


At this point you should have a working fgms binary in the directory ''src/server'', so copy fgms_example.conf to fgms.conf and edit it to suit your situation. If the server will be offline or for private use (i.e. LAN-only, please comment out the relay servers section. This will save bandwidth from the server being consumed.
At this point you should have a working fgms binary in the directory ''src/server'', so copy fgms_example.conf to fgms.conf and edit it to suit your situation. If the server will be offline or for private use (i.e. LAN-only, please comment out the relay servers section. This will save bandwidth from the server being consumed.


= Installation =
== Installation ==


To install fgms, type ''make install''.
To install fgms, type ''make install''.
Line 86: Line 81:
Depending on whether ~/bin exists already and is already specified in your $PATH environment variable, you may also want to add this folder to $PATH.
Depending on whether ~/bin exists already and is already specified in your $PATH environment variable, you may also want to add this folder to $PATH.


= Running FGMS for the first time =
== Running FGMS for the first time ==


In addition to its configuration file, FGMS supports a number of configuration parameters that can be passed at startup (and that will by default override any configuration file settings), to get a summary of supported parameters, you may want to run:
In addition to its configuration file, FGMS supports a number of configuration parameters that can be passed at startup (and that will by default override any configuration file settings), to get a summary of supported parameters, you may want to run:
Line 114: Line 109:
If you'd like to make it a public server, you can simply use your external (public) IP address to set up the multiplayer in fgfs.
If you'd like to make it a public server, you can simply use your external (public) IP address to set up the multiplayer in fgfs.


=Related articles=
==Related content==
*[[MPmap]]
* [[Howto: Multiplayer]]
*[[Howto: Multiplayer]]
* [[MPmap]]
 
 


[[Category:Howto|Set up a multiplayer server]]
[[Category:Howto|Set up a multiplayer server]]

Navigation menu