When it comes to meshing and dynamic routing one of the biggest challenges is to make your cluster as big and as redundant as possible and still perform very well. So there is a tradeoff between size + redundancy on the one side and performance on the other.
Imagine there was a full mesh, meaning each node will have a peering with each other node. This would be ideal in terms of redundancy. At the same time it would be the least ideal situation in terms of scalability. You can approach this problem by either
As the cheapest and least intricate one is planning and implementing the best topology. Here is how.
This image is depicting several aspects at the same time.
Let's try a top to bottom approach where the core of the Internet where BGP is spoken is at the very top. In the middle we see in Red Supernodes interconnected to each other in a high availability fashion, meaning no supernode has < 2 links to other supernodes