[openstack-dev] [neutron] How neutron calculate routing path

Assaf Muller amuller at redhat.com
Mon Mar 9 15:09:28 UTC 2015



----- Original Message -----
> The L3 agent uses ARP and static routes like a normal router would. The L2
> agent is where there might be differences depending on the network type
> used. If it's a tunnel overlay, the L2 agent may perform an ARP offload from
> information it has learned via the L2 population mechanism.
> 

To expand on what Kevin is saying, the L3 agent currently does not support any
sort of dynamic routing, and a Neutron virtual router may only have access
to up to one external network. It can be (Directly) connected to many internal networks
and performs static routing. If you connect a router to one external network
(8.8.8.0/24) and two internal networks (10.0.1.0/24, 10.0.2.0/24) then you
can observe the router's routing table and see that it has three routes
to said network, as well as a default gateway (The external network's gateway).

> On Sat, Mar 7, 2015 at 4:02 AM, Leo Y < minherz at gmail.com > wrote:
> 
> 
> 
> Hello, I am looking to learn how neutron agent (probably L3) calculates a new
> routing path when VM on compute node wants to communicate with some
> destination. Does it use neutron API to learn about network topology or it
> uses its internal structures to simulate path resolving like in real
> network? If the latter is correct, then what happens when a network topology
> is changed in neutron DB (due user intervention for by other actions) and
> the "local" data is invalid?

When a router is updated (Internal/external interface added/removed, floating IPs
added or removed) then an update is sent to the relevant L3 agent which adds
or removes the interface or floating IP.

> 
> 
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
> 
> 
> 
> 
> --
> Kevin Benton
> 
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
> 



More information about the OpenStack-dev mailing list