In my FEC post I describe the basic working of FEC. In MPLS it’s always said FEC is performed only at the ingress time but in traditional ip cloud it does at all the hops which requires more cpu processes and memory for the routes. During the reading of Jeff Doyle chapter second I saw a good explanation of FEC. Excerpt from Jeff Doyle TCP/IP Routing Vol 2 – Chapter 2
“Here is where things go wrong. Provo does a route lookup for 196.223.18.0/24 and sees that the network is reachable via Salt Lake. It then does a lookup for Salt Lake’s IP address and sees that it is reachable via the next-hop router, Ogden. So the packet destined for 196.223.18.0/24 is forwarded to Ogden. But the external routes are shared between Salt Lake and Provo via IBGP; the OSPF routers have no knowledge of the external routes. Therefore, when the packet is forwarded to Ogden, that router does a route lookup and does not find an entry for 196.223.18.0/24. The router drops the packet and all subsequent packets for that address. Traffic for the network 196.223.18.0/24 is black-holed.
Of course, if the OSPF routers know about the external routes, the situation just described will not happen. Ogden will know that 196.223.18.0/24 is reachable via Salt Lake and will forward the packet correctly. Synchronization prevents packets from being black-holed within a transit AS by an IGP with insufficient information.”
The lines in bold explicitly states that on every hop IGP checks for the external routes in the routing table & forward the packets correctly, if the no routes in the IGP routing table the packets would be dropped. It means FEC is performing at each and every step in traditional ip routing but not in MPLSVPN case because here the FEC is performed only at the ingress after that only labels are swapped that’s why the core routers doesn’t require the information of external routes. If FEC were being in MPLS also then core routers couldn’t forward the traffic without the knowledge of external routes.
Remember one thing when one talk about FEC, it means he is talking about the route lookups, next hop adjacency, longest prefix match in one algorithm. The algorithm is called on every hop in traditional ip routing but called once in MPLSVPN routing.