software-defined data plane enhancing sdn and...

30
Software-Defined Data Plane Enhancing SDN and NFV Aki Nakao The University of Tokyo GSC 18 2014/7/22 1

Upload: others

Post on 13-Mar-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

Software-Defined Data Plane Enhancing SDN and NFV

Aki Nakao The University of Tokyo

GSC 18 2014/7/22

1

Page 2: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

2

Control-Plane Elements

Network Applications

Data-Plane Elements

Applications (NFV)

Control Plane

Data Plane

SDN Architecture

North Bound Interface (NBI)

South Bound Interface (SBI)

Page 3: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

3

Control-Plane Elements

Network Applications

Data-Plane Elements

Applications (NFV)

Control Plane

Data Plane

Application Driven Thinking

Current SDN (bottom up)

Future SDN should be (top down)

Page 4: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

4

Application-Driven Thinking Premise: Programmable networking has been enabled by SDN and NFV App-Driven Thinking: •  Think of “(killer) applications” first and then design network functions and interfaces APIs for SDN and NFV

•  Not just OPEX/CAPEX reduction but create new values via SDN and NFV

Page 5: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

Lets start with an example application!

“Next-Gen MVNO”

5

Page 6: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

An  ISP  needs  app  specific  traffic  control

Standard Mode (flat rate)

High Speed Mode (pay as you go)

bandwidth

150kbps

Bandwidth Control According to Apps !

6

MVNO Customers Need More Flexible Subscription

App-specific traffic control enables more fined grained subscription plans that can get an MVNO out of the “low cost” competition

Page 7: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

Application Driven SDN

•  The current SDN is targeted at network operators (researchers) and not at application developers

•  Flow abstraction in Southbound Interface is for operators <Flow Pattern> <Action> <Stat>

•  App/Device abstraction is useful and intuitive for application developers

<App/Device> <Action><Stat>

Solution: Application-Driven Software Defined Networking 7

There is a gap between application developers and SDN’s programming interface

Page 8: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

GENI  Engineering  Conference  20  Demo:    App-­‐Driven  SDN  QoS  

Smartphone   FLARE  (Data  Plane  Programmable)  

Chrome  :    Pass  Thru  Firefox:          Block  YouTube:  Rate  Limit  

 App    Packet  

8  

Page 9: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

Smartphones

Packet  Marking  

The  Internet  FLARE  Network  (SDN/NFV  Enabled)  

Header   Payload  

Add app/device information to packet trailers

Trailer  

App/Device  InformaTon  

Smartphones (wearables)

Header   Payload  

Parse and remove “trailers” and map between flows and apps

FLARE(Deeply Programmable Node)

Header   Payload  

Traffic Engineering based on headers

SDN Controller

NTT Docomo

Our Proposal

SDN  Controller  

9  

Gateway  

MVNO Backhaul

Packet  

Parse  and  Remove  Trailers  

Smartphones  aWach  app/device  informaTon  to  packets  FLARE  detects  app/device  informaTon  and  creates  mapping  between  flows  and  apps/devices  

Page 10: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

                 Freq

uency  (Accesses/sec)  

10  

Demo

Page 11: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

11

Demo

Page 12: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

12

We won the best demo award! GEC20@UC Davis

Page 13: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

13

Benefits •  Application Specific Traffic Engineering for MVNO •  Application Name Based •  Application Process Based(Fore/Background) •  Device Type Based •  Device State Based (Context / Location Aware) •  Parental Control •  Not by apps on devices, but by networking •  Additional Value-Add services for specific applications •  Differentiation for competing apps (e.g., Chrome vs. Firefox)

Page 14: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

14

Contributions

•  Insert application information in trailers of packets (e.g., TCP SYN) •  Extensible to other protocols than TCP •  Similar to “Google Fast TCP Open” but for different purpose •  More bits usable than TCP/IP options •  Determine applications with 100% Accuracy •  Cooperation between end-systems and programmable nodes •  Extensible to supervised learning without app •  Machine learning using sampled data with app

