Project management:

We’ve made some progress on Shadow’s milestone Improve development assurance and velocity. Notably:

v1.14.0 of Shadow was released. In addition to the changes above, it modularizes the router queue management algorithm and makes CoDel the default algorithm.

Our current focus is on prototyping Phantom: a new architecture for Shadow that will run applications in their own processes rather than using a custom ELF loader to load them directly into Shadow’s process. The new architecture will work with unmodified program binaries (rather than having to recompile them with -fPIC), should be stabler and easier to maintain, and may have performance benefits.

Because Rob Jansen and Ryan Wails at NRL are actively involved in this development work, NRL regulations require that the active development happen in a private branch. When it’s ready to be upstreamed, they’ll go through an NRL release process and merge it into the public repo. In the meantime there is a place-holder issue [#738] in the public repo.

Recent progress on Shadow-Phantom:

In the coming month our main focus will continue to be on Shadow-Phantom. We intend to flesh out the functionality enough to start doing simple networking benchmarks, and if results look promising will continue to flesh it out enough to run Tor.