Software Defined Networking

Slides:



Advertisements
Similar presentations
OpenFlow and Software Defined Networks. Outline o The history of OpenFlow o What is OpenFlow? o Slicing OpenFlow networks o Software Defined Networks.
Advertisements

Jennifer Rexford Princeton University MW 11:00am-12:20pm Logically-Centralized Control COS 597E: Software Defined Networking.
Towards Software Defined Cellular Networks
Logically Centralized Control Class 2. Types of Networks ISP Networks – Entity only owns the switches – Throughput: 100GB-10TB – Heterogeneous devices:
SDN Applications Jennifer Rexford Princeton University.
Frenetic: A High-Level Language for OpenFlow Networks Nate Foster, Rob Harrison, Matthew L. Meola, Michael J. Freedman, Jennifer Rexford, David Walker.
An Overview of Software-Defined Network Presenter: Xitao Wen.
Software-Defined Networking, OpenFlow, and how SPARC applies it to the telecommunications domain Pontus Sköldström - Wolfgang John – Elisa Bellagamba November.
OpenFlow : Enabling Innovation in Campus Networks SIGCOMM 2008 Nick McKeown, Tom Anderson, et el. Stanford University California, USA Presented.
SDN and Openflow.
Scalable Flow-Based Networking with DIFANE 1 Minlan Yu Princeton University Joint work with Mike Freedman, Jennifer Rexford and Jia Wang.
Professor Yashar Ganjali Department of Computer Science University of Toronto
An Overview of Software-Defined Network
Enabling Innovation Inside the Network Jennifer Rexford Princeton University
An Overview of Software-Defined Network Presenter: Xitao Wen.
Professor Yashar Ganjali Department of Computer Science University of Toronto
Software Defined Network (SDN) and Network Virtualization
Enabling Innovation Inside the Network Jennifer Rexford Princeton University
Enabling Innovation Inside the Network Jennifer Rexford Princeton University
Composing Software Defined Networks Jennifer Rexford Princeton University With Joshua Reich, Chris Monsanto, Nate Foster, and.
Enabling Innovation Inside the Network Jennifer Rexford Princeton University
OpenFlow: Enabling Technology Transfer to Networking Industry Nikhil Handigol Nikhil Handigol Cisco Nerd.
Frenetic: A Programming Language for Software Defined Networks Jennifer Rexford Princeton University Joint work with Nate.
Software-Defined Networks Jennifer Rexford Princeton University.
Software Defined Networks and OpenFlow SDN CIO Summit 2010 Nick McKeown & Guru Parulkar Stanford University In collaboration with Martin Casado and Scott.
Aditya Akella (Based on slides from Aaron Gember and Nick McKeown)
Reasoning about Software Defined Networks Mooly Sagiv Tel Aviv University Thursday (Physics 105) Monday Schrieber.
INTERNATIONAL NETWORKS At Indiana University Hans Addleman TransPAC Engineer, International Networks University Information Technology Services Indiana.
Software Defined Networking Mike Freedman COS 461: Computer Networks
Programming Languages for Software Defined Networks Jennifer Rexford and David Walker Princeton University Joint work with the.
Workpackage 3 New security algorithm design ICS-FORTH Ipswich 19 th December 2007.
SDN and Openflow. Motivation Since the invention of the Internet, we find many innovative ways to use the Internet – Google, Facebook, Cloud computing,
Programming Abstractions for Software-Defined Networks Jennifer Rexford Princeton University.
Jennifer Rexford Princeton University MW 11:00am-12:20pm SDN Programming Languages COS 597E: Software Defined Networking.
3.6 Software-Defined Networks and OpenFlow
Software Defined Networking and OpenFlow Geddings Barrineau Ryan Izard.
SDN and Beyond Ghufran Baig Mubashir Adnan Qureshi.
Software–Defined Networking Meron Aymiro. What is Software-Defined Networking?  Software-Defined Networking (SDN) has the potential of to transcend the.
Data Center Networks and Software-defined Networking
Programming SDN 1 Problems with programming with POX.
Chapter 4 Network Layer: The Data Plane
SDN challenges Deployment challenges
CIS 700-5: The Design and Implementation of Cloud Networks
Some slides have been adapted from:
Software defined networking: Experimental research on QoS
University of Maryland College Park
Martin Casado, Nate Foster, and Arjun Guha CACM, October 2014
ETHANE: TAKING CONTROL OF THE ENTERPRISE
Overview of SDN Controller Design
6.829 Lecture 13: Software Defined Networking
Software Defined Networking (SDN)
Stanford University Software Defined Networks and OpenFlow SDN CIO Summit 2010 Nick McKeown & Guru Parulkar In collaboration with Martin Casado and Scott.
Programming the Networks of the Future
Chapter 5 Network Layer: The Control Plane
The Stanford Clean Slate Program
Software Defined Networking (SDN)
Software Defined Networking
Handout # 18: Software-Defined Networking
Enabling Innovation Inside the Network
Programming Languages for Programmable Networks
CMPE 252A : Computer Networks
Programmable Networks
An Introduction to Software Defined Networking and OpenFlow
Software Defined Networking
Frenetic: Programming Software Defined Networks
Chapter 5 Network Layer: The Control Plane
Enabling Innovation Inside the Network
An Introduction to Software Defined Networking and OpenFlow
Control-Data Plane Separation
Chapter 4: outline 4.1 Overview of Network layer data plane
Presentation transcript:

