JunOS (or Junos or Juniper OS) divides responsibility between control plane, service plane, forwarding plane. Thus a router controls access to itself, routing, ip adresses it owns, possibly policies pertaining to how traffic will be handled. Services looks at quality, quantity and rules within packets. Forwarding is the acceleration of packet throughput – a lookup table or tables to simplify application to consistent and succeeding packets.
A couple of years ago I did support for Crossbeam Systems. They built not a router, but a security appliance, built on Linux (RHEL) for Control Modules (one to two of these), Linux for Application Processing Modules (one to eight of these), and then, oh hell, some really obscure stuff for the Network Processing Modules (one to four of them). Again, that explicit division into command and control, application/services, and forwarding.
Doing a crash course on Juniper routers for my current job, I was struck by how consistent those independent conceptualizations of handling traffic stably and with security were.
—doug