15-744: Computer Networking

Slides:



Advertisements
Similar presentations
Jennifer Rexford Princeton University MW 11:00am-12:20pm Logically-Centralized Control COS 597E: Software Defined Networking.
Advertisements

SDN Controller Challenges
Logically Centralized Control Class 2. Types of Networks ISP Networks – Entity only owns the switches – Throughput: 100GB-10TB – Heterogeneous devices:
Nanxi Kang Princeton University
An Overview of Software-Defined Network Presenter: Xitao Wen.
U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science Emery Berger University of Massachusetts Amherst Operating Systems CMPSCI 377 Lecture.
SDN and Openflow.
15-744: Computer Networking
Internet Indirection Infrastructure Ion Stoica UC Berkeley.
A Routing Control Platform for Managing IP Networks Jennifer Rexford Computer Science Department Princeton University
A Routing Control Platform for Managing IP Networks Jennifer Rexford Princeton University
Internet Routing (COS 598A) Today: Telling Routers What to Do Jennifer Rexford Tuesdays/Thursdays.
A Routing Control Platform for Managing IP Networks Jennifer Rexford Princeton University
Tesseract A 4D Network Control Plane
An Overview of Software-Defined Network
A Routing Control Platform for Managing IP Networks Jennifer Rexford Princeton University
1 Network-wide Decision Making: Toward a Wafer-thin Control Plane Jennifer Rexford, Albert Greenberg, Gisli Hjalmtysson ATT Labs Research David A. Maltz,
Jennifer Rexford Fall 2010 (TTh 1:30-2:50 in COS 302) COS 561: Advanced Computer Networks Central.
An Overview of Software-Defined Network Presenter: Xitao Wen.
Chapter 1: Hierarchical Network Design
1 Computer Communication & Networks Lecture 22 Network Layer: Delivery, Forwarding, Routing (contd.)
Software-Defined Networks Jennifer Rexford Princeton University.
1 Rethinking Network Control and Management David A. Maltz
SDN and Openflow. Motivation Since the invention of the Internet, we find many innovative ways to use the Internet – Google, Facebook, Cloud computing,
SDN Management Layer DESIGN REQUIREMENTS AND FUTURE DIRECTION NO OF SLIDES : 26 1.
1 | © 2015 Infinera Open SDN in Metro P-OTS Networks Sten Nordell CTO Metro Business Group
CSci8211: SDN Controller Design 1 Overview of SDN Controller Design  SDN Re-cap  SDN Controller Design: Case Studies  NOX Next Week:  ONIX  ONOS 
SDN and Beyond Ghufran Baig Mubashir Adnan Qureshi.
Atrium Router Project Proposal Subhas Mondal, Manoj Nair, Subhash Singh.
Preliminaries: EE807 Software-defined Networked Computing KyoungSoo Park Department of Electrical Engineering KAIST.
1 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
Software Defined Networking BY RAVI NAMBOORI. Overview  Origins of SDN.  What is SDN ?  Original Definition of SDN.  What = Why We need SDN ?  Conclusion.
Distributed Systems Architectures. Topics covered l Client-server architectures l Distributed object architectures l Inter-organisational computing.
Instructor Materials Chapter 7: Network Evolution
SDN challenges Deployment challenges
Multi Node Label Routing – A layer 2.5 routing protocol
Multi-layer software defined networking in GÉANT
Software defined networking: Experimental research on QoS
HybNET: Network Manager for a Hybrid Network Infrastructure
Redcell™ Management Essentials, Juniper Networks Enterprise Edition
Shadow Configurations: A Network Management Primitive
15-744: Computer Networking
University of Maryland College Park
Networking Devices.
ETHANE: TAKING CONTROL OF THE ENTERPRISE
Revisiting Ethernet: Plug-and-play made scalable and efficient
NOX: Towards an Operating System for Networks
What Are Routers? Routers are an intermediate system at the network layer that is used to connect networks together based on a common network layer protocol.
Chapter 4: Routing Concepts
Overview of SDN Controller Design
6.829 Lecture 13: Software Defined Networking
CCNA 2 v3.1 Module 6 Routing and Routing Protocols
Aled Edwards, Anna Fischer, Antonio Lain HP Labs
Software Defined Networking (SDN)
Routing.
Software Defined Networking (SDN)
OSPF and BGP State Migration for Resource-portable IP router
Software Defined Networking
Chapter 6 – Architectural Design
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, Enhanced Chapter 4: Planning and Configuring Routing and Switching.
Data collection methodology and NM paradigms
Backbone Traffic Engineering
Lecture 10, Computer Networks (198:552)
Chapter-6 Access Network Design.
Computer Networks Protocols
Chapter 5 Network Layer: The Control Plane
Routing.
In-network computation
Control-Data Plane Separation
Control-Data Plane Separation
Presentation transcript:

15-744: Computer Networking L-6 Software-Defined Networking (SDN)

Announcement Note lecture schedule change Please email 2-3 days in advance about chosen topic for presentation Project feedback  this weekend

Software-Defined Networking Motivation Enterprise network management Scalable SDN Readings: A Clean Slate 4D Approach to Network Control and Management Onix: A Distributed Control Platform for Large-scale Production Networks Optional reading Ethane: Taking Control of the Enterprise

Software-Defined Networking Motivation Enterprise network management Scalable SDN Readings: A Clean Slate 4D Approach to Network Control and Management Onix: A Distributed Control Platform for Large-scale Production Networks Optional reading Ethane: Taking Control of the Enterprise