Software Defined Networking Mike Freedman COS 461: Computer Networks Lectures: MW 10-10:50am in Architecture N101 http://www.cs.princeton.edu/courses/archive/spr13/cos461/

The Internet: A Remarkable Story Tremendous success From research experiment to global infrastructure Brilliance of under-specifying Network: best-effort packet delivery Hosts: arbitrary applications Enables innovation in applications Web, P2P, VoIP, social networks, virtual worlds But, change is easy only at the edge… 

Inside the ‘Net: A Different Story… Closed equipment Software bundled with hardware Vendor-specific interfaces Over specified Slow protocol standardization Few people can innovate Equipment vendors write the code Long delays to introduce new features Impacts performance, security, reliability, cost…

Networks are Hard to Manage Operating a network is expensive More than half the cost of a network Yet, operator error causes most outages Bugdy software in the equipment Routers with 20+ million lines of code Cascading failures, vulnerabilitiesf, etc. The network is “in the way” Especially in data centers and the home

Rethinking the “Division of Labor”

Traditional Computer Networks Data plane: Packet streaming Maybe this is a better picture… though need some details of what happens in each plane… like in next slides… or, have both? Forward, filter, buffer, mark, rate-limit, and measure packets

Traditional Computer Networks 8 Traditional Computer Networks Control plane: Distributed algorithms Maybe this is a better picture… though need some details of what happens in each plane… like in next slides… or, have both? Track topology changes, compute routes, install forwarding rules

Traditional Computer Networks 9 Traditional Computer Networks Management plane: Human time scale Maybe this is a better picture… though need some details of what happens in each plane… like in next slides… or, have both? Collect measurements and configure the equipment

Death to the Control Plane! Simpler management No need to “invert” control-plane operations Faster pace of innovation Less dependence on vendors and standards Easier interoperability Compatibility only in “wire” protocols Simpler, cheaper equipment Minimal software

Software Defined Networking (SDN) Logically-centralized control Smart & slow API to the data plane (e.g., OpenFlow) Dumb & fast Switches

OpenFlow Networks

Data-Plane: Simple Packet Handling Simple packet-handling rules Pattern: match packet header bits Actions: drop, forward, modify, send to controller Priority: disambiguate overlapping patterns Counters: #bytes and #packets src=1.2.*.*, dest=3.4.5.*  drop src = *.*.*.*, dest=3.4.*.*  forward(2) 3. src=10.1.2.3, dest=*.*.*.*  send to controller

