Hello,
Good day!
You are correct in your understanding "For example, Routing protocols such as OSPF, IS-IS, and BGP are handled by RE. Inline BFD is handled by PFE. Right?" [though Inline BFD handling is platform and junos version specific.
Refer links for more info on Inline BFD:https://www.juniper.net/documentation/en_US/junos/topics/concept/bfd-distributed.html and for BFD inline feature support for MX960 refer https://apps.juniper.net/feature-explorer/parent-feature-info.html?pFName=Bidirectional%20Forwarding%20Detection%20(BFD)]
All Juniper Networks devices that run on the Junos operating system share the same common design philosophy, which is to have a clean separation of the control and forwarding planes. In the high-end devices (for example, M-series routers, MX edge devices, and Data Center SRXs), this separation is created in hardware, whereas the other devices (J-series routers and Branch Office SRXs) maintain this division in software. The forwarding plane is referred to as the Packet Forwarding Engine (PFE), and the control plane is called the Routing Engine (RE).
The RE’s primary functions are to manage the PFE, control the device’s software (Junos operating system), manage the command-line interface (CLI), provide troubleshooting tools, and maintain the route tables (both the route table and the route forwarding table). The forwarding table, a subset of the route table, is passed down to the PFE and is used to forward traffic. In this way, the RE never has to be directly involved in packet forwarding, which allows more resources for the actual control functions.
You may also visit the below mentioned link for a detailed explanation:
https://www.juniper.net/documentation/en_US/junos/topics/concept/junos-software-architecture.html
Hope this helps!
Regards,
Yeshas