a path to the future internet: networks controlled by ... · pdf fileopenflow pipeline...

79
Computer Networks Group Universität Paderborn A path to the Future Internet: Networks controlled by software and softwarized networks Holger Karl [email protected] https://sfb901.uni-paderborn.de http://sonata-nfv.eu

Upload: phamkhanh

Post on 29-Mar-2018

217 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Computer Networks GroupUniversität Paderborn

A path to the Future Internet: Networks controlled by software and softwarized networks

Holger Karl [email protected]

https://sfb901.uni-paderborn.de http://sonata-nfv.eu

Page 2: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Content

• Motivation for NFV, SDN • SDN: Some basics • NFV: Some basics • NFV meets DCC and microservices• NFV reference architecture• Templates and applications • NFV: Algorithmic issues • NFV: Testing services on your laptop

2

Page 3: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

NFV & SDN

• What is Network Function Virtualization?

• What is Software-Defined Networking?

3

Page 4: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

NFV: Ingredients • Functions

• Physical • Virtual • Typically, with management interface • In an executable form

• Services • Consist of functions, traversed in certain order • Service chain, forwarding graph, … • Typically, with management interface

• Infrastructure • Virtualized by a hypervisor

• Orchestration

4

Virtual Network Function

Virtual Deployment Unit

ManO Framework

Page 5: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

NFV: A definition attempt

• The ability to run functions inside a network

• Typical functions process data flows

• The idea to restructure code running inside a network • From monolithic blobs to individual components • Flexibly composed into services

5

Page 6: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

SDN: Ingredients

• Switches • With flow tables

• Flows

• Control

6

Page 7: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

SDN: A definition attempt

• Making flow tables controllable from the outside via a standardized API

• Concentrating control• From individual switches to few / a single controller

• Logically centralized; implementation might be distributed

• A programming model • Or: a family of programming models, imposed by the particular

controller framework

7

Page 8: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

SDN is not ...

• Revolutionary: MPLS • OpenFlow• Central control • A guaranteed market success • Limited to specific networks (e.g., data centres, cloud

networks) • White-box switching

• White-box switch: Hardware without a default operating system

8

Page 9: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Why?

• Why NFV? Why SDN?

• Business models?

9

Page 10: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Content

• Motivation for NFV, SDN • SDN: Some basics • NFV: Some basics • NFV meets DCC and microservices• NFV reference architecture• Templates and applications • NFV: Algorithmic issues • NFV: Testing services on your laptop

10

Slides mostly by N. McKeown; Stallings

Page 11: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

New function!

Operators, users, 3rd party developers, researchers, …

Step 1: Separate intelligence from datapath

Page 12: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

From Foundations of Modern Networking: SDN, NFV, QoE, IoT, and Cloud by William Stallings (0134175395) Copyright © 2016 Pearson Education, Inc. All rights reserved.

FIGURE 3.2 Control and Data Planes

Traditional vs. SDN networking

Page 13: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Step 2: Cache decisions in minimal flow-based datapath“If header = x, send to port 4”

FlowTable

“If header = ?, send to me”“If header = y, overwrite header with z, send to ports 5,6”

Page 14: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Types of action

§ Allow/deny flow§ Route & re-route flow§ Isolate flow§ Make flow private§ Remove flow

What is a flow?

§ Application flow§ All http§ Jim’s traffic§ All packets to Canada§ …

Page 15: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Packet-switching substrate

PayloadEthernetDA, SA, etc

IPDA, SA, etc

TCPDP, SP, etc

Collection of bits to plumb flows (of different granularities)

between end points

Page 16: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Properties of a flow-based substrate

We need flexible definitions of a flowUnicast, multicast, waypoints, load-balancingDifferent aggregations

We need direct control over flowsFlow as an entity we program: To route, to make private, to move, …

Exploit the benefits of packet switchingIt works and is universally deployedIts efficient (when kept simple)

Page 17: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Substrate: “Flowspace”

PayloadEthernetDA, SA, etc

