OK, one thing at a time…
RAM requirements depend on the number of devices on the network and their level of activity. Every time a client device accesses something over the network, the router must make (and maintain) an entry in the state table. For example, if you access a Web page with three images in it, this will require the router to have four states. The state table is kept in memory, and a state is about 1 kilobyte in size.
Usually, what people do is, they assume some average level of state generation per device and see how it stacks up against the router’s memory that’s above and beyond what’s needed for the router’s basic functioning. So a device with 2 GB RAM may be recommended for networks with 20-30 devices, 4 GB RAM may be thought sufficient for 40-50 devices, 8 GB, for 100 devices, etc. Obviously, if you have a herd of network hogs, these numbers may need to be revised downward…
Now, processor. Basic routing is a pretty low-key affair. Most modern processors more or less sleep-walk through it. But there are three things (collectively called “next-generation services”, or “NG services”) that have their own, much higher, requirements to processing capacity. They are intrusion detection / intrusion prevention services (IDS/IPS), virtual private networks (VPNs), and malware detection (aka AV, short for “anti-virus”). Computational intensity of NG services depends on the speed of the Internet connection. Starting somewhere around 300 Mbps, any single NG service will eat up more processor time than the rest of the system.
Everything else (including VLANs) is somewhere in the middle, a step up from basic routing, but nowhere near NG services…
As a reference point, entry-level commercial-grade desktop routers run on dual-core Atoms and Celerons, mid-level desktop routers can have a quad-core Atom, an entry level rack-mountable router can have a dual-core G-series Pentium or Celeron, a mid-level rack-mountable can have a quad-thread i3 or quad-core i5, and it goes up from there, all the way to dual Xeons…