Linux Network Stack Test (LNST) is a tool that supports development and execution of automated and portable network tests. What distinguishes it from other testing software is it’s focus on supporting portable multi-hosted tests – tests that need to run simultaneously on multiple hosts in a synchronized manner. The project was started in Red Hat, opensourced on GitHub and development continues there. Recently the entire project underwent a major redesign and reimplementation of it’s core, discarding a mixed XML+Python architecture in favour of pure Python and is in a process of migration of old tests and features to this new architecture.
In Red Hat we’ve developed a set of functional and performance tests in LNST that are a part of the Continuous Integration workflow for kernel network development. All of these are still using the old LNST architecture.
Students would be able to collaborate on upstream development by implementing features for the new LNST architecture (that were missed or skipped during the redesign phase), by helping with porting the old tests to the new architecture, and general code improvement by finding and fixing bugs in the new implementation.