ETH Zurich – Distributed Computing – www.disco.ethz.ch Klaus-Tycho Förster, Ratul Mahajan, and Roger Wattenhofer Consistent Updates in Software Defined.

Slides:



Advertisements
Similar presentations
Software-defined networking: Change is hard Ratul Mahajan with Chi-Yao Hong, Rohan Gandhi, Xin Jin, Harry Liu, Vijay Gill, Srikanth Kandula, Mohan Nanduri,
Advertisements

Dynamic Scheduling of Network Updates Xin Jin Hongqiang Harry Liu, Rohan Gandhi, Srikanth Kandula, Ratul Mahajan, Ming Zhang, Jennifer Rexford, Roger Wattenhofer.
Dynamic Scheduling of Network Updates Based on the slides by Xin Jin Hongqiang Harry Liu, Rohan Gandhi, Srikanth Kandula, Ratul Mahajan, Ming Zhang, Jennifer.
COS 461 Fall 1997 Routing COS 461 Fall 1997 Typical Structure.
Multicast in Wireless Mesh Network Xuan (William) Zhang Xun Shi.
1 NP-Complete Problems. 2 We discuss some hard problems:  how hard? (computational complexity)  what makes them hard?  any solutions? Definitions 
Evolving Graphs & Dynamic Networks : Old questions  New insights Afonso Ferreira S. Bhadra CNRS I3S & INRIA Sophia Antipolis
© 2007 Cisco Systems, Inc. All rights reserved.ICND2 v1.0—3-1 Medium-Sized Routed Network Construction Reviewing Routing Operations.
SWAN: Software-driven wide area network
Mobile and Wireless Computing Institute for Computer Science, University of Freiburg Western Australian Interactive Virtual Environments Centre (IVEC)
1 LINK STATE PROTOCOLS (contents) Disadvantages of the distance vector protocols Link state protocols Why is a link state protocol better?
On the Topologies Formed by Selfish Peers Thomas Moscibroda Stefan Schmid Roger Wattenhofer IPTPS 2006 Santa Barbara, California, USA.
EE 4272Spring, 2003 Chapter 10 Packet Switching Packet Switching Principles  Switching Techniques  Packet Size  Comparison of Circuit Switching & Packet.
1 Internet Networking Spring 2006 Tutorial 6 Network Cost of Minimum Spanning Tree.
Efficient Hop ID based Routing for Sparse Ad Hoc Networks Yao Zhao 1, Bo Li 2, Qian Zhang 2, Yan Chen 1, Wenwu Zhu 3 1 Lab for Internet & Security Technology,
The Theory of NP-Completeness
Network Layer Design Isues Store-and-Forward Packet Switching Services Provided to the Transport Layer The service should be independent of the router.
Approximating Optimal Binary Decision Trees Brent Heeringa (joint work with Micah Adler) 18 November 2005.
Analysis of Algorithms CS 477/677
Multicast Routing in ATM Networks with Multiple Classes of QoS Ren-Hung Hwang, Min-Xiou Chen, and Youn-Chen Sun Department of Computer Science & Information.
Highly Dynamic Destination- Sequenced Distance-Vector Routing (DSDV) for Mobile Computers C. E. Perkins & P. Bhagwat Presented by Paul Ampadu.
1 Internet Networking Spring 2004 Tutorial 6 Network Cost of Minimum Spanning Tree.
Link-State Routing Reading: Sections 4.2 and COS 461: Computer Networks Spring 2011 Mike Freedman
An Efficient Location Service for Mobile Ad Hoc Networks Roland Flury Roger Wattenhofer Distributed Computing Group MLS.
Greedy Routing with Bounded Stretch Roland Flury, Roger Wattenhofer (ETH Zurich), Sriram Pemmaraju (Iowa University) Published at IEEE Infocom 2009 Introduction.
QoS-Aware Path Protection in MPLS Networks Ashish Gupta Ashish Gupta Bijendra Jain Indian Institute of Technology Delhi Satish Tripathi University of California.
Yashar Ganjali High Performance Networking Group Stanford University September 17, 2003 Minimum-delay Routing.
1 Algorithms for Bandwidth Efficient Multicast Routing in Multi-channel Multi-radio Wireless Mesh Networks Hoang Lan Nguyen and Uyen Trang Nguyen Presenter:
Active Learning for Probabilistic Models Lee Wee Sun Department of Computer Science National University of Singapore LARC-IMS Workshop.
The Theory of NP-Completeness 1. Nondeterministic algorithms A nondeterminstic algorithm consists of phase 1: guessing phase 2: checking If the checking.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Distributed Constraint Optimization Michal Jakob Agent Technology Center, Dept. of Computer Science and Engineering, FEE, Czech Technical University A4M33MAS.
Review: routing algorithms. –Choose the appropriate paths. –Routing algorithms Flooding Shortest path routing (example). –Dijkstra algorithm. –Bellman-Ford.
Packet-Switching Networks Routing in Packet Networks.
Technical Refresher Session 3. Overview Difference between communication between devices on a single logical network and communication between different.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Advanced Algorithm Design and Analysis (Lecture 13) SW5 fall 2004 Simonas Šaltenis E1-215b
Message-Passing for Wireless Scheduling: an Experimental Study Paolo Giaccone (Politecnico di Torino) Devavrat Shah (MIT) ICCCN 2010 – Zurich August 2.
Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Chapter 5 Network Layer.
Palette: Distributing Tables in Software-Defined Networks Yossi Kanizo (Technion, Israel) Joint work with Isaac Keslassy (Technion, Israel) and David Hay.
Program Synthesis for Network Updates Pavol Černý CU Boulder Dagstuhl, February 2015.
1 Near-Optimal Hot-Potato Routing on Trees Costas Busch Rensselaer Polytechnic Inst. Malik Magdon Ismail Rensselaer Polytechnic Inst. Marios Mavronicolas.
ETH Zurich – Distributed Computing – Klaus-Tycho Förster, Rijad Nuridini, Jara Uitto, Roger Wattenhofer Lower Bounds for the Capture.
Reliable Multicast Routing for Software-Defined Networks.
Vasilis Syrgkanis Cornell University
Spring 2000CS 4611 Routing Outline Algorithms Scalability.
ETH Zurich – Distributed Computing Group Stephan Holzer 1ETH Zurich – Distributed Computing – Stephan Holzer Yvonne Anne Pignolet Jasmin.
1 Chapter 4: Internetworking (IP Routing) Dr. Rocky K. C. Chang 16 March 2004.
Introduction to Multiple-multicast Routing Chu-Fu Wang.
ETH Zurich – Distributed Computing Group Stephan HolzerSODA Stephan Holzer Silvio Frischknecht Roger Wattenhofer Networks Cannot Compute Their Diameter.
Lecture 7. Building Forwarding Tables There are several methods Static Method Dynamic Methods Centralized Distributed Distance Vector Link State.
Constructing Inter-Domain Packet Filters to Control IP Spoofing Based on BGP Updates Zhenhai Duan, Xin Yuan Department of Computer Science Florida State.
ETH Zurich – Distributed Computing – Sharing a Medium Between Concurrent Protocols Without Overhead Using the Capture Effect Michael.
ETH Zurich – Distributed Computing – On Consistent Migration of Flows in SDNs Sebastian Brandt, Klaus-Tycho Förster, Roger Wattenhofer.
IP tutorial - #2 Routing KAIST Dept. of CS NC Lab.
Augmenting Anycast Network Flows
Constraint-Based Routing
IP Routers – internal view
Auburn University COMP8330/7330/7336 Advanced Parallel and Distributed Computing Communication Costs (cont.) Dr. Xiao.
Dynamic Scheduling of Network Updates
Intra-Domain Routing Jacob Strauss September 14, 2006.
Routing in Packet Networks Shortest Path Routing
Timed Consistent Network Updates in Software-Defined Networks
The Power of Two in Consistent Network Updates: Hard Loop Freedom, Easy Flow Migration Klaus-Tycho Förster and Roger Wattenhofer.
Using Packet Information for Efficient Communication in NoCs
RFC 1058 & RFC 2453 Routing Information Protocol
COS 561: Advanced Computer Networks
Communication Networks NETW 501
Lecture 10, Computer Networks (198:552)
COS 461: Computer Networks
Presentation transcript:

