Mind the Gap Nick McKeown Stanford University President Dean My - - PowerPoint PPT Presentation

mind the gap
SMART_READER_LITE
LIVE PREVIEW

Mind the Gap Nick McKeown Stanford University President Dean My - - PowerPoint PPT Presentation

Mind the Gap Nick McKeown Stanford University President Dean My problem I get excited about improving the practice. I am a networking researcher. The Internets problem Architecture: Seems impossible to change Well-known


slide-1
SLIDE 1

Mind the Gap

Nick McKeown

Stanford University

slide-2
SLIDE 2

Dean President

slide-3
SLIDE 3

My problem

I get excited about improving the practice. I am a networking researcher.

slide-4
SLIDE 4

The Internet’s problem

Architecture: Seems impossible to change

– Well-known shortcomings – Many great proposals – No way to demonstrate and test at scale – Huge installed base understandably reluctant to change

Industry: Strong vested interest in status quo

– Very high margins as-is – Closed, proprietary solutions – Complex, brittle products – Innovator’s Dilemma

No path to change

slide-5
SLIDE 5

My solution

I am done I quit

Dean President

slide-6
SLIDE 6

Why I love my job

I work with people much smarter than me. I get to work on intellectually interesting ideas. … that might positively change the practice. Then, we try to actually change the practice.

slide-7
SLIDE 7

Whatever it takes

  • Prove a theorem
  • Write a paper
  • Build a demo
  • Talk to lots of industry people
  • Write a standard
  • Give lots of talks
  • Write a blog
  • Start a company
  • Build an open source tool
slide-8
SLIDE 8

The course of action

Is determined by the idea. Is determined by what you want to change.

slide-9
SLIDE 9

Some things that worked for me

Let me start with some motherhood and apple pie…

slide-10
SLIDE 10

Look for blind spots

Question old school assumptions Open your heart and mind to people who question assumptions

slide-11
SLIDE 11

Question Assumptions

Example 1

“On the self-similar nature of Ethernet traffic”

