Quality of Service Abstractions for Software-defined Networks - Schlesinger, Cole; Ballani, Hitesh; Karagiannis, Thomas; Vytiniotis, Dimitrios (Microsoft Research, 2015)
Software-defined networking (SDN) provides a means of configuring the packet-forwarding behavior of a network from a logically-centralized controller. Expressive, high-level languages have emerged for expressing data-plane configurations, and new tools allow for verifying packet reachability properties in real time. But SDN largely ignores quality of service (QoS) primitives, such as queues, queuing disciplines, and rate limiters, leaving configuration of these elements to be performed out of band in an ad-hoc manner. Not only does this make QoS elements difficult to configure, it also leads to a “try it and see” approach to analysis and verification of QoS properties. We propose a new language for configuring SDNs with quality of service primitives. Our language comes equipped with a well-defined semantics drawn from the network calculus, which we believe will yield an equational theory for reasoning about network quality of service as well as decision procedures for verifying QoS properties.