Dynamic Scheduling of Network Updates

Slides:



Advertisements
Similar presentations
APNOMS2003Fujitsu Laboratories Ltd.1 A QoS Control Method Cooperating with a Dynamic Load Balancing Mechanism Akiko Okamura, Koji Nakamichi, Hitoshi Yamada.
Advertisements

zUpdate: Updating Data Center Networks with Zero Loss
Jennifer Rexford Princeton University MW 11:00am-12:20pm Logically-Centralized Control COS 597E: Software Defined Networking.
U of Houston – Clear Lake
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.
Dynamic Scheduling of Network Updates Based on the slides by Xin Jin Hongqiang Harry Liu, Rohan Gandhi, Srikanth Kandula, Ratul Mahajan, Ming Zhang, Jennifer.
© 2006 Cisco Systems, Inc. All rights reserved. MPLS v2.2—8-1 MPLS TE Overview Introducing the TE Concept.
Nanxi Kang Princeton University
Data and Computer Communications Ninth Edition by William Stallings Chapter 12 – Routing in Switched Data Networks Data and Computer Communications, Ninth.
1 EL736 Communications Networks II: Design and Algorithms Class3: Network Design Modeling Yong Liu 09/19/2007.
Incremental Consistent Updates Naga Praveen Katta Jennifer Rexford, David Walker Princeton University.
UNIT-IV Computer Network Network Layer. Network Layer Prepared by - ROHIT KOSHTA In the seven-layer OSI model of computer networking, the network layer.
Consensus Routing: The Internet as a Distributed System John P. John, Ethan Katz-Bassett, Arvind Krishnamurthy, and Thomas Anderson Presented.
Towards Virtual Routers as a Service 6th GI/ITG KuVS Workshop on “Future Internet” November 22, 2010 Hannover Zdravko Bozakov.
Network Innovation using OpenFlow: A Survey
SWAN: Software-driven wide area network
Montek Singh COMP Nov 10,  Design questions at various leves ◦ Network Adapter design ◦ Network level: topology and routing ◦ Link level:
High Performance Router Architectures for Network- based Computing By Dr. Timothy Mark Pinkston University of South California Computer Engineering Division.
In-Band Flow Establishment for End-to-End QoS in RDRN Saravanan Radhakrishnan.
Internet In A Slice Andy Bavier CS461 Lecture.
Software-Defined Networking
1© Copyright 2015 EMC Corporation. All rights reserved. SDN INTELLIGENT NETWORKING IMPLICATIONS FOR END-TO-END INTERNETWORKING Simone Mangiante Senior.
Jennifer Rexford Princeton University MW 11:00am-12:20pm Wide-Area Traffic Management COS 597E: Software Defined Networking.
Hash, Don’t Cache: Fast Packet Forwarding for Enterprise Edge Routers Minlan Yu Princeton University Joint work with Jennifer.
Chapter 13: WAN Technologies and Routing 1. LAN vs. WAN 2. Packet switch 3. Forming a WAN 4. Addressing in WAN 5. Routing in WAN 6. Modeling WAN using.
IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS 2007 (TPDS 2007)
1 Adaptive QoS Framework for Wireless Sensor Networks Lucy He Honeywell Technology & Solutions Lab No. 430 Guo Li Bin Road, Pudong New Area, Shanghai,
MPLS and Traffic Engineering Ji-Hoon Yun Computer Communications and Switching Systems Lab.
Zibin Zheng DR 2 : Dynamic Request Routing for Tolerating Latency Variability in Cloud Applications CLOUD 2013 Jieming Zhu, Zibin.
CellSDN: Software-Defined Cellular Core networks Xin Jin Princeton University Joint work with Li Erran Li, Laurent Vanbever, and Jennifer Rexford.
Resource Allocation in Network Virtualization Jie Wu Computer and Information Sciences Temple University.
Authors: Mark Reitblatt, Nate Foster, Jennifer Rexford, Cole Schlesinger, David Walker Presenter: Byungkwon Choi Abstractions for Network Update INA.
ETH Zurich – Distributed Computing – On Consistent Migration of Flows in SDNs Sebastian Brandt, Klaus-Tycho Förster, Roger Wattenhofer.
Michael Einhaus, ComNets, RWTH Aachen University Distributed and Adjacent Subchannels in Cellular OFDMA Systems Michael Einhaus Chair of Communication.
BUFFALO: Bloom Filter Forwarding Architecture for Large Organizations Minlan Yu Princeton University Joint work with Alex Fabrikant,
Traditional network Coupled data plane (switch hardware) and control plane (switch software) Closed, proprietary interface Hard to change and innovate.
ETH Zurich – Distributed Computing – Klaus-Tycho Förster, Ratul Mahajan, and Roger Wattenhofer Consistent Updates in Software Defined.
Software Defined Networking BY RAVI NAMBOORI. Overview  Origins of SDN.  What is SDN ?  Original Definition of SDN.  What = Why We need SDN ?  Conclusion.
Networks without SDN Challenges facing network managers.
B4: Experience with a Globally-Deployed Software WAN
Advanced Network Tap application for
Advanced Computer Networks
Xin Li, Chen Qian University of Kentucky
A Network-State Management Service
SDN Network Updates Minimum updates within a single switch
Augmenting Anycast Network Flows
A Multi-Airport Dynamic Network Flow Model with Capacity Uncertainty
University of Maryland College Park
Hydra: Leveraging Functional Slicing for Efficient Distributed SDN Controllers Yiyang Chang, Ashkan Rezaei, Balajee Vamanan, Jahangir Hasan, Sanjay Rao.
Author: Ragalatha P, Manoj Challa, Sundeep Kumar. K
Author: Daniel Guija Alcaraz
Aaron Gember-Jacobson
of Dynamic NFV-Policies
ISP and Egress Path Selection for Multihomed Networks
Multi-Core Parallel Routing
2018/11/19 Source Routing with Protocol-oblivious Forwarding to Enable Efficient e-Health Data Transfer Author: Shengru Li, Daoyun Hu, Wenjian Fang and.
The Power of Two in Consistent Network Updates: Hard Loop Freedom, Easy Flow Migration Klaus-Tycho Förster and Roger Wattenhofer.
Enabling Innovation Inside the Network
COS 561: Advanced Computer Networks
2018/12/10 Energy Efficient SDN Commodity Switch based Practical Flow Forwarding Method Author: Amer AlGhadhban and Basem Shihada Publisher: 2016 IEEE/IFIP.
On-time Network On-chip
1 Multi-Protocol Label Switching (MPLS). 2 MPLS Overview A forwarding scheme designed to speed up IP packet forwarding (RFC 3031) Idea: use a fixed length.
Backbone Traffic Engineering
Lecture 10, Computer Networks (198:552)
COS 461: Computer Networks
In-network computation
Jennifer Rexford Princeton University
Presentation transcript:

