Safe, Efficient, and Robust SDN Updates by Combining Rule Replacements and Additions

Disruption-free updates are a key primitive to effectively operate SDN networks and maximize the benefits of their programmability. In this paper, we study how to implement this primitive safely (with respect to forwarding correctness and policies), efficiently (in terms of consumed network resources) and robustly to unpredictable factors, such as delayed message delivery and processing. First, we analyze the fundamental limitations of prior proposals, which either: 1) progressively replace initial flow rules with new ones or 2) instruct switches to maintain both initial and final rules. Second, we show that safe, efficient, and robust updates can be achieved by leveraging a more general approach. We indeed unveil a dualism between rule replacements and additions that opens new degrees of freedom for supporting SDN updates. Third, we demonstrate how to build upon this dualism. We propose FLIP, an algorithm that computes operational sequences combining the efficiency of rule replacements with the applicability of rule additions. FLIP identifies constraints on rule replacements and additions that independently prevent safety violations from occurring during the update. Then, it explores the solution space by swapping constraints that prevent the same safety violations, until it reaches a satisfiable set of constraints. Fourth, we perform extensive simulations, showing that FLIP can significantly outperform prior work. In the average case, it guarantees a much higher success rate than algorithms only based on rule replacements, and massively reduces the memory overhead needed by techniques solely using rule additions.

[1]  Arne Ludwig,et al.  Scheduling Loop-free Network Updates: It's Good to Relax! , 2015, PODC.

[2]  Stefano Vissicchio,et al.  FLIP the (Flow) table: Fast lightweight policy-preserving SDN updates , 2016, IEEE INFOCOM 2016 - The 35th Annual IEEE International Conference on Computer Communications.

[3]  Roger Wattenhofer,et al.  On consistent migration of flows in SDNs , 2016 .

[4]  Monia Ghobadi,et al.  Efficient traffic splitting on commodity switches , 2015, CoNEXT.

[5]  Tal Mizrahi,et al.  Software defined networks: It's about time , 2016, IEEE INFOCOM 2016 - The 35th Annual IEEE International Conference on Computer Communications.

[6]  Tal Mizrahi,et al.  TimeFlip: Scheduling network updates with timestamp-based TCAM ranges , 2015, 2015 IEEE Conference on Computer Communications (INFOCOM).

[7]  Pavol Cerný,et al.  Optimal Consistent Network Updates in Polynomial Time , 2016, DISC.

[8]  Bo Yang,et al.  RuleTris: Minimizing Rule Update Latency for TCAM-Based SDN Switches , 2016, 2016 IEEE 36th International Conference on Distributed Computing Systems (ICDCS).

[9]  Dejan Kostic,et al.  Providing Reliable FIB Update Acknowledgments in SDN , 2014, CoNEXT.

[10]  David Walker,et al.  Abstractions for network update , 2012, SIGCOMM '12.

[11]  Minlan Yu,et al.  SIMPLE-fying middlebox policy enforcement using SDN , 2013, SIGCOMM.

[12]  Eric Torng,et al.  TCAM Razor: a systematic approach towards minimizing packet classifiers in TCAMs , 2010, TNET.

[13]  Marco Canini,et al.  FatTire: declarative fault tolerance for software-defined networks , 2013, HotSDN '13.

[14]  Ratul Mahajan,et al.  Measuring ISP topologies with rocketfuel , 2002, TNET.

[15]  Ratul Mahajan,et al.  On consistent updates in software defined networks , 2013, HotNets.

[16]  Bo Yang,et al.  Compiling minimum incremental update for modular SDN languages , 2014, HotSDN.

[17]  Olivier Bonaventure,et al.  A Declarative and Expressive Approach to Control Forwarding Paths in Carrier-Grade Networks , 2015, SIGCOMM.

[18]  Arne Ludwig,et al.  Good Network Updates for Bad Packets: Waypoint Enforcement Beyond Destination-Based Routing Policies , 2014, HotNets.

[19]  John W. Chinneck,et al.  Feasibility and Infeasibility in Optimization:: Algorithms and Computational Methods , 2007 .

[20]  Arne Ludwig,et al.  Transiently Secure Network Updates , 2016, SIGMETRICS.

[21]  Nick McKeown,et al.  OpenFlow: enabling innovation in campus networks , 2008, CCRV.

[22]  Olivier Bonaventure,et al.  Safe Update of Hybrid SDN Networks , 2017, IEEE/ACM Transactions on Networking.

[23]  Xin Jin,et al.  Dynamic scheduling of network updates , 2014, SIGCOMM.

[24]  Ian F. Akyildiz,et al.  A roadmap for traffic engineering in SDN-OpenFlow networks , 2014, Comput. Networks.

[25]  David Walker,et al.  Compiling Path Queries , 2016, NSDI.

[26]  Nate Foster,et al.  Efficient synthesis of network updates , 2014, PLDI.

[27]  Matthew Caesar,et al.  Walk the line: consistent network updates with bandwidth guarantees , 2012, HotSDN '12.

[28]  Srikanth Kandula,et al.  Achieving high utilization with software-driven WAN , 2013, SIGCOMM.

[29]  Xin Wu,et al.  zUpdate: updating data center networks with zero loss , 2013, SIGCOMM.

[30]  David Walker,et al.  Incremental consistent updates , 2013, HotSDN '13.

[31]  Jie Yun Yu Scalable Routing Design Principles , 2000, RFC.

[32]  Olivier Bonaventure,et al.  On the co-existence of distributed and centralized routing control-planes , 2015, 2015 IEEE Conference on Computer Communications (INFOCOM).

[33]  Amin Vahdat,et al.  A scalable, commodity data center network architecture , 2008, SIGCOMM '08.

[34]  Rick McGeer,et al.  A safe, efficient update protocol for openflow networks , 2012, HotSDN '12.