Baldur, I believe most routing platforms already make use of clever
shortcuts or techniques to reduce their FIB usage, but I don't think
anyone has found a good, reliable method of reducing their RIB at
zero cost. For example, what happens in your above configuration
when your "better/default" transit provider is down due to
maintenance or outage and your equipment continues to use its
default route to direct traffic that direction?
You will of course have two default routes, one to each transit provider. Using route priorities to program which one is actually used. If that link goes down, that default becomes invalid and the router will use the other one. A more advanced setup can use triggers, such as ping, bfd or BGP, to mark the route as valid or invalid.
What happens if the
transit provider that you normally only retain the best paths for
becomes the best path for all destinations (for example if your
connection to the better/default transit provider is down for
maintenance or there is an upsteam peering change) and your router
that normally only has a few thousand routes in RIB suddenly gets
tasked with a 768k-1M route RIB?
I am not sure I am following that question. Nothing happens, you will have a default plus a bunch of redundant routes, but not any more than you had before the primary transit went down.
I would argue that one can generally safely add information to his
or her router's RIB (such as adding a local preference, weight, or
advertising with prepends to direct traffic toward a better
performing, less utilized, or lower cost peer), but that removing
information from a router's RIB always comes at some cost (and some
may find this cost perfectly acceptable).
One needs to remember that removing information from RIB is how BGP works. If you have the common setup of two BGP edge routers, each with a directly connected transit provider link, the routers will only tell the other one about the routes it actually uses. Neither router has a complete view.
Regards,
Baldur