Dynamic Scheduling of Network Updates Xin Jin Hongqiang Harry Liu, Rohan Gandhi, Srikanth Kandula, Ratul Mahajan, Ming Zhang, Jennifer Rexford, Roger WaHenhofer

SDN: Paradigm ShiK in Networking •  Direct, centralized updates of forwarding rules in switches Controller •  Many benefits -  Traffic engineering [B4, SWAN] -  Flow scheduling [Hedera, DevoFlow] -  Access control [Ethane, vCRIB] -  Device power management [ElasticTree] 1

Network Update is Challenging •  Requirement 1: fast -  The agility of control loop •  Requirement 2: consistent -  No congestion, no blackhole, no loop, etc. Controller Network 2

What is Consistent Network Update A B C A B C F2: 5 F3: 10 F2: 5 F3: 10 F1: 5 F1: 5 F4: 5 D E D E F4: 5 Current State Target State 3

What is Consistent Network Update A B C A B C F2: 5 F3: 10 F2: 5 F3: 10 F1: 5 F1: 5 F4: 5 D E D E F4: 5 Current State Target State A B C F2: 5 F3: 10 F1: 5 F4: 5 D E Transient State •  Asynchronous updates can cause congestion •  Need to carefully order update operations 4

Existing Solutions are Slow •  Existing solutions are static [ConsistentUpdate’12, SWAN’13, zUpdate’13] -  Pre-compute an order for update operations F3 F2 Static Plan A F4 F1 A B C A B C F2: 5 F3: 10 F2: 5 F3: 10 F1: 5 F1: 5 F4: 5 D E D E F4: 5 Current State Target State 5

Existing Solutions are Slow •  Existing solutions are static [ConsistentUpdate’12, SWAN’13, zUpdate’13] -  Pre-compute an order for update operations F3 F2 Static Plan A F4 F1 •  Downside: Do not adapt to runtime conditions -  Slow in face of highly variable operation completion time 6

Operation Completion Times are Highly Variable •  Measurement on commodity switches >10x 7