IPDA, SA, etc

TCPDP, SP, etc

Collection of bits to plumb flows (of different granularities)

between end points

PayloadHeaderUser-defined flowspace

Page 18: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Flowspace: Simple example

IP SA

IP DA

Single flow All flows from A

A

All flows between two

subnets

Page 19: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Flowspace: Generalization

Field 2

Field 1

Single flowSet of flows

Field n

Page 20: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

From Foundations of Modern Networking: SDN, NFV, QoE, IoT, and Cloud by William Stallings (0134175395) Copyright © 2016 Pearson Education, Inc. All rights reserved.

FIGURE 3.3 Software-Defined Architecture

And the result: The SDN architecture

Page 21: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

TheSDNStack

ControllerNOX

SlicingSoftwareFlowVisor

FlowVisorConsole

21

ApplicationsLAVIENVI(GUI) …n-Casting

NetFPGASoftwareRef.Switch

BroadcomRef.Switch

OpenWRT PCEngineWiFi AP

CommercialSwitches

OpenFlowSwitches

Monitoring/debuggingtoolsoflopsoftrace openseer

OpenvSwitch

HP,NEC,Pronto,Juniper..andmany

more

Beacon Trema Maestro

From [2]21

Page 22: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

OpenFlow pipeline processing

• Packets arriving at switch travers through a sequence of ingress and egress flow tables • Simplest case: only a single ingress table

• Processing always starts at table 0• Later pipeline stages can be skipped depending on packet

22

OF 1.5.1 specification

Optional

Page 23: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Actions: Summary

23

Page 24: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Content

• Motivation for NFV, SDN • SDN: Some basics • NFV: Some basics • NFV meets DCC and microservices• NFV reference architecture• Templates and applications • NFV: Algorithmic issues • NFV: Testing services on your laptop

24

Page 25: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Look at many functions: services

• Isolated network functions the exception • Rather: data flows via several network functions• Simplest case: a chain

• E.g.: A firewall, then a DPI, then a CDN • More sophisticated: arbitrary acyclic graph

• Network function forwarding graph

25

Page 26: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Placement

• Given a forwarding graph: On which actual nodes to execute which function?• Dealing with many graphs? Reuse functions? ...?

?

?

26

Page 27: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Deployment

• Suppose placement is solved• How to instantiate VMs, set up paths?

• Software-Defined Networking!

27

Page 28: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Scaling

• Suppose monitoring tells us that KPIs not met• Throughput low, latency high, ...

• Scale: Add virtual network functions, re-route, ...

28

Page 29: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Content

• Motivation for NFV, SDN • SDN: Some basics • NFV: Some basics • NFV meets DCC and microservices• NFV reference architecture• Templates and applications • NFV: Algorithmic issues • NFV: Testing services on your laptop

29

Page 30: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

So far: Network functions

• Network functions: Working on a flow of packets

• Other functions? • Examples? • Deployment?

30

Page 31: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Broadening the scope: Distributing data centers

• Common rationale: Economy of scale• Build huge data centers to safe money• But results in only a few centers

• Consequence: data centers far away from users• Fine for many applications• Critical for some: interactive, gaming, content distribution,

streaming, ...

• Have some local functionality close to users?• Smaller centers, widely distributed• More expensive, more suitable?

31

Page 32: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Distributed Cloud Computing

• DCC pioneered in late 2000s, under different names • Distributed Cloud Computing• Carrier cloud • In-network cloud • Nano data centers• Mobile edge computing • Fog & mist computing ….

• Many commonalities with NFV • Different emphasis: end-user applications vs. network-oriented

features • Convergence? Open question …

32

Page 33: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Expectations for services?

33

Scalability

Dependable

Cost-efficient

Maintainable

?

?

?

?

Page 34: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Common pattern: Service out of services, loosely coupled

• Construct a service out of smaller services• Independently runnable • Focused on a single functionality

• Loosely coupled, well defined, simple interfaces

