• No results found

Infrastructure layer involved elements

CHAPTER 3. TEST TOPOLOGY SETUP

3.2 Infrastructure layer involved elements

The infrastructure layer is based upon the compatibility with the selected ONOS version controllers. The forwarding devices, must be capable of handling traffic according to the path establishment method used in the SDN environment. Additionally, it must give the necessary performance to approximate realistic network deployments, and not to interfere with the measurements made in this research. In this sense, there were several software and hardware considerations.

3.2.1 Software selection

To emulate the infrastructure layer, it was necessary to include a software solution that could allow the implementation of virtual switches with OpenFlow capabilities, and to establish an interface with the SDN controller throughout the hardware and the physical interconnection. The solution needed to perform the packet treatment and transmission process in the virtual network, the same way

7 Apache Software Foundation. Karaf. Retrieved from Apache Software Foundation:

http://karaf.apache.org/

8 Apache Software Foundation. (2010). Apache Zookeeper. Retrieved from Apache Software

Foundation: https://zookeeper.apache.org/

9 Apache Software Foundation. (2015). Apache Maven. Retrieved from Apache Software

as it should be in a physical topology. Therefore, a couple of existing solutions were observed for these purposes: OpenWrt image, and Mininet.

 OpenWrt, is a Linux distribution for embedded devices [15]. It allows to customize a hardware device from any vendor through the use of packages, achieving any application desired for the device. In essence, it is a framework to develop a Linux based firmware for a given device to perform specific tasks. In this case, OpenWrt was meant to implement an OpenFlow switch firmware over the available hardware (MikroTik routing devices) in order for these routers to perform as an OpenFlow switch.

 Mininet, as its states in the official site, “creates a realistic virtual network, running real kernel, switch and application code, on a single machine (VM, cloud or native)” (Mininet, 2015)10. It works directly with OpenFlow, allowing

the interaction with all vendors of SDN controllers, and the inclusion of several versions of OpenFlow virtual switches. It comes with installable packages for NOX, POX, and RYU SDN controllers, default kernel-space and user-space Open Vswitch with OpenFlow 1.0, and CPqD user-space virtual switch with OpenFlow 1.3.

Table 3.3 illustrates a comparison of the compatibility of OpenWrt, and Mininet with the test topology, and the selected SDN controller:

Table 3.3 - Infrastructure layer compatibility

Compatibility OpenWrt Mininet

Available OpenFlow switch at time of

selection

1) Open Vswitch OF 1.3 (User space) 2) CPqD OF 1.3 (User space) 1) Open Vswitch OF 1.3 (User/kernel space) 2) CPqD OF 1.3 (User space) ONOS

Interoperability YES YES

Proactive

Forwarding Support YES YES

Segment Routing

Support NO YES

Test scenario requirements

1) 10 physical network

devices (switches or routers). 2) additional devices for the control network and

monitoring. 3) UTP cabling for interconnections. 4) Physical hosts

1) 1 Physical computer hardware 2) Single UTP cabling

10 Mininet. (2015). Mininet; An Instant Virtual Network on your Laptop (or other PC). Retrieved

Despite that OpenWrt would have given a more realistic infrastructure layer, by using physical hosts and devices, it doesn’t support the use of Segment Routing, which is one of the path establishment methods that was meant to be tested in the network topology. At time of selection, the supported versions of Open Vswitch within OpenWrt and Mininet did not support a feature called group- chaining [17], which is an optional feature of OpenFlow 1.3 that uses a group entry to points out a packet to a secondary group, and even to a third group or output port. This action is necessary to carry out the segment sequencing in the IP packet (Only CPqD had support for this feature).

The CPqD version in OpenWrt did not support Segment Routing either, in which the reason is not clear since the Segment Routing driver supports the virtual switch through OpenFlow 1.3 [18]. However, it is suspected that the hardware implied in the Mikrotik router could limit the ability of the controller to use the full OpenFlow pipeline that enables the use of the necessary flow tables and group tables, but there was no documentation found on the Mikrotik routers to support this assumption. What was observed, was that during the interconnection of the Mikrotik routers with the SPRING-OPEN controller, the controller was unable to establish IP, MPLS, and ACL flow tables, and group tables as well.

Having this considerable limitation with Segment Routing, it was decided to use Mininet to emulate the infrastructure layer under a single hardware. This setup will limit the topology in terms of bandwidth, since the supported virtual switch (CPqD switch) works on user-space level, and each switch in the topology will share hardware resources in the treatment of traffic. Nevertheless, in lower bandwidths the performance of the network is expected to be with high throughput and no packet loss in the traffic.

3.2.2 Hardware selection

There is no clear indication about what the minimum hardware requirements should be for Mininet. However, a small topology based on 10 switches and a traffic generated by only 2 hosts, doesn’t require a demanding load processing for the hardware. Normally, if a virtual machine is used to host the Mininet application, its default settings of hardware resources are a single core processor, and a 1024MB of RAM memory according to the recommended downloadable virtual machine image for Mininet [19].

Based on this initial reference, a computer with similar hardware resources was available to host the Mininet application. The specifications of the selected computer are the following:

 3.4GHz Intel® Pentium® D dual core processor  1GB RAM memory

 64bit Ubuntu 14.04.01  1Gbps Ethernet NIC

Related documents