Operation Completion Times are Highly Variable •  Measurement on commodity switches •  Contributing factors -  Control-plane load -  Number of rules -  Priority of rules -  Type of operations (insert vs. modify) 8

Static Schedules can be Slow F1 F1 F3 F2 Static F2 F2 Plan A F3 F3 F4 F1 F4 F4 1 2 3 4 5 Time 1 2 3 4 5 Time F1 F1 F3 F2 F1 F4 F2 F2 Static F3 F3 Plan B F4 F4 1 2 3 4 5 Time 1 2 3 4 5 Time No static schedule is a clear winner under all conditions!

Dynamic Schedules are Adaptive and Fast F3 F2 Static Plan A F4 F1 F3 F2 Dynamic Plan F1 F4 F3 F2 F1 Adapts to actual conditions! Static Plan B F4 No static schedule is a clear winner under all conditions!

Challenges of Dynamic Update Scheduling •  Exponential number of orderings •  Cannot completely avoid planning F5: 10 F5: 10 A B C A B C F2: 5 F2: 5 F1: 5 F1: 5 F3: 5 F4: 5 F4: 5 D D E E F3: 5 Current State Target State 11

Challenges of Dynamic Update Scheduling •  Exponential number of orderings •  Cannot completely avoid planning F5: 10 F5: 10 A B C A B C F2: 5 F2: 5 F1: 5 F1: 5 F3: 5 F4: 5 F4: 5 D D E E F3: 5 Current State Target State F2 Deadlock 12

Challenges of Dynamic Update Scheduling •  Exponential number of orderings •  Cannot completely avoid planning F5: 10 F5: 10 A B C A B C F2: 5 F2: 5 F1: 5 F1: 5 F3: 5 F4: 5 F4: 5 D E D E F3: 5 Current State Target State F1 13

Challenges of Dynamic Update Scheduling •  ExponenZal number of orderings •  Cannot completely avoid planning F5: 10 F5: 10 A B C A B C F2: 5 F2: 5 F1: 5 F1: 5 F4: 5 F4: 5 D E D E F3: 5 F3: 5 Current State Target State F1 F3 14

Challenges of Dynamic Update Scheduling •  ExponenZal number of orderings •  Cannot completely avoid planning F5: 10 F5: 10 A B C A B C F2: 5 F2: 5 F1: 5 F1: 5 D E F4: 5 F4: 5 D E F3: 5 F3: 5 Current State Target State F1 F3 F2 Consistent update plan 15

Dionysus Pipeline Current Target Consistency State State Property Dependency Graph Generator Encode valid orderings Determine a fast order Update Scheduler Network 16

Dependency Graph Generation F5: 10 F5: 10 A B C A B C F2: 5 F2: 5 F1: 5 F1: 5 F3: 5 F4: 5 D E F4: 5 D E F3: 5 Current State Target State Dependency Graph Elements Operation node Node Resource node (link capacity, switch table size) Path node Edge Dependencies between nodes 17

Dependency Graph Generation F5: 10 F5: 10 A B C A B C F2: 5 F2: 5 F1: 5 F1: 5 F3: 5 F4: 5 D E F4: 5 D E F3: 5 Current State Target State Move F2 Move Move F3 F1 18

Dependency Graph Generation F5: 10 F5: 10 A B C A B C F2: 5 F2: 5 F1: 5 F1: 5 F3: 5 F4: 5 D E F4: 5 D E F3: 5 Current State Target State Move F2 A-E: 5 Move Move F3 F1 19

Dependency Graph Generation F5: 10 F5: 10 A B C A B C F2: 5 F2: 5 F1: 5 F1: 5 F3: 5 F4: 5 D E F4: 5 D E F3: 5 Current State Target State Move F2 A-E: 5 5 Move Move F3 F1 20

Dependency Graph Generation F5: 10 F5: 10 A B C A B C F2: 5 F2: 5 F1: 5 F1: 5 F3: 5 F4: 5 D E F4: 5 D E F3: 5 Current State Target State Move 5 F2 A-E: 5 5 Move Move F3 F1 21

Dependency Graph Generation F5: 10 F5: 10 A B C A B C F2: 5 F2: 5 F1: 5 F1: 5 F3: 5 F4: 5 D E F4: 5 D E F3: 5 Current State Target State Move 5 F2 A-E: 5 5 5 Move Move F3 F1 22

Dependency Graph Generation F5: 10 F5: 10 A B C A B C F2: 5 F2: 5 F1: 5 F1: 5 F3: 5 F4: 5 D E F4: 5 D E F3: 5 Current State Target State Move 5 F2 A-E: 5 5 5 Move Move F3 F1 5 5 D-E: 0 23