ETH Zurich – Distributed Computing – Klaus-Tycho Förster, Ratul Mahajan, and Roger Wattenhofer Consistent Updates in Software Defined Networks: On Dependencies, Loop Freedom, and Blackholes

Klaus-Tycho Förster, Ratul Mahajan, and Roger Wattenhofer Consistent Updates in Software Defined Networks: On Dependencies, Loop Freedom, and Blackholes network updates d vu d vu d vu

By Xin Jin

<

Appears in Practice “some switches can ‘straggle,’ taking substantially more time than average (e.g., x) to apply an update” Jin et al., SIGCOMM 2014

By Xin Jin

“Tree Ordering”

By Xin Jin “Tree Ordering”

By Xin Jin “Tree Ordering”

By Xin Jin “Tree Ordering”

Software-Defined Networking Centralized controller updates networks rules for optimization Controller (control plane) updates the switches/routers (data plane)

old network rules new network rules network updates

old network rules new network rules network updates

old network rules new network rules network updates possible solution: be fast! e.g., B4 [Jain et al., 2013]

old network rules new network rules network updates possible solution: be consistent! e.g., per-router ordering [Vanbever et al., 2012] two phase commit [Reitblatt et al., 2012] SWAN [Hong et al., 2013] Dionysus [Jin et al., 2014] ….

