Routing public provider networks in CLOS topology

asked 2019-01-14 16:06:55 -0600

Niklas gravatar image


I have a question - I assume that the answer is fairly simple, however I was not able to wrap my head around it for a couple of days. So maybe one of you could help me out?

We're currently building the following CLOS network Topology:

So far so good. VMs are directly addressed with their public IP addresses (not NAT!). BGP is used as routing protocol between Spine and Leaf (ToR). Compute Nodes currently do not speak any routing protocol to the ToR switch.

This layout works great: No layer 2 beyond the Leaf, easy to troubleshoot, highly scalable, relatively cheap Spine / Core hardware.

However image the following setup / scenario:

Leaf AS200: Announces Network to the spine.

Leaf AS300: Announces Network to the spine.

No problems in normal operation.

However, what if we want to move the VM to another leaf? Either we insert a host route via BGP via the ToR switch or we enable BGP on the compute nodes to announce VM addresses. Both would lead to a fairly large BGP routing table at the spine - which is not what we're looking for.

So take the following example:

VM2 has the ip address and is deployed on a compute node in leaf AS200. We can migrate the VM to any host within the same Leaf or ToR switch - no problem. Routing still works as expected.

Now maintenance work has to be carried out on leaf AS200. So we need to move the VM somewhere else (e.g. leaf AS300). VM won't be reachable anymore due to routing inconsistencies.

This is not what we're looking for!

Is there any fancy way or example to implement a layer 3 datacenter underlay, that allows for such migrations/failures on leaf level that does not require the compute node to speak BGP or any other form of dynamic routing protocol?

Thanks in advance!

edit retag flag offensive close merge delete


Is your question related to OpenStack?

Bernd Bausch gravatar imageBernd Bausch ( 2019-01-14 16:33:43 -0600 )edit

Sure it is. I guess there has to be some way to archive what we're looking for with Neutron / Overlay Networks? At least I hope so

Niklas gravatar imageNiklas ( 2019-01-14 16:49:55 -0600 )edit