Top Banner
SOFTWARE-DEFINED NETWORKING Aditya Akella Computer Sciences, UW-Madison
38

Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Mar 29, 2018

Download

Documents

truongliem
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

SOFTWARE-DEFINED NETWORKING

Aditya Akella Computer Sciences, UW-Madison

Page 2: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Why SDN?

Let’s start with a simple example..

Page 3: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Traditional Computer Networks

Data plane: Packet streaming

Forward, filter, buffer, mark, rate-limit, and measure packets

Page 4: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Traditional Computer Networks

Track topology changes, compute routes, install forwarding/filtering rules

Control plane: Distributed algorithms

Page 5: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Traditional Computer Networks

Collect measurements and configure the equipment

Management plane: Human time scale

Page 6: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Shortest-Path Routing

Management: set the link weights

Control: compute shortest paths

Data: forward packets to next hop

1

1

3

1

1

Page 7: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Inverting the Control Plane

Traffic engineering Change link weights

… to induce the paths

… that alleviate congestion

1 5

1

3

1

1

Page 8: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Transient Anomalies

Distributed protocol

Temporary disagreement among the nodes

… leaves packets stuck in loops

Even though the change was planned!

1

3

1

1

1 5

Page 9: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

A Lot Messier!

Page 10: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

A Lot Messier

Other mgmt/control plane functions: access control, Quality-of-Service, overlays, service interposition, billing, DDoS protection

Non-routing state, managed using ad hoc mechanisms

Many boxes (routers, switches, firewalls, …), with different interfaces.

Page 11: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Closed equipment

Software bundled with hardware

Vendor-specific interfaces

Distributed nature of control plane

Ad hoc management approaches

Slow protocol standardization

What Ails the Network?

Impacts performance, security, reliability, cost… Innovation is hard

Page 12: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

SDN/OPENFLOW NETWORKS

Page 13: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Software Defined Networking

API to the data plane (e.g., OpenFlow)

Logically-centralized control

Switches

Smart, slow

Dumb, fast

Page 14: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Controller Architecture

Control Logic

Network graph and forwarding abstraction

State distribution mechanisms

Forwarding element integration

Control Logic

Control Logic

Events from switches Topology changes, Traffic statistics, Arriving packets

Commands to switches (Un)install rules, Query statistics, Send packets

Northbound API

Southbound API

Page 15: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

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

1. src=1.2.*.*, dest=3.4.5.* drop 2. src = *.*.*.*, dest=3.4.* forward(2) 3. src=10.1.2.3, dest=*.*.*.* send to controller

Page 16: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

The SDN Stack: More Detail

Controller NOX

Slicing Software FlowVisor

FlowVisor Console

16

Applications CloudNaaS Simple Switch

… Stratos

NetFPGA Software

Ref. Switch Broadcom Ref. Switch

OpenWRT PCEngine WiFi AP

Commercial Switches

OpenFlow Switches

Open vSwitch

HP, NEC, Pronto, Juniper.. and many

more

Beacon Trema Maestro

Page 17: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Wisconsin Projects

Stratos

CloudNaaS

OpenNF

Example SDN Applications

Public Demos

Dynamic access control

VM mobility/migration

Network virtualization

Power management

Load balancing

Traffic Engineering

17

Commercial products

Network virtualization: Nicira/VMWare, Azure, Google, CloudNaaS

Traffic Engineering: Google’s B4, Microsoft’s SWAN

Page 18: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Dynamic Access Control Inspect first packet of each connection

Consult the access control policy

Install rules to block or route traffic

Page 19: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Seamless Mobility/Migration See host sending traffic at new location

Modify rules to reroute the traffic

Page 20: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

SDN/OpenFlow in the Wild

Open Networking Foundation Creating Software Defined Networking standards Google, Facebook, Microsoft, Yahoo, Verizon, Deutsche

Telekom, and many other companies

Commercial OpenFlow switches Cisco, HP, NEC, Quanta, Dell, IBM, Juniper, …

