Extending SDN to the Data Plane Anirudh Sivaraman, Keith Winstein, - - PowerPoint PPT Presentation

extending sdn to the data plane
SMART_READER_LITE
LIVE PREVIEW

Extending SDN to the Data Plane Anirudh Sivaraman, Keith Winstein, - - PowerPoint PPT Presentation

Extending SDN to the Data Plane Anirudh Sivaraman, Keith Winstein, Suvinay Subramanian, Hari Balakrishnan M.I.T. http://web.mit.edu/anirudh/www/sdn-data-plane.html Switch Data Planes today Two key decisions on a per-packet basis:


slide-1
SLIDE 1

Extending SDN to the Data Plane

Anirudh Sivaraman, Keith Winstein, Suvinay Subramanian, Hari Balakrishnan

M.I.T. http://web.mit.edu/anirudh/www/sdn-data-plane.html

slide-2
SLIDE 2

Switch Data Planes today Two key decisions on a per-packet basis:

◮ Scheduling: Which packet to transmit next? ◮ Queue Management: How long can queues

grow? Which packet to drop?

slide-3
SLIDE 3

The long lineage of in-network algorithms

1980s

GPS WFQ VirtualClock

slide-4
SLIDE 4

The long lineage of in-network algorithms

RED BLUE

1980s 1990s

GPS WFQ DRR VirtualClock IntServ CSFQ DiffServ

slide-5
SLIDE 5

The long lineage of in-network algorithms

RED BLUE ECN CHOKe AVQ XCP VCP RCP

1980s 1990s 2000s

GPS WFQ DRR SRR VirtualClock IntServ CSFQ DiffServ RIO PI

slide-6
SLIDE 6

The long lineage of in-network algorithms

RED BLUE ECN CHOKe AVQ XCP VCP RCP DCTCP CoDel PDQ pFabric D²TCP

1980s 1990s 2000s 2010s

DeTail GPS WFQ DRR SRR VirtualClock IntServ CSFQ DiffServ FCP RIO PIE PI

slide-7
SLIDE 7

The long lineage of in-network algorithms

RED BLUE ECN CHOKe AVQ XCP VCP RCP DCTCP CoDel PDQ pFabric D²TCP

1980s 1990s 2000s 2010s

DeTail GPS WFQ DRR SRR VirtualClock IntServ CSFQ DiffServ FCP RIO PIE RC3 PI MCP

slide-8
SLIDE 8

The Data Plane is continuously evolving

◮ Each scheme wins in its own evaluation. ◮ Quest for a “silver bullet” in-network method.

slide-9
SLIDE 9

We disagree: There is no silver bullet!

◮ Different applications care about different

  • bjectives.

◮ Applications use different transport protocols. ◮ Networks are heterogeneous.

slide-10
SLIDE 10

Our work:

◮ Quantify non-universality of in-network methods. ◮ Extend SDN to the Data Plane to handle

in-network diversity.

slide-11
SLIDE 11

Quantifying “No Silver Bullet”: Network Configurations Configuration Description CoDel+FCFS One shared FCFS queue with CoDel CoDel+FQ Per-flow fair queueing with CoDel

  • n each queue (Nichols 2013)

Bufferbloat+FQ Per-flow fair queueing with deep buffers on each queue

slide-12
SLIDE 12

Quantifying“No Silver Bullet”: Workloads and Objectives Workload Description Objective Bulk Long-running bulk transfer flow

  • Max. throughput

Web Switched flow with ON/OFF periods

  • Min. 99.9 %ile flow

completion time Interactive Long-running interactive flow

  • Max. throughput

delay

slide-13
SLIDE 13

Quantifying “No Silver Bullet”

CoDel+FCFS CoDel+FQ Bufferbloat+FQ

slide-14
SLIDE 14

Quantifying “No Silver Bullet”

CoDel+FCFS CoDel+FQ Bufferbloat+FQ CoDel+FCFS CoDel+FQ Bufferbloat+FQ

slide-15
SLIDE 15

Quantifying “No Silver Bullet”

CoDel+FCFS CoDel+FQ Bufferbloat+FQ CoDel+FCFS CoDel+FQ Bufferbloat+FQ Experiment configuration: Workload: 1 Bulk flow + 1 Web Flow Network: LTE link with 150 ms min. RTT

slide-16
SLIDE 16

Quantifying “No Silver Bullet”

CoDel+FCFS CoDel+FQ Bufferbloat+FQ CoDel+FCFS CoDel+FQ Bufferbloat+FQ Experiment configuration: Workload: 1 Bulk flow + 1 Web Flow Network: LTE link with 150 ms min. RTT Web T ail FCT: 43 s Bulk Tpt: 3.9 Mbps Web T ail FCT: 43 s Bulk Tpt: 3.9 Mbps

