network-virtualization nodes that support mutually ... · network-virtualization nodes that support...

15
IEEE ICCS 2012 2012-11-23 Yasusi Kanada, Hitachi Ltd. 1 Network-virtualization Nodes that Support Mutually Independent Development and Evolution of Node Components Yasusi Kanada & Kei Shiraishi, Hitachi Ltd. Akihiro Nakao, University of Tokyo

Upload: others

Post on 15-Oct-2020

22 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Network-virtualization Nodes that Support Mutually ... · Network-virtualization Nodes that Support Mutually Independent Development and Evolution of Node Components Yasusi Kanada

IEEE ICCS 2012 2012-11-23 Yasusi Kanada, Hitachi Ltd. 1

Network-virtualization Nodes that Support Mutually Independent Development

and Evolution of Node Components

Yasusi Kanada & Kei Shiraishi, Hitachi Ltd.Akihiro Nakao, University of Tokyo

Page 2: Network-virtualization Nodes that Support Mutually ... · Network-virtualization Nodes that Support Mutually Independent Development and Evolution of Node Components Yasusi Kanada

IEEE ICCS 2012 2012-11-23 Yasusi Kanada, Hitachi Ltd. 2

Introduction: Previous Work

►We are developing VNode — deeply-programmable physical node for network-virtualization platforms — in a collaborative project.

◆Deeply-programmable: packet data processing, such as new L3 protocol processing, can be programmable.

►A VNode consists of two types of components.◆Deeply-programmable computational component

called “programmer”.◆Networking component called “redirector”.

►Programmer and Redirector are developed and evolve

independently in the VNode architecture proposed by Nakao [Nak 12b].

VNode

Redirector

Programmer

Page 3: Network-virtualization Nodes that Support Mutually ... · Network-virtualization Nodes that Support Mutually Independent Development and Evolution of Node Components Yasusi Kanada

IEEE ICCS 2012 2012-11-23 Yasusi Kanada, Hitachi Ltd. 3

Introduction: Today’s Topic

►Redirector plays the central role in implementing two functions of VNodes, which enables the independence.

◆Creation of external and internal model-implementation mappings:Mapping between virtual links to

external physical pathsMapping between virtual links to

internal physical paths of VNodes

◆High-performance data conversion, which connects the external and internal data formats.

Virtual NodeVirtual link

Physical Node

External physical path

Model

Implementation

External mapping

Internal mapping

Internal physical path

Physical Node

External physical path

ImplementationInternal physical path

Data conversion

Page 4: Network-virtualization Nodes that Support Mutually ... · Network-virtualization Nodes that Support Mutually Independent Development and Evolution of Node Components Yasusi Kanada

IEEE ICCS 2012 2012-11-23 Yasusi Kanada, Hitachi Ltd. 4

Slice 2Slice 3

Slice 1

Network Virtualization Architecture and Platform

►Network Virtualization Architecture and Platform are developed in the collaborative project.

►Multiple slices can be created on a physical network in this architecture.◆ Slices means virtual networks.

Virtualization platformVNode VNode

VNode

Domain Controller

Slice developer

Slice definition<?xml ...>

...

Page 5: Network-virtualization Nodes that Support Mutually ... · Network-virtualization Nodes that Support Mutually Independent Development and Evolution of Node Components Yasusi Kanada

IEEE ICCS 2012 2012-11-23 Yasusi Kanada, Hitachi Ltd. 5

VNode

►VNode (virtualization node) is a component of the network virtualization platform.◆VNode is a physical node.◆VNode forwards packets on the platform as a router.◆Slices are implemented as overlay networks on the virtualization

platform.◆VNodes are connected by tunnels using GRE/IP.

GRE (Generic Routing Encapsulation) is a protocol standardized by IETF.

3Gate-way

Gate-way

User’s PC/VM

User’s PC/VM

DC

VNode

VNode VNode

IP Router VNode

DC: Domain Controller

Virtualization platform

(IP network)

Page 6: Network-virtualization Nodes that Support Mutually ... · Network-virtualization Nodes that Support Mutually Independent Development and Evolution of Node Components Yasusi Kanada

IEEE ICCS 2012 2012-11-23 Yasusi Kanada, Hitachi Ltd. 6IEEE ICCS 2012 2012-11-23 Yasusi Kanada, Hitachi Ltd.