Leland, Taqqu, Willinger, Wilson [Sigcomm ‘93+ Whether you agree with them or not – it got the whole community questioning assumptions.

slide-12
SLIDE 12

Question Assumptions

Example 2

How big to make a backbone router buffer?

C B

slide-13
SLIDE 13

Buffer Size

RTT ´C

RTT ´C N

Throughput

25,000

100%

2,500,000 10Gb/s WAN

Number of packets

On-chip buffers Smaller design Lower power t

Window Size

Buffer

slide-14
SLIDE 14

Buffer Size

RTT ´C

RTT ´C N

Throughput

log(W)

25,000 ~50

~ 90% 100%

2,500,000 10Gb/s WAN

Number of packets

20 pkts

Integrated all-optical buffer [UCSB 2008]

On-chip buffers Smaller design Lower power

slide-15
SLIDE 15

People

Stanford: Guido Appenzeller, Neda Beheshti, Tim Roughgarden, Ashish Goel, Mihaela Enachescu Toronto: Yashar Ganjali Cambridge: Damon Wischik, Frank Kelly, Gaurav Raina UMass: Don Towsley, Chris Hollot UW Madison: Paul Barford, Joel Sommers GA Tech: Amogh Dhamdhere, Constantine Dovrolis UCSB: John Bowers, Emily Burmeister, Dan Blumenthal

slide-16
SLIDE 16

Question Assumptions

Example 3

Myth 1: It is hard for switch/router hardware to maintain lots of queues.

– Since 1995, seen 10-15 ASICs do it easily – Recently: 64x10Gb/s switch, 128k flows, 10%

  • verhead.

Myth 2: You can’t build a large flow table

– Next couple of years: Over 1Tb/s, 100,000s entries, 100s bits wide, several tables.

It doesn’t mean you have to; just says you can.

slide-17
SLIDE 17

Some things that worked for me

Some surprising takeaways

slide-18
SLIDE 18

Choosing research projects

  • Pick a problem that is intellectually interesting.
  • And improves the practice.
  • And industry doesn’t like (yet).
slide-19
SLIDE 19

Packet Forwarding Packet Forwarding Packet Forwarding Packet Forwarding Packet Forwarding

Control Control Control Control Control

Ethane

Martin Casado et al [Sigcomm ‘07] Policy

“Laptops can’t accept incoming connections” “A can’t talk to B”

Network Control Plane

slide-20
SLIDE 20

Microsoft Security Group: “Come on in…” Cisco Switching Group: “It will never work…” Raw nerve. We must be onto something.

slide-21
SLIDE 21

Checklist

  • Intellectually interesting.
  • And improves the practice.
  • And industry doesn’t like (yet).
slide-22
SLIDE 22

Corollary: You can’t give stuff away

Example 1: Ethane (2007)

– Tried to give it away for free. – Realized industry wasn’t ready to see it. – Started Nicira.

Example 2: Network Memory (2001) Example 3: Scalable Routers (1997)

slide-23
SLIDE 23

Packet Buffer

10Gb/s 10Gb/s 40 bytes every 32ns

Problem

  • Two memory operations every 32ns.
  • One DRAM operation about 50ns.
  • SRAM 75x price per bit, and 10x power.
  • 40Gb/s links coming; linecards with 16 x 10Gb/s links.
  • Thousands of queues.

DRAM

slide-24
SLIDE 24

Network Memory

10Gb/s 10Gb/s

Solution

  • SRAM cache size for zero misses: 2qblnq
  • Practical for 160Gb/s linecard, 1024 queues.

SRAM SRAM DRAM Tails Heads

Blocks, b Blocks, b

1 q

ASIC

slide-25
SLIDE 25

History

2001: Started on problem; industry discussion. 2003: Tried to give it away. 2004:

– 80% of world’s SRAM: Ethernet switches. – Of those, 80% used by Cisco ($400M p.a.) – Started Nemo.

2007:

– Savings estimate $150M p.a.

slide-26
SLIDE 26

Checklist

  • Intellectually interesting.
  • And improves the practice.
  • And industry doesn’t like (yet).
slide-27
SLIDE 27

Corollary: You can’t give stuff away

Example 1: Ethane (2007) Example 2: Network Memory (2001) Example 3: Scalable Routers (1997)

slide-28
SLIDE 28 1 2 3 4 5 6 7 8 9 10 111213141516 171819 20 2122232425262728 29303132

2km

slide-29
SLIDE 29

History

1997

– State of the art was 40Gb/s per rack. – Tried to give it away. – “Leave it to us”. – Started Abrizio.

1999

– All outsourced solutions.

slide-30
SLIDE 30

Checklist

  • Intellectually interesting.
  • And improves the practice.
  • And industry doesn’t like (yet).
slide-31
SLIDE 31

I put everything in public domain

Industry

– Invests huge amounts to develop and sell products. – Patents protect their ideas, giving them confidence to invest.

University research

– Serves society at large. – Stay ahead by running fast, not by protecting. – Makes it easier to work with industry.

Everything in public domain since 1999.

slide-32
SLIDE 32

Why I decided to come back

slide-33
SLIDE 33

By 2005

Many smart people calling for change

Dave Clark Larry Peterson Tom Anderson Scott Shenker Jon Turner Peter Freeman Guru Parulkar

Overcoming the Internet Impasse through Virtualization FIND, GENI, … 100x100, 4D

Hui Zhang Sandy Fraser Jennifer Rexford Albert Greenberg

Vision

slide-34
SLIDE 34

Software Defined Networks

Martin Casado

Scott Shenker Teemu Koponen Guru Parulkar + many (brave) students

slide-35
SLIDE 35

Vertically integrated Closed, proprietary Slow innovation Small industry

Specialized Operating System Specialized Hardware

App App App App App App App App App App App

Specialized Applications

Horizontal Open interfaces Rapid innovation Huge industry

Microprocessor

Open Interface

Linux Mac OS

Windows (OS)

  • r
  • r

Open Interface

slide-36
SLIDE 36

Vertically integrated Closed, proprietary Slow innovation

App App App App App App App App App App App

Horizontal Open interfaces Rapid innovation

Control Plane Control Plane Control Plane

  • r
  • r

Open Interface

Specialized Control Plane Specialized Hardware Specialized Features Merchant Switching Chips

Open Interface

slide-37
SLIDE 37

Checklist

  • Intellectually interesting.
  • And improves the practice.
  • And industry doesn’t like (yet).
slide-38
SLIDE 38

What’s next?

slide-39
SLIDE 39

Making Networks Work

An intellectual framework for verifying, troubleshooting and debugging SDNs

slide-40
SLIDE 40

With SDN we can:

  • 1. Formally verify that our networks are

behaving correctly.

  • 2. Identify bugs, then systematically

track down their root cause.

slide-41
SLIDE 41
  • Ensuring correctness [Frenetic][HFT][Netcore]

Nate Foster, Andrew Ferguson, Mike Freedman, Jen Rexford, Rob Harrison, Dave Walker, ++

  • Software Fault Localization [W3]

Scott Shenker, Colin Scott, Kyriakos Zarifis, Andreas Wundsam.

  • Checking behavior [NICE]

Marco Canini, Daniele Venzano, Peter Peresini, Dejan Kostic, Jen Rexford.

  • Checking Invariants [VeriFlow]

Ahmed Khurshid, Wenxuan Zhou, Matthew Caesar, P. Brighten Godfrey

  • Consistent updates

Mark Reitblatt, Rick McGeer, ++

slide-42
SLIDE 42

Scott Shenker at 1st ONS in 2011

“The Future of Networking and the Past of Protocols”

slide-43
SLIDE 43

Software Defined Network (SDN)

Global Network View

Network Virtualization

Packet Forwarding Packet Forwarding Packet Forwarding Packet Forwarding Packet Forwarding

Network OS

Abstract Network View

Control Programs

f View

( )

Control Programs

f View

( )

Control Programs

f View

( )

slide-44
SLIDE 44

Software Defined Network (SDN)

Global Network View

Network Virtualization

Packet Forwarding Packet Forwarding Packet Forwarding Packet Forwarding Abstract Network View

Control Programs

f View

( )

Control Programs

f View

( )

Control Programs

f View

( )

firewall.c … if( pkt->tcp->dport == 22) dropPacket(pkt); …

Packet Forwarding

Network OS

1.<Match, Action> 2.<Match, Action> 3.<Match, Action> 4.<Match, Action> 5.<Match, Action> 6.… 7.… 1.<Match, Action> 2.<Match, Action> 3.<Match, Action> 4.<Match, Action> 5.<Match, Action> 6.… 7.… 1.<Match, Action> 2.<Match, Action> 3.<Match, Action> 4.<Match, Action> 5.<Match, Action> 6.… 7.… 1.<Match, Action> 2.<Match, Action> 3.<Match, Action> 4.<Match, Action> 5.<Match, Action> 6.… 7.… 1.<Match, Action> 2.<Match, Action> 3.<Match, Action> 4.<Match, Action> 5.<Match, Action> 6.… 7.…

slide-45
SLIDE 45

How do other industries do it?

slide-46
SLIDE 46

Making ASICs Work

$10B tool business supports a $250B chip industry

Specification

Functional Description (RTL) Testbench & Vectors Functional Verification Logical Synthesis Static Timing Place & Route Design Rule Checking (DRC) Layout vs Schematic (LVS) Layout Parasitic Extraction (LPE) Manufacture & Validate

100s of Books >10,000 Papers 10s of Classes

slide-47
SLIDE 47

Making Software Work

Static Code Analysis Invariant Checker Interactive Debugger Model Checking Run-time Checker

Specification

Testbench Functional Description (Code)

$10B tool business supports a $300B S/W industry

100s of Books >100,000 Papers 10s of Classes

slide-48
SLIDE 48

Making Networks Work (Today)

traceroute, ping, tcpdump, SNMP, Netflow

…. er, that’s about it.

slide-49
SLIDE 49

Why debugging networks is hard

Complex interaction

– Between multiple protocols on a switch/router. – Between state on different switches/routers.

Multiple uncoordinated writers of state.

Operators can’t…

– Observe all state. – Control all state.

slide-50
SLIDE 50

Networks are kept working by

“Masters of Complexity”

A handful of books Almost no papers No classes

slide-51
SLIDE 51

Philosophy of Making Networks Work

YoYo

“You’re On Your Own”

Yo-Yo Ma

“You’re On Your Own, Mate”

slide-52
SLIDE 52

With SDN we can:

  • 1. Formally verify that our networks are

behaving correctly.

  • 2. Identify bugs, then systematically

track down their root cause.

slide-53
SLIDE 53

Software Defined Network (SDN)

Global Network View

Network Virtualization

Packet Forwarding Packet Forwarding Packet Forwarding Packet Forwarding Abstract Network View

Control Programs Control Programs Control Programs firewall.c … if( pkt->tcp->dport == 22) dropPacket(pkt); …

Packet Forwarding

Network OS

  • 1. <Match, Action>
  • 2. <Match, Action>
  • 3. <Match, Action>
  • 4. <Match, Action>
  • 5. <Match, Action>
  • 6. …
  • 7. …
slide-54
SLIDE 54

Three of our projects

  • 1. Static Checking [HSA]

“Independently checking correctness”

  • 2. Automatic Testing [ATPG]

“Is the datapath behaving correctly?”

  • 3. Interactive Debugging [ndb]

“Finding bugs, and their root cause, in an operational network”

slide-55
SLIDE 55

Peyman Kazemian Hongyi ‘James’ Zeng George Varghese (UCSD) Nikhil Handigol Brandon Heller Vimal Jeyakumar David Mazières

slide-56
SLIDE 56
  • 1. Static checking

Independently checking correctness

slide-57
SLIDE 57

Motivations

In today’s networks, simple questions are hard to answer:

– Can host A talk to host B? – What are all the packet headers from A that can reach B? – Are there any loops in the network? – Is Group X provably isolated from Group Y? – What happens if I remove a line in the config file?

57

slide-58
SLIDE 58

Software Defined Network (SDN)

Global Network View

Network Virtualization

Packet Forwarding Packet Forwarding Packet Forwarding Packet Forwarding Abstract Network View

Control Programs Control Programs Control Programs

Packet Forwarding

Network OS

1. <Match, Action> 2. <Match, Action> 3. <Match, Action> 4. <Match, Action> 5. <Match, Action> 6. … 7. … 1. <Match, Action> 2. <Match, Action> 3. <Match, Action> 4. <Match, Action> 5. <Match, Action> 6. … 7. … 1. <Match, Action> 2. <Match, Action> 3. <Match, Action> 4. <Match, Action> 5. <Match, Action> 6. … 7. … 1. <Match, Action> 2. <Match, Action> 3. <Match, Action> 4. <Match, Action> 5. <Match, Action> 6. … 7. … 1. <Match, Action> 2. <Match, Action> 3. <Match, Action> 4. <Match, Action> 5. <Match, Action> 6. … 7. … 1. <Match, Action> 2. <Match, Action> 3. <Match, Action> 4. <Match, Action> 5. <Match, Action> 6. … 7. … 1. <Match, Action> 2. <Match, Action> 3. <Match, Action> 4. <Match, Action> 5. <Match, Action> 6. … 7. … 1. <Match, Action> 2. <Match, Action> 3. <Match, Action> 4. <Match, Action> 5. <Match, Action> 6. … 7. … 1. <Match, Action> 2. <Match, Action> 3. <Match, Action> 4. <Match, Action> 5. <Match, Action> 6. … 7. …

Static Checker

1. <Match, Action> 2. <Match, Action> 3. <Match, Action> 4. <Match, Action> 5. <Match, Action> 6. … 7. … 1. <Match, Action> 2. <Match, Action> 3. <Match, Action> 4. <Match, Action> 5. <Match, Action> 6. … 7. … 1. <Match, Action> 2. <Match, Action> 3. <Match, Action> 4. <Match, Action> 5. <Match, Action> 6. … 7. … 1. <Match, Action> 2. <Match, Action> 3. <Match, Action> 4. <Match, Action> 5. <Match, Action> 6. … 7. … 1. <Match, Action> 2. <Match, Action> 3. <Match, Action> 4. <Match, Action> 5. <Match, Action> 6. … 7. …

“A can talk to B” “Guests can’t reach PatientRecords”

Policy

slide-59
SLIDE 59

How it works

Header Space Analysis

slide-60
SLIDE 60

Header Space Analysis

1 2 3 4 1 2 3 4

slide-61
SLIDE 61

Header Space Analysis

1 2 3 4 1 2 3 4 Port ID

slide-62
SLIDE 62

Can A talk to B?

1 2 3 4 1 2 3 4 Port ID

slide-63
SLIDE 63

All packets from A that can reach B

slide-64
SLIDE 64

Header Space Analysis

*NSDI ‘12+

Consequences

– Abstract forwarding model; protocol independent – Finds all packets from A that can reach B – Find loops, regardless of protocol or layer – Can prove that two groups are isolated

Can verify if network adheres to policy

slide-65
SLIDE 65

Software

Hassel tool

– Reads Cisco IOS Configuration – Checks reachability, loops and isolation – C: 60ms for Stanford Backbone – Python: 10 mins for Stanford Backbone

Code

– http://bitbucket.org/peymank/hassel-public

slide-66
SLIDE 66

Checklist

  • Intellectually interesting.
  • And improves the practice.
  • And industry doesn’t like (yet).
slide-67
SLIDE 67

In Summary…

slide-68
SLIDE 68

What has worked for me

  • There doesn’t need to be conflict between

– An intellectually interesting idea, and – Improving the practice.

  • Plenty of research problems can do both.
  • Improving the practice means going beyond

writing papers. Whatever it takes.

  • Listen to industry, but not too much.
  • Give ideas away.
slide-69
SLIDE 69

Software Defined Networks

  • Allows a stronger intellectual foundation to

networking

  • Allows us to define the right abstractions
  • Will allow us to transfer technology much

faster, in both directions

  • Is already closing the gap with industry
slide-70
SLIDE 70

Almost the end…

slide-71
SLIDE 71

Something that worries me

slide-72
SLIDE 72

Internet: biggest societal change in our time.

  • Our field is growing in size and scope.
  • More researchers, more topics, more

developers.

  • Yet the Sigcomm tent remains very small.
slide-73
SLIDE 73

Sigcomm

  • Too far removed from the practice.
  • Too conservative.
  • Rule of thumb:

–If the area is new, Sigcomm won’t accept it.

  • Bad for students and young professors.
slide-74
SLIDE 74

Sigcomm attendees

88% 87% 91% 86% 12% 13% 9% 14% 0% 50% 100% 2008 2009 2010 2011 Industry, not research Research

slide-75
SLIDE 75

( Attendees Industry% Papers ) Sigcomm

( 500 15% 35 )

Siggraph

( 13,000 60% 115 )

Sigcomm 2015 ?

( 2,000 40% 70 )

slide-76
SLIDE 76

Sigcomm

Let’s make the tent bigger

– More topics – More papers – More industry participation

slide-77
SLIDE 77

The End

slide-78
SLIDE 78

Giving the network a wedgie

Nick McKeown

Stanford University

slide-79
SLIDE 79

Specialized Control Plane Specialized Hardware Specialized Features Apps

slide-80
SLIDE 80

Specialized Control Plane Specialized Hardware Apps Network OS Simpler Hardware