Unifies Different Kinds of Boxes Router Match: longest destination IP prefix Action: forward out a link Switch Match: dest MAC address Action: forward or flood Firewall Match: IP addresses and TCP /UDP port numbers Action: permit or deny NAT Match: IP address and port Action: rewrite addr and port

Controller: Programmability Controller Application Network OS Events from switches Topology changes, Traffic statistics, Arriving packets Commands to switches (Un)install rules, Query statistics, Send packets

OpenFlow questions OpenFlow designed for Inter-domain management (between) Intra-domain management (within) OpenFlow API to switches open up the RIB (B) FIB OpenFlow FIB match based on Exact match (e.g., MAC addresses) Longest prefix (e.g., IP addresses) It’s complicated

Example OpenFlow Applications Dynamic access control Seamless mobility/migration Server load balancing Network virtualization Using multiple wireless access points Energy-efficient networking Adaptive traffic monitoring Denial-of-Service attack detection See http://www.openflow.org/videos/

E.g.: Dynamic Access Control Inspect first packet of a connection Consult the access control policy Install rules to block or route traffic

E.g.: Seamless Mobility/Migration See host send traffic at new location Modify rules to reroute the traffic

E.g.: Server Load Balancing Pre-install load-balancing policy Split traffic based on source IP src=0* src=1*

E.g.: Network Virtualization Controller #1 Controller #2 Controller #3 Partition the space of packet headers

Controller and the FIB Forwarding rules should be added (A) Proactively (B) Reactively (e.g., with controller getting first packet) (C) Depends on application

OpenFlow in the Wild Open Networking Foundation Google, Facebook, Microsoft, Yahoo, Verizon, Deutsche Telekom, and many other companies Commercial OpenFlow switches Intel, HP, NEC, Quanta, Dell, IBM, Juniper, … Network operating systems NOX, Beacon, Floodlight, Nettle, ONIX, POX, Frenetic Network deployments Eight campuses, and two research backbone networks Commercial deployments (e.g., Google backbone)

A Helpful Analogy From Nick McKeown’s talk “Making SDN Work” at the Open Networking Summit, April 2012

Vertically integrated Mainframes App Specialized Applications Linux Mac OS Windows (OS) or Open Interface Specialized Operating System Microprocessor Open Interface Specialized Hardware Vertically integrated Closed, proprietary Slow innovation Small industry Horizontal Open interfaces Rapid innovation Huge industry

Vertically integrated Routers/Switches App Specialized Features Control Plane or Open Interface Specialized Control Plane Merchant Switching Chips Open Interface Specialized Hardware Vertically integrated Closed, proprietary Slow innovation Horizontal Open interfaces Rapid innovation

Challenges

Heterogeneous Switches Number of packet-handling rules Range of matches and actions Multi-stage pipeline of packet processing Offload some control-plane functionality (?) access control MAC look-up IP look-up

Controller Delay and Overhead Controller is much slower the the switch Processing packets leads to delay and overhead Need to keep most packets in the “fast path” packets

Distributed Controller Network OS Controller Application Network OS Controller Application For scalability and reliability Partition and replicate state

Testing and Debugging OpenFlow makes programming possible Network-wide view at controller Direct control over data plane Plenty of room for bugs Still a complex, distributed system Need for testing techniques Controller applications Controller and switches Rules installed in the switches

Programming Abstractions Controller APIs are low-level Thin veneer on the underlying hardware Need better languages Composition of modules Managing concurrency Querying network state Network-wide abstractions Ongoing at Princeton http://www.frenetic-lang.org/ Controller Switches

Conclusion Rethinking networking Significant momentum Next time Open interfaces to the data plane Separation of control and data Leveraging techniques from distributed systems Significant momentum In both research and industry Next time Closing lecture No precept this week