A Method for Evolving Networks by Introducing
New Virtual Node/link Types using Node Plug-ins
Yasusi Kanada
Central Research Laboratory, Hitachi, Ltd.
Totsuka-ku Yoshida-cho 292, Yokohama 244-0817, Japan
Yasusi.Kanada.yq@hitachi.com
Abstract—Network virtualization introduces two concepts:
slice (i.e., virtual network), which consists of virtual nodes and
links, and slice developer, which is the third role in networks.
Slice developers can introduce new network services by using
slices. A method for introducing new types of virtual nodes and
links for new services into the slice-definition language and the
virtualization infrastructure by evolving physical nodes (i.e.,
“virtualization nodes” or VNodes) is proposed. This evolution
consists of two stages: the experimental stage and the operational
stage. In the experimental stage, data and control plug-ins are
developed and tested by the operator or vendor by using
experimental sliver definitions. In the operational stage, which is
focused on in this study, the plug-ins are integrated into original
components in the infrastructure and are available for slice
development by using normal sliver definitions. By mapping type
names to plug-in identifiers and parameters, the proposed
method enables abstract and simple definitions of slices by slice
developers and authorization of plug-ins by the operator, but it
remains the loose integration of the new function, i.e., the plug-in
architecture used in the experimental stage. Prototyping and
evaluation demonstrates that this method greatly simplifies both
slice developers’ tasks and operators’ tasks.
Index Terms—Slice developer, Network-node evolution, Node
plug-in architecture, Data plug-in, Control plug-in, Network
virtualization, Virtualization node, VNode infrastructure,
Virtual-link type creation, Deep programmability.
I. INTRODUCTION
Development of new services generates new business
chances, stimulates economies, and also stimulates the
intelligence of users who may devise new ways of life or new
types of business. To increase the chance of creating new
communication services, it is important to make it simpler and
more flexible and to reduce its cost. If this development
becomes so, more and more people will try to create new
services and, in doing so, they will increase the chance of
creating successful new services.
To enable simple, flexible, and cost-reduced service
creation, network virtualization will play an important role by
introducing two concepts: slice and slice developer. As for the
first concept, network virtualization enables creation of various
types of virtual networks, which are called slices, on a single
physical network. Slices not only reduce development and
maintenance costs of customized networks but also realize
abstract, simple, and flexibly-customized networks because, if
the virtualization function satisfies the clean-virtualization
criteria [7], it enables creation of slices without being
constrained by the underlying physical network. This means
that any set of protocols, which is not constrained by the IP or
Ethernet protocols or any other underlying protocols, can be
used on slices, and any virtual topology can be created.
Network virtualization therefore enables creation of new
services with reduced cost.
As for the second concept, network virtualization creates a
new role called slice developer [21]. In the case of
conventional networks, there are two roles: operator and user.
Operators (including vendors) develop and operate physical
networks, and (end) users contract with an operator and use the
networks. However, because network virtualization generates
slices, they must be created and managed by the third role, i.e.,
the slice developer. Slice developers develop slices, they (or
their application programs) operate the slices, and users
contract with a slice developer and use the slice. In this three-
role model, an operator may be called an infrastructure
provider, and a slice developer may be called a service
provider [4]. Slice developers create a slice by selecting types
of virtual nodes and links that are supported by the network-
virtualization infrastructure, and they are allowed to program
virtual nodes (and virtual links) if they are programmable.
The Virtualization Node Project, or VNode Project [17],
has developed a virtualization infrastructure, called “VNode
infrastructure”, which makes it possible to create slices that is
deeply programmable (that means the data-plane of the slices
is programmable) by slice developers. The slices are defined
(programmed) and managed by a centralized method, but the
virtual nodes are programmed and controlled by a decentral-
ized method. The programmed slices enable simple, flexible,
and reduced-cost new services; that is, each slice developer
independently, easily, and flexibly creates and manages a slice
that supports a new service while development cost is reduced.
In the VNode infrastructure, slice developers can create and
program any number of virtual nodes of predefined types by
using a slice-definition language; however, they cannot
introduce new types and new software/hardware into the
language and the infrastructure by themselves, so the
infrastructure should have a method for introducing them.
Although the infrastructure may sufficiently support various
978-1-4799-0913-1/14/$31.00 ©2014 IEEE