• Microservices• Recursive pattern: Chop up services into smaller services

• E.g.: data analysis

34

Page 35: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Scalable microservices: Example

• Simple example: Service consists of three microservices, in a linear chain

• Each microservice: stateless, can process each request in isolation

• Computation per request on a standard machine: • MS1, MS3: 10 milliseconds • MS2: 100 milliseconds • Maximum throughput: 10 requests/second

MS1 MS2 MS3

Bottleneck!

35

Page 36: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Scalable microservices: Dealing with bottlenecks

• Options for MS2? • Buy a faster machine – only helps up to a point

• “Scaling up” • Run multiple instances of MS2

• “Scaling out”

MS1 MS2 MS3

MS2

MS2

??

How to partition requests?

How to unify requests?

36

Page 37: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Microservices: Challenges

• When to run how many instances of which service doing which work? • Buzzword: Stateless, autoscaling, load balancing

• How to deal with crashing services? • Buzzword: Automatic restart

• How to organize dependable, efficient message exchange between individual services? • Buzzword: Message queueing

• Stateful services?• Buzzword: Database

37

Page 38: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Same, same?

• Differences and commonalities? • NFV vs. DCC? • Microservice as pattern common to both?

• Is there a difference between “network services” and “IT services”? • An inherent one? • One due to current architectures?

38

Page 39: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Hard-core VNF interpretation

• VNFs are transparent on an IP level • Transparent for source and destination • Should not modify Layer 3 addresses • Implies: only use Layer 2 interfaces • Cannot use L3 forwarding

• Why? Really? • Need to move traffic towards VNFs/put VNFs in the path

• Why? Consequences? • Eases reuse of existing code bases for functions • Makes shunting of traffic between VNFs more difficult

• SDN to the rescue • Introduces a difference between “ordinary” and “network” services

39

Page 40: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Mid-term goal: Merge NFV, DCC, SDN

40

DCC

NFV

SDN

Page 41: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Content

• Motivation for NFV, SDN • SDN: Some basics • NFV: Some basics • NFV meets DCC and microservices• NFV reference architecture• Templates and applications • NFV: Algorithmic issues • NFV: Testing services on your laptop

41

Page 42: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

NFV reference architecture

• And for completeness: the ETSI NFV architecture

• IETF: Service function chaining • Substantially quite similar, just different terminology

42

Page 43: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

ETSI reference architecture

43

Manoframework

