Abstract
Some data transfers on the Internet today don't need to complete their transmission as early as possible, yet they may still benefit from a loose guarantee of timeliness. Examples include online backups, non-critical system updates, and large file downloads. Such transfers can make use of a Deadline-Aware Less-than Best Effort (DA-LBE) transport to prevent degrading the quality of service for competing traffic while also upholding a loose notion of timeliness. In this thesis we present Libdalbe, a library that provides this functionality in an accessible and robust manner. Libdalbe facilitates the development of metacontrollers, which adapt an underlying TCP congestion control in the Linux kernel. The metacontrollers use various congestion event statistics to calculate appropriate control parameters for the DA-LBE kernel component created by Lars Erik Storbukås. With Libdalbe we provide two example metacontrollers which use a Model-Based Controller to adapt TCP Cubic and TCP Vegas respectively. We tested Libdalbe and the metacontrollers both on an emulated network and on the Internet to verify that our solutions uphold all qualities required for DA-LBE service. Through a quantitative evaluation we found that our metacontrollers succeed in attaining all behaviors associated with DA-LBE service on the Internet, but our metacontroller for turning TCP Vegas into a DA-LBE transport fails to meet the timeliness criterion on heavily congested network.