old network rules new network rules network updates possible solution: be consistent!

Dynamic Updates Idea: Update as many routers as you can

… a b d … a b d network updates Dynamic Updates

… a b d … a b d network updates … a b d Dynamic Updates

… a b d … a b d network updates … a b d Dynamic Updates

… a b d … a b d network updates … a b d Dynamic Updates

… a b d … a b d network updates … a b d Dynamic Updates

… a b d … a b d network updates … a b d greedy maximum update a & b update → all others wait 2 nodes update Dynamic Updates

… a b d … a b d network updates … a b d greedy maximum update a & b update → all others wait 2 nodes update … a b d maximal update a waits→ all others update all but 1 update Dynamic Updates

But how long until all routers updated? Dynamic Updates

Dynamic Updates vs Tree Ordering Worst case? Identical to Tree Ordering … d

Dynamic Updates vs Tree Ordering But in practice?

Dynamic updates vs. Tree Ordering ?

Dynamic Updates

Beyond a Single Destination But what about prefix routing rules?  d1d1 d2d2 d3d3 d1d1 d2d2 d3d3

Beyond a Single Destination Split into single destination rules? (Memory…) d1d1 d2d2 d3d3 d1d1 d2d2 d3d3

Beyond a Single Destination Fewest #updates: NP-hard to approximate

Beyond a Single Destination Reduction from 3-Satisfiability 1.Maximizing #rules per update is NP-hard 2.Fewest #updates NP-hard to approximate

3-Satisfiability XiXi YiYi XiXi Y 

3-Satisfiability X2X2 Y2Y2 X2X2 Y  X1X1 Y1Y1 X1X1 Y X3X3 Y3Y3 X3X3 Y

3-Satisfiability X2X2 Y2Y2 X2X2 Y  X1X1 Y1Y1 X1X1 Y X3X3 Y3Y3 X3X3 Y C = X 1 V X 2 V  X 3 C C C

3-Satisfiability X2X2 Y2Y2 X2X2 Y  X1X1 Y1Y1 X1X1 Y X3X3 Y3Y3 X3X3 Y C = X 1 V X 2 V  X 3 C C C X 1 ”false” X 2 ”false” X 3 ”true”

3-Satisfiability 3-Satisfiable  Update each variable* *(and all rules outside the variables)

Shortest Sequence Also: Shortest sequence NP-hard to approximate

Shortest Sequence Also: Shortest sequence NP-hard to approximate XiXi YiYi XiXi Y 

Shortest Sequence Also: Shortest sequence NP-hard to approximate XiXi YiYi XiXi Y  G=(V,E) Z Z Z Z

Blackholes

dd d d

dd d d d

dd d d

dd d d

?? dd d No rule? Drop packet

Blackholes dd d d d Idea 1: Keep old rule in memory

Blackholes ?? dd d Idea 2: Send somewhere else?

Blackholes Respect memory limits and no loops?

Blackholes Fastest method: NP-hard to approximate!

Proof Idea A cycle can be used for loop-free routing d2d2 d1d1 d3d3 d1d1 d2d2 d3d3

Proof Idea With cycle: fast change; else slow… d2d2 d1d1 d3d3 d1d1 d2d2 d3d3

Proof Idea But Hamiltonian Cycle problem is NP-complete!

Conclusion

ETH Zurich – Distributed Computing – Klaus-Tycho Förster, Ratul Mahajan, and Roger Wattenhofer Consistent Updates in Software Defined Networks: On Dependencies, Loop Freedom, and Blackholes

Appears in Practice “Data plane updates may fall behind the control plane acknowledgments and may be even reordered.” Kuzniar et al., PAM 2015 “some switches can ‘straggle,’ taking substantially more time than average (e.g., x) to apply an update” Jin et al., SIGCOMM 2014 “…the inbound latency is quite variable with a […] standard deviation of 31.34ms…” He et al., SOSR 2015

How to proceed in practice?

ETH Zurich – Distributed Computing – Klaus-Tycho Förster, Ratul Mahajan, and Roger Wattenhofer Consistent Updates in Software Defined Networks: On Dependencies, Loop Freedom, and Blackholes