ndn: an orchestrated microservice architecture for...

21
μNDN: an Orchestrated Microservice Architecture for Named Data Networking Xavier MARCHAL, Thibault CHOLEZ, Olivier FESTOR LORIA, UMR 7503 (University of Lorraine, CNRS, INRIA) Vandoeuvre-les-Nancy, F-54506, France September 22, 2018

Upload: others

Post on 09-Jun-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: NDN: an Orchestrated Microservice Architecture for …conferences.sigcomm.org/acm-icn/2018/slides/slides...NDN: an Orchestrated Microservice Architecture for Named Data Networking

µNDN: an Orchestrated MicroserviceArchitecture for Named Data Networking

Xavier MARCHAL, Thibault CHOLEZ, Olivier FESTOR

LORIA, UMR 7503 (University of Lorraine, CNRS, INRIA)Vandoeuvre-les-Nancy, F-54506, France

September 22, 2018

Page 2: NDN: an Orchestrated Microservice Architecture for …conferences.sigcomm.org/acm-icn/2018/slides/slides...NDN: an Orchestrated Microservice Architecture for Named Data Networking

Introduction Microservices Manager Experiments Conclusion

Outline

1 Introduction

2 Microservices

3 Manager

4 Experiments

5 Conclusion

September 22, 2018 µNDN: an Orchestrated Microservice Architecture for Named Data Networking 2 / 21

Page 3: NDN: an Orchestrated Microservice Architecture for …conferences.sigcomm.org/acm-icn/2018/slides/slides...NDN: an Orchestrated Microservice Architecture for Named Data Networking

Introduction Microservices Manager Experiments Conclusion

Outline

1 Introduction

2 Microservices

3 Manager

4 Experiments

5 Conclusion

September 22, 2018 µNDN: an Orchestrated Microservice Architecture for Named Data Networking 3 / 21

Page 4: NDN: an Orchestrated Microservice Architecture for …conferences.sigcomm.org/acm-icn/2018/slides/slides...NDN: an Orchestrated Microservice Architecture for Named Data Networking

Introduction Microservices Manager Experiments Conclusion

Context

Network Function Virtualization (NFV):

Common hardware, hosting various software components

Reduce operational and capital expenditures

Improve reliability and flexibility

Microservices architecture:

Split a monolithic software into multiple and simple services

Easier development and improvement of each service

Better horizontal scalability

Tend to use more resources individually

Need a proper management plane

Additional deployment complexity

September 22, 2018 µNDN: an Orchestrated Microservice Architecture for Named Data Networking 4 / 21

Page 5: NDN: an Orchestrated Microservice Architecture for …conferences.sigcomm.org/acm-icn/2018/slides/slides...NDN: an Orchestrated Microservice Architecture for Named Data Networking

Introduction Microservices Manager Experiments Conclusion

Motivation

Expected benefits from NVF and microservices for ICN:

Incremental deployment of NDN alongside existing protocols

More efficient NDN topologies

Better performance

Deploy dynamically on-path functions

Challenges:

Decomposition of a monolithic NDN router

Linkage and packet processing

Management of the different services

September 22, 2018 µNDN: an Orchestrated Microservice Architecture for Named Data Networking 5 / 21

Page 6: NDN: an Orchestrated Microservice Architecture for …conferences.sigcomm.org/acm-icn/2018/slides/slides...NDN: an Orchestrated Microservice Architecture for Named Data Networking

Introduction Microservices Manager Experiments Conclusion

Outline

1 Introduction

2 Microservices

3 Manager

4 Experiments

5 Conclusion

September 22, 2018 µNDN: an Orchestrated Microservice Architecture for Named Data Networking 6 / 21

Page 7: NDN: an Orchestrated Microservice Architecture for …conferences.sigcomm.org/acm-icn/2018/slides/slides...NDN: an Orchestrated Microservice Architecture for Named Data Networking

Introduction Microservices Manager Experiments Conclusion

The microservices

Five are extracted from NDN router plus two others for securitypurpose

Can be split in two categories

Core routing functions:

Name Router (NR): ' FIB

Backward Router (BR): ' PIT

Packet Dispatcher (PD)

Support functions (on-path services):

Content Store (CS)

Strategy Forwarder (SF)

Signature Verifier (SV)

Name Filter (NF)

September 22, 2018 µNDN: an Orchestrated Microservice Architecture for Named Data Networking 7 / 21

Page 8: NDN: an Orchestrated Microservice Architecture for …conferences.sigcomm.org/acm-icn/2018/slides/slides...NDN: an Orchestrated Microservice Architecture for Named Data Networking

Introduction Microservices Manager Experiments Conclusion

The microservices

Name Function Oriented Ingress/Egress cardinalityName Router Route Interest packets Yes 1/N

Backward Router Route back Data packets Yes N/1

Packet Dispatcher Split Interest/Data traffic No N/N

Content Store Cache Data packets No 1/1

Strategy Forwarder Forward Interest packets No 1/1 or N

