...
- OVS element shall declare 'distributedrouting' as supported capability for 'Connectivity' service.
- NIC nic prepare phase enhancements:
- current logic of preparing a NIC is described as below, if the VM's is first VM from the network being launched on a host.
- get the list of hosts on which network spans currently
- create tunnel from the current host on which VM being launched to all the host on which network spans
- create tunnel from all the host on which network spans to the current host on which VM being launched
- a check shall be made if network is part of VPC, if its part of VPC, and VPC offering does not have 'distributedrouting' capability enabled current flow of actions shall be prepared during the nic prepare phase
- if network is part of VPC, and VPC offering has 'distributedrouting' capability enabled then following actions shall be performed.
- if there is VPC VR running on the current host on which VM is being launched then proceed with setting up tunnels just with the bridge corresponding to network
- if VPC VR is running on different host then following actions shall be performed:
- for each network in the VPC create a bridged network
- create a bridge that shall act as logical router and connect each bridge created in previous step with patch port to logical router
- for each of the bridge created for the tier in the VPC, form full mesh of tunnels with the hosts on which network/tier spans
- set up flow rules on each bridge to;
- exclude mac learning and flooding on patch port
- for traffic destined to other tiers send the traffic on the patch port
- for the rest of the traffic from VIF's connected to VM, tunnel interface and patch port do normal (L2 switching) processing
Fall back approach:
Achieving distributed routing and network ACL, would need distributed configuration. Given the scale of changes that would involve its very likely that configuration of switches and flow rules may no