Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta...

74
Building Efficient and Reliable Software-Defined Networks Naga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster, Aarti Gupta 1 FPO Talk

Transcript of Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta...

Page 1: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Building Efficient and Reliable Software-Defined Networks

Naga Katta

Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster, Aarti Gupta

1

FPO Talk

Page 2: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Traditional Networking

2

Page 3: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Traditional Networking

3

•  Distributed Network Protocols

Page 4: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Traditional Networking

4

•  Distributed Network Protocols – Reliable routing –  Inflexible network control

Page 5: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Software-Defined Networking

5

Controller

Page 6: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Software-Defined Networking

6

Controller

Page 7: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

SDN: A Clean Abstraction

7

Controller Application

Page 8: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

SDN Promises

8

Controller Flexibility Efficiency Application

Page 9: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

SDN Meets Reality

9

Controller Flexibility Efficiency

Too slow for routing

Application

Page 10: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

SDN Meets Reality

10

Controller Flexibility Efficiency

Limited TCAM space

Application

Page 11: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

SDN Meets Reality

11

Controller Flexibility Efficiency

Reliability

Single point of failure

Application

Page 12: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

My Research

12

Controller Flexibility Efficiency

Reliability

Application

Page 13: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Research Contribution

•  HULA (SOSR 16) – An efficient non-blocking switch

•  CacheFlow (SOSR 16) – A logical switch with infinite policy space

•  Ravana (SOSR 15) – Reliable logically centralized controller

13

Efficiency

Flexibility

Reliability

Best Paper

Page 14: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Research Contribution

•  HULA (SOSR 16) – An efficient non-blocking switch

•  CacheFlow (SOSR 16) – A logical switch with infinite policy space

•  Ravana (SOSR 15) – Reliable logically centralized controller

14

Efficiency

Flexibility

Reliability

Best Paper

Page 15: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

HULA: Scalable Load Balancing Using Programmable Data Planes

Naga Katta1

Mukesh Hira2, Changhoon Kim3, Anirudh Sivaraman4, Jennifer Rexford1

1.Princeton 2.VMware 3.Barefoot Networks 4.MIT

15

Page 16: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Load Balancing Today

16

. . . . . . … … …

Servers

Leaf Switches

Spine Switches

Equal Cost Multi-Path (ECMP) – hashing

Page 17: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Alternatives Proposed

17

Central Controller

HyperV HyperV

Slow reaction time

Page 18: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Congestion-Aware Fabric

18

Congestion-aware Load Balancing CONGA – Cisco

HyperV HyperV

Designed for 2-tier topologies

Page 19: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Programmable Dataplanes

19

•  Advanced switch architectures (P4 model) – Programmable packet headers – Stateful packet processing

•  Applications –  In-band Network Telemetry (INT) – HULA load balancer

•  Examples – Barefoot RMT, Intel Flexpipe, etc.

Page 20: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Programmable Switches - Capabilities

20

Memory

M A

m1 a1

Ingress Parser

Memory

M A

m1 a1

Memory

M A

m1 a1

Memory

M A

m1 a1

Egress Deparser Queue Buffer

P4 Program

Compile

Page 21: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Programmable Switches - Capabilities

21

Memory

M A

m1 a1

Ingress Parser

Memory

M A

m1 a1

Memory

M A

m1 a1

Memory

M A

m1 a1

Egress Deparser Queue Buffer

P4 Program

Compile

Programmable Parsing

Page 22: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Programmable Switches - Capabilities

22

Memory

M A

m1 a1

Ingress Parser

Memory

M A

m1 a1

Memory

M A

m1 a1

Memory

M A

m1 a1

Egress Deparser Queue Buffer

P4 Program

Compile

Programmable Parsing Stateful

Memory

Page 23: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Programmable Switches - Capabilities

23

Memory

M A

m1 a1

Ingress Parser

Memory

M A

m1 a1

Memory

M A

m1 a1

Memory

M A

m1 a1

Egress Deparser Queue Buffer

P4 Program

Compile

Programmable Parsing Stateful

Memory

Switch Metadata

Page 24: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Hop-by-hop Utilization-aware Load-balancing Architecture

1.  HULA probes propagate path utilization – Congestion-aware switches

2.  Each switch remembers best next hop – Scalable and topology-oblivious

3.  Split elephants to mice flows (flowlets) – Fine-grained load balancing

24

Page 25: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

1. Probes carry path utilization

ToR

Aggregate

Spines

Probe originates

Probe replicates

25

Page 26: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

1. Probes carry path utilization

ToR

Aggregate

Spines

Probe originates

Probe replicates

26

P4 primitives New header format Programmable Parsing Switch metadata

