2024-08-23, 12:10 AM
(This post was last modified: 2024-08-23, 12:15 AM by jellyfin_fan. Edited 1 time in total.)
(2024-08-22, 06:20 PM)jennystreaming Wrote: Might I ask how you do the speedtest? I have similar issues as well (also LXC container inside Proxmox) so I would like to make those tests as well. I am behind a reverse proxy (Nginx Proxy manager).
(2024-08-22, 03:57 PM)jellyfin_fan Wrote: Hi, I am running a jellyfin server (10.9.9) inside proxmox in an LXC that works great on my local network. However when I try direct playing 4k vids over the internet I get a lot of buffering issues.
My internet connection is 100 Mbps fiber with symmetrical upload/download but it seems to be over provisioned because speed test gives 200/200.
However when I run iperf over the internet, it reports speed of 30 - 40 Mbps. Which seems to explain why my 50-80 Mbps 4k vids are buffering. If I increase the iperf parallel it bumps results to 70-100 Mbps
The speed test is reporting 200 Mbps upload but jellyfin seems to only use 30-40. How can I improve my upload performance? Is there any setting in jellyfin to improve it or some linux network settings I can try?
For internet speed test, I am using the Ookla cli speedtest tool. Follow the instructions on the below site to install in your LXC running jellyfin. You can then run internet speed tests in the shell
https://www.speedtest.net/apps/cli
for direct speed test to my clients, I am using iperf3.
I installed iperf3 via APT in the jellyfin LXC. Then I went into NPM and added a new "Stream". I set the forward port to be the port the iperf3 will listen on (5201 by default), then set the forward host to the IP of the jellyfin LXC, and set foward port to same port as incoming. Lastly I went into my router and set up a port forward to my NPM host. Set this port forward to be the same port as the incoming in NPM. For ease of use you can set all these ports to be the same, but they don't have to be. Just make sure the exit port of the router port forward matches input port of NPM, and the forward port of NPM matches your iperf3 listening port. If you are running the proxmox firewall on the LXC I think you might need to open a port on that as well. As a word of caution, it is good practice to remove the port forwards once your tests are done and the disable NPM stream as well
Then I run the "iperf3 -s" on jellyfin LXC to start up the server. On my client I use iperf3 -c example.com -p [port that you forwarded on the router]. The domain name is the url that points to your NPM instance.