|Abstract: ||It is estimated that the number of worldwide broadband Internet subscribers increases at a staggering rate of 8% per year. This fact, along with the ever increasing data consumption demands, have pushed the envelope in the design of faster and better broadband Internet and wireless LAN communications. Nonetheless, home users still experience periods during which the available network resources do not suffice to meet everyone’s requirements, confirming Parkinson’s law of bandwidth absorption: “network traffic expands to fi the available bandwidth”.
Unsurprisingly, numerous sociological studies indicate that a highly desired manage- ment functionality is: “the ability of users to effectively regulate the use of a home network’s bandwidth resources”. Past research on this topic usually proposes over- complicated solutions that are specific to certain technologies and not tailored to the unique characteristics of home networks. First, the average home user does not possess the skills to efficiently manage his/her own network. Second, home networking equipment offer limited management functionalities via heterogeneous user interfaces. Finally, home networks exhibit highly dynamic performance characteristics, affecting the amount of available bandwidth resources over time and space.
This thesis presents HomeShaper , a programmable bandwidth management frame- work which accepts as input a set of user-defi requirements in the form of high-level contracts (e.g. guaranteed rate, capping, prioritisation etc.), and transparently reconfigures the underlying home network infrastructure in order to fulfil them. HomeShaper provides strong guarantees about the correctness of the resulting network configurations, preventing inconsistencies by means of verification. Furthermore it allows the specification of adaptive bandwidth control behaviours, used to dynamically enable or disable individual contracts, responding to the changing network performance conditions. The developers of home network management applications can easily specify custom adaptive behaviours encoded in the form of “teleo-reactive” programs, and rely on the tools and the abstractions provided by HomeShaper runtime|