On 5/13/20 3:43 AM, Ihar Hrachyshka wrote: > Just noticed the cover letter says it's v5. It should have said v6. Mea > culpa. > > On 5/12/20 1:22 PM, Ihar Hrachyshka wrote: >> Hi all, >> >> This series is to allow for multiple localnet ports to be present in a >> logical switch. Even before the series, it was allowed to create >> multiple ports of this kind but they were handled inconsistently. >> >> This series uses logical switches with multiple localnet ports >> (LSMLP) to implement what is called "routed provider networks" in >> OpenStack. To elaborate, this allows to natively model a network that >> has multiple segments with implied L3 routing between the segments >> realized by the fabric. A user can operate such a network as a single >> entity instead of deciding on which segment to choose for their >> port bindings. >> >> The assumption in this implementation is that while a logical switch can >> have multiple localnet ports, each chassis has only one of corresponding >> physical networks mapped. Meaning, if the same LS has localnet ports for >> networks A, B, and C, then each chassis can either be mapped to A, B, or >> C, but not several of the networks. (Note this doesn't mean that a >> chassis can't be mapped to network D, as long as it doesn't have a >> corresponding localnet port in this same logical switch.) >> >> Ihar Hrachyshka (6): >> Spin out flow generation into build_dhcpv4_options_flows >> Spin out flow generation into build_dhcpv6_options_flows >> Spin out flow generation into build_pre_acl_flows_for_nbsp >> Spin out flow generation into >> build_drop_arp_nd_flows_for_unbound_router_ports >> Support logical switches with multiple localnet ports >> Log missing bridge per localnet port just once >> >> --- >> v2: - rebase on top of series that refactors code dealing with >> localnet ports. >> - tests: send packets both ways, more test scenarios covered. >> - use x2nrealloc to allocate ->localnet_ports. >> - use n_localnet_ports counter instead of localnet_ports pointer >> to detect switches with localnet ports. >> v3: - adjusted documentation to be more explicit about how multiple >> localnet ports scenario should be used in practice. >> - more tests (broadcast, multiple co-hosted switches with multiple >> localnet ports) >> v4: - sent as a series, fixed test description to reflect we test >> broadcast only. >> v5: - fixed a test case failure on slower machines due to service >> broadcast traffic captured. >> - rearranged parameters in new functions to keep output parameters >> at the end. >> v6: - fixed several memory leaks due to struct ds not destroyed / >> char* not freed. >> - explained why we don't rate limit messages about unbound >> localnet ports. >> - docs: fixed a missing space between sentences. >> - nit: rearranged code inside controller/patch.c to avoid an `if`. >> --- >> >> controller/binding.c | 16 ++ >> controller/patch.c | 31 ++- >> northd/ovn-northd.c | 492 ++++++++++++++++++++++------------------ >> ovn-architecture.7.xml | 50 ++-- >> ovn-nb.xml | 23 +- >> ovn-sb.xml | 21 +- >> tests/ovn.at | 504 +++++++++++++++++++++++++++++++++++++++++ >> 7 files changed, 881 insertions(+), 256 deletions(-) >> > > _______________________________________________ > dev mailing list > [email protected] > https://mail.openvswitch.org/mailman/listinfo/ovs-dev >
Hi Ihar, I had a few more comments on patches 1-3. Patches 4-6 look good to me. Thanks, Dumitru _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