slide-17
SLIDE 17

Quantifying “No Silver Bullet”

CoDel+FCFS CoDel+FQ Bufferbloat+FQ CoDel+FCFS CoDel+FQ Bufferbloat+FQ Experiment configuration: Workload: 1 Bulk flow + 1 Web Flow Network: LTE link with 150 ms min. RTT Web T ail FCT: 43 s Bulk Tpt: 3.9 Mbps Web T ail FCT: 43 s Bulk Tpt: 3.9 Mbps Web T ail FCT: 21 s Bulk Tpt: 11.2 Mbps Bulk Tpt: 11.2 Mbps Web T ail FCT: 21 s Bulk Tpt: 11.2 Mbps Bulk Tpt: 11.2 Mbps

slide-18
SLIDE 18

Quantifying “No Silver Bullet”

CoDel+FCFS CoDel+FQ Bufferbloat+FQ CoDel+FCFS CoDel+FQ Bufferbloat+FQ Experiment configuration: Workload: 1 Bulk flow + 1 Web Flow Network: LTE link with 150 ms min. RTT Web T ail FCT: 43 s Bulk Tpt: 3.9 Mbps Web T ail FCT: 43 s Bulk Tpt: 3.9 Mbps Web T ail FCT: 21 s Bulk Tpt: 11.2 Mbps Bulk Tpt: 11.2 Mbps Web T ail FCT: 21 s Bulk Tpt: 11.2 Mbps Bulk Tpt: 11.2 Mbps Web T ail FCT: 43 s Bulk Tpt: 3.9 Mbps Web T ail FCT: 43 s Bulk Tpt: 3.9 Mbps Web T ail FCT: 21 s Bulk Tpt: 11.2 Mbps Bulk Tpt: 11.2 Mbps Web T ail FCT: 21 s Bulk Tpt: 11.2 Mbps Bulk Tpt: 11.2 Mbps

slide-19
SLIDE 19

Quantifying “No Silver Bullet”

CoDel+FCFS CoDel+FQ Bufferbloat+FQ

Bulk + Web on LTE. Bufferbloat+FQ gives Web flow: 52% faster tail flow completion, Bulk flow: 186% more throughput

slide-20
SLIDE 20

Quantifying “No Silver Bullet”

CoDel+FCFS CoDel+FQ Bufferbloat+FQ

Bulk + Web on LTE. Bufferbloat+FQ gives Web flow: 52% faster tail flow completion, Bulk flow: 186% more throughput

Two Interactive on 15 Mbps link. Codel+FQ gives 700x more tpt/delay

slide-21
SLIDE 21

Quantifying “No Silver Bullet”

CoDel+FCFS CoDel+FQ Bufferbloat+FQ

Bulk + Web on LTE. Bufferbloat+FQ gives Web flow: 52% faster tail flow completion, Bulk flow: 186% more throughput

Two Interactive on 15 Mbps link. Codel+FQ gives 700x more tpt/delay

B u l k + W e b , 1 5 M b p s l i n k . C

  • d

e l + F Q g i v e s W e b f l

  • w

1 6 % f a s t e r t a i l f l

  • w

c

  • m

p l e t i

  • n

w i t h s a m e B u l k t h r

  • u

g h p u t

slide-22
SLIDE 22

Quantifying “No Silver Bullet”

CoDel+FCFS CoDel+FQ Bufferbloat+FQ

Bulk + Web on LTE. Bufferbloat+FQ gives Web flow: 52% faster tail flow completion, Bulk flow: 186% more throughput

Two Interactive on 15 Mbps link. Codel+FQ gives 700x more tpt/delay

B u l k + W e b , 1 5 M b p s l i n k . C

  • d

e l + F Q g i v e s W e b f l

  • w

1 6 % f a s t e r t a i l f l

  • w

c

  • m

p l e t i

  • n

w i t h s a m e B u l k t h r

  • u

g h p u t Two Bulk on LTE. Codel+FCFS gives 5% more throughput

slide-23
SLIDE 23

Quantifying “No Silver Bullet”

CoDel+FCFS CoDel+FQ Bufferbloat+FQ

Bulk + Web on LTE. Bufferbloat+FQ gives Web flow: 52% faster tail flow completion, Bulk flow: 186% more throughput

Two Interactive on 15 Mbps link. Codel+FQ gives 700x more tpt/delay

B u l k + W e b , 1 5 M b p s l i n k . C

  • d

e l + F Q g i v e s W e b f l

  • w

1 6 % f a s t e r t a i l f l

  • w

c

  • m

p l e t i

  • n

w i t h s a m e B u l k t h r

  • u

g h p u t Two Bulk on LTE. Codel+FCFS gives 5% more throughput One Interactive on LTE. Codel+FCFS gives 200x more tpt/delay