VIM(e.g.,

OpenStack,VMWare, …

Page 44: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Network Services as Forwarding Graphs of VNFs

• In the end, we want to build services meaningful for a user • In the network, end-to-end • Examples: virtual private network, mobile voice, … • This goes beyond the purview of a single VNF

• Goal: combine multiple VNFs into a network service• Executed by the compute domain,

interconnected by the network infrastructure domain

• Typically: Order matters! • A service needs several functions, working on a data flow in a

certain order • Expressed as a forwarding graph

44Network Functions Virtualisation; Architectural Framework. ESTI GS NFV 002.

Page 45: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Forwarding graphs: Recursion allowed

• A VNF inside a forwarding graph can be constructed using a forwarding graph!

45Network Functions Virtualisation; Architectural Framework. ESTI GS NFV 002.

Page 46: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Goal: Deploy an NFV service

• Decide: • Which instances of which VNF are needed • Where to run which instance • How to connect instances together

• Required knowledge? • Structure of service • Offered load and infrastructure capabilities • VNF quantification: How many resources to deal with how much

traffic, at which quality • Hence: quantitatively annotated templates

46

Page 47: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Content

• Motivation for NFV, SDN • SDN: Some basics • NFV: Some basics • NFV meets DCC and microservices• NFV reference architecture• Templates and applications • NFV: Algorithmic issues • NFV: Testing services on your laptop

47

Page 48: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Annotated templates • Simple example: Annotate edges

in a service by multiplicity: VNF instance can handle so many instances of the previous stage

• Better: State tuples of (offered load, used resources, quality, produced load)

• Can be used by ManO framework to scale and place • … and manage lifecycles (shutdown!)

• From where to get annotations? • Developers, testing while onboarding, monitor during operation

48

Page 49: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Templates, as they should be

• Quantitative annotations• From profiling

• Scaling options • …

49

Front-end

Back-end

Fire-wall

Load-balancer

Data-base

1000 200

5000

Page 50: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Services?

• “Ordinary” application boxes?

• “Network” functions?

50

Fire-wall

Load-balancer

Front-end

Back-end

Data-base

Page 51: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Applications become more complex

• Application = Actual application + networking

51

Fire-wall

Load-balancer

Back-end

Front-end

ApplicationApplication

components/microservices

Networking components

(SDN or NFV)

Quantitativetemplates

Page 52: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Developer knows best!

• Application = Orchestration + actual application + networking• UNIFY, SONATA, ...

52

Fire-wall

Load-balancer

Back-end

Front-end

Place-ment

Life-cycle

ApplicationBespoke

orchestration!

Page 53: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Sonata Mano framework

• Sonata 5G-PPP http://sonata-nfv.eu• Claim to fame: Unparalleled flexibility

• Functions and services can bring along their own management functionality

• Executed by ManO framework

53

Page 54: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Reality check: Networking

• Networking: SDN controller applications • Create network topology for application • Developer support? Legacy?

54

Fire-wall

Load-balancer

Back-end

Front-end

Place-ment

Life-cycle

Application

Bespoke networking!

Page 55: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

SDN controller

High-level “architecture”

55

ApplicationOrchestrator

Front-end

NFV orchestrator

Cloudorchestrator

Fire-wall

Load-balancer

Back-end

Front-end

Place-ment

Life-cycle

Page 56: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Content

• Motivation for NFV, SDN • SDN: Some basics • NFV: Some basics • NFV meets DCC and microservices• NFV reference architecture• Templates and applications • NFV: Algorithmic issues • NFV: Testing services on your laptop

56

Page 57: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

• Time permitting: Some discussions on algorithmic aspects in NFV orchestration

57

Page 58: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Content

• Motivation for NFV, SDN • SDN: Some basics • NFV: Some basics • NFV meets DCC and microservices• NFV reference architecture• Templates and applications • NFV: Algorithmic issues • NFV: Testing services on your laptop

58

Page 59: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Background: OpenVswitch and mininet

• Initial question: How do you connect virtual machines’ network interfaces to the host’s network inferface? • Answer: OpenVswitch (OVS)

• Follow-up question: supposing you have this ability – can’t we turn this into a nice experimental tool for SDN research? • Answer: Sure – Mininet

• Follow-up question: Can we extend that do an NFV research tool? • Answer: Yes – Containernet

59

Page 60: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Hands-on!

• How to experiment with NFV, orchestration, …?

• Typical requirements• Reproducible experiments • Easy to use • Captures relevant parts of real-life infrastructure • Cheap (!)

• Compare: Mininet for SDN

• Concrete requirements? • Run executables at multiple locations, patch them into chains

60

Page 61: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

A Mininet-based testbed for NFV: Containernet/Medicine

• Based on: M. Peuster, H. Karl, and S. van Rossem. "MeDICINE: Rapid Prototyping of Production-Ready Network Services in Multi-PoP Environments." in IEEE Conference on Network Function Virtualization and Software Defined Network (NFV-SDN), 2016. • https://github.com/containernet/containernet

• Walk-through demo: https://github.com/sonata-nfv/son-tutorials/blob/master/upb-containernet-emulator-summerschool-demo/README.md

61

https://goo.gl/uGjR3r

Page 62: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Extended version: Containernet under OSM control

• Paper: A Flexible Multi-PoP Infrastructure Emulator for Carrier-grade MANO Systems • https://cs.uni-

paderborn.de/fileadmin/informatik/fg/cn/Publications_Conference_Paper/Publications_Conference_Paper_2017/peuster_netsoft_demo_paper_2017.pdf

• Best Demo award at NetSoft, 2017 • GitHub: https://github.com/mpeuster/son-

tutorials/tree/master/upb-emulator-mano-integration-demo• Ready-made VM to download (about 17 GB!)

• Video: https://www.youtube.com/watch?v=pFL9wDNOBho

62

Page 63: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Extended version: Containernet under OSM control

63

A Flexible Multi-PoP Infrastructure Emulatorfor Carrier-grade MANO Systems

Manuel Peuster Sevil Draxler Hadi Razzaghi KouchaksaraeiSteven Van Rossem Wouter Tavernier Holger Karl

Multi-PoP NFVI Emulator

•Mininet/Containernet-based network emulation•Compute instances (VNFs) deployed as Docker

containers•Single SDN switch per PoP to abstract data-

center-internal details•Arbitrary user-defined multi-PoP topologies•OpenStack-like northbound interfaces to con-

trol the emulated PoPs•Built-in monitoring of VNFs•Apache 2.0 license

M. Peuster, H. Karl and S. V. Rossem: MeDICINE:

Rapid Prototyping of Production-Ready Network Services

in Multi-PoP Environments, in IEEE NFV-SDN, 2016.

Single-VM Sandbox Environment

Demonstration Scenario Demonstration Storyboard

1.Define topology and start emulation2.Connect emulated PoPs as VIMs to OSM or SONATA3.Define vCDN service using OpenStack HEAT tem-

plates, OSM or SONATA descriptors4.On-board and instantiate vCDN service using OSM or

SONATA MANO systems5.Stream a video through the deployed service6.Monitor service components using the emulator’s mon-

itoring functionalities

Give it a try!

https://goo.gl/ordJDu

Who are we?

https://github.com/sonata-nfv

https://twitter.com/sonataNFV

SONATA NFV: Agile Service Development andOrchestration in 5G Virtualized Networkshttp://sonata-nfv.eu

https://linkedin.com/in/sonata-nfv

Contact person

Manuel Peuster+49 5251 [email protected]

Computer Networks Group

Prof. Dr. Holger Karl+49 5251 [email protected]://www.upb.de/cs/cn/

Page 64: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Walkthrough steps

1. Start containers in a Mininet network 1. containernet as such

2. Multi-pop version: Start multiple containers at a single location 1. son-emu 2. Interface similar to OpenStack Nova

3. Build chains among containers 4. Define a service package

1. Using Sonata’s service definitions

5. Add a (highly simplified) Sonata ManO6. Upload a service 7. Test the running service

64

Page 65: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Step 0: Start the virtual machine

• Download: http://www.peuster.de/SONATA/sonata-emulator-demo-vm-2017.ova• about 5 GB

• Or use the provided instances

• Login • Username and password: sonata

• Open terminal

65

Page 66: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Containers in Mininet?

• Mininet host: Basically just a process • Limits what you can do as VNF experiments

• Expectation?

• Hands-on!

66

Page 67: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Start containers in Mininet

• Similar to adding Mininet hosts to topology • See ~/demo/topologies/containernet_example1.py

• Start this file: sudo python ~/demo/topologies/containernet_example1.py

67

# add containers to topology d1 = net.addDocker('d1', ip='10.0.0.251',

dimage="ubuntu:trusty") d2 = net.addDocker('d2', ip='10.0.0.252',

dimage="ubuntu:trusty")

