Server Capacity: Difference between revisions

From Bondix Wiki
No edit summary
No edit summary
Line 4: Line 4:
For simplicity, we'll calculate with 10 Mbps 24/7 with a 1 Gbps uplink and no congestion.
For simplicity, we'll calculate with 10 Mbps 24/7 with a 1 Gbps uplink and no congestion.


'''Clock speed'''
=== Clock speed ===


10 active Tunnels require 1GHZ CPU clock speed (x86 Intel Xeon or AMD Epic 2<sup>nd</sup> gen processors) which means 100 users/10 tunnels require 10 GHZ CPU clock speed.  
10 active Tunnels require 1GHZ CPU clock speed (x86 Intel Xeon or AMD Epic 2<sup>nd</sup> gen processors) which means 100 users/10 tunnels require 10 GHZ CPU clock speed.  
Line 10: Line 10:
So if your server has cores with CPU clock speeds of 2 GHZ per core, each of the cores could handle 20 tunnels/devices and you would need at least 5 cores to handle 100 tunnels + 1 additional core for the server itself.
So if your server has cores with CPU clock speeds of 2 GHZ per core, each of the cores could handle 20 tunnels/devices and you would need at least 5 cores to handle 100 tunnels + 1 additional core for the server itself.


'''RAM'''
=== RAM ===


Bondix S.A.NE needs 200 MB of RAM per environment on the S.A.NE server, so if you distribute your tunnels between 4 environments on the server (25 per environment), the server will use 800 MB of RAM for the environments and another 200 MB for general server functions.
Bondix S.A.NE needs 200 MB of RAM per environment on the S.A.NE server, so if you distribute your tunnels between 4 environments on the server (25 per environment), the server will use 800 MB of RAM for the environments and another 200 MB for general server functions.
Line 16: Line 16:
So the total here is at least 1 GB.
So the total here is at least 1 GB.


'''RAM for Bonding'''
=== RAM for Bonding ===


To be able to bond, Bondix S.A.NE needs 50 MB per tunnel. So in this example, 100 tunnels will require 5 GB of RAM on the server.
To be able to bond, Bondix S.A.NE needs 50 MB per tunnel. So in this example, 100 tunnels will require 5 GB of RAM on the server.
Line 22: Line 22:
So if we sum everything up in this example, we would need:
So if we sum everything up in this example, we would need:


<nowiki>6 cores of at least 2 GHZ Clock speed per core
<nowiki>- 6 cores of at least 2 GHZ Clock speed per core
6 GB of RAM
- 6 GB of RAM
1 Gbit/S Server Uplink
- 1 Gbit/S Server Uplink
to terminate 100 tunnels with an average load of 10 Mbit/s per tunnel 24/7.</nowiki>
to terminate 100 tunnels with an average load of 10 Mbit/s per tunnel 24/7.</nowiki>


So if your customer is aiming for 5 Mbps or lower, the same server will be able to terminate around 200 tunnels if RAM is increased to 12 GB since we need 50 MB per tunnel on the server side.
If your customers only need 5 Mbps or less, the same server will be able to terminate around 200 tunnels if RAM is increased to 12 GB since we need 50 MB per tunnel on the server side.

Revision as of 13:43, 31 July 2023

Guidelines on calculating Bondix S.A.NE Server capacity

For simplicity, we'll calculate with 10 Mbps 24/7 with a 1 Gbps uplink and no congestion.

Clock speed

10 active Tunnels require 1GHZ CPU clock speed (x86 Intel Xeon or AMD Epic 2nd gen processors) which means 100 users/10 tunnels require 10 GHZ CPU clock speed.

So if your server has cores with CPU clock speeds of 2 GHZ per core, each of the cores could handle 20 tunnels/devices and you would need at least 5 cores to handle 100 tunnels + 1 additional core for the server itself.

RAM

Bondix S.A.NE needs 200 MB of RAM per environment on the S.A.NE server, so if you distribute your tunnels between 4 environments on the server (25 per environment), the server will use 800 MB of RAM for the environments and another 200 MB for general server functions.

So the total here is at least 1 GB.

RAM for Bonding

To be able to bond, Bondix S.A.NE needs 50 MB per tunnel. So in this example, 100 tunnels will require 5 GB of RAM on the server.

So if we sum everything up in this example, we would need:

- 6 cores of at least 2 GHZ Clock speed per core - 6 GB of RAM - 1 Gbit/S Server Uplink to terminate 100 tunnels with an average load of 10 Mbit/s per tunnel 24/7.

If your customers only need 5 Mbps or less, the same server will be able to terminate around 200 tunnels if RAM is increased to 12 GB since we need 50 MB per tunnel on the server side.