Dependency Graph Generation •  Supported scenarios -  Tunnel-based forwarding: WANs -  WCMP forwarding: data center networks •  Supported consistency properties -  Loop freedom -  Blackhole freedom -  Packet coherence -  CongesZon freedom •  Check paper for details 24

Dionysus Pipeline Current Target Consistency State State Property Dependency Graph Generator Encode valid orderings Determine a fast order Update Scheduler Network 25

Dionysus Scheduling • Scheduling as a resource allocation problem Move 5 Move A-E: 5 F2 5 5 Move Move F3 F1 5 5 D-E: 0 26

Dionysus Scheduling • Scheduling as a resource allocation problem Move A-E: 0 F2 5 5 Move Move Deadlock! F3 F1 5 5 D-E: 0 27

Dionysus Scheduling • Scheduling as a resource allocation problem Move 5 Move A-E: 0 F2 5 Move Move F3 F1 5 5 D-E: 0 28

Dionysus Scheduling • Scheduling as a resource allocation problem Move 5 Move A-E: 0 F2 5 Move F3 5 D-E: 5 29

Dionysus Scheduling • Scheduling as a resource allocation problem Move 5 Move A-E: 0 F2 5 Move F3 30

Dionysus Scheduling • Scheduling as a resource allocaZon problem Move 5 Move A-E: 5 F2 31

Dionysus Scheduling • Scheduling as a resource allocaZon problem Done! Move F2 Done! 32

Dionysus Scheduling • Scheduling as a resource allocation problem •  NP-complete problems under link capacity and switch table size constraints •  Approach -  DAG: always feasible, critical-path scheduling -  General case: covert to a virtual DAG -  Rate limit flows to resolve deadlocks 33

Critical-Path Scheduling •  Calculate critical-path length (CPL) for each node Move CPL=3 F1 5 A-B:5 CPL=2 5 5 Move Move CPL=1 CPL=2 F2 F3 5 -  Extension: assign larger weight to operation nodes if we know in advance the switch is slow C-D:0 CPL=1 5 •  Resource allocated to operation nodes with larger CPLs Move CPL=1 F4 34

Critical-Path Scheduling •  Calculate critical-path length (CPL) for each node Move CPL=3 F1 5 A-B:0 CPL=2 5 Move Move CPL=1 CPL=2 F2 F3 5 -  Extension: assign larger weight to operation nodes if we know in advance the switch is slow C-D:0 CPL=1 5 •  Resource allocated to operation nodes with larger CPLs Move CPL=1 F4 35

Handling Cycles • Convert to virtual DAG 5 Move •  Convert to virtual DAG A-E: 5 F2 5 5 -  Consider each strongly connected component (SCC) as a virtual node Move Move F3 F1 5 5 D-E: 0 •  Critical-path scheduling on virtual DAG CPL=1 -  Weight wi of SCC: number of operation nodes CPL=3 Move F2 weight = 2 weight = 1 36

Handling Cycles • Convert to virtual DAG 5 Move A-E: 0 F2 5 •  Convert to virtual DAG -  Consider each strongly connected component (SCC) as a virtual node Move Move F3 F1 5 5 D-E: 0 •  CriZcal-path scheduling on virtual DAG CPL=1 -  Weight wi of SCC: number of operation nodes CPL=3 Move F2 weight = 2 weight = 1 37

Evaluation: Traffic Engineering 50th Percentile Update Time 3.5 3 2.5 2 OneShot Not congestion-free Dionysus Congestion-free 1.5 SWAN Congestion-free 1 0.5 WAN TE Data Center TE 38

EvaluaZon: Traffic Engineering 50th PercenZle Update Time 3.5 3 2.5 2 OneShotNot congesZon-free DionysusCongesZon-free 1.5 SWANCongesZon-free 1 0.5 WAN TE Data Center TE Improve 50th percenZle update speed by 80% compared to staZc scheduling (SWAN), close to OneShot 39

Evaluation: Failure Recovery 99th Percentile Link Oversubscription 99th Percentile Update Time 5 3 2.5 4 2 3 1.5 2 1 1 0.5 OneShot Dionysus SWAN OneShot Dionysus SWAN 40

Conclusion Dionysus enables more agile SDN control loops •  Dionysus provides fast, consistent network updates through dynamic scheduling -  Dependency graph: compactly encode orderings -  Scheduling: dynamically schedule operations Dionysus enables more agile SDN control loops 42

Thanks! 43