Путеводитель по Руководству Linux

  User  |  Syst  |  Libr  |  Device  |  Files  |  Other  |  Admin  |  Head  |



   ovn-sb    ( 5 )

схема базы данных OVN_Southbound (OVN_Southbound database schema)

MAC_Binding TABLE

Each row in this table specifies a binding from an IP address to
       an Ethernet address that has been discovered through ARP (for
       IPv4) or neighbor discovery (for IPv6). This table is primarily
       used to discover bindings on physical networks, because IP-to-MAC
       bindings for virtual machines are usually populated statically
       into the Port_Binding table.

This table expresses a functional relationship: MAC_Binding(logical_port, ip) = mac.

In outline, the lifetime of a logical router's MAC binding looks like this:

1. On hypervisor 1, a logical router determines that a packet should be forwarded to IP address A on one of its router ports. It uses its logical flow table to determine that A lacks a static IP-to-MAC binding and the get_arp action to determine that it lacks a dynamic IP-to-MAC binding.

2. Using an OVN logical arp action, the logical router generates and sends a broadcast ARP request to the router port. It drops the IP packet.

3. The logical switch attached to the router port delivers the ARP request to all of its ports. (It might make sense to deliver it only to ports that have no static IP-to-MAC bindings, but this could also be surprising behavior.)

4. A host or VM on hypervisor 2 (which might be the same as hypervisor 1) attached to the logical switch owns the IP address in question. It composes an ARP reply and unicasts it to the logical router port's Ethernet address.

5. The logical switch delivers the ARP reply to the logical router port.

6. The logical router flow table executes a put_arp action. To record the IP-to-MAC binding, ovn-controller adds a row to the MAC_Binding table.

7. On hypervisor 1, ovn-controller receives the updated MAC_Binding table from the OVN southbound database. The next packet destined to A through the logical router is sent directly to the bound Ethernet address.

Summary: logical_port string ip string mac string datapath Datapath_Binding

Details: logical_port: string The logical port on which the binding was discovered.

ip: string The bound IP address.

mac: string The Ethernet address to which the IP is bound.

datapath: Datapath_Binding The logical datapath to which the logical port belongs.