Page 27: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

1. Probes carry path utilization

S1

S2

S3

S4

ToR 10

ToR ID = 10 Max_util = 50%

ToR 1 Probe

ToR ID = 10 Max_util = 80%

ToR ID = 10 Max_util = 60%

27

Page 28: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

2. Switch identifies best downstream path

S1

S2

S3

S4

ToR 10

Dst Best hop Path util

ToR 10 S4 50%

ToR 1 S2 10%

… …

ToR 1

Best hop table

Probe

ToR ID = 10 Max_util = 50%

28

Page 29: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

2. Switch identifies best downstream path

S1

S2

S3

S4

ToR 10

Dst Best hop Path util

ToR 10 S4 S3 50% 40%

ToR 1 S2 10%

… …

ToR 1

Best hop table

Probe

ToR ID = 10 Max_util = 40%

29

Page 30: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

3. Switches load balance flowlets

S1

S2

S3

S4

ToR 10

Dest Best hop Path util

ToR 10 S4 50%

ToR 1 S2 10%

… …

ToR 1

Best hop table

Data

30

Page 31: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

3. Switches load balance flowlets

S1

S2

S3

S4

ToR 10

Dest Best hop Path util

ToR 10 S4 50%

ToR 1 S2 10%

… …

Dest Timestamp Next hop

ToR 10 1 S4

… …

… …

ToR 1

Flowlet table

Best hop table

Data

31

Hash flow

Page 32: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

3. Switches load balance flowlets

S1

S2

S3

S4

ToR 10

Dest Best hop Path util

ToR 10 S4 50%

ToR 1 S2 10%

… …

ToR 1

Flowlet table

Best hop table

Data

P4 primitives RW access to stateful memory Comparison/arithmetic operators

32

Dest Timestamp Next hop

ToR 10 1 S4

… …

… …

Page 33: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Evaluated Topology

L1

A1 A2

L2

S1 S2

A4

L4

A3

L3

8 servers per leaf

40Gbps

40Gbps

10Gbps

Link Failure

33

Page 34: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Evaluation Setup

•  NS2 packet-level simulator •  RPC-based workload generator

– Empirical flow size distributions – Websearch and Datamining

•  End-to-end metric – Average Flow Completion Time (FCT)

34

Page 35: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Compared with

•  ECMP – Flow level hashing at each switch

•  CONGA’ – CONGA within each leaf-spine pod – ECMP on flowlets for traffic across pods1

35

1. Based on communication with the authors

Page 36: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

HULA handles high load much better

36

~ 9x improvement

Page 37: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

HULA keeps queue occupancy low

37

Page 38: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

HULA is stable on link failure

38

Page 39: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

HULA: An Efficient Non-Blocking Switch

•  Scalable to large topologies •  Adaptive to network congestion •  Reliable in the face of failures •  Bonus: Programmable in P4!

39

Page 40: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Research Contribution

•  HULA (SOSR 16) – One big efficient non-blocking switch

•  CacheFlow (SOSR 16) – A logical switch with infinite policy space

•  Ravana (SOSR 15) – Reliable logically centralized controller

40

Efficiency

Flexibility

Reliability

Best Paper

Page 41: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

2. CacheFlow: Dependency-Aware Rule-Caching for Software-Defined Networks

Naga Katta Omid Alipourfard, Jennifer Rexford, David Walker

Princeton University

Flexibility

Page 42: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

SDN Promises Flexible Policies

42

Controller

Switch

TCAM

Lot of fine-grained rules

Page 43: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

SDN Promises Flexible Policies

43

Controller

Limited rule space!

Lot of fine-grained rules What now?

Page 44: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

State of the Art

44

Hardware Switch Software Switch Rule Capacity Low (~2K-4K) High Lookup Throughput High (>400Gbps) Low (~40Gbps) Port Density High Low Cost Expensive Relatively cheap

Page 45: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

•  High throughput + high rule space

TCAM as cache

45

CacheFlow

TCAM

Controller

S2 S1

<5% rules cached

Page 46: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Caching Ternary Rules

46

Rule Match Action Priority Traffic

R1 11* Fwd 1 3 10

R2 1*0 Fwd 2 2 60

R3 10* Fwd 3 1 30

•  Greedy strategy breaks rule-table semantics

Partial Overlaps!

Page 47: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

•  For a given rule R •  Find all the rules that its packets may hit if R is removed

47

R R1 R2 R3 R4

R’ ∧ R3 != φ

The dependency graph

Page 48: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Splice Dependents for Efficiency

48

Dependent-Set Cover-Set

Rule Space Cost

Page 49: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

•  A switch with logically infinite policy space

