22
Network Platform for Creating Services over Virtualized Networks August 24, 2012 Toru Hasegawa KDDI R&D Labs.

Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

Network Platform for Creating Services over Virtualized Networks

August 24, 2012

Toru HasegawaKDDI R&D Labs.

Page 2: Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

Outline

IntroductionToy Block Programming Environment Network PlatformExample ServiceConclusionAcknowledgement

2copyright by KDDI R&D Labs., The University of Tokyo, NEC and HITACHI

Page 3: Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

Introduction

Virtual Network Service Infrastructure Project 1)

The goal is to develop a network virtualization platform ofachieving all the requirements below

Funded by NICT, from 2011 to 2015

Requirements to Network Virtualization 2)

Isolation of resources, Security, Scalability, Evolvability,Performance, Programmability and Management

Network Platform for Flexibly-Programmable AdvancedService Composition over Virtualization Network Sub-project

The goal is to develop the technologies of supportingprogrammability and management

KDDI R&D Labs, The University of Tokyo, Hitachi and NEC

3

1) http://www.nict.go.jp/en/nrh/nwgn/nwgn-virtualnetwork.html2) A. Nakao, “Network Virtualization as Foundation for Enabling New Network Architectures and Applications,” IEICE Transactions

on Communications, Vol. E93B, Issue 3, pp. 454-457, March 2010.

Page 4: Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

Network Platform for Creating Services over Virtualized Networks

What’s a network platform?Programming and execution environment where anyone can easilyprogram network services in a slice over a virtualized network

Goals of PlatformProgrammability

Toy block programming environment wherein a service is programmed astoy blocks would be assembled

Service: a collection of network functions of nodes

The main objective is to encourage a service designer to re-use of codesimplemented by others instead of implementing them for themselves

Codes of implementing protocol mechanisms.

ManagementExecution environment where toy blocks are distributed to nodes in a slicereduces burdens of service

Extending slices to different domains (Federation) in order to provide largescale tests

4copyright by KDDI R&D Labs., The University of Tokyo, NEC and HITACHI

Page 5: Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

Architecture: Toy Block Programming Framework

5copyright by KDDI R&D Labs. and The University of Tokyo

Interface Layer

Composite Layer

Component Layer

UserInterface

Component

Component Component

ComponentComponent

Interface

Input

Output

Assembling blocks

FunctionalUnit

Distributed to node slivers in a slice

∑= deSliversBlocksOfNoService

Page 6: Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

Toy Block Programming Framework: Current and Future

Current : Modular Framework like (ex) SILO, RNA, x-kernelFocuses on a program run on a single nodeBlocks (modules) areassembled in a single nodeThe frameworks supportshow blocks in a node areconnected

6

L2/PHY

L2/PHY

L2/PHY L2/PHYL2/PHY

L2/PHYL2/PHY

L2/PHYIPTCPDHT

IPTCPDHT

IPTCPDHT IP IP

TCPSMC

IPTCPDHT

IPTCPSMC

IP

VMVM

VM VM VM

VMVM

VM

unreliable datagram deliveryreliable transport

DHT SMC

Future :Focuses on program run on multiple nodes for providing a service ex) DHT service, SMC serviceBlocks (Functional Units) on different nodes are assembled to a serviceThe framework supports howblocks in multiple nodes areconnected.

Interface checking blocksin multiple nodes

TCP TCP TCPIP IP IPIP

SMC (Secure Multiparty Computation)DHT (Distributed Hash Table)

VM (Virtual Machine)

copyright by KDDI R&D Labs

Page 7: Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

Overview of Network Platform

7copyright by KDDI R&D Labs., The University of Tokyo, NEC and HITACHI

SliceExchange

Point

Domain B

スライス

(仮想ネットワーク)

Domain A

Slice

Service DesignTool

Programming a service as toy

blocks would be assembled

Federation to other virtual

networks

Node Sliver(Virtual node)

Node

ServiceDeployment

Tool

Distributing functional units to virtual nodes in a

slice

Access networkControl

Accomodating mobile devices

Functional Unit

Page 8: Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

Flow of Programming and Deploying a Service

