Providing End-to-end Bandwidth Guarantees with OpenFlow

More Info
expand_more

Abstract

QoS (Quality of Service) control is an important concept in computer networking as it is related to end user experience. End-to-end QoS guarantees, in particular, can give firm guarantees to end hosts. Unfortunately, it has never actually been used on the Internet since it was deemed too complicated. With the emergence of Software Defined Networking (SDN) and OpenFlow as its most popular standards, we have an opportunity to re-introduce the QoS control concept. The centralized nature and programmability of OpenFlow allow more flexible and more simple QoS control. In this thesis, we propose an end-to-end bandwidth guaranteeing model for OpenFlow. The primary design consideration of the model is to allow QoS flow to send more than its guaranteed rate. To further maximize the overall network utilization, best-effort flows are allowed to use any unused bandwidth in the network. Bandwidth borrowing concept is employed to achieved this. To ensure that it will not affect the guaranteed bandwidth for the QoS flows, we analyze the reliability of the bandwidth borrowing concept in Linux HTB, which is used as the underlying mechanism of OpenFlow queue. From the simulations, we found that the borrowed bandwidth is returned instantly when a QoS flow requires the bandwidth. Thus, it is possible to guarantee bandwidth and maximize bandwidth utilization at the same time. We also explore the possibility of using OpenFlow meter table for traffic aggregation. The aggregation only puts overheads in the first switch, but no other complexities added in the subsequent switches. Therefore, it solves the scalability problem which commonly associated with end-to-end QoS guarantees.