LibreQoS/docs/SystemRequirements/Compute.md
2024-01-18 10:06:05 -07:00

3.0 KiB

System Requirements

VM or physical server

  • For VMs, NIC passthrough is required for optimal throughput and latency (XDP vs generic XDP). Using Virtio / bridging is much slower than NIC passthrough. Virtio / bridging should not be used for large amounts of traffic.

CPU

  • 2 or more CPU cores
  • A CPU with solid single-thread performance within your budget. Queuing is very CPU-intensive, and requires high single-thread performance.

Single-thread CPU performance will determine the max throughput of a single HTB (cpu core), and in turn, what max speed plan you can offer customers.

Customer Max Plan Passmark Single-Thread
100 Mbps 1000
250 Mbps 1250
500 Mbps 1500
1 Gbps 2000
3 Gbps 3000
10 Gbps 4000

Below is a table of approximate aggregate throughput capacity, assuming a a CPU with a single thread performance of 2700 or greater:

Aggregate Throughput CPU Cores
500 Mbps 2
1 Gbps 4
5 Gbps 6
10 Gbps 8
20 Gbps 16
50 Gbps 32
100 Gbps * 64
(* Estimated)

So for example, an ISP delivering 1Gbps service plans with 10Gbps aggregate throughput would choose a CPU with a 2500+ single-thread score and 8 cores, such as the Intel Xeon E-2388G @ 3.20GHz.

Memory

  • Minimum RAM = 2 + (0.002 x Subscriber Count) GB
  • Recommended RAM:
Subscribers RAM
100 4 GB
1,000 8 GB
5,000 16 GB
10,000* 18 GB
50,000* 24 GB

(* Estimated)

Server Recommendations

It is most cost-effective to buy a used server with specifications matching your unique requirements, as laid out in the System Requirements section above. For those who do not have the time to do that, here are some off-the-shelf options to consider:

Aggregate 100Mbps Plans 1Gbps Plans 4Gbps Plans
1 Gbps Total A
10 Gbps Total B or C B or C C