5.7.21. vlcp.utils.vxlandiscover


This document is generated from the source file.

View Source on GitHub

Created on 2016/12/15


Refactoring from vxlancast module, to share the logic with hardware-vtep

vlcp.utils.vxlandiscover.get_broadcast_ips(vxlan_endpointset, local_ip, ovsdb_vhost, system_id, bridge)

Get all IP addresses that are not local

  • vxlan_endpointset – a VXLANEndpointSet object
  • local_ips – list of local IP address to exclude with
  • ovsdb_vhost – identifier, vhost
  • system_id – identifier, system-id
  • bridge – identifier, bridge name

[(ip, ipnum)] list where IPs are the original string of the IP address, and ipnum are 32-bit numeric IPv4 address.


Return a walker function to retrieve necessary information from ObjectDB

vlcp.utils.vxlandiscover.update_vxlaninfo(container, network_ip_dict, created_ports, removed_ports, ovsdb_vhost, system_id, bridge, allowedmigrationtime, refreshinterval)

Do an ObjectDB transact to update all VXLAN informations

  • container – Routine container
  • network_ip_dict – a {logicalnetwork_id: tunnel_ip} dictionary
  • created_ports – logical ports to be added, a {logicalport_id: tunnel_ip} dictionary
  • removed_ports – logical ports to be removed, a {logicalport_id: tunnel_ip} dictionary
  • ovsdb_vhost – identifier for the bridge, vhost name
  • system_id – identifier for the bridge, OVSDB systemid
  • bridge – identifier for the bridge, bridge name
  • allowedmigrationtime – time allowed for port migration, secondary endpoint info will be removed after this time
  • refreshinterval – refreshinterval * 2 will be the timeout for network endpoint