Signature Verifier Verify packets’ signature No 1/1

Name Filter Filter on packets’ name No 1/1

”Oriented” refers as if a module has specialized Faces to handleconsumer and producer trafficsEffective cardinality:

”1” means a modules should be connected to a single othermodule but can still broadcast traffic if more than one”N” means a modules can accept any number of othermodules and is able to identify which send and/or to whichforward the packets

September 22, 2018 µNDN: an Orchestrated Microservice Architecture for Named Data Networking 8 / 21

Page 9: NDN: an Orchestrated Microservice Architecture for …conferences.sigcomm.org/acm-icn/2018/slides/slides...NDN: an Orchestrated Microservice Architecture for Named Data Networking

Introduction Microservices Manager Experiments Conclusion

Outline

1 Introduction

2 Microservices

3 Manager

4 Experiments

5 Conclusion

September 22, 2018 µNDN: an Orchestrated Microservice Architecture for Named Data Networking 9 / 21

Page 10: NDN: an Orchestrated Microservice Architecture for …conferences.sigcomm.org/acm-icn/2018/slides/slides...NDN: an Orchestrated Microservice Architecture for Named Data Networking

Introduction Microservices Manager Experiments Conclusion

The manager

Needed for efficient microservice architecture

Operations to implement for a proper network management:

Deploy on demand or automatically the microservices

Dynamically adapt the topology

Update the microservices’ running configuration

Scale up the bottleneck services accordingly

Microservices must implement a management interface

Get command from manager

Send request to the manager

Periodically report statistics

September 22, 2018 µNDN: an Orchestrated Microservice Architecture for Named Data Networking 10 / 21

Page 11: NDN: an Orchestrated Microservice Architecture for …conferences.sigcomm.org/acm-icn/2018/slides/slides...NDN: an Orchestrated Microservice Architecture for Named Data Networking

Introduction Microservices Manager Experiments Conclusion

The manager

Basic metrics from microservices used to dynamically improve QoS

Identify attacks like content poisoning attack

Identify bottleneck and useless components

Name ValuesName Router Route statistics

Backward RouterUnsolicited Data packetsRetransmitted Interest packets

Packet Dispatcher User traffic statistics

Content Store Hit/Miss count

Signature Verifier Name of failed packets

Name Filter Drop count

Manager can also get resource usages from the orchestrator

September 22, 2018 µNDN: an Orchestrated Microservice Architecture for Named Data Networking 11 / 21

Page 12: NDN: an Orchestrated Microservice Architecture for …conferences.sigcomm.org/acm-icn/2018/slides/slides...NDN: an Orchestrated Microservice Architecture for Named Data Networking

Introduction Microservices Manager Experiments Conclusion

The manager

NLSR is not mandatory inside the managed network

The manager knows about all the topology

Can trigger routine(s) and push new configurations like a SDNcontroller

External routing protocols can be implemented as microservice

Placed at the edge of the managed network

Offer protocol agnostic communication

September 22, 2018 µNDN: an Orchestrated Microservice Architecture for Named Data Networking 12 / 21

Page 13: NDN: an Orchestrated Microservice Architecture for …conferences.sigcomm.org/acm-icn/2018/slides/slides...NDN: an Orchestrated Microservice Architecture for Named Data Networking

Introduction Microservices Manager Experiments Conclusion

Scaling procedure

Support functions scaling

NR

BR

NR

Scaling SV

SF

SV SVSV

CS

CS

Like a box with same properties

BR may be replaced by a simplerfunction like another SF forstateless functions

Possible Backward Router scaling

BR

NR

BR

NR

Scaling BR

SF SF

CS CS

CS CS

BR

Adding an upper BR will only movethe bottleneck (in most cases)

Force the next hop to broadcasttraffic

September 22, 2018 µNDN: an Orchestrated Microservice Architecture for Named Data Networking 13 / 21

Page 14: NDN: an Orchestrated Microservice Architecture for …conferences.sigcomm.org/acm-icn/2018/slides/slides...NDN: an Orchestrated Microservice Architecture for Named Data Networking

Introduction Microservices Manager Experiments Conclusion

Outline

1 Introduction

2 Microservices

3 Manager

4 Experiments

5 Conclusion

September 22, 2018 µNDN: an Orchestrated Microservice Architecture for Named Data Networking 14 / 21

Page 15: NDN: an Orchestrated Microservice Architecture for …conferences.sigcomm.org/acm-icn/2018/slides/slides...NDN: an Orchestrated Microservice Architecture for Named Data Networking

Introduction Microservices Manager Experiments Conclusion

Environment

Plateform:

2 Intel Xeons 8 cores 2.4 GHz (E5 2630v3)

Docker CE 18.03

ndn-cxx v0.6.1

Microservices are written in C++ and are single-threaded1

NDN packets are carried over TCP/IP in the experiments

NDN Data packets always carry 8192 octets

Usage of a Docker bridge network when the microservices are inContainers

Producer(s) and consumer(s) are always executed from host

