International Journal of Application or Innovation in Engineering & Management (IJAIEM) Web Site: www.ijaiem.org Email: editor@ijaiem.org, editorijaiem@gmail.com Volume 3, Issue 2, February 2014 ISSN 2319 - 4847 A Walk in the Clouds: Towards Virtualization Obed Ali Surti Lecturer, Department of Electronics and Telecommunication, St. Francis Institute of Technology, Mumbai. Abstract Users want to access services over lightweight portable devices rather than some traditional desktop computers. In such situation, who will then supply the required computing power? The answer is cloud computing. Cloud computing is known as an environment of Information Technology (IT) that includes all elements of the network and consumption of services. A foundation of cloud computing is technically based on virtualization. Network virtualization and cloud computing technologies are good alternative to each other. The key elements of IT environments are integration and infrastructure management and service orientation supports the functions of both these elements. The application of Service Oriented Architecture (SOA) in network virtualization enables a Network as a Service (NaaS) paradigm. In this paper service oriented virtualization has been discussed in cloud computing and the comparative study of impact of virtualization on network and cloud is done. Keywords: Cloud Computing, Virtualization, Service Oriented Architecture (SOA), Network-as-a-Service (NaaS). 1. INTRODUCTION Cloud is a space that exists on the network. Computing is designing, developing and managing various kinds of information or computers that can be used on the network. Cloud computing has been defined by various bodies. The essential characteristics of cloud are on demand service, broad network access, resource pooling, elasticity etc. Currently cloud computing is facing various issues such as lack of flexibility for user interface, computing components are tightly coupled, users are often tied with one cloud provider, lack of Service Level Agreement (SLA) supports etc. [1] [2]. Cloud computing get its name from the internet. Cloud computing technology helps to reduce operational and capital costs providing scalability, elasticity and storage resources [3]. Cloud computing stores data away into large data centres [4]. The development of many data intensive applications has been done in this computing environment. It also helps users to access services anytime and anywhere. Due to the flexibility and transparency in cloud computing more data intensive applications are developed [5]. Networking plays an important role in cloud computing. Virtualization is essential to cloud computing [6]. The physical resources get abstracted from a platform into different resources and each of these resources is called a Virtual Machine (VM) [7]. The different types of virtualization are discussed in this paper [8], [9] and [10]. Network virtualization is defined by breaking Internet Service Providers (ISPs) into two different bodies, the Infrastructure Providers (InPs), and the Service Providers (SPs) [11]. The network virtualized environment and virtualization algorithms gives a better understanding in cloud. Most of the existing research work related to network virtualization can at best be described as attempts to fix existing problems, rather than to build a complete Network Virtualization Environment (NVE) because of this several aspects of network virtualization remain unexplored and many others require modification and improvement [11]. One of the major problems in virtualization and computer network is congestion. A better solution to the problem is provided by discussing various algorithms for virtualization [12]. For securing and preserving data in cloud third party auditors can be used. In [13] and [14] a secure cloud storage system supporting auditing is proposed. Packet aggregation algorithm has been discussed which is proposed in [15] for improving network I/O virtualization for cloud computing. SOA is an approach to organizing information technology. In a cloud based environment by the help of service oriented network virtualization a Network-as-a-Service (NaaS) paradigm is made available for utilizing network services [16]. SOA has been defined by various bodies [17]. In this paper, discussion about cloud computing, virtualization and SOA has been done. SOC and cloud computing are opposite to each other but when combined the disadvantages of SOC can serve as advantage of cloud computing and vice versa [18]. Issues such as lack of flexibility for user interface, computing components are tightly coupled; users are often tied with one cloud provider, lack of SLA supports are discussed in this paper. A detailed survey on emerging field like network cloud convergence is presented in this paper. The different types of virtualization are discussed in this paper. The summarization of complete NVE is done in this paper. Discussion on various algorithms of virtualization is done in this paper. This paper gives a comprehensive survey on enabling key technologies of the NaaS paradigm for supporting network cloud convergence. This paper discusses the key elements of a web based implementation of SOA and its operation in detail and a layered structure of service oriented network virtualization. In this paper a comparative analysis is done of virtualization on network and cloud. Volume 3, Issue 2, February 2014 Page 252 International Journal of Application or Innovation in Engineering & Management (IJAIEM) Web Site: www.ijaiem.org Email: editor@ijaiem.org, editorijaiem@gmail.com Volume 3, Issue 2, February 2014 ISSN 2319 - 4847 2. CLOUD COMPUTING Set The internet is shown in network diagrams in a cloud. The cloud icon represents all the other stuff that is going on in the background that makes the network work. Fig. 1 shows internet in a cloud. It is like various activities for the rest of the solution in the background [3]. Fig. 1. Cloud used to represent the internet 2.1 Definition of Cloud Computing Cloud computing is an architecture for storing data and accessing services which is available anytime, user friendly and scalable. This cloud model is composed of few essential characteristics, service models and deployment models [1]. 2.2 Essential Characteristics The essential characteristics of cloud computing has been discussed in [1] they are as follows: Users can take provision on demand services, computing capabilities and network storage as needed automatically without requiring interaction with each service provider. Services are available and can be accessed over the network anytime and anywhere hence there is broad network access. Using a multiple access model the resources are pooled to serve multiple consumers at a time. It is scalable and user can know the usage anytime. 2.3 Service Models Software as a Service (SaaS): It provides software to the users as demanded by the user so that users can login and use it. A lot of software’s and applications are available which can be readily available for users to use on demand. Platform as a Service (PaaS): The cloud provides platforms so that software’s can run on it; users can include operating system, programming language, etc. Infrastructure as a Service (IaaS): It provides infrastructure so that users can use the infrastructure which can include virtual machine, ip address, etc. Here users do not control the cloud. 2.4 Deployment Models The deployment models have been discussed in [1] they are as follows: Private cloud: It is entirely for an organization. The organization can manage and control it Community cloud: It is shared within a community or between many organizations for a specific purpose. It is cost effective as can be shared. Public cloud: It is a cloud which is for public use but it is not necessarily free. It is made available to public by service providers. Hybrid cloud: It is a combination of clouds, mostly private clouds. 3. VIRTUALIZATION IN CLOUD BASED ENVIRONMENT Virtualization is a fast growing technology that separate primary resources in platform into many other platforms or infrastructure. Virtualization is a combination of software and hardware engineering that creates virtual machines which allows a single machine to act as if it where many machines [7]. 3.1 Virtualization Types Few types of virtualization are as follows: 1) Hardware virtualization 2) Desktop virtualization 3) Software virtualization 4) Storage virtualization 5) Data virtualization 6) Memory virtualization 7) Network virtualization 8) I/O virtualization Fig. 2. Types of virtualization Volume 3, Issue 2, February 2014 Page 253 International Journal of Application or Innovation in Engineering & Management (IJAIEM) Web Site: www.ijaiem.org Email: editor@ijaiem.org, editorijaiem@gmail.com Volume 3, Issue 2, February 2014 ISSN 2319 - 4847 Virtualization can be done in hardware, desktop, software, storage, data, memory network and I/O as shown in Fig. 2. Hardware virtualization is creation of virtual hardware structures that acts as a set of hardware. It seems that there are many machines acting but there is only one virtualized machine. Desktop Virtualization is an advance version of hardware virtualization. In desktop virtualization the users can access standard operating system in a virtual machine [8]. Software virtualization is virtualization of applications, software’s or programs. Storage virtualization is storage of multiple devices into a single storage device [9]. Data virtualization is the abstraction of data or managing data stored in a virtualized manner. Memory virtualization uses a memory space that is independent of other processes running in the same system on the physical memory. Network virtualization is nothing but virtual LANs, virtual IPs and virtual private networks which eliminate the use of traditional methods [9]. Input/output (I/O) virtualization is a method to minimize costs and improve performance of servers. It is abstraction of upper layer from physical connections [10]. 3.2 Virtualization Algorithms Few virtualization algorithms are mentioned below: 1- Packet aggregation algorithm and packet extraction algorithm. In packet aggregation algorithm smaller packets are combined into one large packet. These large packet forms a train of packets. Then they are assembled in containers. These containers are then transferred through channel. In packet extraction algorithm there is an unloader, the unloader unloads the packet from the container then the packets are extracted and send to the unloader [15]. 2- Load balancing algorithms in virtualization To avoid congestion few load balancing algorithms are as follows: 3- Load balancing using specialized server For easy execution specialized servers are created as virtual machines. The main server handles all types of requests but if the capacity increases than the limit of handling then load balancing will be according to the request of the user. Fig. 3. Load balancing using specialized server The specialized servers are arranged in a specific order. The types of requests are handled by the type of server as shown in Fig. 3 and the users request will be sorted accordingly and forwarded to specific server [12]. 4- Round-Robin Algorithm Round-robin is the simplest algorithm as only information of nodes is required when implementing a simple scheduler. This algorithm is used to distribute load among nodes. This algorithm overturns the list, returning the nodes one by one and at the end of the list, the algorithm starts again from the beginning [12]. 5- Equally Spread Active Execution Using load balancing for specialized server is not that efficient sometimes the servers can get overloaded. In round robin algorithm if random users arrive at a time then the same node will be chosen hence the node will get overloaded like a bottleneck in the system hence we can use equally spread active execution. Fig. 4. Equally spread active execution load to the cloud system Volume 3, Issue 2, February 2014 Page 254 International Journal of Application or Innovation in Engineering & Management (IJAIEM) Web Site: www.ijaiem.org Email: editor@ijaiem.org, editorijaiem@gmail.com Volume 3, Issue 2, February 2014 ISSN 2319 - 4847 Equally spread active execution is as shown in Fig. 4 where equal load distributing improves performance by transferring load from heavily loaded server to lightly loaded server [12]. 6- Auditing Algorithm for Cloud Storage Fig. 5. Cloud data storage service Three different entities are present in cloud data storage service they are the users, the cloud servers and the third party auditor [13] they are as shown in Fig. 5. The users want to store large amount of data in the cloud. The service provider manages the cloud servers and provides data storage services through various resources to the users. The auditor is a trusted third party organization that has expertise and capabilities to provide unbiased data storage auditing service for both the owners and servers [14]. 3.3 Network Virtualization The current IP based internet cannot do innovation in it hence network virtualization has been proposed. A network virtualization environment (NVE) has been shown in Fig. 6. [11]. Here instead of service provider there are two different entities one is the infrastructure providers and the other is infrastructure providers. Fig. 6. Network Virtualization Environment 4. SOA BASED VIRTUALIZATION 4.1 Introduction to SOA Cloud computing and service oriented computing is opposite to each other and facing various issues but their combination can overcome these issues which they are facing individually. Cloud computing provides on demand access and elasticity, while SOC provides low cost and reliable access. The SOC consists of software applications which refers to the set of rules and methods that represent computing in SOA [18]. The SOA is defined as an architectural model in an IT environment which provides loose coupling of services. SOA provides interoperability of current and emerging business services. Fig. 7. SOA implementation Volume 3, Issue 2, February 2014 Page 255 International Journal of Application or Innovation in Engineering & Management (IJAIEM) Web Site: www.ijaiem.org Email: editor@ijaiem.org, editorijaiem@gmail.com Volume 3, Issue 2, February 2014 ISSN 2319 - 4847 Implementation of SOA is as shown in Fig. 7. It includes user, service provider and broker. First a service request is send by the user to the broker. The broker sends an inquiry to the service provider. The service provider publishes the service as shown in Fig. 7. [16]. Now the broker discovers the service and reply to the user so at the end service is accessed by the user. 4.2 Network virtualization in Service Oriented Architecture Fig. 8. Service oriented network virtualization Network virtualization is very popular and has made significant progress still it has to face various challenges. The solution to these challenges can be overcome by service oriented architecture. SOA is an architecture which provides flexible and effective interaction among InPs, SPs and applications. A service oriented network virtualization is as shown in Fig. 8. In this service providers access networking resources via IaaS the end users access the network services which is Naas for a particular application [16]. 4.3 NaaS (Network-as-a-Service) A layered framework for enabling the convergence of networking and cloud computing is as shown in Fig. 9. This enables a NaaS paradigm in a cloud environment. Fig. 9. Naas framework In this convergence, NaaS discovers the services required by the user and then enables matching cloud service requirements with networking capabilities. The loose coupling feature of SOA provides flexibility in network cloud convergence [16]. 5. COMPARATIVE ANALYSIS 5.1 Impact of Virtualization on Network and Cloud Table 1: A comparison of virtualization on network and cloud Impact of virtualization on Impact of virtualization on network cloud Administer needs to scale the It is more scalable network There is a limit to it and VM It provides flexibility mobility is an issue Bandwidth can be wasted Bandwidth is not wasted It is not a database It requires some structure Volume 3, Issue 2, February 2014 It act as a database and can be used for storage It has service model structure Page 256 International Journal of Application or Innovation in Engineering & Management (IJAIEM) Web Site: www.ijaiem.org Email: editor@ijaiem.org, editorijaiem@gmail.com Volume 3, Issue 2, February 2014 ISSN 2319 - 4847 In virtualization there is high bandwidth due to this the bandwidth can be wasted. The administer needs to scale the network accordingly. Hence there is a limit to it and mobility is an issue. In cloud the user gets more flexibility, scalability and bandwidth is not wasted. It acts as a database and can be used for storage. CONCLUSION Virtualization is essentially required in cloud computing. Virtualization in cloud computing enables a converged infrastructure. In this paper various types of virtualization have been discussed and a detailed survey of few algorithms for improving virtualization has been presented. Cloud computing is a transformative technology with significant potential to solve data related problems. Cloud computing is flexible, elastic and minimizes complexity. This makes it user friendly and access of data is anytime anywhere. The service oriented architecture offers integration of services and may facilitate Network-as-a-Service (NaaS) in cloud based virtualization. This report also presents concepts of SOA based virtualization. Different types of clouds can be combined together to form one giant cloud that is called as sky computing. From this study of virtualization it can be concluded that by merging such clouds it is possible to avail various in sky computing. There is a tremendous scope for research in this emerging technology. ACKNOWLEDGMENT Thanks to Joanne Gomes for providing her help and assistance in this research. References [1] P. Mell and T. Grance. (2010, Nov. 15). The NIST Definition of Cloud Computing. [Online]. Available: http://www.csrc.nist.gov/groups/SNS/cloud-computing/index.html. (technical report style) [2] W. Tsai, X. Sun and J. Balasooriya, "Service-Oriented Cloud Computing Architecture," Int. Conf. Information Technology: New Generations, pp. 684-689, Apr. 2010. (conference style) [3] T. Velte, A. Velte and R. Elsenpeter, “cloud computing basics,” in Cloud Computing: A Practical Approach, TATA McGraw-Hill, Inc., New York, NY. 2009. (book style) [4] M.D. Dikaiakos, D. Katsaros, P. Mehra, G. Pallis and A. Vakali, "Cloud Computing: Distributed Internet Computing for IT and Scientific Research," Internet Computing, IEEE, vol. 13, no. 5, pp. 10-13, Oct. 2009. (technical report style) [5] J. Lin, C. Chen and J. Chang, "QoS-Aware Data Replication for Data Intensive Applications in Cloud Computing Systems," IEEE Trans. Cloud Computing, vol. 1, no. 99, pp. 1, Jul. 2013. (technical report style) [6] H-Yi. Tsai, M. Siebenhaar, A. Miede, Y. Huang and R. Steinmetz, "Threat as a Service?: Virtualization's Impact on Cloud Security," IT Professional, vol. 14, no. 1, pp. 32-37, Jan. 2012. (technical report style) [7] T. Burger. (2013, Aug. 10). Virtualization [Online]. Available: http://software.intel.com/en-us/articles/theadvantages-of-using-virtualization-technology-in-the-enterprise. (General Internet site) [8] T. PETROVIC AND K. FERTALJ, “Demystifying desktop virtualization,” in Proc. Int. conf. on Appl. Comput. Sci., Oct. 2009, pp. 241-246. (conference style) [9] J. Hoopes, “An introduction to virtualization”, in virtualization for security, Burlington M.A: Syngress, 2009, ch.1, pp 26-30. (book chapter style) [10] S. Lowe. (2013, Aug. 10). Benefiting from I/O virtualization [Online]. Available: http://en.wikipedia.org/wiki/I/O_virtualization#cite_note-ssv-1. (General Internet site) [11] N.M.M.K Chowdhury and R. Boutaba, "Network virtualization: state of the art and research challenges,” IEEE Commun. Mag., vol. 47, no. 7, pp. 20-26, Jul. 2009. (technical report style) [12] Chaudhari and A. Kapadia, “Load Balancing Algorithm for Azure Virtualization with Specialized VM’s,” Int. J. Innovations in Eng. & Technology, vol. 2, no. 3, pp. 216-223, Jun. 2013. (journal style) [13] Wang, S.Chow, Q. Wang; K. Ren and W. Lou, "Privacy-Preserving Public Auditing for Secure Cloud Storage," IEEE Trans. Comput., vol. 62, no. 2, pp. 362-375, Feb. 2013. (technical report style) [14] K. Yang and X. Jia, "An Efficient and Secure Dynamic Auditing Protocol for Data Storage in Cloud Computing," IEEE Trans. Parallel and Distributed Syst., vol. 24, no. 9, pp. 1717-1726, Sep. 2013. (technical report style) [15] M. Bourguiba, K. Haddadou, E. Korbi and G. Pujolle, "Improving Network I/O Virtualization for Cloud Computing," IEEE Trans. Parallel and Distributed Syst., vol. 99, no. 1, pp. 1-11, May. 2013. (technical report style) [16] Q. Duan, Y. Yan and A.V. Vasilakos, "A Survey on Service-Oriented Network Virtualization Toward Convergence of Networking and Cloud Computing," IEEE Trans. Network and Service Manage., vol. 9, no. 4, pp. 373-392, Dec. 2012. (technical report style) [17] L. O'Brien, P. Merson and L. Bass, “Quality Attributes for Service-Oriented Architectures”, in Proc. Int. Workshop on Syst. Develop. SOA Environments, May. 2007, pp. 1-30. (conference style) [18] Y. Wei and M.B. Blake, "Service-Oriented Computing and Cloud Computing: Challenges and Opportunities," Internet Computing, IEEE, vol. 14, no. 6, pp. 72-75, Dec. 2010. (technical report style) Volume 3, Issue 2, February 2014 Page 257 International Journal of Application or Innovation in Engineering & Management (IJAIEM) Web Site: www.ijaiem.org Email: editor@ijaiem.org, editorijaiem@gmail.com Volume 3, Issue 2, February 2014 ISSN 2319 - 4847 AUTHOR Obed Ali Surti received the B.E. degree in Electronics and Telecommunication Engineering from Rizvi college of Engineering in 2010 and pursuing M.E. degree in Electronics and Telecommunication Engineering from St. Francis Institute of Technology, respectively. Currently working in St. Francis Institute of Technology as a Lecturer. Volume 3, Issue 2, February 2014 Page 258