# connect containers to switches net.addLink(d1, s1) net.addLink(d2, s2)

Page 68: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Use containers in Mininet/containernet

• Play around with topology:

• Play with the containers (second terminal!):

68

Page 69: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Why Multi-PoP experiments?

• Represent and simplify data centres • Inside data centre: Big-switch abstractions

• Provide control over data centres • Akin to OpenStack Nova, e.g.

• Expectation?

• Hands-on: Get it to work!

69

Page 70: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Chaining?

• So far: VNFs running individually, not connection yet • No automatic learning switch in place

• Set up chaining: Put entries into flow tables

• Expectation?

• Hands-on! • Try to hook up the VNFs

70

Page 71: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

From individual, chained containers to packages

• Actual deployment in an NFV context: service package • Describes: which functions, how connected, how scaled, … • Unit of deployment, passed to a MANO framework

• Expectation?

• Hands-on! • Try it: Start a SONATA gatekepper in the emulator, create a

package, upload and startup package in gatekeeper

71

Page 72: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Thoroughly missing so far…

• Agreed-upon benchmark scenarios!

• Load generators! • At (at least) two abstraction levels

• Generating new service request with service duration • Generating load for individual services

• Collaborators welcome!

72

Page 73: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Conclusion

• NFV still an active research and innovation area • Lot’s of conceptual/architectural, algorithmic/optimization, systems

