Can WRT3200ACM run transmission and OpenVPN without taxing it too much?

I had a Raspberry Pi 3b running the 2 above programs along with a few automation programs and it worked fine but was very taxing on the Pi and it was always running hot. So I'm hoping that I can offload those two programs to my OpenWRT router. If I do this, will it be too much for the WRT3200ACM to handle?

I also have the option of running transmission on my NAS which is a WD My Cloud EX2 Ultra.

Yes, I run that and much more, simultaneously, without any issue.

Excellent. Thank you very much.

While I'm too lazy to run actual benchmarks I'd guess that the SoC in pure computational power is slightly better on the RPi 3b when all cores can be utilized however given that pretty much everything hangs off USB the overhead doesn't exactly help the Broadcom SoC so anything that isn't pure computational will probably be quite a bit slower especially if you pair the WRT32000ACM with a eSATA connected HDD/SSD.

OpenVPN is single threaded so don't expect blazingly good performance and while Transmission isn't horrible anything that uses libtorrent (rasterbar) 1.2 or better wil most likely perform a lot better however I'm not aware of such clients being ported to OpenWrt. In general running bittorrent clients without local storage will give you rather poor performance and add a lot of overhead at least during downloading. I would also recommend you to recompile using OpenSSL and neon instructions as that will help performance on the WRT3200ACM and on your My Cloud box as those share the same SoC. In your case with current hardware I'd say that it makes more sense (in terms of performance) to move the bittorrent client over to your NAS though.

1 Like

While the USB2 bottleneck is certainly hurting the RPi3 (transmission more than OpenVPN), it should still be faster (for the tasks you mentioned) than a wrt3200acm (especially while it would also have to do the routing to feed these apps). So if your RPi3 wasn't fast enough to keep up (at which WAN speeds?), your wrt3200acm probably won't be either.

At the very least I'd keep transmission away from your router, both for security- and performance reasons (bittorrent needs RAM and I/O cycles, a lot of them, better to compartmentalize it to its own hardware that won't bring down the performance of the whole network (even more so with QoS/ SQM in mind)).

You're also forgetting that it still uses USB 2.0 for LAN (ethernet) (and speed is pretty poor) :wink:

I'm not, first 4 words of my reply. However that shouldn't be to much of a problem as a client exclusively hosting transmission (its 100 MBit/s ethernet will be more of a performance limit than the remaining USB2 bandwidth spent on disk access), but bittorrent clients also tend to use rather a lot of RAM and CPU cycles, keeping those away from the device having to do the routing is a good strategy (for performance, but even more so with security or QoS in mind).

Ok so it sounds like the best option is to put transmission on the NAS and OpenVPN on the router. So then I assume the NAS needs to be connected to the router rather than my ISP gateway in order to route transmission traffic through it? And what about the Pi?

I also have an Nvidia Shield running a Plex server using an SMB share on the NAS, but that's across the room from my network equipment, as is my TV. They are currently connected to my ISP gateway (Nokia BGW320) wirelessly. Because of the layout of my apartment, I can't move the gateway or the TV, but I might be able to move the Shield, connect it to the OpenWRT router, and run it headless.

If I have some devices connected to my ISP gateway and other connected to my OpenWRT router, how can I get them to communicate with one another?

EDIT: Since this is an entirely different question, I'm going to make a new post for it. I hope that's ok.

Rereading your responses, I'm not sure I've interpreted them correctly, and I'm also not sure that I've adequately explained my situation or my goal. The Pi is able to handle the current workload, but just barely, and it is running several applications at once besides just transmission and OpenVPN. There is no storage attached to it directly, only an NFS mount pointed to a share on my NAS.

The NAS has 1GB of RAM and a Marvell ARMADA 385 1.3GHz dual-core processor. When I tested a file transfer using SMB (I don't have the Pi running right now so I can't test NFS), it used 13% or less CPU and about 44% of RAM.

Here are the specs of the router: https://openwrt.org/toh/linksys/wrt3200acm

So in simple terms, does the router have the overheard to comfortably run OpenVPN client for a single device? And likewise, the NAS to run transmission (if you can answer that. I know this isn't the best place to ask about NAS performance, but you guys seem to know what you're talking about)?

Your main concern is that the RPi isn't very well suited for I/O intensive (including network) work at all since everything hangs off a USB 2.0 connection which itself is slow. If you have one core "free" for OpenVPN it should be the fastest device but probably by a very small margin due USB overhead which is why the WRT3200ACM is most likely a better choice to offload networking tasks too since it does have much better capatibilities to handle network traffic in general and higher clock speed which likely compensates for having a slower SoC design.

Using non local storage bittorrent isn't very efficient irregardless of network protocol (I guess iSCSI would be best though) and your RPi does have very limited network throughput so you're most likely better off running that on your NAS directly even if the SoC is slower. Depending on load you may see reduced overall throughput on your NAS simply because the SoC in it is starting to show its age.

If you're going to for the SBC route I would highly recommend offerings by Rockchip (RK3399) such as the RockPro64 and the upcoming RK3588 (you can safely expect a year or so before this new SoC effectively gets usable) as they're much more suitable for these kind of applications than the RPi series.

So basically, if I'm using ONLY WHAT I HAVE ON HAND, I should put transmission on the NAS, OpenVPN on the router, and everything else on the Pi, correct?

Yes, correct :slight_smile:

Ok thank you (all of you) very much for your help. It's much appreciated. And sorry for being so dense, I'm new to all of this lol.

As long as you at least try to tackle the problem and don't expect to be spoon-fed there's no reason to apologize. =)

That sounds fair, lol. Getting started now. Wish me luck!

@diizzy -

" I would also recommend you to recompile using OpenSSL and neon instructions as that will help performance on the WRT3200ACM and on your My Cloud box as those share the same SoC. "

i thought wolfssl had spped as a major advantage vs openssl?

I think major claim to fame is size, but they do claim performance superiority on a restricted set of algol. As regards this specific device, I don't think it can make use if the CESA unit where openssl will utilise SIMD OOTB unless specifically compiled to not do so.

1 Like