Components of VNode►Programmer◆ is a programmable component that

processes packets on the slices.

►Redirector◆forwards (redirects) packets from

another VNode to a programmer and forwards packets from a programmer to another VNode.

◆ is a component that can forward or route packets on the platform.

►VNode Manager◆ is a software component that

manages the VNode.

VNode Manager

Programmer

Redirector

VNode VNode

VNode Manager

Programmer

Redirector

Page 7: Network-virtualization Nodes that Support Mutually ... · Network-virtualization Nodes that Support Mutually Independent Development and Evolution of Node Components Yasusi Kanada

IEEE ICCS 2012 2012-11-23 Yasusi Kanada, Hitachi Ltd. 7

Independently Evolvable VNode Architecture

►Programmer and Redirector are “separated” in this architecture.

►This separation means the protocols of internal and external networks can be independently defined.◆ Internal network – between Programmer and Redirector.◆ External network – between VNodes.

►This separation enables various evolution of VNode.◆ Various types of Programmers can be connected to a Redirector.◆ Various types of Redirectors can be connected to a Programmer.

►Our challenge is to implement this architecture and to obtain high performance.

VNode

Programmer

Internal network External

networkRedirector

Page 8: Network-virtualization Nodes that Support Mutually ... · Network-virtualization Nodes that Support Mutually Independent Development and Evolution of Node Components Yasusi Kanada

IEEE ICCS 2012 2012-11-23 Yasusi Kanada, Hitachi Ltd. 8

Service Module Card (SMC)

Redirector Manager (RM)

Control Plane (C-Plane)

Data Plane (D-Plane)

Redirector

Internal Data Plane

High-end L3 Switch (RB)

Structure of Redirector

NP board that can convert data from external to internal or vice versa

Management of both external and internal information

Page 9: Network-virtualization Nodes that Support Mutually ... · Network-virtualization Nodes that Support Mutually Independent Development and Evolution of Node Components Yasusi Kanada

IEEE ICCS 2012 2012-11-23 Yasusi Kanada, Hitachi Ltd. 9

Model-Mappings and Separation► In a VNode, the model (slice part) is mapped to the

internal representation.►Out of a VNode, the model (slice part) is mapped to the

external representation.►These mappings must be separated for the sake of

independent evolution.

Slice

Virtualization platform

RedirectorSMC 1

Programmer

VNode

VM 1MACP11 MACP12

Virtual node 1

MACR12

PortL12PortL11

MACR11

PortN12PortN11

Slice

Virtualization platform

Redirector Redirector

SMC 1 SMC 2

Programmer

VNode 1

Programmer

VNode 2

Virtual node 1

IP12

Virtual node 2

Virtual link 12

IP11 IP22IP21

Port22Port12 Port21Port11

GRE tunnelk12

Internal mapping External mapping

Page 10: Network-virtualization Nodes that Support Mutually ... · Network-virtualization Nodes that Support Mutually Independent Development and Evolution of Node Components Yasusi Kanada

IEEE ICCS 2012 2012-11-23 Yasusi Kanada, Hitachi Ltd. 10

Management of Model Mappings► Internal mapping is collaboratively managed by

Redirector and Programmer.►External mapping is collaboratively managed by

Redirector and VNode Manager.►Therefore, Redirector plays the central role in

separating and connecting the model mappings.

Slice

Virtualization platform

SMC 1

VNode

VM 1MACP11 MACP12

Virtual node 1

MACR12

PortL12PortL11

MACR11

PortN12PortN11

Slice

Virtualization platform

SMC 1 SMC 2

VNode 1 VNode 2

Virtual node 1

IP12

Virtual node 2

Virtual link 12

IP11 IP22IP21

Port22Port12 Port21Port11

GRE tunnelk12

Internal mapping External mapping

Programmer

Redirector

VNode Manager

VNode Manager

Redirector

VNode Manager

Page 11: Network-virtualization Nodes that Support Mutually ... · Network-virtualization Nodes that Support Mutually Independent Development and Evolution of Node Components Yasusi Kanada

IEEE ICCS 2012 2012-11-23 Yasusi Kanada, Hitachi Ltd. 11