4D: Motivation Network management is difficult! Observation: current Internet architecture bundles control logic and packet handling (e.g., OSPF) Challenge: how to systematically enforce various, increasingly complex high-level goals?

Design choices Incremental deployment Advantage: easier to implement Disadvantage: point solution? 4D advocates a clean-slate approach Build control plane/network management from the ground up Constraint: no change of packet formats Insight: Decouple the control and data planes

Example 1: Front- Office Data Center ACL Interface i1.1 is configured with a packet filter that drops all packets from the BF subnet, and interface i3.1 drops all packets from the AF subnet. The new link (dotted) changes the routing such that packets sent from AF to BD will travel from R2 to R1 to R3 to BD—completely avoiding the packet filter installed on interface i3.1

Example 2: Spurious Routing If AS1’s policy is to not provide AS3 with transit service for d, it does not announce d in its eBGP sessions with AS3. However, if AS3 wishes to be unscrupulous (e.g., use AS1 for transit service without paying), it can assume AS1 does know a way to d (e.g., so AS1’s own customers can reach d). If AS3 sends packets for d to br.nyc.as1, they will definitely be delivered, as br.nyc.as1 must have a route to d in order to handle legitimate traffic from AS2.

Management today Data plane Control plane Management plane Packet forwarding mechanisms Control plane Routing protocols Distributed Management plane Has to reverse engineer what the control plane does Work around rather than work with!

Driving principles Network-level objectives Network-wide views High-level, not after-the-fact Network-wide views Measurement/monitoring/diagnosis Direct control No more “reverse engineering” or “inversion” Direct configuration

Three Principles for Network Control & Management Network-level Objectives: Express goals explicitly Security policies, QoS, egress point selection Do not bury goals in box-specific configuration Reachability matrix Traffic engineering rules Management Logic

Three Principles for Network Control & Management Network-wide Views: Design network to provide timely, accurate info Topology, traffic, resource limitations Give logic the inputs it needs Reachability matrix Traffic engineering rules Management Logic Read state info

Three Principles for Network Control & Management Direct Control: Allow logic to directly set forwarding state FIB entries, packet filters, queuing parameters Logic computes desired network state, let it implement it Reachability matrix Traffic engineering rules Write state Management Logic Read state info

4D Architecture Decision plane Dissemination plane Discovery plane routing, access control, load balancing, … Dissemination plane control information through an independent channel from data Discovery plane discover net. elements and create a logical net. map Data plane handle individual packets given state by decision plane (e.g., forwarding tables, load balancing schemes,…)

Overview of the 4D Architecture Network-level objectives Decision Dissemination Direct control Network-wide views Discovery Data Decision Plane: All management logic implemented on centralized servers making all decisions Decision Elements use views to compute data plane state that meets objectives, then directly writes this state to routers

Overview of the 4D Architecture Network-level objectives Decision Dissemination Direct control Network-wide views Discovery Data Dissemination Plane: Provides a robust communication channel to each router – and robustness is the only goal! May run over same links as user data, but logically separate and independently controlled

Overview of the 4D Architecture Network-level objectives Decision Dissemination Direct control Network-wide views Discovery Data Discovery Plane: Each router discovers its own resources and its local environment E.g., the identity of its immediate neighbors

Overview of the 4D Architecture Network-level objectives Decision Dissemination Direct control Network-wide views Discovery Data Data Plane: Spatially distributed routers/switches Can deploy with today’s technology Looking at ways to unify forwarding paradigms across technologies

Good Abstractions Reduce Complexity Management Plane Configs Decision Plane Control Plane FIBs, ACLs FIBs, ACLs Dissemination Data Plane Data Plane All decision making logic lifted out of control plane Eliminates duplicate logic in management plane Dissemination plane provides robust communication to/from data plane switches

Where are we? Controller 4D (vision) Config Config

Where are we? Controller OpenFlow Config Config

Where are we? Controller Ethane (concrete example) Config Config

Where are we? Controller E.g., ONIX Config Config

Software-Defined Networking Motivation Enterprise network management Scalable SDN Readings: A Clean Slate 4D Approach to Network Control and Management Onix: A Distributed Control Platform for Large-scale Production Networks Optional reading Ethane: Taking Control of the Enterprise

ONIX ONIX Controller Config Config ONIX: How to build a controller platform?

What are the key challenges? Usability Performance Flexibility Scalability Reliability/availability …

ONIX

ONIX Design Decisions “Data-centric” API Treat all networking actions as data actions Read Alter Register for changes in network state

Core component == NIB Network information base Analogous to forwarding information base Graph of all network entities Switches, ports, interfaces, links etc Applications read/register/manipulate NIB

Default network entity classes Core component == NIB NIB is a collection network entities Each entity contains a set of key-value pairs Default network entity classes

Functions provided by the ONIX NIB API ONIX NIB APIs Functions provided by the ONIX NIB API

Three scalability strategies Partition Can we split the state into independent sub-sets? E.g., different subnet forwarding rules on a switch Aggregate zoom-in/zoom-out at different aggregation levels Tradeoff with weaker consistency/durability E.g., replicated transactional DB for network topology E.g., one-hop DHT for link utilization info

Killer apps for ONIX Why did VMware buy Nicira? Distributed Virtual Switch Multi-tenant virtualization

Summary 4D: An general vision for design Ethane: End-to-end enterprise network management ONIX: A distributed control platform

Next Lecture Router Design Readings: A Fast Switched Backplane for a Gigabit Switched Router Scaling Internet Routers Using Optics (read intro)