Aaron Gember-Jacobson

Slides:



Advertisements
Similar presentations
NP-Hard Nattee Niparnan.
Advertisements

SDN Controller Challenges
Traffic Engineering with Forward Fault Correction (FFC)
Software-defined networking: Change is hard Ratul Mahajan with Chi-Yao Hong, Rohan Gandhi, Xin Jin, Harry Liu, Vijay Gill, Srikanth Kandula, Mohan Nanduri,
Dynamic Scheduling of Network Updates Xin Jin Hongqiang Harry Liu, Rohan Gandhi, Srikanth Kandula, Ratul Mahajan, Ming Zhang, Jennifer Rexford, Roger Wattenhofer.
Logically Centralized Control Class 2. Types of Networks ISP Networks – Entity only owns the switches – Throughput: 100GB-10TB – Heterogeneous devices:
Presentation of Designing Efficient Irregular Networks for Heterogeneous Systems-on-Chip by Christian Neeb and Norbert Wehn and Workload Driven Synthesis.
Nanxi Kang Princeton University
1 EE5900 Advanced Embedded System For Smart Infrastructure Static Scheduling.
1 EL736 Communications Networks II: Design and Algorithms Class3: Network Design Modeling Yong Liu 09/19/2007.
Towards Virtual Routers as a Service 6th GI/ITG KuVS Workshop on “Future Internet” November 22, 2010 Hannover Zdravko Bozakov.
© 2009 Cisco Systems, Inc. All rights reserved. ROUTE v1.0—4-1 Implement an IPv4-Based Redistribution Solution Lab 4-1 Debrief.
Chapter 9 Graph algorithms Lec 21 Dec 1, Sample Graph Problems Path problems. Connectedness problems. Spanning tree problems.
1 Design and implementation of a Routing Control Platform Matthew Caesar, Donald Caldwell, Nick Feamster, Jennifer Rexford, Aman Shaikh, Jacobus van der.
From Miles to Millimeter: On-chip Communication Networks Alessandro Pinto U.C. Berkeley
© 2009 Cisco Systems, Inc. All rights reserved. ROUTE v1.0—5-1 Implementing Path Control Lab 5-1 Debrief.
CSE 550 Computer Network Design Dr. Mohammed H. Sqalli COE, KFUPM Spring 2007 (Term 062)
Routing Protocol Pertemuan 21 Matakuliah: H0484/Jaringan Komputer Tahun: 2007.
1 Integrality constraints Integrality constraints are often crucial when modeling optimizayion problems as linear programs. We have seen that if our linear.
1 Network-wide Decision Making: Toward a Wafer-thin Control Plane Jennifer Rexford, Albert Greenberg, Gisli Hjalmtysson ATT Labs Research David A. Maltz,
Theophilus Benson Aditya Akella David A Maltz
Internet Traffic Policies and Routing Vic Grout Centre for Applied Internet Research (CAIR) University of Wales NEWI Plas Coch Campus, Mold Road Wrexham,
Towards a Logic for Wide- Area Internet Routing Nick Feamster Hari Balakrishnan.
1 EL736 Communications Networks II: Design and Algorithms Class2: Network Design Problems -- Notation and Illustrations Yong Liu 09/12/2007.
1 Pertemuan 20 Teknik Routing Matakuliah: H0174/Jaringan Komputer Tahun: 2006 Versi: 1/0.
Nattee Niparnan. Easy & Hard Problem What is “difficulty” of problem? Difficult for computer scientist to derive algorithm for the problem? Difficult.
VeriFlow: Verifying Network-Wide Invariants in Real Time
Solving Hard Instances of FPGA Routing with a Congestion-Optimal Restrained-Norm Path Search Space Keith So School of Computer Science and Engineering.
Low-Power Gated Bus Synthesis for 3D IC via Rectilinear Shortest-Path Steiner Graph Chung-Kuan Cheng, Peng Du, Andrew B. Kahng, and Shih-Hung Weng UC San.
EMIS 8373: Integer Programming NP-Complete Problems updated 21 April 2009.
SIGCOMM 2012 (August 16, 2012) Private and Verifiable Interdomain Routing Decisions Mingchen Zhao * Wenchao Zhou * Alexander Gurney * Andreas Haeberlen.
Aaron Gember, Theophilus Benson, Aditya Akella University of Wisconsin-Madison.
Chapter 3 Algorithms Complexity Analysis Search and Flow Decomposition Algorithms.
ANTs PI meeting, Dec. 17, 2001Washington University / DCMP1 Flexible Methods for Multi-agent Distributed Resource Allocation by Exploiting Phase Transitions.
1 An Arc-Path Model for OSPF Weight Setting Problem Dr.Jeffery Kennington Anusha Madhavan.
Bo Zong, Yinghui Wu, Ambuj K. Singh, Xifeng Yan 1 Inferring the Underlying Structure of Information Cascades
© 2009 Cisco Systems, Inc. All rights reserved. ROUTE v1.0—1-1 Planning Routing Services Lab 1-1 Debrief.
Sullivan Algebra and Trigonometry: Section 12.9 Objectives of this Section Set Up a Linear Programming Problem Solve a Linear Programming Problem.
Header Space Analysis: Static Checking for Networks Broadband Network Technology Integrated M.S. and Ph.D. Eun-Do Kim Network Standards Research Section.
Introduction to Graph & Network Theory Thinking About Networks: From Metabolism to the Genome to Social Conflict Summer Workshop for Teachers June 27 th.
Bridging centralized programming and distributed control planes
Seyed K. Fayaz, Tushar Sharma, Ari Fogel
Yiting Xia, T. S. Eugene Ng Rice University
SDN Network Updates Minimum updates within a single switch
New Directions in Routing
Constraint-Based Routing
An Analysis of BGP Convergence Properties
Martin Casado, Nate Foster, and Arjun Guha CACM, October 2014
Hydra: Leveraging Functional Slicing for Efficient Distributed SDN Controllers Yiyang Chang, Ashkan Rezaei, Balajee Vamanan, Jahangir Hasan, Sanjay Rao.
CprE 458/558: Real-Time Systems
Period Optimization for Hard Real-time Distributed Automotive Systems
Supporting Diverse Dynamic Intent-based Policies using Janus
Dynamic Scheduling of Network Updates
An Equal-Opportunity-Loss MPLS-Based Network Design Model
Games with Chance Other Search Algorithms
CS223 Advanced Data Structures and Algorithms
Generic and Automatic Address Configuration for Data Center Networks
Generic and Automatic Address Configuration for Data Center Networks
COS 561: Advanced Computer Networks
COMPUTER NETWORKS CS610 Lecture-42 Hammad Khalid Khan.
COS 561: Advanced Computer Networks
Algorithms for Budget-Constrained Survivable Topology Design
Backbone Traffic Engineering
Lecture 10, Computer Networks (198:552)
Trevor Brown DC 2338, Office hour M3-4pm
CSE 550 Computer Network Design
Fast Min-Register Retiming Through Binary Max-Flow
Jennifer Rexford Princeton University
Control-Data Plane Separation
CSE 421 Richard Anderson Autumn 2019, Lecture 3
Presentation transcript:

