Kneecap: Model-based generation of network traffic

Nikolai Sultana, Richard Mortier · Apollo (University of Cambridge) · 2016

Packet generation is an important activity for network administration and security. Tools for packet generation work through template instantiation and are used in an imperative programming style. We describe a new design for a $\textit{declarative}$ packet generator that affords users rich expressiveness to describe the packets they wish to generate. This relies on a domain-specific language for describing packets and constraints over them. This is translated into bitvector constraints that are dispatched to an SMT solver. The resulting bitvector solutions are then concatenated and composed into the different layers of the network protocol stack, and can be sent over the network interface. In this paper we describe a library implementation of this approach, and evaluate its extensibility and scalability.

Read the paper · More papers on PaperTik