Comment 7 for bug 1803494

Revision history for this message
ChenjieXu (midone) wrote :

Miguel,

The RFE has been updated. I only change the steps and analysis in 2 use cases. And the changes are below:

Use Case 1
3. Tenant-1 creates Router-1 and links the Router-1 to the external provider network. Tenant-2 creates Router-2 and links the Router-2 to the external provider network.
======================================================>
3. Tenant-1 creates Router-1 and links the Router-1 to the external provider network External_Provider_Network. Tenant-2 creates Router-2 and links the Router-2 to the same external provider network External_Provider_Network.

VM-1 and VM-2 reside on different networks and communicate via their respective floating IP addresses. When VM-1 pings FloatingIP-2 for the first time, it needs to know the MAC address for FloatingIP-2. Thus ARP request is sent out. And the MAC address “fa:16:3e:ab:cf:34” of Gateway-2 will be answered. If the FDB is pre-populated, the ARP request can be avoided. For non-DVR use case, (host_ip, router_gateway_mac_address, floating_ip_address) should be prepopulated.
======================================================>
VM-1 and VM-2 reside on different networks and communicate via their respective floating IP addresses. When VM-1 pings FloatingIP-2 for the first time, since FloatingIP-2 is not in the same subnet as Port1, VM-1 will send the the ICMP echo request directly to its default gateway which is Gateway-1. And Gateway-1 will first send out an ARP request for a FloatingIP-2 to resolve its MAC address. And the MAC address “fa:16:3e:ab:cf:34” of Gateway-2 will be answered. After L2 MAC address resolution succeeding, L3 level protocols will route the request to the correct destination. If the FDB is pre-populated, the ARP request between the two router gateway interfaces can be avoided. For non-DVR use case, (host_ip, router_gateway_mac_address, floating_ip_address) should be prepopulated.

Use Case 2
4. Tenant-1 links the DVR-1 to the external provider network. Tenant-2 links the DVR-2 to the external provider network.
======================================================>
4. Tenant-1 links the DVR-1 to the external provider network External_Provider_Network. Tenant-2 links the DVR-2 to the same external provider network External_Provider_Network.

VM-1 and VM-2 reside on different networks and communicate via their respective floating IP addresses. When VM-1 pings FloatingIP-2 for the first time, it needs to know the MAC address for FloatingIP-2. Thus ARP request is sent out. And the MAC address “fa:16:3e:e7:86:db” of FIP-2 floating IP agent gateway will be answered. If the FDB is prepopulated, the ARP request can be avoided. For DVR use case, (host_ip, floatingip_agent_gateway_mac_address, floating_ip_address) should be prepopulated.
======================================================>
VM-1 and VM-2 reside on different networks and communicate via their respective floating IP addresses. When VM-1 pings FloatingIP-2 for the first time, since FloatingIP-2 is not in the same subnet as Port1, VM-1 will send the the ICMP echo request directly to its default gateway which is FIP-1 floating IP agent gateway. And FIP-1 floating IP agent gateway will first send out an ARP request for a FloatingIP-2 to resolve its MAC address And the MAC address “fa:16:3e:e7:86:db” of FIP-2 floating IP agent gateway will be answered. After L2 MAC address resolution succeeding, L3 level protocols will route the request to the correct destination. If the FDB is prepopulated, the ARP request between the two floating IP agent gateway interfaces can be avoided. For DVR use case, (host_ip, floatingip_agent_gateway_mac_address, floating_ip_address) should be prepopulated.