8

eth0 eth1

eth0 eth1

eth0 eth1

eth0 eth1

Node 4

Node 3

Node 2

Node 1

TCPIPeth

Programmer(Programming a Block)

ServiceDesigner

ServiceDesign Tool

ServiceOperator

Service Deployment Tool

Slice DesignerBlock Definition

(XMLFile)

Slice Definition(XMLFile)

eth0 eth1

eth0 eth1

eth0 eth1

eth0 eth1

TCP

IP

IPTCP

IP

IP

Node 4

Node 3

Node 2

Node 1

Service Blueprint(XMLFile)

copyright by KDDI R&D Labs. and The University of Tokyo

Page 9: Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

Service Design Tool

9

Service Blueprint Design Tool− Editing a service blue print− Outputting an XML file of service

blue print

Service Layout Plan Design Tool− Reading a slice definition and a

service blueprint− Outputting a file specifying which

blocks are allocated to which nodes

Service Blueprint Design Tool

Service Layout Plan Design Tool

Invocation, edition

copyright by KDDI R&D Labs. and The University of Tokyo

Page 10: Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

Implementation of Network Platform

10

NodeSliver

NodeSliver

Link Sliver

ServiceControl Node

Physical Network

Control Plane forDistributing Blocks

Slice(Virtual Network)

Service Blurprint Service Blueprint

Virtualized Network Infrastructure

Network Platform

Service

…End User

ServiceController

Node Sliver

NodeSliver

LinuxKernel

Node SliverContoller

Library

Block

sshd

Block Block

Click

BlockBlock Block

ServiceOperator

copyright by KDDI R&D Labs. and The University of Tokyo

Page 11: Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

Service Deployment Tool

11

BlockClick Block ex.) IP Routing Control, Routing Table SearchUser Process Block (Socket Program) ex.) Web server, Trans-coder

Kernel Leve;Click Driver

ServiceController

Node SliverController

eth0 eth1 eth2 eth3 eth4

TCP/IPStack

eth

ControlPlane

sshd↑ User Space

↓ Kernel Space

To Other Node Slivers

Link Sliver

TCP,UDP/IP Satck

User LevelClick Driver

UserProcessBlock

UserProcessBlock

Service ControlNode

Node Sliver

ClickBlock

ClickBlock

ClickBlock

ClickClock

copyright by KDDI R&D Labs. and The University of Tokyo

Page 12: Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

How a service is deployed

12

Service Operator Service Controller

Node SliverController

Resource Allocation

Node Sliver(sshd)Slice Definition

OK①Slice Creation

Service InvocationService Invocation

InvocationOK

OKOK

③Service Invocation

OK

Service Allocation Plan, Slice Definition, Block Definition

Node Sliver ControllerInstall and Invoke

Block denifinition

OK

②Service Deployment

Install

OKOK

Control port Information Request

Control Port Information

Block

… … … … … …

Virtualized Network Infrastructure

copyright by KDDI R&D Labs. and The University of Tokyo

Page 13: Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

13

Slice Exchange Point (1)

GW SEP Core

Virtualized NetworkInfrastructure A

GW

Virtualized NetworkInfrastructure B

Common APIs Common APIsAPIs  ProprietaryTo Infrastructure A

APIs  ProprietaryTo Infrastructure B

Slice Slice

Federated slice across the two infrastructures

Controller ContollerSlice Exchange Point (SEP)

GW : Gate Way SEP : Slice Exchange Point

copyright by KDDI R&D Labs. and HITACHI

Slice Exchange PointSEP enables the federation (slice creation/deletion/modification,resource information exchange) between heterogeneousvirtualization infrastructures.SEP introduced the common APIs to federate many types ofinfrastructures.

Page 14: Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

14copyright by KDDI R&D Labs. and HITACHI

Slice Exchange Point (2)

Common APIs for SEP(Slice creation/deletion/

modification, resource info, etc)

APIs  ProprietaryTo Infrastructure A

(Slice creation/deletion/modification, 

resource info, etc)

Control systemPlatform-A

Data-planeconversion

APIs/parametersconversion