Ø  Dependency analysis for correctness Ø  Splicing dependency chains for Efficiency Ø  Transparent design

CacheFlow: Enforcing Flexible Policies

49

Page 50: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Research Contribution

•  HULA (SOSR 16) – One big efficient non-blocking switch

•  CacheFlow (SOSR 16) – A logical switch with infinite policy space

•  Ravana (SOSR 15) – Reliable logically centralized controller

50

Efficiency

Flexibility

Reliability

Best Paper

Page 51: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

3. Ravana: Controller Fault-Tolerance in Software-Defined Networking

Naga Katta

Haoyu Zhang, Michael Freedman, Jennifer Rexford

51

Reliability

Page 52: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

SDN controller: single point of failure

Failure leads to - Service disruption - Incorrect network behavior

S1 S2 S3

Application Controller

End-host pkt

event cmd

pkt pkt

52

Page 53: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Replicate Controller State?

S1

S2

S3

Master Slave

h1 h2

53

Page 54: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

State External to Controllers: Events

S1

S2

S3

Master Slave

h1 h2

•  During master failover… •  Linkdown event is generated à event loss!

54

Page 55: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

State External to Controllers: Commands

S1

S2

S3

Master Slave

h1

•  Master crashes while sending commands… •  New master will process and send commands again

à repeated commands!

cmd 1

cmd 2

cmd 1

cmd 2

cmd 3

Master

h2

55

Page 56: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Ravana: A Fault-Tolerant Control Protocol

•  Goal: Ordered Event Transactions – Exactly-once events – Totally ordered events – Exactly once commands

•  Two stage replication protocol – Enhances RSM – Acknowledgements, Retransmission, Filtering

56

Page 57: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Exactly Once Event Processing

S1 S2

Application Master

End-host

Application Slave

runtime runtime

event log e1

4

6 6

e1p

7

c1 c2

57

1

2

3 5 5

Page 58: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Conclusion

•  Reliable control plane

•  Efficient runtime

•  Transparent programming abstraction

58

Page 59: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Research Contribution

•  HULA (SOSR 16) – One big efficient non-blocking switch

•  CacheFlow (SOSR 16) – A logical switch with infinite policy space

•  Ravana (SOSR 15) – Reliable logically centralized controller

59

Efficiency

Flexibility

Reliability

Best Paper

Page 60: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Other Work

•  Flog: Logic Programming for Controllers – XLDI 2012

•  Incremental Consistent Updates – HotSDN 2014

•  In-band Network Telemetry – SIGCOMM Demo 2015

•  Edge-Based Load-Balancing – To appear in HotNets 2016

60

Control plane

Middle layer

Data plane

Data plane

Page 61: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Thesis: Summary

61

Page 62: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Thesis: Summary

62

HULA: an efficient non-blocking

switch

Efficiency

Page 63: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Thesis: Summary

63

CacheFlow: logically infinite

memory

Flexibility

Page 64: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Controller

Thesis: Summary

64

Controller Controller Controller

Ravana: logically centralized controller Reliability

Page 65: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Controller

A Desirable SDN

65

Controller Controller Controller Application

Efficiency

Reliability

Flexibility

Simple programming

abstraction

Page 66: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Thank You!

66

Page 67: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Backup slides

Page 68: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Transport Layer (MPTCP)

68

Leaf Switch

HyperV

APP

OS

Socket

Multipath TCP

TCP1 TCP2 TCPn

Guest VM Changes

Page 69: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

HULA: Scalable, Adaptable, Programmable

69

LB Scheme

Congestion aware

Application agnostic

Dataplane timescale

Scalable Programmable dataplanes

ECMP

SWAN, B4 MPTCP

CONGA

HULA

Page 70: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Dependency Chains – Clear Gain

70

•  CAIDA packet trace 3% rules 85% traffic

Page 71: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Incremental update is more stable

71

Page 72: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

What causes the overhead?

•  Factor analysis: overhead for each component 0

10

20

30

40

50

60

70

80 Th

roug

hput

(K re

spon

ses

/ sec

)

Ryu Weakest +Reliable Event +Total Ordering +Exactly-Once Cmd

8.4% 7.8%

5.3% 9.7%

72

Page 73: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Ravana Throughput Overhead

•  Measured with cbench test suite •  Event-processing throughput: 31.4% overhead

73

Page 74: Building Efficient and Reliable Software-Defined Networksjrex/thesis/naga-katta-talk.pdfNaga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster,

Controller Failover Time

0

0.2

0.4

0.6

0.8

1

40 60 80 100

CD

F

Failover Time (ms)

Failure Detection Role Req Proc Old Events

0ms 40ms 50ms 75ms

74