<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">All-<br class=""><br class="">Over the last several months, the members of the Networking Program have been discussing ways to improve the management of our program.  When the Quantum project was initially launched, we envisioned a combined service that included all things network related.  This vision served us well in the early days as the team mostly focused on building out layers 2 and 3; however, we’ve run into growth challenges as the project started building out layers 4 through 7.  Initially, we thought that development would float across all layers of the networking stack, but the reality is that the development concentrates around either layer 2 and 3 or layers 4 through 7.  In the last few cycles, we’ve also discovered that these concentrations have different velocities and a single core team forces one to match the other to the detriment of the one forced to slow down.<br class=""><br class="">Going forward we want to divide the Neutron repository into two separate repositories lead by a common Networking PTL.  The current mission of the program will remain unchanged [1].  The split would be as follows:<br class=""><br class="">Neutron (Layer 2 and 3)<br class="">- Provides REST service and technology agnostic abstractions for layer 2 and layer 3 services.<br class=""><br class="">Neutron Advanced Services Library (Layers 4 through 7)<br class="">- A python library which is co-released with Neutron<br class="">- The advance service library provides controllers that can be configured to manage the abstractions for layer 4 through 7 services.<br class=""><br class="">Mechanics of the split:<br class="">- Both repositories are members of the same program, so the specs repository would continue to be shared during the Kilo cycle.  The PTL and the drivers team will retain approval responsibilities they now share. <br class="">- The split would occur around Kilo-1 (subject to coordination of the Infra and Networking teams). The timing is designed to enable the proposed REST changes to land around the time of the December development sprint.<br class="">- The core team for each repository will be determined and proposed by Kyle Mestery for approval by the current core team.<br class="">- The Neutron Server and the Neutron Adv Services Library would be co-gated to ensure that incompatibilities are not introduced.<br class="">- The Advance Service Library would be an optional dependency of Neutron, so integrated cross-project checks would not be required to enable it during testing.<br class="">- The split should not adversely impact operators and the Networking program should maintain standard OpenStack compatibility and deprecation cycles.<br class=""><br class="">This proposal to divide into two repositories achieved a strong consensus at the recent Paris Design Summit and it does not conflict with the current governance model or any proposals circulating as part of the ‘Big Tent’ discussion.<br class=""><br class="">Kyle and mark<br class=""><br class="">[1] <a href="https://git.openstack.org/cgit/openstack/governance/plain/reference/programs.yaml" class="">https://git.openstack.org/cgit/openstack/governance/plain/reference/programs.yaml</a></body></html>