uTNT: Unikernels for Efficient and Flexible Internet Probing
Maxime Letemple, Gaulthier Gain, Sami Ben Mariem, Laurent Mathy, Benoit Donnet
TL;DR
The paper addresses the rigidity of traditional Internet measurement platforms by proposing uTNT, a unikernel-based port of TNT built with Unikraft to enable on-demand, lightweight Internet probing. It provides a complete toolchain for porting network measurement software to unikernels and demonstrates that uTNT uses far less memory and deploys much faster than VMs or containers, while maintaining or improving runtime efficiency. Through a detailed performance evaluation and a cloud deployment use-case, the work shows substantial gains in deployment speed, memory footprint, and scalability, validating the practicality of unikernels for measurement tasks. The findings suggest a path toward flexible, responsive Internet measurement infrastructures, with publicly available code to facilitate broader adoption across platforms and applications.
Abstract
The last twenty years have seen the development and popularity of network measurement infrastructures. Internet measurement platforms have become common and have demonstrated their relevance in Internet understanding and security observation. However, despite their popularity, those platforms lack of flexibility and reactivity, as they are usually used for longitudinal measurements. As a consequence, they may miss detecting events that are security or Internet-related. During the same period, operating systems have evolved to virtual machines (VMs) as self-contained units for running applications, with the recent rise of unikernels, ultra-lightweight VMs tailored for specific applications, eliminating the need for a host OS. In this paper, we advocate that measurement infrastructures could take advantage of unikernels to become more flexible and efficient. We propose uTNT, a proof-of-concept unikernel-based implementation of TNT, a traceroute extension able to reveal MPLS tunnels. This paper documents the full toolchain for porting TNT into a unikernel and evaluates uTNT performance with respect to more traditional approaches. The paper also discusses a use case in which uTNT could find a suitable usage. uTNT source code is publicly available on Gitlab.
