POSITION PAPER Reactive Logic in Software-Defined Networking: Accounting for the Limitations of the Switches Roberto Bifulco, Maurizio Dusi NEC Laboratories Europe
Page 2 © NEC Corporation 2014 Equations OpenFlow = SDN SDN != OpenFlow …but today we speak of SDN using OpenFlow as concrete example
Page 3 © NEC Corporation 2014 …L3_SRCL3_DSTL4_SRCL4_DST…Action OpenFlow operations: reactive logic Forwarding Element …L3_SRCL3_DSTL4_SRCL4_DST…Action Any112/8Any Fwd-to: 2 L3_SCR: L3_DST: L4_SRC: 5433 L4_DST: 80 L3_SCR: L3_DST: L4_SRC: 5433 L4_DST: 80 Controller flow_mod packet_in 1 2 3
Page 4 © NEC Corporation 2014 …L3_SRCL3_DSTL4_SRCL4_DST…Action OpenFlow operations: reactive logic Forwarding Element …L3_SRCL3_DSTL4_SRCL4_DST…Action Any112/8Any Fwd-to: 2 L3_SCR: L3_DST: L4_SRC: 5433 L4_DST: 80 L3_SCR: L3_DST: L4_SRC: 5433 L4_DST: 80 Controller flow_mod packet_in 1 2 3
Page 5 © NEC Corporation 2014 OpenFlow network ▌The abstraction process hides the switches details ▌But not all the switches are the same Current controller’s view is different from reality
Page 6 © NEC Corporation 2014 OpenFlow network ▌The abstraction process hides the switches details ▌But not all the switches are the same Current controller’s view is different from reality
Page 7 © NEC Corporation 2014 Flow Table Update Rate ▌Current controllers ignore this bit of information ▌Switches have very different performance* 1 order of magnitude 2 orders of magnitude Data taken from: -Danny Yuxing Huang, Kenneth Yocum, and Alex C. Snoeren High-fidelity switch models for software-defined network emulation. In Proceedings of the second ACM SIGCOMM workshop on Hot topics in software defined networking (HotSDN '13). ACM, New York, NY, USA, DOI= / Andrew R. Curtis, Jeffrey C. Mogul, Jean Tourrilhes, Praveen Yalagandula, Puneet Sharma, and Sujata Banerjee DevoFlow: scaling flow management for high-performance networks. In Proceedings of the ACM SIGCOMM 2011 conference (SIGCOMM '11). ACM, New York, NY, USA, DOI= /
Page 8 © NEC Corporation 2014 A practical example / 30/ 15/ 60/50/ / 10 missing 10 +
Page 9 © NEC Corporation 2014 Maximum number of flows ▌Shortest path: 50 ▌Actual network’s physical limit: Taking into account switches’ limitations and differences can improve the network performance and/or reduce the switch resources requirements
Page 10 © NEC Corporation 2014 Why a reactive logic reacts? ▌Packet_ins and flow_mods are generated in response to network events Dependent on network traffic ▌Network traffic is usually taken into account to drive data plane optimizations What about the impact on control plane?
Page 11 © NEC Corporation 2014 Understanding switch requirements ▌Switch simulator Based on the reactive OpenFlow model Flow entry definition is configurable Input: traffic trace Output: number of packet_in, flow_mod per second number of flow entries in the flow table per second ▌Simplified controller model: Only packet_in and flow_mod interactions The same flow entry definition is applied for all the incoming flows E.g., flow entry is defined by the destination IP address/32 and idle timeout is 10 seconds.
Page 12 © NEC Corporation 2014 Results on a real packet trace* *MAWI Working Group Traffic Archive – Trace from Apr 4th ▌Flow definition based on the destination IP address E.g., ACL-like network application ▌Varying idle timeout value This flow definition cannot be used with current switches technology
Page 13 © NEC Corporation 2014 Results on a real packet trace* *MAWI Working Group Traffic Archive – Trace from Apr 4th orders of magnitude
Page 14 © NEC Corporation 2014 How to handle the control plane load? ▌If the control plane takes into account: switches’ limitations (E.g., max number of flow_mods per second) switches’ load (E.g., current number of handled flow_mods per second) ▌Then, we envision the following Solutions: Enhanced routing/control algorithms Switch enhancements
Page 15 © NEC Corporation 2014 How to handle the control plane load? ▌If the control plane takes into account: switches’ limitations (E.g., max number of flow_mods per second) switches’ load (E.g., current number of handled flow_mods per second) ▌Then, we envision the following Solutions: Enhanced routing/control algorithms Switch enhancements
Page 16 © NEC Corporation 2014 Example: Hybrid switch design ▌Software switch: Fast in handling control messages Slow in handling packet forwarding ▌Hardware switch: Slow in handling control messages Fast in handling packet forwarding Hardware Software
Page 17 © NEC Corporation 2014 Summary… ▌OpenFlow abstractions hide important switches’ properties E.g., the switches performance in handling control messages; ▌Exploiting this information can help in improving the network performance and can enable new applications. It enables a more reactive control logic; ▌Understanding control plane workloads for different applications and different networks is critical for reactive control plane design What is causing switches overloading and when/for how long?
Page 18 © NEC Corporation 2014 …and future work ▌Measuring control plane workloads in real scenarios Preliminary work already published* Assessing reactive logic effects on the network flows performance ▌Combining switching technologies to overcome current technology limitations Smart combination of software and hardware Exploiting traffic properties to enhance SDN switches performance ▌Improving/Rethinking SDN abstractions *Reactive Logic in Software-Defined Networking: Measuring Flow-Table Requirements M. Dusi, R. Bifulco (NEC), F. Gringoli (University of Brescia), F. Schneider (NEC)