Network Virtualization and its two popular approaches: SDN and NFV
Network
Virtualization
What is a Network and Ways to Virtualize
it?
A network is a group of two or more
devices that can communicate. Traditionally, computer networks have used a mix
of hardware and software to direct information through router and switch
devices. Information passes through a network in packets, which are
broken down pieces of information with smaller file sizes that are then
reassembled at destination. Routers are responsible for
forwarding packets between computers of different networks, whereas switches connect
computers to the same network. The functions of routers and switches can be
virtualized, along with other network devices such as firewalls, load
balancers, gateways, and hubs.
One of the earliest implementations of network
virtualization were virtual local area networks (VLANs). VLANs
make it possible for devices physically in different geographical locations to
appear as if they were in a single local area network, with a unique broadcast
and multicast domain.
VLANs can support multiple networks on the same
hardware infrastructure, such as multiple IP addresses on the same switch,
meaning that VLANs are adept at scaling network traffic.
What Is Network Virtualization?
Network virtualization enables
network functions usually run on hardware to be delivered as software and
managed as a single entity.
To understand what is virtualized in a virtual
network, we refer to the OSI model. The Open Systems Interconnection (OSI)
model defines the standards for networking. OSI describes a network in seven
layers, from the electrical hardware of the physical layer at
the bottom to the end-user interface of the application layer at
the top.
Network virtualization “softwarizes” functions on the
first three layers of the OSI model:
- Physical (cabling,
signaling, and basic communication)
- Data
Link (addressing traffic)
- Transport (logical
addressing and traffic flow control)
The basic goal of network
virtualization is to introduce a layer of abstraction between physical hardware
and the applications and services that use that hardware.
More specifically,
network virtualization allows network functions, hardware resources, and
software resources to be delivered independent of hardware—as a virtual
network. It can be used to consolidate many physical networks, subdivide one
such network, or connect virtual machines (VMs) together.
Network virtualization is
categorized as either external virtualization, combining many networks or parts
of networks works into a virtual unit, or internal virtualization, providing
network-like functionality to software containers on a single network server.
There are two popular
approaches to network virtualization: software-defined networking (SDN) and
network functions virtualization (NFV).
Software-defined networking (SDN) and network
functions virtualization (NFV) are complementary approaches to managing
networks. What is “virtualized” in each case varies. The two concepts were
introduced in 2008 and 2012 respectively, and their technologies are governed
by standards bodies: the Open Networking Foundation and European
Telecommunications Standards Institute.
Network virtualization is rewriting the rules for the
way services are delivered, from the software-defined data center (SDDC) to
the cloud, to the edge. This approach moves networks from static, inflexible,
and inefficient to dynamic, agile, and optimized. Modern networks must keep up
with the demands for cloud-hosted, distributed apps, and the increasing threats
of cybercriminals while delivering the speed and agility you need for faster
time to market for your applications. With network virtualization, you can
forget about spending days or weeks provisioning the infrastructure to support
a new application. Apps can be deployed or updated in minutes for rapid time to
value.
In software testing, software developers use network
virtualization to test software under development in a simulation a network
environment in which the software is intended to operate. As a component of
application performance engineering, network virtualization enables developers
to emulate connections between applications, services, dependencies, and end
users in a test environment without having to physically test the software on
all physical hardware and system software. Of course, the validity of the test
depends on the accuracy of the network virtualization in emulating real
hardware and operating system.
Components
Various equipment and software vendors offer network
virtualization by combining any of the following.
· Network hardware such as switches, and network adapters also known as network interface cards NICS
· Network elements such as firewalls and load balancers
· Networks such as virtual LANs (VLANs) and containers such as virtual machines (VMs)
· Network storage devices
· Network machine to machine elements such as telecommunications devices
· Network mobile elements such as laptop computers, tablet computers, and smartphones
· Network media, such as Ethernet add fibre channel
How
does network virtualization work?
Network virtualization decouples network services from
the underlying hardware and allows virtual provisioning of an entire network.
It makes it possible to programmatically create, provision, and manage networks
all in software, while continuing to leverage the underlying physical network
as the packet-forwarding backplane. Physical network resources, such as
switching, routing, firewalling, load balancing, virtual private networks
(VPNs), and more, are pooled, delivered in software, and require only Internet
Protocol (IP) packet forwarding from the underlying physical network.
Network and security services in software are
distributed to a virtual layer (hypervisors, in the data center) and
“attached” to individual workloads, such as your virtual machines (VMs) or
containers, in accordance with networking and security policies defined for
each connected application. When a workload is moved to another host, network
services and security policies move with it. And when new workloads are created
to scale an application, necessary policies are dynamically applied to these
new workloads, providing greater policy consistency and network agility.
External virtualization
External network virtualization combines or subdivides
one or more local area networks LANs into virtual networks to improve a large
networks or data centers efficiency. A virtual local area that work VLAN and
network switch comprise the key components. Using this technology, a system
administrator can configure system physically attached to the same local
network into separate virtual networks. Conversely, an administrator can
combine systems on separate local networks into a VLAN spanning the segments of
a large network.
Internal virtualization
Also called virtual channel internal network
virtualization configures a single system with software containers, such as Xen
Hypervisor Control programs or pseudo-interfaces such as VNIC, to emulate a
physical network with software. This can improve a single system’s efficiency
by isolating applications to separate containers or pseudo-interfaces. *[1]
Benefits
of network virtualization
Network virtualization helps organizations achieve major advances in speed, agility, and security by automating and simplifying many of the processes that go into running a data center network and managing networking and security in the cloud. Here are some of the key benefits of network virtualization:
- Reduce network provisioning time from weeks to minutes.
- Achieve greater operational efficiency by automating manual processes.
- Place and move workloads independently of physical topology.
- Improve network security within the data center.
Examples
i. Microsoft virtual server uses virtual machines to make a "network in a box" running on x86 systems. These containers can run different operating systems such as Microsoft Windows or Linux either associated with or independent of a specific network interface controller (NIC).
ii. One example of network virtualization is virtual LAN (VLAN). A VLAN is a subsection of a local area network (LAN) created with software that combines network devices into one group, regardless of physical location. VLANs can improve the speed and performance of busy networks and simplify changes or additions to the network.
iii. Another example is network overlays. There are various overlay technologies. One industry-standard technology is called virtual extensible local area network (VXLAN). VXLAN provides a framework for overlaying virtualized layer 2 networks over layer 3 networks, defining both an encapsulation mechanism and a control plane. Another is generic network virtualization encapsulation (GENEVE), which takes the same concepts but makes them more extensible by being flexible to multiple control plane mechanisms.
Software-Defined Networking (SDN)
Software-defined networking involves
separating the control plane of a network from the data plane. In a network,
the control plane is responsible for guiding how packets
should move through a network whereas the data plane (or
forwarding plane) is responsible for sending packets to their destinations.
Traditionally, the control and data planes are packaged together in a network
device. By separating the control and data planes, SDN makes a network
programmable, that is, it frees a network from relying on the rules set in a
routing table. Instead with SDN, an administrator can program rules in a
switch. Switches must be programmed through an SDN controller which
uses protocols such as OpenFlow. OpenFlow was introduced
around the same time as software-defined networking and is a protocol that
allows for the control of switch data planes.
Software-defined networking was originally designed to
work on local area networks (LANs). The technology has led to the development
of software-defined wide area networks (SD-WANs) for
enterprises. SD-WANs connect geographically isolated data centers together.
Mobile carriers and internet service providers use
software-defined networking to scale bandwidth during increases in usage.
Because network provisioning is programmable, administrators can assign
bandwidth to servers at will. Additionally, cloud service providers utilize SDN
to support multi-tenant cloud architecture. In multi-tenancy, administrators
manage switches to funnel traffic into segregated networks for different
tenants.
Network Functions Virtualization (NFV)
While SDN abstracts physical network infrastructure so
that networks can be programmable, NFV deploys the functions of a network
without the use of physical network devices. Network functions
virtualization happens when proprietary network devices such as
routers and firewalls are replaced with software versions that deploy on commercial
off-the-shelf (COTS) hardware such as ARM and x86.
Key to network functions virtualization are virtual
network functions (VNFs). Virtual network functions are the namesake
virtualized instances of network functions. These are the virtual routers and
virtual firewalls for example. Most VNFs operate inside hypervisors.
Although VNFs (the components) are integral to NFV
(the architecture), NFV architecture also consists of a framework that oversees
the management, automation, and orchestration (MANO) of VNF
components, as well as both the hardware and software-based compute, storage,
and networking components that enable network functions to be virtualized.
Therefore, NFV architecture isn’t restricted to VNFs or software alone.
Both network functions virtualization and
software-defined networking, mentioned in the previous section, decouple
hardware and software. The difference to remember between the two network
virtualization methods is that NFV imitates the network function on a physical
device, so that the function can run on a server, while SDN separates the
control and data planes of a network in order for both planes to be
programmable.
Network Virtualization: Benefits of Edge Over
Cloud
At their conception, network virtualization
technologies brought about data center modernization. They have been an
accelerator for the adoption of cloud computing. Cloud computing permits
organizations to access and use shared computing resources located in a public
data center via the internet. Network virtualization helped move
infrastructures to the cloud since they gave rise to remote administration of
networks.
Yet the centralized management of networks in cloud
computing has exacerbated an already existing latency problem. While delays in
data transmissions were already happening inside local networks, the phenomenon
is worse over the internet. Latency worsens in cloud computing because data
must travel for longer geographical distances.
A new decentralized approach is on the rise, focusing on reducing the impact of latency for scenarios involving mobility and real-time processing of data.
Use in Mobile Networks
Network virtualization applies to mobile networks as
much as data networks. In mobile telecommunications, network virtualization can
partition resources so that different users can transmit data on a single
network.
The practice of network slicing uses
NFV to overlay multiple virtual networks on a shared physical infrastructure. Because
of the plethora of wireless internet devices available (think IoT, smartphones,
mobile broadband, etc.), mobile networks need to run applications with
different bandwidth requirements. Network slicing configures the optimum
grouping of network traffic in order to decrease latency. In this way, network
slicing is vital to upcoming 5G mobile networks and mobile edge computing.

Comments
Post a Comment