Open vSwitch is a virtual multilayer switch developed as Open Source software source code under Apache 2.0 licenses. It is very easy to program-extendable and supports a wide range of automation methods. Except for standard switch functions also supports a large number of other network protocols, NetFlow, sFlow, IPFIX, RSPAN, CLI, LACP, 802.1g.
In addition to the virtual implementation, it is also possible to use the Open vSwitch as a control layer in hardware switches. It is constantly being actively developed and expanded to support new ones technologies, such as the current set of program libraries and drivers for fast packet processing called DPDK.
Thanks to its high performance is great often run in production environments for packet switching between virtual ones machine.
The following network topology consists of two virtual routers, two virtual switches and four end stations connected in different subnets. The schematic diagram illustrated in FIG. 2.4.
For direction R1 it was chosen to operate the VyOS system in version 1.1.7, which is based on the Linux distribution of Ubuntu as an open operating system for virtual routers. Its configuration interface is is very similar to that of the Juniper Juniper networking system.
It is available for free downloaded on the official site of the site As the operating system for the router R2 was selected IOS operating system running in a virtual router CSR 1000V.
The 1000v router is proprietary from Cisco, commercially available only under paid licenses with full support. However, the company Cisco provides some older versions available for testing and teaching purposes.
It can be after registrar download on the official cisco.com site, where it is also available officially installation instructions.
There is no need to use any demanding and large operating system on the end stations, therefore, a low-cost CirrOS system, which is being developed for testing purposes, has been chosen for them.
It is a very simple Linux distribution that is small in size (approx. 12 MB) and fast startup, because it contains only the most basic programs and services required to test network functionality.
The following installation procedure assumes that the host operating system is already installed a Ubuntu system that is already ready for use. Install Required Components for The following example is very simple, just run the following command to install the hypervisor KVM and QEMU-Open vSwitch.
Prior to running end-to-end virtual machines and routers, prepare ports, ports, and pairs of virtual ethernet ports. After execution the following command creates an empty vSwich Open switch called S1. Similarly, S2 has been created.
The created switch does not contain any ports. By calling the command, a port named S1H1 is added to the S1 switch. If a network interface is found with the system name, whether physical or virtual, so there is no need to specify the internal interface type only by assigning this override as the standard type.
Open vSwitch by default expected that it will be assigned to the already existing interface, specifying the type of internal forming a virtual interface tied to this switch, which, during its removal also removed. In this way, the remaining interface was created.
Now all port ports for end devices and routers are ready, the remaining so create a pair of virtual ethernet lines that will connect the routers. This pair behaves like a physical network cable connecting two devices. The created interfaces get the names R1R2 and R2R1. Its creation is done by the following command.
After running all instances of virtual machines, the infrastructure of this virtual machine is ready. For full functionality, you need to configure all end stations and network elements. It is enough to set the IP address for the end stations, and it is necessary for the routers to be configured IP addresses also set routing. In this example, protocol was used for routing OSPF.
Complete configuration of all end devices and routers are due to this their contents are contained in Appendices A and B.
Now a command for listing all virtual machines, the output of which shows the following an example that says that all defined virtual machines are running. It is now possible start testing connectivity and configure.
From the next output of the ping command triggered at H1, which tests the connectivity between the H3 and the H3, it is clear that the communication works smoothly, both functional and routed. All outputs of the ping command are included in attachments C – F.
$ ping 192.168.2.5
PING 192.168.2.5 (192.168.2.5): 56 data bytes
64 bytes from 192.168.2.5: seq = 0 ttl = 62 time = 2.056 ms
64 bytes from 192.168.2.5: seq = 1 ttl = 62 time = 2.888 ms
64 bytes from 192.168.2.5: seq = 2 ttl = 62 time = 2.684 ms
64 bytes from 192.168.2.5: seq = 3 ttl = 62 time = 3.246 ms
This approach to creating virtual network infrastructure has the advantage of full control over all its components and great freedom in choosing used technologies. For example it is possible to combine virtual machines with containers, using various virtual technologies switches or data lines, or to connect this virtual infrastructure to physical ones components.
However, for extensive network infrastructures, which are very common in production environments such that such a solution does not bring many benefits over physical devices.
A large number of virtual elements and lines is demanding for administration, detection and repair any errors. If you need to use a variety of services in addition to switching and routing packets, such as connecting different types of external storage, advanced packet filtering, or dynamic load distribution, you need to use a large amount different technologies whose management is inconsistent, each of which needs to be known very detailed.
This approach can be used as an example in the teaching or development and testing of new technologies and procedures. Large cloud virtualization platforms such as Openstack or OpenShift, are in fact the sum of several smaller technologies for specific purposes under uniform management and supervision.
2.3 Juniper Junosphere
Junosphere Cloud is a commercial tool provided by Juniper. This is a service, which allows network architects and experts to create a stable virtual network environment hosted on Juniper servers.
2.3.1 Presentation of services
Therefore, users rent a medium for the operation of virtual network devices as service. Therefore, it does not have to have any physical infrastructure or special software, an environment can be accessed using a web application or an application program
Since it is a proprietary solution for Juniper, all virtual network elements are based on the Junos operating system from this company. The big advantage is, of course accurate simulation of almost all physical Juniper network devices, including computational power and throughput. This feature is provided by a special hypervisor, which is also proprietary developed by Juniper specifically for Junosphere.
2.3.2 User Interface
The user interface is very sophisticated and offers a wide range of options that can be made use, development, testing or training. Besides the possibility of graphic design of the whole network topology also offers full access to all interfaces of all network elements, both graphical, text, or application.
Additionally, access to the virtual network can be provided from an external enterprise network or even publicly. Allows user management and permissions, this can be used for example business training. Additionally, you can set the access times for each user or user schedule a schedule for the operation of individual devices.
2.3.3 Above standard services
Junosphere also offers the ability to connect a virtual network to a physical enterprise network using a technology called the Junosphere Connector. It allows you to connect to a physical network where there are no Juniper network elements that can test compatibility with elements from others manufacturers, or even open technologies.
Juniper offers two types of funding. This is either pay-as-you-go or paid only for utilized performance, or an annual subscription with several levels of limitation. The first option is paid mainly to customers who use the service only short-term with low demands on performance and capacity. The subscription is again attractive for those, who use the services for longer periods of time, depends only on intensity of use, depending on that one of the prepared plans can be selected.
As already mentioned, Junosphere primarily focuses on large enterprises engaged in the architecture of computer networking. It will be used mainly by experienced professionals in the field, or companies that want to independently independently try out possible future physical solutions topology of computer network.
The great advantage is guaranteed stability, high availability and the ability to provide uncompromising performance comparable to physical solutions. Additionally, advanced integration capabilities in today’s network topology are another benefit.
Although it is a paid service, it is possible to save the considerable costs that would have to be spent on purchasing very expensive network devices from Juniper. The disadvantage is primarily dependence on Juniper technologies.
This chapter is dedicated to virtualization technology used in cloud data centers for production purposes. Primarily, it focuses on the technologies used in the virtual network infrastructure of these environments, on their creation, management and supervision.
It introduces the Network Fuctions Virtualization (NFV) framework that unifies individual parts of the cloud infrastructure.