From d29588f6b3a321d10c3869ebc9ddc8cce246e285 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Chac=C3=B3n?= Date: Sat, 27 Feb 2021 09:17:43 -0700 Subject: [PATCH] Update README.md --- README.md | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index b05262be..9dc8b643 100644 --- a/README.md +++ b/README.md @@ -44,7 +44,8 @@ sudo python3 -m pip install ipaddress schedule prettytable ### VM Performance #### Memory use On ProxMox VMs you can enable ballooning memory to allow freed up memory to be reclaimed by the hypervisor. -#### Enable Offloading in Guest VM +## How to run LibreQoS +### Enable Offloading in Guest VM Performance can greatly benefit from enabling certrain hardware offloading inside the guest VM. If you're using a system that uses Netplan (e.g. Ubuntu) to configure the network then you can use a Netplan post-up script to configure offloading. You create a script in the following directory with a name prefixed by a number to indicate load order e.g. /usr/lib/networkd-dispatcher/routable.d/10-enable-offloading - which is executable and owned by root. e.g. ``` #!/bin/sh @@ -78,7 +79,9 @@ to allow the program to actually run the commands. ### Configure for your clients * Modify the Shaper.csv file using your preferred spreadsheet editor (LibreOffice Calc, Excel, etc), following the template. * Either an IPv4 or IPv6 address is required for each entry, and Hostname is recommended. -## Run LibreQoS +## One-Time Runs +One-time runs show the response from the terminal for each filter rule applied, and can be very helpful for debugging and to make sure it is correctly configured. + Cd to your preferred directory and download the latest release ``` git clone https://github.com/rchac/LibreQoS.git @@ -88,7 +91,7 @@ git clone https://github.com/rchac/LibreQoS.git ``` sudo python3 ./LibreQoS.py ``` -## Running as a service +### Running as a service You can use the scheduled.py file to set the time of day you want the shapers to be refreshed at after the initial run. On linux distributions that use systemd, such as Ubuntu, add the following to /etc/systemd/system/LibreQoS.service, replacing "/home/$USER/LibreQoSDirectory" with wherever you downloaded LibreQoS to: ``` @@ -116,17 +119,18 @@ You can restart the service to refresh any changes you've made to the Shaper.csv ``` sudo systemctl restart LibreQoS.service ``` -## Statistics +### Statistics ``` python3 ./stats.py ``` ![Stats](docs/stats.png?raw=true "Stats") -## Memory use +## Performance tips +### Memory use Generally memory use should be under 2GB. If for any reason memory exceeds that, please make sure memory ballooning is enabled on VM host, and try ``` sudo sh -c 'echo 1 >/proc/sys/vm/drop_caches' ``` -## Server CPU Recommendations +### Server CPU Recommendations * Choose a CPU with solid single-thread performance within your budget * Generally speaking any new CPU above $200 can probably handle shaping over 2Gbps https://www.cpubenchmark.net/high_end_cpus.html