Introduce IPv6 Prefix delegation state machine according to RFC 3633 https://tools.ietf.org/html/rfc3633. Add handle_dhcpv6_reply controller action to parse advertise/reply from IPv6 delegation server. Introduce logical flows in ovn router pipeline in order to parse dhcpv6 advertise/reply from IPv6 prefix delegation router. This series relies on the following OVS commit: https://github.com/openvswitch/ovs/commit/cec89046f72cb044b068ba6a4e30dbcc4292c4c1
Changes since v8: - move prefixd routine declaration in a common place - rely on datapath_is_switch utility routine - s/unisgned/uint32_t - remove sleep in unit test and rely on ovn utility macros - always overwrite interface name and timeout values in dibbler configuration Changes since v7: - fixed a bug inserting the configured prefix as hint in dhcp pd messages restarting ovn controller - removed pfd entry from ipv6_prefixd hash if prefix delegation has been disabled for this port - check in system-ovn.at that the configured prefix is inserted as hint in dhcp pd messages Changes since v6: - fix documentation - convert handle_dhcpv6_reply from netsted to plain action - code reworking to reduce cpu utilization - insert configured prefix as hint in dhcp pd messages Changes since v5: - introduce ipv6_prefix column in logical_router_port table to save ipv6 prefix received from delegation router Changes since v4: - improve unit test support - fix ovn-controller crash - confifure prefixes received from delegation router in RA - allow the requesting router to rely on lla address for PD protocol Changes since v3: - cosmetics - add a provider bridge in the unit-test deployment and add a localnet port to the deployment to access the underlay network - request IPv6 prefix even for bar router logical port in the unit-test deployment Changes since v2: - add unitest support in system-ovn.at Changes since v1: - rebase on top of ovn master branch - request an IPv6 prefix for each 'downstream' logical router port marked with prefix set to true - add missing documentation - rename dhcp6_server_pkt in handle_dhcpv6_reply Lorenzo Bianconi (2): controller: add ipv6 prefix delegation state machine northd: add logical flows for dhcpv6 pfd parsing controller/pinctrl.c | 651 ++++++++++++++++++++++++++++++++++++++++ include/ovn/actions.h | 8 +- lib/actions.c | 16 + lib/ovn-l7.h | 19 ++ northd/ovn-northd.8.xml | 8 + northd/ovn-northd.c | 95 +++++- ovn-nb.ovsschema | 7 +- ovn-nb.xml | 21 ++ ovn-sb.xml | 18 ++ tests/atlocal.in | 5 +- tests/ovn.at | 4 + tests/system-ovn.at | 143 +++++++++ utilities/ovn-trace.c | 2 + 13 files changed, 988 insertions(+), 9 deletions(-) -- 2.25.1 _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
