JNCIA System Architecture 2 — Questions and Answers
Question 1: What is the Routing Engine (RE) responsible for in Junos architecture?
- Running routing protocols, managing configuration, and maintaining the routing table (Correct answer)
- Forwarding packets at line rate
- Processing firewall filters in hardware
- Managing physical interface transceivers
Correct answer: Running routing protocols, managing configuration, and maintaining the routing table
The Routing Engine runs the Junos OS kernel, executes routing protocols (OSPF, BGP), maintains the routing and MPLS tables, and handles management plane functions.
The Routing Engine (RE) is the control plane component of Junos architecture. It runs on a general-purpose CPU and handles: routing protocol daemons (rpd), configuration management (mgd), SNMP (mib2d), chassis management (chassisd), and kernel forwarding table updates. It communicates with the Packet Forwarding Engine (PFE) over an internal link to push the forwarding table (FIB). The RE does not typically handle transit traffic forwarding.
Question 2: What does the Packet Forwarding Engine (PFE) do in Junos?
- Forwards transit packets at line rate using the forwarding table programmed by the Routing Engine (Correct answer)
- Runs routing protocols
- Manages the candidate configuration
- Handles system login and authentication
Correct answer: Forwards transit packets at line rate using the forwarding table programmed by the Routing Engine
The PFE is the data plane component that performs high-speed packet forwarding using Application-Specific Integrated Circuits (ASICs), using the FIB programmed by the Routing Engine.
The Packet Forwarding Engine (PFE) performs all transit packet processing: L2/L3 forwarding, firewall filter enforcement, CoS classification and queuing, policing, NAT, and MPLS operations. It uses custom ASICs for wire-speed performance. The FIB (Forwarding Information Base) is downloaded from the RE's RIB. The separation of RE and PFE is a key Junos architectural principle enabling graceful Routing Engine switchover (GRES) and non-stop routing (NSR).
Question 3: In a dual-RE Junos chassis, what is the function of the backup Routing Engine?
- Maintains a synchronized copy of the routing state and can take over as master if the primary RE fails (Correct answer)
- Actively forwards packets alongside the primary RE
- Stores backup configuration files only
- Monitors system temperature and fans
Correct answer: Maintains a synchronized copy of the routing state and can take over as master if the primary RE fails
The backup RE stays synchronized with the primary RE via GRES and NSR, allowing near-instantaneous RE failover without disrupting protocol adjacencies or active sessions.
In dual-RE systems (MX, T-Series, PTX), Graceful Routing Engine Switchover (GRES) keeps kernel state and interface information synchronized. Non-Stop Routing (NSR) extends this to routing protocol state (BGP, OSPF, LDP, RSVP), allowing the backup RE to take over as master without dropping protocol adjacencies. Non-Stop Bridging (NSB) extends this to L2 protocols. The switchover is triggered automatically on RE failure or manually with 'request chassis routing-engine master switch'.
Question 4: What Junos process is responsible for managing routing protocols?
- rpd (Routing Protocol Daemon) (Correct answer)
- mgd (Management Daemon)
- chassisd (Chassis Daemon)
- pfed (Packet Forwarding Engine Daemon)
Correct answer: rpd (Routing Protocol Daemon)
The Routing Protocol Daemon (rpd) is the primary process managing all routing protocols including OSPF, IS-IS, BGP, RIP, LDP, RSVP, and PIM in Junos OS.
In Junos OS, the software is modularized into daemons. rpd handles all routing protocols and the routing table (RIB). mgd handles configuration parsing and commit processing. chassisd monitors and manages hardware. mib2d handles SNMP. dcd (Device Configuration Daemon) manages interface configuration. If rpd crashes, the routing protocols restart but the PFE continues forwarding using the last-known FIB, minimizing traffic impact.
Question 5: What is the significance of the 'inet.0' routing table in Junos?
- It is the main IPv4 unicast routing table used for unicast forwarding decisions (Correct answer)
- It stores only static routes
- It contains only BGP routes
- It is the IPv6 routing table
Correct answer: It is the main IPv4 unicast routing table used for unicast forwarding decisions
inet.0 is the default IPv4 unicast routing table in Junos. All IPv4 unicast routing protocols (OSPF, BGP, static, connected) install routes here for forwarding decisions.
Junos maintains multiple routing tables: inet.0 (IPv4 unicast), inet.1 (multicast RPF), inet.2 (MBGP), inet.3 (MPLS next-hops for BGP), inet.4 (MSDP), inet6.0 (IPv6 unicast), mpls.0 (MPLS labels), bgp.l3vpn.0 (L3VPN). The inet.0 table is used for standard IPv4 unicast forwarding. Routes from all IGPs and BGP compete in inet.0 based on preference (administrative distance). The active route in inet.0 is exported to the PFE's FIB.
Question 6: How does Junos OS ensure software modularity and fault isolation?
- By running each major function as a separate process (daemon) that can restart independently without affecting others (Correct answer)
- By running all functions in a single monolithic kernel process
- By using separate hardware for each routing protocol
- By virtualizing the OS for each interface
Correct answer: By running each major function as a separate process (daemon) that can restart independently without affecting others
Junos OS uses a microkernel architecture where separate daemons handle routing, management, chassis, SNMP, and other functions. A daemon crash only affects that function, not the entire system.
Junos OS is built on a FreeBSD kernel with a modular daemon architecture. Each major function runs as a separate process: rpd (routing), mgd (management), chassisd (hardware), mib2d (SNMP), dcd (interfaces), alarmd (alarms), etc. If one daemon crashes, the kernel and other daemons continue operating. Daemons are automatically restarted by the watchdog process. This design is more resilient than monolithic network OS architectures and simplifies debugging with per-process logging.
What is the Routing Engine (RE) responsible for in Junos architecture?