slide-24
SLIDE 24

Quantifying “No Silver Bullet”

CoDel+FCFS CoDel+FQ Bufferbloat+FQ

Bulk + Web on LTE. Bufferbloat+FQ gives Web flow: 52% faster tail flow completion, Bulk flow: 186% more throughput

Two Interactive on 15 Mbps link. Codel+FQ gives 700x more tpt/delay

B u l k + W e b , 1 5 M b p s l i n k . C

  • d

e l + F Q g i v e s W e b f l

  • w

1 6 % f a s t e r t a i l f l

  • w

c

  • m

p l e t i

  • n

w i t h s a m e B u l k t h r

  • u

g h p u t Two Bulk on LTE. Codel+FCFS gives 5% more throughput One Interactive on LTE. Codel+FCFS gives 200x more tpt/delay One Bulk on LTE. Bufferbloat+FQ gives 174% more throughput

slide-25
SLIDE 25

Why is no single data plane configuration the best?

◮ Bufferbloat gives the best throughput on

variable-rate links.

◮ FCFS is preferable to Fair Queuing with

homogeneous objectives.

◮ Fair Queuing is preferable with heterogeneous

  • bjectives.
slide-26
SLIDE 26

So what should the network designer do?

◮ Don’t strive for the best in-network behaviour. ◮ Instead, architect for evolvability. ◮ Conceptually, extend SDN to include the data

plane as well.

slide-27
SLIDE 27

Flexibility without sacrificing performance

◮ Provide interfaces only to the head and tail of

queues

◮ Operators specify only

queue-management/scheduling logic

◮ No access to packet payloads.

slide-28
SLIDE 28

Building such a data plane in four parts

◮ Hardware gadgets

◮ Random number generators (RED, BLUE) ◮ Binary tree of comparators (pFabric, SRPT) ◮ Look-up tables for function approximation (CoDel, RED)

slide-29
SLIDE 29

Building such a data plane in four parts

◮ Hardware gadgets

◮ Random number generators (RED, BLUE) ◮ Binary tree of comparators (pFabric, SRPT) ◮ Look-up tables for function approximation (CoDel, RED)

◮ I/O interfaces

◮ Drop/mark head/tail of queue ◮ Interrupts for enqueue/dequeue ◮ Rewrite packet fields

slide-30
SLIDE 30

Building such a data plane in four parts

◮ Hardware gadgets

◮ Random number generators (RED, BLUE) ◮ Binary tree of comparators (pFabric, SRPT) ◮ Look-up tables for function approximation (CoDel, RED)

◮ I/O interfaces

◮ Drop/mark head/tail of queue ◮ Interrupts for enqueue/dequeue ◮ Rewrite packet fields

◮ State maintenance

◮ Per-flow (WFQ, DRR) ◮ Per-dst address (PF)

slide-31
SLIDE 31

Building such a data plane in four parts

◮ Hardware gadgets

◮ Random number generators (RED, BLUE) ◮ Binary tree of comparators (pFabric, SRPT) ◮ Look-up tables for function approximation (CoDel, RED)

◮ I/O interfaces

◮ Drop/mark head/tail of queue ◮ Interrupts for enqueue/dequeue ◮ Rewrite packet fields

◮ State maintenance

◮ Per-flow (WFQ, DRR) ◮ Per-dst address (PF)

◮ A domain-specific instruction set

◮ Expresses control flow ◮ Implements new functions unavailable in hardware

slide-32
SLIDE 32

Feasibility study: CoDel

Packet with tim estam p (R

  • uter stam

ps all incom ing packets with tim estam p) Packet with tim estam p D equeue

Packet Queue

S ize Tim estam p QueueEm pty D rop First above tim e

Tim e C

  • unter

Now C

  • unt

Nex t Tim e To D rop LinkR eady D ropFront S ta te V a ria b le Input/Output interfaces

C OD EL

Packet

codel_q_t::dequeue

C heck

codel_q_t::dodequeue

c

  • u

n t d rop p in g Control-Flow

codel_q_t::control_law

d rop _n e x t LUT SQRT

slide-33
SLIDE 33

Synthesis numbers on the Xilinx Kintex-7 Resource Usage Fraction Slice logic 1,256 1% Slice logic dist. 1,975 2% IO/GTX ports 27 2% DSP slices 0% Maximum speed 12.9 million pkts/s ~10 Gbps

◮ Small fraction of the FPGA’s resources. ◮ Can be improved by pipelining or parallelizing.

slide-34
SLIDE 34

Conclusion

◮ No silver bullet to in-network resource allocation. ◮ Algorithms will evolve: Data Plane should help ◮ Reproduce our results:

http://web.mit.edu/anirudh/www/sdn-data- plane.html