Controllers/Languages NOX, Beacon, Floodlight, Nettle, ONIX, POX, Frenetic, MAPLE, Aspera, Pyretic

Network deployments Many campuses (including us), two research backbone

networks Commercial deployments

Page 21: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Software Defined Networking

Simpler management and network control No need to “invert” control-plane operations

Faster pace of innovation Less dependence on vendors and standards

Mechanism reuse

Easier interoperability Compatibility only in “wire” protocols

Simpler, cheaper equipment Minimal software

Page 22: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

The End

Questions?

Page 23: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Abstractions in Networking

Application

Transport

IP

Data Link

Physical

Layers decompose data delivery into tractable pieces

Physical delivery

Local delivery

Global delivery

Reliable delivery

Semantics

But… Layering

abstractions deal mostly

with “data plane”

Page 24: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

What about Control Plane?

a …

b …

a …

b …

a …

b …

a …

b …

Data Plane: forwards packets given state

Control Plane: establishes state • Distributed routing protocols • Access control • Quality-of-service • Overlays • Service interposition • Billing • DDoS protection • …

Page 25: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Hard to meet control requirements:

Rely on ad hoc mgmt/config., distributed state exchange/processing

Automated mgmt exist, but minimal mechanism reuse, composition is hard

Page 26: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Enter SDN

A unified approach to control plane management that embodies a set of clean abstractions so that rich control functions can be designed with minimal new design

Page 27: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Enter SDN

Control Logic

Network graph and forwarding abstraction

State distribution mechanisms

Forwarding element integration

Control Platform Or “Controller”

Control Plane

Control Platform: handles state collection/distribution; hides complexity, heterogeneity

Rich Control Logics: distributed programs that read from/write to state at controller

Page 28: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

SDN for Clouds

Multi-tenancy Control Logic

Network graph and forwarding abstraction

State distribution mechanisms

Forwarding element integration

Control Platform Or “Controller”

Example killer app: Network virtualization

Isolated virtual networks per tenant

Page 29: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

SDN for Clouds

Many “hot” startups

Better controllers

Controller/switch co-design

Improving network virtualization

Security

Other, rich control logics

<Insert your idea here>

Page 30: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Opportunities: Research

Abstractions Currently: logical network graph. Too simplistic? What about data? Services?

Control logics E.g.: Managing SLAs; security (DDoS protection)

L3-L7 services API for tenants; composition How to provision? Scale? Manage (e.g., failures)?

Broader issues Current: One-size-fit-all. But, needs differ, e.g., Facebook vs. Azure Interface with storage

Page 31: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Opportunities: Learn About SDN

SDN boot camp Read SDN literature: documentation, papers, blogs,

white papers…

Play with NOX, Beacon, Floodlight

Write/run applications

Deploy/test on our OpenFlow testbed

We’ll start small: ~6-8 students

Regular meetings Structured up front, not so much later

Page 32: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

[email protected] or [email protected] regarding boot camp

Come see me regarding SDN research

Page 33: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

33

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…

The Internet: A Tremendous Success

Page 34: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

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…

Inside the Network?

Page 35: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Do We Need Innovation Inside?

35

Many boxes (routers, switches, firewalls, …), with different interfaces.

Page 36: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

How Hard are Networks to Manage? Operating a network is expensive More than half the cost of a network

Yet, operator error causes most outages

Buggy software in the equipment Routers with 20+ million lines of code

Cascading failures, vulnerabilities, etc.

The network is “in the way” Especially a problem in data centers

… and home networks

36

Page 37: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

RETHINKING THE “DIVISION OF LABOR”

37

Page 38: Software-Defined Networkingpages.cs.wisc.edu/~akella/CS640/F14/lecture_notes/CS640_lec12.pdf · 1 5 1 3 1 1 . Transient Anomalies ... OpenFlow) Logically-centralized control Switches

Shortest-Path Routing

Management: set the link weights

Control: compute shortest paths

Data: forward packets to next hop

38

1

1

3

1

1