Fair point - if one starts loading up many huge lists, it will run out of memory.
My ER-X is only using 66 MB of 245MB available, but then I do just use the default block lists in adblock (adaway, adguard, disconnect and yoyo seem to clean up the majority of ads for me). It's a matter of perspective - I started out with a 128MB gateway, so 256MB seemed pretty good to me
Regarding memory, I had a quick look on one of my RockPro64 boxes and it used roughly ~650Mbyte of RAM running all your normal network services and blocky (https://github.com/0xERR0R/blocky, instead of dnsmasq but I don't think it runs on MIPS due to being written in go) so 512Mbyte might be. This SBC does however run a full fledged OS (not Linux) without any tweaking for memory consumption (ie rather large fs buffers etc) but to give you an idea.
it can also pickup a lot of noise as well specially if you add that UTP cable which is unshielded, I can already see lots of lots of USB timeouts/resets happening on this.
I can say this because I was doing the same thing back them, its pain in the ass to deal with. its just doesnt work really well with USBs when it comes to using it for routers.
I can still remember that back then with MR3020 portable 3g/lte router back then.
Where do you see these happening? What variant of USB is being used? There's plenty of people using RPi4s with USB dongles running at up to 1gb/sec (presumably over UTP as STP is somewhat rare in a domestic situation) who don't see these issues.
tried several of them, one thing I can remember is the ethernet dongle that came with my asus netbook which is based on ASIX chipset I think. still regardless of USB dongles I used (which is a waste of money really) its still the same, the other 2 USB ethernet dongles I used is realtek based. Since back then, that's your basically most common USB NIC chipset on the market.
yes, its like on 2014 I think, I even tried the USB3 gigabit lan card but that doesnt fix it as well and its not like getting a newer usb will fix this anyway, it still happens even with modern stuff. you certainly dont want to trust any kind of usb device when it comes stability. usb should be something you will be plugging and unplugging stuff, maybe a connected USB keyboard and mice would be ok but not something like a HDD or in this case a NIC.
Except your claim doesn't hold up when you look at real world data. In the specific use case discussed in this thread, i.e. an RPi4 with a USB dongle, there is plenty of data showing that it is stable over long term 24/7 use. But you know better based on your experiences 7 years ago?
well talking about personal experience here ok, its not good, the baddest thing i experience with raspberry pi is using it as a NAS, I lost precious files on that thing, never again.
if you still want to use USB, you can go ahead. i dont care, Ill just go point it out here that, no, its bad, and you should stop relying stuff on USB. else, you can also apply that YMMV thing. for me, no... nope, not going to happen.
you can actually just go consult the IT with USB NIC on routers and they probably start laughing at you.
yep... and i'm laughing right back at them... you all have good points... and some nic's will be flakey or overheat or crap out if being pumped non-stop... but we are talking maybe 1 in 7 users on the forum max... it's almost superstition not reality...
Not sure what your budget is, but I have some older, never used Gateworks Ventana 5410 from a project that never went forward. They were over $350 but I would part with some for $100. Note I had a special stuffing to remove the serial ports and video to cut down on heat and cost.
They have 2 X GbE, 512 MB ram, 256 GB Flash, a quad core 1 GHz CPU and a whopping SIX mini PCIe slots for wireless. One slot can be set for a mSata device and I have used 16GB and 485 GB quite nicely. I also lose 1 PCI because I put a heat sink over the PCI bridge chip. With a very small 2" fan they run nice and cool and then you don't really need the PCI Bridge heat sink, so you gain that PCIe back. For home use I don't need any more than 3 wifi, so I keep the heat sink. The boards are 5.5" X 4". Power can be Power Over Ethernet but it cuts one Ethernet to 100 mbps or use the DC jack for 12V to 48V input.
These were destined for a Wireless ISP product with 6 Wifi Radios to build a multiple AP and back haul application. Find a high spot and you can cover a lot of ground.
Openwrt runs very well and Gateworks has a build that can show all of the onboard sensors. I have used 802.11n and 802.11ac cards, as supported by Openwrt.
@remlei I'm afraid the only laughter is that your 'extensive experience' dates back to a 21 year old USB standard on a netbook. Not one - note, not ONE - person who's ever done the "USB bad, mmmmmkay" bit on this forum has even produced one iota of real-world evidence, just pure conjecture and anecdotal data.
I, on the other hand, will put my reputation where my mouth us. My dmesg:
[ 7.710910] usbcore: registered new interface driver r8152
[ 7.717950] usbcore: registered new interface driver usbhid
[ 7.723593] usbhid: USB HID core driver
[ 7.730151] xt_time: kernel timezone is -0000
[ 7.745834] PPP generic driver version 2.4.2
[ 7.750558] NET: Registered protocol family 24
[ 7.756439] wireguard: WireGuard 1.0.0 loaded. See www.wireguard.com for information.
[ 7.764280] wireguard: Copyright (C) 2015-2019 Jason A. Donenfeld <Jason@zx2c4.com>. All Rights Reserved.
[ 7.780118] usbcore: registered new interface driver brcmfmac
[ 7.787126] kmodloader: done loading kernel modules from /etc/modules.d/*
[ 7.856426] usb 2-1: reset SuperSpeed Gen 1 USB device number 2 using xhci_hcd
[ 7.938258] r8152 2-1:1.0 eth1: v1.10.11
[ 9.365753] bcmgenet: Skipping UMAC reset
[ 9.371207] bcmgenet fd580000.ethernet: configuring instance for external RGMII
[ 9.378736] bcmgenet fd580000.ethernet eth0: Link is Up - 1Gbps/Full - flow control off
[ 9.387455] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 11.313394] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
[ 11.319990] r8152 2-1:1.0 eth1: carrier on
(note the complete absence of any USB errors of any kind, that's the end of the console log)
Please note those errors are from upstream that occurred during the most severe thunderstorm of the past two decades.
Uptime:
21:27:24 up 8 days, 5:45, load average: 0.00, 0.01, 0.00
which is when I flipped to RC4.
This is all connected to a bidirectional gigabit fiber setup over FiOS with direct ONT hookup.
Feel free to show evidence of all the USB failures you've experienced on OpenWRT so the community can benefit, but please no more stories about you got a tummyache from a peanut butter and jelly sandwich in primary school and thus you don't trust modern-era technology you've never used or likely seen.
Hi all,
Please forgive my ignorance since I don't know much about cpu architectures but isn't there a huge "horse power" difference -at least on paper- between the processors of these two devices?
How can the two devices be compared? I'm so confused.
BCM2711 (ARM Cortex-A72 1.5 GHz, 4 cores-4 threads)
vs.
MT7621AT (MIPS 1004Kc 880MHz, 2 cores-4 threads)
Yes, however, remember, we are talking about networking equipment. And running network workloads may or may not be much related to pure CPU "horse power". Lot's of those rather "under-powered" SoCs like the MT7621AT do have special network engines which tremendously accelerate certain network workloads. But, of course, this usually also requires driver support.
Anyway, this may actually be one of them few valid points against using USB as the overhead there is completely contrary to anything being accelerated. On the other hand, if pure CPU "horse power" is enough to make a certain use-case work, why not?
There most definitely is a huge difference. But it all comes down to what you need. An AMD Ryzen 32 core "Thread Ripper" CPU has a lot of horsepower, but if all you are doing is e-mail, internet and some word processing, maybe a spreadsheet or two, its tremendous over-kill for a desktop PC.
In this case, the OP's router will be in a small enclosed wall cabinet, so a cool running ER-X or Microtik RB750GR3 (essentially an ER-X with a plastic case and harder OpenWrt install process) that meets all performance needs can be a better solution than a hot running RPI4. The RPI4 also needs a switch that has to fit in that small wall cabinet and - I hate to even bring it up given the tangent this thread has drifted off onto - a USB ethernet dongle.
@dynamiccarrots The Microtik RB750GR3 might be another one to consider if you decide on an ER-X, but can't find an ER-X or it is too expensive. Like the ER-X, it is tiny, has 5 ports, runs cool (same SoC as the ER-X) and can have a second life as an overpowered switch someday if you later upgrade to an RPI4 or NanoPi R4S. The downside is OpenWrt installation looks a bit more complicated the first time. Speaking of which, be sure an ER-X is on EdgeOS 2.x and the bootloader has also been upgraded to the Ubiquity v2 bootloader BEFORE you flash OpenWrt. The Ubiquity v2 bootloader is far easier to recover your ER-X with if you accidentally brick it.
Yes I understand what you mean exactly. So er-x or rb750gr3 are the most ideal routers in this specific use case. Runs cooler, has small footprint in overall, powerful enough to do it's job etc.
Thanks for you message! I appreciate it. Have a good one.
ulpian
There is no disputing the Raspberry Pi 4 for performance, its quad core SoC is a beast and should do shaping up to at or near a gigabit where almost no other OpenWrt "router" will do that. A few will come close like the Mvebu (WRT32X / WRT3200ACM) and R7800 with NSS core drivers, but not much else. The Rpi4 also has a massive amount more ram and storage.
If you don't mind tinkinering go with the Rpi4, usb gigabit ethernet dongle, gigabit switch, and wifi6 access point combo. I have this as a fun project and it works extremely well. It'll be a seriously good setup but a lot of things hanging around. If you want something more simple/straight forward albiet with lower performance ERX of course.
The CPU cores are a part of the SoC, like a car there's more than just the engine that contributes to the overall experience and performance.
There's no "clean cut" way to compare SoCs on paper as they can behave very differently depending on workload. In general you can consider MIPS overall slower than ARM however there are many variants of ARM cores /SoCs around and as far as performance goes MIPS can be perfectly fine for your workload however overall development is much more focused on ARM (mainly 64-bit) compared MIPS.
In general MT7621 can handle about 500mbit/s in terms of traffic, most ARM SoCs that are dual core or better can do gbit speeds fine however depending on driver support performance can be very different between SoCs despite looking "beefy" on paper.