...
table=5, priority=1000,nw_src=10.1.2.0/24 actions=mod_dl_src=mac address for 10.1.2.1, modl_dl_dst=mac address for destination VM,output:1
Packet flows
...
Lets consider few packet flows to understand how logical router and flow rules achieve distributed routing.
...
- list of hosts on which VPC spans
- state(enabled/disabled) of logical router on a host for the VPC
- state of tunnels between the hosts for a tier in the VPC
Convergence time
Following are the events that require state update of configuration and corresponding latency:
UI changes
- createVpcOffering APi shall have ability to create VPC offering with 'distributedrouting' as connectivity service capability. No UI is needed for this change (unless there is plan to add UI for createVpcOffering) since there is no UI for VPC offering creation itself.
- In the VPC details view, there shall be action to view the current state of tunnel between the hosts on which VPC spans
Convergence time
Following are the events that require state update of configuration and corresponding latency:
- on first VM launch/ last VM destroy on a host need setting up/destroy tunnel mesh for each tier's bridge with rest of the hosts. Latency to replicate configuration is proportional to (n*(n-1))/2 * m where n is the number of hosts on which VPC spans and m is the number of tiers in the VPC. n*(n-1)/2
- on VPC tier create/delete, needs setting up/destroy of bridge for the tier on all the hosts and setting up tunnel mesh. Latency is proportional to n * n-1/2 where n is on first VM launch/ last VM destroy on a host need setting up/destroy tunnel mesh for each tier's bridge with rest of the hosts. Latency to replicate configuration is proportional to (n*(n-1))/2 * m where n is the number of hosts on which VPC spans and m is the number of tiers in the VPC. n*(n-1)/2+ setting up the router entry on logical router
- on replace network ACL for a tier needs update of acl table on logical router on each host.
Performance and scaling issues
...