work still necessary

• Ability to test in practice so far limited • Some steps to overcome that: Containernet/Medicine • Down the road: For developers and operators?

• Missing: Benchmarks!

73

Page 74: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

Open source activity: OpNFV

• Initiative for an open-source NFVI/NFVI-Manager (including Nf-Vi interface)

• Public release available

https://www.opnfv.org/software/technical-overview

74

Initial OpNFVfocus

Page 75: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

OpenSourceMano (OSM)

• Open-source Management / Orchestration framework • https://osm.etsi.org• Current release:

https://osm.etsi.org/wikipub/index.php/OSM_Release_TWO• Aligned with ETSI reference architecture • UPB: member!

75

Page 76: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

OSM high-level architecture

76

© ETSI 2016

Current OSM architecture (MWC’16)

2https://osm.etsi.org/wikipub/images/d/d4/OSM%2816%29000018r1_MWC16_architecture_overview.pdf

Page 77: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

OSM high-level architecture

77

https://osm.etsi.org/wikipub/images/d/d4/OSM%2816%29000018r1_MWC16_architecture_overview.pdf

© ETSI 2016

Current OSM architecture (MWC’16)

3

Riftware(NSO)

OpenMANO(RO)

Juju Server(CM)

NSO: Network Service OrchestratorCM: Configuration ManagerRO: Resource Orchestrator

OpenStackController

Compute NodeCompute Node

Compute Node

ProxyCharm

ProxyCharm

VNFVNF

VNF

Compute NodeCompute Node

Compute Node

VNFVNF

VNF

OpenVIMController

OSM

sco

pe

ProxyCharm

Page 78: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

OSM high-level architecture

© ETSI 2016

LOGICAL ARCHITECTURE

8

78

https://osm.etsi.org/w

ikipub/images/4/4d/O

SM

%2816%

29000077r1_O

SM

_2_Tech_briefing_-_O

SM

_Release_O

NE

_installation.pdf

Page 79: A path to the Future Internet: Networks controlled by ... · PDF fileOpenFlow pipeline processing • Packets arriving at switch travers through a sequence of ingress and egress flow

References, further reading• European Telecommunication Standards Insitute (ETSI), Industrial

Study Group on Network Function Virtualization (ISG NFV), http://www.etsi.org/technologies-clusters/technologies/nfv

• With various important white papers on reference architecture, use cases, terminology (see “Specifications” tab on that web page)

• Especially: https://portal.etsi.org/nfv/nfv_white_paper2.pdf• Vendor-specific white papers:

• HP: http://www.hp.com/hpinfo/newsroom/press_kits/2014/MWC/White_Paper_NFV.pdf,

• Alcatel Lucent: http://www.tmcnet.com/tmc/whitepapers/documents/whitepapers/2013/9377-network-functions-virtualization-challenges-solutions.pdf

• Service chaining surveys• http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=6702549• http://www.ewsdn.eu/previous/presentations/Presentations_2013/EWSDN-

2013-v10a.pdf• Papers for this chapter: Two mendeley groups

• https://www.mendeley.com/groups/6764011/distributedcloudcomputing/• https://www.mendeley.com/groups/6763981/networkfunctionvirtualization/

79