• No results found

The background of WiMAX and multicasting technology and its application were discussed. Multicast scheduling and network selection are the backbones of this review of related studies. In the context of multicast scheduling, a single network was considered, whereas most studies ignored QoS of multicast services, and most of them only considered the transmission rate based on the channel condition. In network selection, multiple networks were considered, and a heterogeneous network that involves cooperative networks was intensively discussed. Further, most studies focused on network selection of individual multicast group members. This implies that group members who belong to the same multicast group may receive content through multiple networks that are bandwidth consuming.

CHAPTER 3

3 VIRTUALIZATION OF WIMAX

NETWORK

3.1. Introduction

Research studies [21], [64], [65] and [66] have only focused on network equipment virtualization and resource sharing. They have ignored how efficiently multicast services would perform when provisioned over virtualized networks. This chapter discusses and analyses the virtualization concept because of its relevance and benefit to users and network operators, virtualization types, and virtualization technologies. This analysis focuses on the network virtualization and application of virtualization. In addition, this thesis chapter highlights the importance of multicast service virtualization. Similarly, related studies match the objectives of the thesis which are formulated in the context of virtualization of multicast services in WiMAX networks. As seen from the previous chapter, in a heterogeneous multicast based system there is an inefficient use of bandwidth when similar multicast services are delivered through multiple virtual networks instead of being delivered through a single network. Virtualization as a solution enables the delivery of the similar multicast service through a single virtual network since virtualization allows multiple virtual networks to run on a single physical network.

3.2. Virtualization principles

Virtualization is one technique that is used to reduce the cost of information technology architectures by improving the efficiency and agility for small and medium-sized businesses. Virtualization has the ability to emulate the software functionality and hardware platforms of servers, storage devices and network resources. Thus, in a virtualization environment, functions are separated from virtual instances, and able to perform like traditional hardware. There exists a hosting hardware which supports virtual instances of functionalities. Four types of virtualization are described and summarised in references [67], [68] and [69], and these are:

 Virtualization of server

 Virtualization of desktop

 Virtualization of storage

 Virtualization of application

Virtualization of server is the act of creating virtual servers by partitioning the physical

server into several small virtual servers. A hypervisor that monitors virtual machines is used to run a virtualized memory and CPU allocation of services provided over virtual instances of computing devices. Each virtual server is installed with an individual operating system, independently of the host operating system and other virtual servers.

Virtualization of desktop is the action of separating a computer desktop environment from a

physical computer. Virtual desktops run on the datacenter’s servers which are reliable and more powerful than traditional personal computers. The users applications have to connect and run on servers in the datacenter and this reduces the traffic and extends the network resources. It enables IT organizations to efficiently and flexibly manage the enterprise desktop environments. Two types of desktop virtualization have been defined: server-based, and client-based.

Virtualization of storage is the act of creating logical storage by aggregating all the physical

storage resources that are found over the network. It creates the extension of a new hardware or software layer between the existing storage servers. There is no need for applications to determine on which particular drives, partitions, or subsystems storage the data reside.

Virtualization of application is the encapsulation of a computer program by software

technology that runs on the same operating system on which it is executed. A service or application works as if it has a direct interface connecting it to the original operating system, and all resources behave as if they were managed by it, when in reality they are not. The purpose for virtualization of applications is an easy deployment and it also determines how applications can interact.

3.3. Virtualization Setup

This section discusses server virtualization environment setup since it is related to the main work of this chapter. Server virtualization hides the underling physical resources and divides them between several newly created virtual instances. For the users who use servers, it appears as if there are many physical servers, each with its own operating system, and the users are not aware of the virtualization process. There are five different techniques used in server virtualization: emulation, para-virtualization, operating system virtualization, full virtualization, and hardware-layer virtualization.

Emulation: In this type of virtualization, the hardware architecture is emulated by the virtual

environment to meet the unmodified guest OS requirements. The mobile device is an example in which emulated hardware is found; mobile smart phones are emulated on a desktop PC, where application developers use the emulated environment which is shown in Figure 3.1 to test the applications designed to run on smart phones. This technique makes one computer system behave like a different computer system. The technology offers low performance and high resource utilisation [69], [70]. The following are examples of emulation: Quick Emulator (QUEMU), VMware products, Boschs and Parallels.

Figure 3.1. Emulated-virtualization environment.

Hardware-layer virtualization

Hardware-layer virtualization is mostly used in the server market because of its high performance in virtual machine isolation [69], [70]. VMM runs directly on hardware, as shown in Figure 3.2. It controls and synchronises the access of the guest OS to the hardware

resources. In this section various existing virtualization setup and processes are described. This differs from the way virtualization is set up. In this thesis, since NS-3 is used as a tool to implement virtualization of multicast services in WiMAX networks, the emulation type is used since other simulation needs real-time implementation which requires hardware equipment for the implementation.

Figure 3.2. Hardware layer virtualization.

Operating system-level virtualization is the process of server virtualization on top of the

operating system itself, and there is no virtual machine created [69], [70], as shown in Figure 3.3. The virtualization functionalities are completely configured within a single OS. The guest servers are isolated from one another and must use the same OS. Kernel is an example of operating system-level virtualization.

Para-virtualization is a technique that modifies the guest OS and enables multiple modified

OS to run on top of a thin layer called hypervisor or virtual machine monitor (VMM) as shown in Figure 3.4 below. The virtual machines run as modified OS and are aware that they are running in a virtualized environment [69], [70]. Xen, Unified Modeling Language (UML), Kernel-based Virtual Machine (KVM), Linux Containers (LXCs) and Open Virtuozzo (OpenVZ) are examples of para-virtualization.

Figure 3.4. Para-virtualization environment.

Full virtualization is similar to para-virtualization. However, the virtual machine manager is

required to link the guest operating system and the host hardware [69], [70]. The unmodified guest OS runs within a virtualized environment with the support of underlying hardware as illustrated in Figure 3.5 below. The hypervisor creates several virtual machines, and each runs a different OS to avoid the failure of one from affecting the other. Individual machines must be simulated and completely isolated from one another. Complete OS installations are the virtualized images which can be very big folders, and therefore significant performance hits can occur and affect input/output. VMware, Virtual Box and Z/VM (Heavy weight) are examples of full virtualization.

Figure 3.5. Full virtualization environment.

Related documents