Debuglets: Programmable Network Debugging Infrastructure


This project started in 2023 and is ongoing.


Seyedali Tabaeiaghdaei (ETH)
Dr. Jonghoon Kwon (ETH)
Prof. Dr. Adrian Perrig (ETH)
Patrick Bamert (ZKB)

Industry partner



Debuglets is an advanced distributed network debugging infrastructure designed to enhance end-user debugging on the Internet. Today’s end-user debugging is limited to primitive tools like ping and traceroute, leaving users with insufficient data for isolating network faults and no means of external result validation. Debuglets offers a deployable, incentivized architecture that enables near-path network debugging using real data packets and user-defined code for precise and adaptable network performance measurements.

In this system, Autonomous Systems (ASes) deploy small-scale cloud services for network measurement applications. Users can pay to run their network debugging apps in these environments, and the results can be certified by the deploying AS for third-party verification. Debuglets features three essential planes: Management Plane, Measurement Plane, and Knowledge Plane, ensuring effective contract management, real-time network data collection, and efficient data dissemination.

Debuglets comprises three critical components: the Remote Code Execution (RCE) service, the execution environment for network measurement applications; the Coordinator, facilitating contracts and distributing Debuglets; and the Sanitizer, enforcing information disclosure policies during output dissemination. This infrastructure significantly improves end-user debugging, accelerates network issue identification, and introduces innovative business models for ASes, with even a partial deployment proving beneficial for users.