Page 15: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

Software Defined Data Plane

15

Control-Plane Elements

Network Applications

Programmable Data-Plane Elements

Applications

Control Plane

Data Plane

North-Bound Interface (NBI)

E.g. OpenFlow Switches

Packet Process

Packet Process

Publish API

Page 16: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

Accelerate SDN Standardization

16

Network Applications Data-Plane

Elements

Southbound Interface

Application Driven Thinking

Operation and Evaluation Feedback -> Accelerate Standardization

Page 17: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

Example

17

Page 18: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

Sliceable Software Defined Data Planes

18

Control-Plane Elements

Network Applications

Programmable Data-Plane Elements

Applications

Control Plane

Data Plane

North-Bound Interface (NBI)

E.g. OpenFlow Switches

Packet Process

Packet Process

Publish API

Programmable Data-Plane Elements Programmable Data-Plane Elements Programmable Data-Plane Elements

Page 19: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

19

Control-Plane Elements

Network Applications

Programmable Data-Plane Elements

Applications

Control Plane

Data Plane

North-Bound Interface (NBI)

E.g. OpenFlow Switches

Packet Process

Packet Process

Programmable Data-Plane Elements Programmable Data-Plane Elements Programmable Data-Plane Elements

SDN for Network Control NFV for data processing

Programmable Data-Plane Elements Programmable Data-Plane Elements Programmable Data-Plane Elements Programmable Data-Plane Elements

SDN data plane and NFV could be unified

Control-Plane Elements

Orchestrator

Page 20: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

(Unifying SDN Software Defined Data Plane and NFV)

20

Physical Resources: CPU + NPU

CPU NPU(s) Data Bus

NIF

White Box

Intel x86 Tilera PCIe Gen3

FLARE

Page 21: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

FLARE

21

Physical Resources: CPU + NPU (+ GPU)

CPU NPU(s) Data Bus

NIF

GPU Data Bus

Intel Phi Intel x86 Tilera PCIe Gen3

PCIe Gen3

Page 22: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

22

GPU CPU NPU(s) Data Bus

Data Bus

NIF

Physical Resources

Slices (Virtual Resource Containers)

Virtualization ( Resource Container ) -> Slices of Resources

Sliceable !

FLARE

Page 23: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

23

GPU CPU NPU(s) Data Bus

Data Bus

NIF

Physical Resources

Slices (Virtual Resource Containers)

FLARE

Page 24: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

24

GPU CPU NPU(s) Data Bus

Data Bus

NIF

Physical Resources

Slices (Virtual Resource Containers)

SDN Sliceable Programmable D-plane

NFV Sliceable Programmable D-plane

SDN Programmable Control Plane

or

FLARE

Page 25: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

FLARE Node Implementation

36-72 cores (upto 100-200 cores in future)

(board designed by NakaoLab)

x86 Processor

Many Core Processor

The University of Tokyo Confidential

Hierarchical Resource Management • General Purpose Processor(s) • Network Processor(s) • ...and more types of processors

25

Page 26: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

FLARE-EX Prototype (32x10Gbps)

26

Page 27: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

27

Toy-Block Networking

Page 28: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

ToyBlock Networking GUI

Page 29: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

Standardization Possibility

29

•  Deep (Data Plane) Programmability •  Slicing (Virtualization) •  Evolvable APIs •  Viewed as extension to SDN •  Also viewed as extension to NFV •  Rethinking architecture of SDN/NFV for enabling “Deep programmability”

•  Application Driven Thinking •  Top-Down approach is necessity

•  Toy Block Networking •  Accommodate a wide range of programmers •  Marketing of reusable network function “Toy Blocks”

Page 30: Software-Defined Data Plane Enhancing SDN and …docbox.etsi.org/Workshop/GSC18/GSC(14)18_034_Software...14! Contributions • Insert application information in trailers of packets

“Software Eats Everything”

“Application Driven Thinking empowered with

Software Defined Data Plane will extend SDN/NFV further and accelerate standardization!”

30

Conclusion