Design for multi-threading Kea
The major feature of upcoming Kea 1.7 is the ability to use multiple cores. We decided to go with multi-threading. During 1.6 timeframe @razvan did some early prototyping that was very promising.
There's this page: https://gitlab.isc.org/isc-projects/kea/wikis/designs/kea%20multithreading%20packet%20processing, which is a very good start.
This feature requirements page: https://gitlab.isc.org/isc-projects/kea/wikis/kea-multithreading-packet-processing-requirements
The page needs to describe the overall design, how the critical sections are found, how commands are handles (we probably need to split the commands into read-only and those that modify state, so need to wait for packet processing to complete current packets).
Also, it would be good to look at whether we still want to use the packet parking feature or perhaps retire it.
The design should list major tasks needed to conduct (and point to specific gitlab issues).