This behavior is easily modified with route reflectors and/or confederations.
Although any other introduction of routing hierarchy is into the routing
domain should be, well .. even more interesting.
As Ben Black so eloquently noted earlier in the thread, "just because BGP is
your hammer doesn't mean every problem is a nail".
I'm not sure of the size of the original posters network, but maybe a
perspective from a smaller ISP would help.
We're using OSPF in-house primarly because it is the only protocol which
will work with the majority of our equipment - everything from the servers
to the access routers to the core routers. About the only other option
is RIPv1 and that really isn't even an option for many many reasons.
We've had good luck running OSPF with only one area. We're not currently
to the point where we are even close to exceeding the inherent OSPF
one-area limits. As our network grows over the next year or so, I expect
to be re-engineering the IGP to match the build-out.
If I didn't need to use OSPF to talk to some of the equipment, I might be
inclined to take a serious look at EIGRP, primarily because it's about the
only protocol which will do load-splitting across different-sized links
appropriately. Unfortunately, It's cisco-proprietary and some versions of
IOS tend to not like each other (or even themselves, at times). You can
also get into nasties if you don't keep stuff like "auto-summarization"
and "ip classless" consistent across the network.
As far as BGP goes, I have a firm belief that BGP should only have the
prefixes you want the global internet to see. I inject only 4 routes
into our bgp - and that's with specific network commands. Our igp tends
to be much nastier - our dialup servers inject a single route for each
user which is on so we can see hundreds of routes at times.
- Forrest W. Christian (email@example.com)