Designing and operating large BGP networks has always been a challenge, as you have to deploy BGP on all core routers and design a hierarchy of internal BGP routers to get around the full-mesh limitation. When MPLS was introduced, it gave us means of deploying BGP only on the network edges, with the core routers carrying just the information about the BGP next hops.
As I know some of you run large networks, could you help me understand what you're using (without giving away too much information, of course):
- Are you running a BGP network without MPLS or are you using BGP on the edges and MPLS transport in the core?
- If you have a large number of BGP routers, do you have a nice hierarchy of BGP route reflectors (or confederations) or ad-hoc implementation where every router has all neighbors as RR-clients?
Full disclosure: I might use the information you give me in an upcoming article.