Aaron Gember-Jacobson Automatically Repairing Network Control Planes Using an Abstract Representation Aaron Gember-Jacobson Aditya Akella Ratul Mahajan Hongqiang Harry Liu SYSTEM WE BUILT THAT AUTOMATES THE CURRENTLY DIFFICULT, MANUAL TASK OF CORRECTING CONTROL PLANE CONFIGURATION ERRORS

Control plane == heart of the network

Configuring the control plane Allow Alice & Bob’s computers to communicate Protocol instances Link/path weights Traffic filters … Complex! Alice Bob

Configuration errors are common Took hours to repair the network

Entirely new configurations Existing tools Synthesis (e.g., SyNET, Propane) Verification (e.g., ARC, Minesweeper) Correct configurations Repeat when policies change Policies Synthesizer Entirely new configurations ☹️ Configurations Policies Operator Repaired configurations Manual intervention ☹️ MANUAL INTERVENTION IS ALSO REQUIRED WHEN POLICIES GIVEN THE LIMITATIONS OF EXISTING TOOLS, WE INTRODUCE A NEW SYSTEM CALLED CPR Verifier Violations

Our contribution: CPR Broken configurations Policies Repaired configurations

Challenges Compute repairs that… 1) Satisfy all policies Broken configurations Compute repairs that… 1) Satisfy all policies 2) Are feasible to implement 3) Require minimal changes Policies Inspiration: network verification & program repair Repaired configurations

Our approach Broken configurations Graph-based model A =?, B = ? A ⋀ B Policies Constraint problem A ⋀ B A =?, B = ? Repaired configurations Repaired model

Example network Policies R ⇨ T prefers A→ B → C S ⇨ T traverses firewall S ⇨ T reachable under single link failure B C A OSPF FW