Conversion between External and Internal Representations►Redirector (SMC) converts data packets between

external and internal representations.◆The throughput is 10 Gbps (when the packet size is around 1000B).

Slice

Virtualization platform

Redirector Redirector

SMC 1 SMC 2

Programmer

VNode 1

VM 1MAC11 MAC12

Programmer

VNode 2

VM 2MAC21 MAC22

Virtual node 1

IP12

Virtual node 2

Virtual link 12

IP11 IP22IP21

Port22Port12 Port21Port11

MAC14 MAC12 … Any MAC21 MAC23 … Any

IP12 IP21 … GRE Any

AnyPacket Ps

Pm1 Pm2

Pi

GRE tunnel

MAC14MAC13 MAC24MAC23

Page 12: Network-virtualization Nodes that Support Mutually ... · Network-virtualization Nodes that Support Mutually Independent Development and Evolution of Node Components Yasusi Kanada

IEEE ICCS 2012 2012-11-23 Yasusi Kanada, Hitachi Ltd. 12

Evaluation: Mapping creation and deletion

►The creation and deletion of a slice were measured.◆Slice structure

►Performance evaluation of the internal and external mappings◆The mappings are concurrently created by the redirector when

creating link slivers.

VNode parts Time for “run” (s)Time for “run” (s) Time for “shutdown” (s)Time for “shutdown” (s)VNode parts Average Std dev Average Std devRedirector 23.4 1.6 23.5 1.5

Programmer 50.3 3.0 0.007 0.002Whole VNode 80.5 3.0 47.9 2.3

VNode VNode AGWAGW User terminal

User terminal

Node sliver

Node sliver

Link sliver

Link sliver

Link sliver

ProgrammersRedirectors

Whole VNodes−7.2 Time (s)0 23.4 50.3 80.5

Internal and external mappings of three link slivers are created by two

redirectors in two VNodes

Reserve slice Run slice

Page 13: Network-virtualization Nodes that Support Mutually ... · Network-virtualization Nodes that Support Mutually Independent Development and Evolution of Node Components Yasusi Kanada

IEEE ICCS 2012 2012-11-23 Yasusi Kanada, Hitachi Ltd. 13

Evaluation: Mapping creation and deletion (cont’d)

►Observation◆The overhead caused by link creation is mostly hidden if the number

of virtual links per virtual node is five or less (i.e., in normal conditions).

◆The overhead can still be seen in link deletion because programmers reply to “shutdown” command immediately, but it is less critical. It is less critical because new links can be created while deleting old

links.

Page 14: Network-virtualization Nodes that Support Mutually ... · Network-virtualization Nodes that Support Mutually Independent Development and Evolution of Node Components Yasusi Kanada

IEEE ICCS 2012 2012-11-23 Yasusi Kanada, Hitachi Ltd. 14

Evaluation: Data Conversion

►Data conversion rate is 5-Gbps at maximum when input and output data rates of VNodes are equal.◆ VNodes are connected by 10-Gbps physical links. ◆ The data conversion is performed on the SMC.◆ Each VNode has only one SMC that is used for both direction

(internal ⇔ external).

► In future, this performance can be improved by adding SMCs.

Redirector

SMC

ProgrammerVNode

VMMAC12 MAC11

IP12IP11

MAC14 MAC12 … Any

IP12 IP21 … GRE Any

MAC14MAC13

Page 15: Network-virtualization Nodes that Support Mutually ... · Network-virtualization Nodes that Support Mutually Independent Development and Evolution of Node Components Yasusi Kanada

IEEE ICCS 2012 2012-11-23 Yasusi Kanada, Hitachi Ltd. 15

Conclusion►To enable independent evolution of Programmer and

Redirector, Redirector is designed ...◆ Redirector creates two separate mappings between virtual links to

external and internal physical-paths.◆ Redirector implements conversion between the external and internal

data formats using SMCs.

►Performance of mappings and data conversion are evaluated, and Redirector mostly satisfies the requirements.◆ Time for virtual-link creation is usually shorter than other set-up times.◆ The data conversion can be performed at a rate of 5 Gbps.

▶ Future work ◆ To enhance mapping and data-conversion methods for various

programmers and external networks and for performance improvements.

◆ To reduce time for virtual-link deletion.