Problem:
NextcloudPi (LXC, installed by script) downloading big files (<500 MB) via public internet connection: speed is very poor (transfer rates ~100KBytes/sec, bitrates ~1Mbits/sec, should be around 15 MB/s) though via LAN within the local network download speed is fine (via public IP/ domain.name and without VPN)
Question:
What am I missing to debug and eliminate the bottleneck of the network(settings)?
I'm grateful for any help and hint!
Setup:
Proxmox running NginxProxyManager, AdguardHome and NextcloudPi as LXC, no firewall running yet, PHP 8.1
- NginxProxyManager as reverse proxy and load balancer with LetsEncrypt, http/2, force ssl and advanced NextcloudPi settings for getting carddav and caldav syncronized
- AdguardHome with DNS-over-TLS, with or without forced https
- NextcloudPi with Redis Server, Apache2
- Mullvad VPN with DNS server set to AdguardHome localIP
Hardware:
- Kernel and CPU: Linux 6.1.10-1-pve on x86_64
- Processor information: Intel(R) Celeron(R) N5100 @ 1.10GHz, 4 cores
- Real memory: 1.79 GiB used / 2.58 GiB cached / 7.55 GiB total
- Virtual memory: 256 KiB used / 7.55 GiB total
- Local disk space: 24.52 GiB used / 974.95 GiB free / 999.47 GiB total
- Package updates: All installed packages are up to date
What I tried so far following several net founds:
- debugging with iperf3, speedtest-cli and attempts to download from public internet
- Proxmox-kernel upgrade, with and without kernel parameter: "intel_idle.max_cstate=1"
- increased PHP memory limit to 512 and 1025 MB
- maximum file size: 10 GB
- enabled and disabled systemd-resolved
- nginx reverse proxy: custom locations= /dns-query. Advanced settings: proxy_request_buffering off; client_max_body_size 0; proxy_buffering off;
- adjusting MTU: using 1492 in the guest instead of 1500 which is set on the host
NextcloudPi (LXC, installed by script) downloading big files (<500 MB) via public internet connection: speed is very poor (transfer rates ~100KBytes/sec, bitrates ~1Mbits/sec, should be around 15 MB/s) though via LAN within the local network download speed is fine (via public IP/ domain.name and without VPN)
Question:
What am I missing to debug and eliminate the bottleneck of the network(settings)?
I'm grateful for any help and hint!
Setup:
Proxmox running NginxProxyManager, AdguardHome and NextcloudPi as LXC, no firewall running yet, PHP 8.1
- NginxProxyManager as reverse proxy and load balancer with LetsEncrypt, http/2, force ssl and advanced NextcloudPi settings for getting carddav and caldav syncronized
- AdguardHome with DNS-over-TLS, with or without forced https
- NextcloudPi with Redis Server, Apache2
- Mullvad VPN with DNS server set to AdguardHome localIP
<?php
$CONFIG = array (
'passwordsalt' => '***********************',
'secret' => '**************************',
'trusted_domains' =>
array (
0 => 'localhost',
1 => '<local ipv4 address of my NC instance>'',
11 => '<dynamic public ipv4 address of my NC instance>'',
5 => 'nextcloudpi.local',
8 => 'nextcloudpi.lan',
14 => 'nextcloudpi.home',
3 => 'mydomain.tld',
),
'datadirectory' => '/var/www/nextcloud/data',
'dbtype' => 'mysql',
'version' => '25.0.3.2',
'overwrite.cli.url' => 'https://mydomain.tld/',
'dbname' => 'nextcloud',
'dbhost' => 'localhost',
'dbport' => '',
'dbtableprefix' => 'oc_',
'mysql.utf8mb4' => true,
'dbuser' => 'ncadmin',
'dbpassword' => '*********************************',
'installed' => true,
'instanceid' => '**********',
'memcache.local' => '\\OC\\Memcache\\Redis',
'memcache.locking' => '\\OC\\Memcache\\Redis',
'redis' =>
array (
'host' => '/var/run/redis/redis.sock',
'port' => 0,
'timeout' => 0.0,
'password' => '***************************',
),
'tempdirectory' => '/var/www/nextcloud/data/tmp',
'trashbin_retention_obligation' => 'auto, 10',
'mail_smtpmode' => 'sendmail',
'mail_smtpauthtype' => 'LOGIN',
'mail_from_address' => 'admin',
'mail_domain' => 'ownyourbits.com',
'default_phone_region' => 'DE',
'preview_max_x' => '2048',
'preview_max_y' => '2048',
'preview_max_memory' => 256,
'jpeg_quality' => '60',
'overwriteprotocol' => 'https',
'allow_local_remote_servers' => true,
'trusted_proxies' =>
array (
11 => '127.0.0.1',
12 => '::1',
0 => '<local ipv4 address of my Nginx Proxy Manager>',
14 => '<dynamic public ipv4 address of my NC instance>',
1 => '<ipv6 address>',
13 => 'mydomain.tld',
),
'maintenance' => false,
'loglevel' => '2',
'log_type' => 'file',
'has_rebuilt_cache' => true,
'logfile' => '/var/www/nextcloud/data/nextcloud.log',
'data-fingerprint' => '******************',
'theme' => '',
'enable_previews' => true,
'enabledPreviewProviders' =>
array (
0 => 'OC\\Preview\\Movie',
1 => 'OC\\Preview\\PNG',
2 => 'OC\\Preview\\JPEG',
3 => 'OC\\Preview\\GIF',
4 => 'OC\\Preview\\BMP',
5 => 'OC\\Preview\\XBitmap',
6 => 'OC\\Preview\\MP3',
7 => 'OC\\Preview\\MP4',
8 => 'OC\\Preview\\TXT',
9 => 'OC\\Preview\\MarkDown',
10 => 'OC\\Preview\\PDF',
),
'enforce_theme' => '',
);
$CONFIG = array (
'passwordsalt' => '***********************',
'secret' => '**************************',
'trusted_domains' =>
array (
0 => 'localhost',
1 => '<local ipv4 address of my NC instance>'',
11 => '<dynamic public ipv4 address of my NC instance>'',
5 => 'nextcloudpi.local',
8 => 'nextcloudpi.lan',
14 => 'nextcloudpi.home',
3 => 'mydomain.tld',
),
'datadirectory' => '/var/www/nextcloud/data',
'dbtype' => 'mysql',
'version' => '25.0.3.2',
'overwrite.cli.url' => 'https://mydomain.tld/',
'dbname' => 'nextcloud',
'dbhost' => 'localhost',
'dbport' => '',
'dbtableprefix' => 'oc_',
'mysql.utf8mb4' => true,
'dbuser' => 'ncadmin',
'dbpassword' => '*********************************',
'installed' => true,
'instanceid' => '**********',
'memcache.local' => '\\OC\\Memcache\\Redis',
'memcache.locking' => '\\OC\\Memcache\\Redis',
'redis' =>
array (
'host' => '/var/run/redis/redis.sock',
'port' => 0,
'timeout' => 0.0,
'password' => '***************************',
),
'tempdirectory' => '/var/www/nextcloud/data/tmp',
'trashbin_retention_obligation' => 'auto, 10',
'mail_smtpmode' => 'sendmail',
'mail_smtpauthtype' => 'LOGIN',
'mail_from_address' => 'admin',
'mail_domain' => 'ownyourbits.com',
'default_phone_region' => 'DE',
'preview_max_x' => '2048',
'preview_max_y' => '2048',
'preview_max_memory' => 256,
'jpeg_quality' => '60',
'overwriteprotocol' => 'https',
'allow_local_remote_servers' => true,
'trusted_proxies' =>
array (
11 => '127.0.0.1',
12 => '::1',
0 => '<local ipv4 address of my Nginx Proxy Manager>',
14 => '<dynamic public ipv4 address of my NC instance>',
1 => '<ipv6 address>',
13 => 'mydomain.tld',
),
'maintenance' => false,
'loglevel' => '2',
'log_type' => 'file',
'has_rebuilt_cache' => true,
'logfile' => '/var/www/nextcloud/data/nextcloud.log',
'data-fingerprint' => '******************',
'theme' => '',
'enable_previews' => true,
'enabledPreviewProviders' =>
array (
0 => 'OC\\Preview\\Movie',
1 => 'OC\\Preview\\PNG',
2 => 'OC\\Preview\\JPEG',
3 => 'OC\\Preview\\GIF',
4 => 'OC\\Preview\\BMP',
5 => 'OC\\Preview\\XBitmap',
6 => 'OC\\Preview\\MP3',
7 => 'OC\\Preview\\MP4',
8 => 'OC\\Preview\\TXT',
9 => 'OC\\Preview\\MarkDown',
10 => 'OC\\Preview\\PDF',
),
'enforce_theme' => '',
);
Hardware:
- Kernel and CPU: Linux 6.1.10-1-pve on x86_64
- Processor information: Intel(R) Celeron(R) N5100 @ 1.10GHz, 4 cores
- Real memory: 1.79 GiB used / 2.58 GiB cached / 7.55 GiB total
- Virtual memory: 256 KiB used / 7.55 GiB total
- Local disk space: 24.52 GiB used / 974.95 GiB free / 999.47 GiB total
- Package updates: All installed packages are up to date
What I tried so far following several net founds:
- debugging with iperf3, speedtest-cli and attempts to download from public internet
- Proxmox-kernel upgrade, with and without kernel parameter: "intel_idle.max_cstate=1"
- increased PHP memory limit to 512 and 1025 MB
- maximum file size: 10 GB
- enabled and disabled systemd-resolved
- nginx reverse proxy: custom locations= /dns-query. Advanced settings: proxy_request_buffering off; client_max_body_size 0; proxy_buffering off;
- adjusting MTU: using 1492 in the guest instead of 1500 which is set on the host
Last edited: