Abstract

High-level programming is one of the critical building blocks of the effective use of software-defined networking (SDN). Existing solutions, however, either (1) cannot utilize the state-of-the-art switches with flow table pipelining, a key technique to prevent flow rule set explosion or (2) force programmers to manually organize and manage hardware flow table pipelines, which is time-consuming and error-prone. This paper presents a high-level SDN programming framework to address these issues. The framework can automatically (1) generate rule sets for heterogeneous switches with different flow table pipelining designs and (2) update installed rules when the network state changes. As a result, the framework can not only generate efficient rule sets for switches but also provide programmers a centralized, intuitive, and hence easy-to-use programming API. Experiments show that the framework can generate compact rule sets that are 29–116 times smaller than those generated by other open-source SDN controllers. Besides, the framework is 5 times faster to recover from network link failures in comparison to other controllers.

Highlights

  • Software-defined networking (SDN) brings the appeal to manage complex networks more efficiently by shielding lowlevel details

  • Is paper tries to answer the above questions by presenting Maple++, the first implementation of high-level SDN reactive programming for switches with flow table pipelining

  • As far as we know, Maple++ is the first implementation of reactive programming for real SDN networks including heterogeneous switches with flow table pipeline designs

Read more

Summary

Introduction

Software-defined networking (SDN) brings the appeal to manage complex networks more efficiently by shielding lowlevel details (e.g., setting up flow tables and handling network events such as link failures). To manage network switches, programmers have to explicitly specify matching fields of each flow table, and it is programmers’ responsibility to correctly handle hardware details In recent years, another promising approach, reactive high-level SDN programming model (reactive programming ), has been proposed. Existing implementations of reactive programming (e.g., Maple [8]) only generate rule set for switches with a single flow table. Is paper tries to answer the above questions by presenting Maple++, the first implementation of high-level SDN reactive programming for switches with flow table pipelining. As far as we know, Maple++ is the first implementation of reactive programming for real SDN networks including heterogeneous switches with flow table pipeline designs

A Motivating Example
Experiments
Switch 3 dpid
Conclusion and Future
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call