My only contentment was the fact that w/o cef or other proprietary mechanisms or even with them, mpls, provided it is supported on all enterprise routers and switches (cef and others are layer 3), mpls is both layer 2 and 3. MPLS can be implemented on switches not capable of analyzing network layer packets (thus no cef). In the overall network scheme with complete MPLS configuration, this is where I can see the speed increase.
CEF is an implementation of IP route lookups, packet forwarding, etc.; as its scope is entirely inside the router, the fact that it's "proprietary" is irrelevant. I would not say that "MPLS is both layer 2 and 3;" rather, MPLS is an awkward in-between technology that is often characterized as "layer 2.5." There's more there than layer 2, but less there than layer 3. (I once said the same thing about DECnet back in the mid-90s). The argument that IP route lookups take longer hasn't been advanced since ASICs brought IP route lookup cost down to 2 memory cycles (thus the migration of MPLS advocates to greener pastures like VPNs and metro-area "multi-service" networks). Stephen