differentialabsorptionfunction

GW SEPCORE

Slices(Node slivers, Link slivers)

Page 15: Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

Implementation StatusThe prototype implementation of platform is done.

The prototypes of service design/deployment tools have been implemented. The prototype of SEP has been implemented, too.

Implementing services over the platform is on going.Disaster Victim Information Query ServiceService wherein functional units (blocks) are replicated or reducedIntelligent Cache Serviceetc.

15

Page 16: Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

Service Example 1: Disaster Victim Information Discovery

16

Query service provides how many disaster victims are at which evacuation sites

When a disaster occurs, a slice for victim information discovery is created

Disaster victims uploads at which evacuation sites they are

Such information pieces are searched and collected by the collectors and then are finally stored at the store

Rescue Person

Web Browser

Wireless-link

Ad-hoc link

Slice

Node Sliver

Query Sever

InformationCollector

InformationStore

InformationCollector

InformationCollector

copyright by KDDI R&D Labs

Page 17: Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

17

Service Blueprint

Rescue Person

TCP/IP

TCP/IP

Web Browser

Apache Query Interface

TCP/IP

InformationStore

Informationmanager

InformationCollector

Victim

Name resolver

Name server

eth0

eth1

Query Sever

CGI

eth2

INET,Stream INET,Stream

eth1

INET,Stream

eth2

MySQLSQL/UNIX Stream

TCP/IP

Informationcollector

eth1

INET,Stream

eth2

MySQLSQL/UNIX Stream

dynamic DNS/INET StreamINET, Dgram

TCP/IP

eth0

Client for victim

Slice

copyright by KDDI R&D Labs

Page 18: Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

Example Service 2: Replication and Reduction of FUs

18

Replicating or Reducing FUs (peers) during their executiondepending the load of nodes

(Sample service)BitTorrent-like network is created andits structure changes depending on the load of download.

FU(Peer)

FU(Tracker)

FU(Peer)

Service Controller

FU(Peer)

Slice

copyright by KDDI R&D Labs. and NEC

Replicating FUsat high load

Consolidating FUs at low load

Page 19: Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

19

Motivation: Dynamism in Allocating Blocks

Virtual network service infrastructure need allow a service to be provisioned so that network resources are utilized optimally

Function Units (FUs) are replicated when the load is increasing.FUs are reduced when the load is decreasing.FU is relocated to a suitable node sliver after a user moves to another location

However, such dynamisms introduce complexities into the infrastructure. Thus, these are performed by FUs themselves, so far.

FU replication needs initial settings of added FU to fit the on-going service provisioning.FU reduction needs preparation to migrate processed user accesses to remaining FUs.FU relocation needs combination of FU initial settings and migration of user accesses.

Page 20: Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

20

How FU is replicated in on-going service

Service Operator Service ControllerNode SliverController

Node Sliver(sshd)

④Dynamic replication

Node Sliver Controller

Install and Invoke

Block denifinition Install

Replication req.

OK

Block

… … … … … …Virtualized Network

Infrastructure

Node SliverController

Node Sliver(sshd) Block

Replication request (block id)

Selecting Service Definition

OK

(Begin to run)

Initial settings for replica FU

Service InvocationInvocation

OKOK

Replication res.Replication response (block id)

Same procedure as service

deployment

Page 21: Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

ConclusionProposal of network platform for creating services over virtualized networks

A new service is easily and lightly programmed in a sliceA service is deployed in a slice covering different types of virtual networks

Openness of programming and execution environmentOpen APIRich sample functional units (blocks)

The prototype is implemented The experiments over the JGN-X Testbed are planned

21

Page 22: Network Platform for Creating Services over Virtualized Networks › ~nv › 2nd-hasegawa.pdf · Network Platform for Flexibly-Programmable Advanced Service Composition over Virtualization

Acknowledgements

Network Platform Project for Virtualized Networks

funded by NICTFrom 2011 to 2015.

CollaboratorsKDDI R&D Laboratories, Inc.The University of TokyoNECHITACHI

22copyright by KDDI R&D Labs., The University of Tokyo, NEC and HITACHI