cs 490.31: software defined networks 4 th lecture 1/4/2013

21

Upload: daniel-waters

Post on 04-Jan-2016

49 views

Category:

Documents


0 download

DESCRIPTION

CS 490.31: Software Defined Networks 4 th Lecture 1/4/2013. Xenofontas Dimitropoulos ETH Zurich. Flowspace revisited. OpenFlow Basics Flow Table Entries. Action. Rule. Stats. Packet + byte counters. Forward packet to zero or more ports Encapsulate and forward to controller - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: CS 490.31:  Software Defined Networks 4 th  Lecture 1/4/2013
Page 2: CS 490.31:  Software Defined Networks 4 th  Lecture 1/4/2013

Flowspace revisited

Page 3: CS 490.31:  Software Defined Networks 4 th  Lecture 1/4/2013

OpenFlow Basics Flow Table Entries

SwitchPort

MACsrc

MACdst

Ethtype

VLANID

IPSrc

IPDst

IPProt

L4sport

L4dport

Rule Action Stats

1. Forward packet to zero or more ports2. Encapsulate and forward to controller3. Send to normal processing pipeline4. Modify Fields5. Any extensions you add!

+ mask what fields to match

Packet + byte counters

3

VLANpcp

IPToS

Page 4: CS 490.31:  Software Defined Networks 4 th  Lecture 1/4/2013

ExamplesSwitching

*

SwitchPort

MACsrc

MACdst

Ethtype

VLANID

IPSrc

IPDst

IPProt

TCPsport

TCPdport Action

* 00:1f:.. * * * * * * * port6

Flow Switching

port3

SwitchPort

MACsrc

MACdst

Ethtype

VLANID

IPSrc

IPDst

IPProt

TCPsport

TCPdport

Action

00:20.. 00:1f.. 0800 vlan1 1.2.3.4 5.6.7.8 4 17264 80 port6

Firewall

*

SwitchPort

MACsrc

MACdst

Ethtype

VLANID

IPSrc

IPDst

IPProt

TCPsport

TCPdport Action

* * * * * * * * 22 drop

4

Page 5: CS 490.31:  Software Defined Networks 4 th  Lecture 1/4/2013

ExamplesRouting

*

SwitchPort

MACsrc

MACdst

Ethtype

VLANID

IPSrc

IPDst

IPProt

TCPsport

TCPdport Action

* * * * * 5.6.7.8 * * * port6

VLAN Switching

*

SwitchPort

MACsrc

MACdst

Ethtype

VLANID

IPSrc

IPDst

IPProt

TCPsport

TCPdport

Action

* * vlan1 * * * * *

port6, port7,port9

00:1f..

5

Page 6: CS 490.31:  Software Defined Networks 4 th  Lecture 1/4/2013

Types of action

Allow/deny flow Route & re-route flow Isolate flow Remove flow

What is a flow?

Application flow All http Jim’s traffic All packets to Canada …

6

Page 7: CS 490.31:  Software Defined Networks 4 th  Lecture 1/4/2013

Properties of a Flow-based Substrate

We need flexible definitions of a flowUnicast, multicast, waypointsDifferent aggregations

We need direct control over flowsFlow as an entity we program: To route,

to move, …

Exploit the benefits of packet switchingIt works and is universally deployedIt is efficient (when kept simple)

7

Page 8: CS 490.31:  Software Defined Networks 4 th  Lecture 1/4/2013

Substrate: “Flowspace”

Collection of bits to plumb flows (of different granularities)

between end points

8

Page 9: CS 490.31:  Software Defined Networks 4 th  Lecture 1/4/2013

Flowspace: Simple Example

IP SA

IP DA

Single flow All flows from A

A

All flows between two

subnets

9

Page 10: CS 490.31:  Software Defined Networks 4 th  Lecture 1/4/2013

Flowspace: Generalization

Field 2

Field 1

Single flowSet of flows

Field n

10

Page 11: CS 490.31:  Software Defined Networks 4 th  Lecture 1/4/2013

FlowSpace: Maps Packets to Slices

Page 12: CS 490.31:  Software Defined Networks 4 th  Lecture 1/4/2013

Properties of Flowspace

Backwards compatibleCurrent layers are a special caseNo end points need to change

Easily implemented in hardwaree.g. TCAM flow-table in each switch

Strong isolation of flowsSimple geometric constructionCan prove which flows can/cannot

communicate

12

Page 13: CS 490.31:  Software Defined Networks 4 th  Lecture 1/4/2013

Suggested Projects

13

Page 14: CS 490.31:  Software Defined Networks 4 th  Lecture 1/4/2013

Route around outages

• Route around failures– Implement algorithm to compute shortest paths

and install appropriate rules in a network– Upon receiving a notification for a broken link

recompute shortest paths and update rules

14

Page 15: CS 490.31:  Software Defined Networks 4 th  Lecture 1/4/2013

Rule management tools

• Implement and evaluate rule management tools.– Periodically check switches in a network (garbage

collection).– Defragmentation: Merge rules when possible– Clean up: Remove unused rules– Compress: Create aggregate more compact rules– Other sanity checks

15

Page 16: CS 490.31:  Software Defined Networks 4 th  Lecture 1/4/2013

Monitoring Radar

• Implement a monitoring radar– Use OpenFlow for measurements– Scan the flow space over time: Dynamically

change the rules you have over time to do finer granularity measurements to specific areas.

– Take live traffic into account to avoiding spending too much time in inactive regions.

16

Page 17: CS 490.31:  Software Defined Networks 4 th  Lecture 1/4/2013

Inter-controller Access Control Signaling• Denial o Service attack mitigation

mechanisms– Assume two domains with separate controllers– Establish a connection between the controllers

and write a simple protocol to notify the remote controller about blocking traffic from specific sources.

17

Page 18: CS 490.31:  Software Defined Networks 4 th  Lecture 1/4/2013

Elastic SDN controller

• Elastically scale SDN controller:– Monitor load to controller and when it exceeds a

threshold span an additional controller and reconfigure switches to balance load.

– Monitor demand and when it goes bellow a threshold switch back to single controller.

18

Page 19: CS 490.31:  Software Defined Networks 4 th  Lecture 1/4/2013

Next Steps: Draft Proposal

• Draft proposal (1 page) Due: Thu. 4th of Apr– Objectives, Work packages, Deliverables

• Meet with the instructor and discuss proposal: Fri. 5th of Apr

• Incorporate feedback and submit final proposal (2 pages max) Due: Wed. 10th of Apr

19

Page 20: CS 490.31:  Software Defined Networks 4 th  Lecture 1/4/2013

This talk wouldn’t be possible without:

Past slides from:Brandon HellerYashar Ganjali (CSC2203 Course)Rob Sherwoodothers