Background: ARC [SIGCOMM’16] OSPF R S T FW Policies R ⇨ T prefers A→ B → C S ⇨ T traverses firewall S ⇨ T reachable under single link failure R T Shortest path S T 1 edge-disjoint path Max-flow = 1 CREATE ONE SUCH GRAPH FOR EVERY TRAFFIC CLASS 1 ∞ 1 1 AO BO CO AI BI CI AO BO CO AI BI CI FW FW

Challenge: satisfying multiple policies Repairing ARC Add and remove edges in the ARC Policies R ⇨ T prefers A→ B → C S ⇨ T traverses firewall S ⇨ T reachable under single link failure Challenge: satisfying multiple policies NP-hard ☹️ R T AO BO CO AI BI CI S T 1 2 Max-flow = 1 1 ∞ FW 1 AO BO CO AI BI CI FW 1

Repair as constraint solving Boolean variables: for each possible edge in each graph Constraints: on paths e.g., S ⇨ T traverses firewall ∄ Path without a FW from S to T Base case: edge 𝑣 1 — 𝑣 2 without a FW ⇒ path 𝑣 1 ⇨ 𝑣 2 without a FW Inductive case: path 𝑣 1 ⇨ 𝑣 2 without a FW & edge 𝑣 2 — 𝑣 3 without a FW ⇒ path 𝑣 1 ⇨ 𝑣 3 without a FW 𝑣 1 𝑣 2 𝑣 3 S T CONSTRAINTS ARE EXPRESSED IN FIRST-ORDER LOGIC

Is it a feasible solution? Satisfying solution Policies R ⇨ T prefers A→ B → C S ⇨ T traverses firewall S ⇨ T reachable under single link failure Is it a feasible solution? R T S 2 Max-flow = 1 1 1 FW 1 AO BO CO AI BI CI AO BI CO FW 1 AI BO CI 1 FW T

Translating repairs Challenge: conflicts between traffic classes OSPF OSPF Challenge: conflicts between traffic classes FW Cannot enable routing for a single Src-Dst pair C OSPF R T S 1 1 1 FW 1 AO BI CO AO CI 1 BI CO FW AI BO CI AI BO 1 1 1 FW FW T

Hierarchical ARC Disallow conflicts in model Add constraints to enforce hierarchy Is it a minimal solution? 1 FW 3 R S DEFINE COMMON SUBGRAPH THAT MODELS CONFIGURATION ELEMENTS THAT APPLY TO ALL TRAFFIC IF WE WANT TO ADD AN EDGE FOR A SPECIFIC SRC-DST PAIR, WE MUST ALSO ADD IT TO THE COMMON GRAPH, BECAUSE ROUTING ADJACENCIES APPLY TO ALL TRAFFIC CLASSES FURTHERMORE, IF WE ADD AN EDGE TO THE COMMON GRAPH, WE MUST ADD IT TO GRAPHS FOR ALL SRC-DST PAIRS ADD CONSTRAINTS TO ENFORCE HEIRARCHY GIVEN NEW CONSTRAINTS, SATISFYING SOLUTION MUST CHANGE SLIGHTLY IN THIS CASE THE REPAIR IS MINIMAL, BUT HOW DO WE GUARANTEE THIS? 1 T AO BO CO AI BI CI FW 1 T AO BO CO AI BI CI FW FW 1 BO CO AI BI T AO CI 1 T AO BO CO AI BI CI FW 1 FW 1 FW 3 3

Repair minimality Each edge addition/removal requires a configuration change Maximum satisfiability problem Hard constraints: discussed earlier Soft constraints: edge in original HARC ⇒ edge in repaired HARC (and vice versa) Objective: satisfy as many soft constraints as possible 𝑣 1 𝑣 2 ±

Evaluation: dataset 96 real data center networks Synthetic fat tree configurations Routers Policies Median = 1K Max = 82K Median = 8 Max = 24 Two snapshots Repair older configurations to satisfy newer policies

Evaluation: performance 8 hours 1 hour 1 minute 𝑷𝒂𝒓𝒂𝒍𝒍𝒆𝒍𝒊𝒛𝒆 72% repaired in < 8 hours ≈2 orders of magnitude reduction 86% repaired in < 1 minute 99% repaired in < 1 hour

Evaluation: CPR vs hand-written repairs Overlapping filtering rules are condensed in hand-written repairs CPR changes same or fewer lines in 79% of networks

Summary Automatically repair configurations for distributed control planes Formulate a maximum satisfiability problem based on hierarchical ARC Compute repairs for small data centers in < 1 hour Try It! http://aaron.gember-jacobson.com/go/cpr

Dataset: real data center policies S ⇨ T blocked S ⇨ T reachable under single link failure

Evaluation: scalability (fat trees)