1Source code: https://github.com/Kanemochi/NDN-microservicesSeptember 22, 2018 µNDN: an Orchestrated Microservice Architecture for Named Data Networking 15 / 21

Page 16: NDN: an Orchestrated Microservice Architecture for …conferences.sigcomm.org/acm-icn/2018/slides/slides...NDN: an Orchestrated Microservice Architecture for Named Data Networking

Introduction Microservices Manager Experiments Conclusion

Performance

ModuleThroughput (Mbps)

Bare-Metal Container

Name Router 1,820 1,595

Backward Router 1,304 1,090

Packet Dispatcher 1,761 1,635

Content Store (freshness = 0) 1,760 1,538

Content Store (freshness > 0) 1,031 979

Content Store (from cache) 2,447 2,061

Strategy Forwarder 1,756 1,540

Signature Verifier (RSA2048) 515 401

Signature Verifier (ECDSA256) 122 101

Name Filter 1,804 1,593

Signature verification is a heavy task, throughput can be”improved” with per registered prefix statistical verification

CS can be slower than BR in some scenarios

Around 13% throughput penalty from Docker virtualization

September 22, 2018 µNDN: an Orchestrated Microservice Architecture for Named Data Networking 16 / 21

Page 17: NDN: an Orchestrated Microservice Architecture for …conferences.sigcomm.org/acm-icn/2018/slides/slides...NDN: an Orchestrated Microservice Architecture for Named Data Networking

Introduction Microservices Manager Experiments Conclusion

µNDN coupling ”equivalent” to NFD

PD

NR

CS

BR

External routes

Interests’ pathDatas’ pathBoth

MicroservicesNFD

PD CS BR NR

%CPU core usage 100 59 89 64 100

Throughput (in Mbps) 776 527

Latency (in ms) 2,63 3,88

If Packet Dispatcher is not a bottleneck → 969 Mbps

September 22, 2018 µNDN: an Orchestrated Microservice Architecture for Named Data Networking 17 / 21

Page 18: NDN: an Orchestrated Microservice Architecture for …conferences.sigcomm.org/acm-icn/2018/slides/slides...NDN: an Orchestrated Microservice Architecture for Named Data Networking

Introduction Microservices Manager Experiments Conclusion

Scaling experiment

BR is artificially limited to 67%

Throughput increases from 625 up to 980 Mbps

The scaling rule is not optimal

Only get performance of one BR with no limit, huge loadincrease when broadcasting traffic to BR instances

September 22, 2018 µNDN: an Orchestrated Microservice Architecture for Named Data Networking 18 / 21

Page 19: NDN: an Orchestrated Microservice Architecture for …conferences.sigcomm.org/acm-icn/2018/slides/slides...NDN: an Orchestrated Microservice Architecture for Named Data Networking

Introduction Microservices Manager Experiments Conclusion

Security experiment

NR

CS

Inter

est

Data

Good Consumer

Bad Consumer

Good Provider

Bad Provider

CS

Interest

Data

Inter

est

Data

Interest

Data

Inte

rest

InterestData

0

10

20

30

40

50

60

70

80

90

100

0

10

20

30

40

50

60

70

80

90

100

Cache hit CS1 NR1 CS1.SV1 (x10)

Cac

he h

it (in

per

cent

)

CP

U u

sage

(in

per

cent

)

Content Poisoning Attack

If cache hit decreases too much in a short period of time, themanager will insert a signature verifier between left CS and NR

The manager can incrementally move SV toward the source(s)of bad Data packets

September 22, 2018 µNDN: an Orchestrated Microservice Architecture for Named Data Networking 19 / 21

Page 20: NDN: an Orchestrated Microservice Architecture for …conferences.sigcomm.org/acm-icn/2018/slides/slides...NDN: an Orchestrated Microservice Architecture for Named Data Networking

Introduction Microservices Manager Experiments Conclusion

Outline

1 Introduction

2 Microservices

3 Manager

4 Experiments

5 Conclusion

September 22, 2018 µNDN: an Orchestrated Microservice Architecture for Named Data Networking 20 / 21

Page 21: NDN: an Orchestrated Microservice Architecture for …conferences.sigcomm.org/acm-icn/2018/slides/slides...NDN: an Orchestrated Microservice Architecture for Named Data Networking

Introduction Microservices Manager Experiments Conclusion

Conclusion

µNDN successfully achieved our goal to enhance NDN with NFVproperties thanks to orchestrated microservices.µNDN is implemented and running, it showed:

To offer more possibilities when designing the network

Its ability to dynamically instantiate and chain NDN functionsfor security and performance, based on predefined rules

Better throughput than a monolithic forwarder

Main limitation: splitting FIB and PIT resulted in highercomplexity (oriented functions, asymmetric 1/N vs N/1 cardinality)Future works:

Pursue the development (mainly the management plane)

Explore further the possibilities offered by adding newfunctionalities as microservices

September 22, 2018 µNDN: an Orchestrated Microservice Architecture for Named Data Networking 21 / 21