Implementing Cloud Based Virtual Computer Network Labs for Online Education: Experiences from a Phased Approach

—Online instruction rather easily accommodates courses in some fields such as history, sociology, business administration and political sciences. However, it poses significant challenges for courses in technical fields that require hands-on experimentation. Courses in the computer networking area constitute such an example. Given the demand for online courses and the trend for migration to online mode, there is a need to devise strategies that would allow students to conduct computing experiments remotely. Virtualization is a rapidly evolving technology that provides opportunities for online computer education. Through virtualization tools, it is possible to convert brick-and-mortar labs into virtual network labs. Using online virtual network lab tools, students may build, troubleshoot and test networks using their personal computers and, thereby, eliminate the commute to the labs. Cloud technology, another rapidly growing field, can help an organization achieve significant savings in IT services and infrastructure costs, as well as enhance IT support for organizational operations. Confluence of cloud and virtualization technologies present new opportunities for online education. However, there are significant issues to surmount in order to apply these technologies to computing-related courses and in particular to online computer networking courses. This paper presents experiences gained from transforming a traditional computer lab into an online virtual domain at the authors' university. The network lab described in this paper is utilized mostly for graduate computer networking, network security and wireless networking courses. The phased approach depicted in this paper should help academic institutions gain insights into technical and operational challenges in building and operating an online virtual lab.


INTRODUCTION
Online courses in academia are rapidly becoming an alternative to face-to-face education methods. Through online courses students can avoid commuting times, enjoy flexible learning schedules as well as educational opportunities at geographically disperse locations. Online education affords students access to academic resources free from time and location constraints. Using distance education technologies, teamwork and group projects, tests, and assignments can easily be scheduled and executed; and a high level of interaction between students and instructors as well as among students becomes possible. Recent sur-veys reveal that distance education and online learning programs are growing at a much faster pace than their face-to-face counterparts [1].
Deployment of online courses is not an equally straightforward task in every academic field. While some disciplines, such as social sciences and business education lend themselves more easily to online education, other technical disciplines such as computer science (CS) and management information systems (MIS) pose significant challenges in transitioning to online education due to the lack of applicable educational tools and technologies. For disciplines such as social sciences and business education, mature technologies to support online education readily exist. In particular, E-learning platforms allow ease in deployment of courses by providing three key online instructional components [2]. The first component, content management system (CMS), allows offering online course material using web and Internet technologies. The second component, learning management system (LMS), provides numerous online tools for assignments, grading and student advising. The third component, communications component (CC) provides forum, messaging and collaboration tools. Traditional e-learning platform products such as Blackboard, Edmodo and Moodle provide most of the capabilities listed above. While these technologies can be also deployed in MIS and CS fields, additional difficulties must be overcome for full online course deployments. These difficulties primarily arise from providing laboratory and technical support for MIS and CS courses. Lately, considerable research and development effort has been devoted toward this end. For example, methodologies such as Blended Learning [3] and Synchronous Distance Learning [4] present strategies to overcome the aforementioned difficulties. However, it is still safe to say that the lack of mature tools, methodologies and operational procedures -to assist deployment of online computing labs and in particular computer network labs -still persists.
This paper focuses on technological and operational insights gained from a phased approach employed to make computer networking labs online at University of Houston-Clear Lake (UHCL) MIS Department. Online network lab effort has been an ongoing process in MIS department since 2005. During this period, different approaches have been implemented and tested to allow online experimentation. Those efforts resulted in five distinct phases as presented later in the paper. It was found that the phased approach enabled faculty to better understand available technologies, determine their suitability for the departmental goals and ensure their compliance with PAPER IMPLEMENTING CLOUD BASED VIRTUAL COMPUTER NETWORK LABS FOR ONLINE EDUCATION: EXPERIENCES FROM… the university policies. Efforts from the phased approach also provided a key insight into capacity and operational requirements for online instruction.
The methodologies explained in subsequent sections rely on three key technologies: Virtual Private Networks (VPN), Virtualization, and Cloud Technology. In particular, recent advances in virtualization and cloud computing technologies show promise in transitioning traditional computing labs to online format. Nevertheless, it was the authors' experience that there are still challenges that need to be overcome in deployment of those technologies to make virtual labs on cloud a reality. A brief overview of two key technologies from the perspective of network labs is provided below.

II. VIRTUALIZATION AND NETWORK LABS
Virtualization is a field that is finding applications in many different business environments. It is also considered a symbiotic part of cloud computing as cloud-based server systems heavily rely on virtualization technologies. The term virtualization refers to the act of creating virtual version of a physical computing resource such as a hardware platform, computing appliance, network devices I/O devices and storage devices. The origins of virtualization dates back to 1960s when mainframe computers were the prime source of computation in academia and businesses. In mainframe systems, the computing resource was a shared resource among large number of users. In particular, the time sharing methodology of mainframe systems provided users with an illusion of having their own computing environment called virtual machine. At that time, a number of mainframe computer manufacturers introduced systems providing virtual machine environments that offered each mainframe user the view of a separate virtual computing environment with its own address space and virtual devices [5].
During the last decade, virtualization technology gained momentum with applications to server systems and other computing areas. Rapid growth of virtualization during this period can be attributed to numerous advantages this technology offered such as: (1) Flexibility, (2) Availability, (3) Scalability, (4) Hardware Utilization, (5) Security, (6) Adaptability to Workload Variations, (7) Load Balancing, and (8) Support for Legacy Applications. It should be noted that most of the benefits listed above ultimately result in a ninth advantage, cost benefit. With the stated benefits and availability of different categories of virtualization methods, it is possible to find applications of this technology in many fields. Categorization of virtualization technologies can be listed as Emulation, Native Virtualization, Para-virtualization, Operating System Level Virtualization, Resource Virtualization and Application Virtualization [7,6].
Network virtualization, can be considered as a special case of resource virtualization category. Network virtualization mostly refers to running multiple and concurrent virtual networks over a common physical network infrastructure [8]. Thus a single physical network may support multiple virtual networks each comprising of a collection of virtual network devices. Network virtualization is considered particularly helpful in testing and investigation of new network protocols, performance and networking concepts [9]. However, network virtualization may also mean creating a logical and in particular software-based views of network resources such as routers, hubs, switches and servers and subsequently building software representation of actual networks by using those logical devices. For example in a network consisting of interconnected routers, switches, hubs, servers and client computers, the functionality of each device is represented as a virtual instance of that device in software. Consequently, the entire network of devices becomes a software representation running on a single computer and behaving like the real physical network.
Network virtualization tools can be used for purposes such as network testing, education and prototyping. They can also be useful in creating virtual network labs for online and distant education [10,11,12]. It is, however, important to emphasize here that many of the proposed methodologies target different course audiences with different academic goals. While some of the methodologies utilize generic network device virtualizations, others target virtualization of particular brand of network components.
The benefits of virtualization technologies mentioned earlier can also be applicable to online virtual computer network lab implementations. As in other virtualizations, the primary motivation for virtual network labs remains the reduced cost of implementation and operation. A recent research indicates that, virtual computing labs may provide cost benefits up to 25 times better than traditional real labs [13,14]. In many cases, these savings can be attributed to lower cost of installation, maintenance, upgrade and administration of virtual labs. However, an equally important consideration in virtual network labs in academia is the convenience it may provide to students which can be considered as cost benefit from the perspective of students.

A. Cloud Computing
Cloud computing technology is considered as another important and rapidly growing trend in information technology. Despite the fact that it is a relatively new technology, it has already generated wide range of interests in numerous business fields even in the form of virtual enterprises [15]. Such a strong interest primarily stems from the fact that cloud technology allows transitioning of many business functions and processes into cloud resulting in cost savings.
The origin of cloud computing is usually accepted as late 2007 when IBM and Google announced their collaboration in this area [16]. Cloud computing is defined by the National Institute of Standards and Technology (NIST) as "a model that provides ubiquitous, convenient, on-demand network access to a shared pool of computing resources like servers, networks, storage, applications and services with minimal management effort and service provider interaction" [17].
The NIST report on Cloud Computing also describes four services models [17] in terms of location and provision of cloud services. These services are: (1) Private Cloud, where the services are provided internally in an organization, (2) Community Cloud, where multiple organizations jointly provide and share the services, (3) Public Cloud, where the services are provided for the use of the public for a fee, and (4) Hybrid Cloud, where any PAPER IMPLEMENTING CLOUD BASED VIRTUAL COMPUTER NETWORK LABS FOR ONLINE EDUCATION: EXPERIENCES FROM… combination of the first three models are utilized. Another commonly encountered categorization of cloud services is with regard to their deployment methods [18]. In this respect, cloud services are grouped into three categories: (1) Infrastructure as a Service (IaaS), where services are about providing processing, network and storage, (2) Platform as a Service (PaaS), where the services allow users to deploy their applications on the cloud infrastructure, and (3) Software as a Service (SaaS), where users utilize applications deployed by the cloud services providing company.
Characteristics that make cloud computing attractive to businesses and organizations can be listed as [19]: (1) Ondemand Self-service, (2) Service Elasticity, (3) Broad Network Access, (4) Resource Pooling, and (5) Measured Service. These characteristics give cloud computing a distinct advantage over traditional service deployments and hence make them attractive to different organizations including academia.

B. Cloud Computing in Academia
The deployment of cloud based services is rapidly growing in many industry sectors. Yet, cloud computing in academia constitutes only about 4% of the total cloud services deployments [20]. Although, there is increased interest in cloud computing in academia, the primary use of cloud computing in education still involves use of staples category of software services such as Google Docs, Gmail and Google Spreadsheet [21]. There have been a number of proposals [22] for deployment of computing labs and in particular computer network labs on clouds, the deployment of computer network labs to the cloud can be still considered in its infancy.
The primary reasons for the low adoption of cloud technology by some fields including academia can be explained by the following factors [23]: (1) Scope and Understanding of Cloud, (2) Misalignment and Conflict of Goals, (3) Quantifying of Benefits and Costs, (4) "It gets worse-before-better" Trap, (5) Issues Related to Standardization, (6) Issues Related to Governance and Security, (7) Issues related to Inter-organizational Dependence, (8) Skill development, and (9) Budget and Financial Constraints. For cloud based academic virtual network labs, many of these factors are also the key concerns about transitioning virtual network labs to public cloud servers. It should be noted that deployment of virtual network labs to public clouds can be considered as a form of IT services outsourcing [24] and the arguments applicable to outsourcing of IT services are considered equally valid to public cloud-based deployment of virtual network labs. As of writing of this manuscript, it appears that more research into cloud based deployment of computing labs will be needed before mature deployments can emerge.

A. History and Role of the Network Laboratory
The phased approach depicted in this paper was used for the network lab in MIS department at UHCL. The network lab was developed in 2005 with the primary goal of supporting computer network and network security courses. The equipment deployed in the laboratory primarily consisted of hardware and software products by Cisco, for reasons that will be explained shortly. However, products by other companies such as Juniper and Microsoft were also used to provide an insight into diversity of implementations. The product-specific lab implementation strategy was an integral part of certificationaugmented computing education, a strategic decision made in the MIS department at the time the laboratories were built. The key rationale behind certificationaugmented curriculum was and still is due to the increasing focus in the industry for students who are competent not only in concepts but also in hands-on applications of those concepts. Therefore, in many of the courses in the MIS department, students are encouraged and sometimes required to take industry certification exams as part of their coursework. Today, target certifications in MIS department include those provided by companies and organizations such Cisco, Oracle, Microsoft and EXIN. In order to support certification efforts, in many of the graduate courses including networking courses, lab experiments were enhanced to provide understanding of certification related concepts as well as core networking concepts. For computer networking courses, the MIS Computer network laboratory was supplemented with hardware and software components to allow students to prepare for Cisco CCNA, CCNA Security and also for CWNA certifications.
During the decade long use of the network lab, a number of issues, such as equipment upgrades, enrollment growth, lab scalability, operational support, and student commute have caused the faculty to investigate different experimentation approaches. The approaches described in this paper are the result of experiences gained from technical and operational methods deployed in the network lab. The subsequent sections explain those approaches in five phases as each phase utilized a different methodology.

B. Phase 1: Physical Network Laboratory
The first computer network laboratory implementation at the MIS department used the traditional lab model encountered in many traditional academic institutions. The initial deployment cost of the lab, which occupies approximately 2,500 square feet area, exceeded $250,000. The lab consisted of a physical laboratory space and requisite network hardware, software, appliance components. It also provided for supporting staff comprised of a lab supervisor, a technician and teaching assistants. Fig. 1 gives a general view of the network lab. work security. It also provided a lab environment for Unix system administration courses which heavily relied on networking. The equipment, tools and software were acquired and installed, that allowed students to prepare for CCNA, CCNA Security and CWNA certifications. Immediately after the deployment, the lab proved to be a strategic tool for enhancing a student's conceptual as well as practical understanding of networking concepts. Nevertheless, one challenge the lab posed was the commuting time for students living considerable distance away from the university.

C. Phase 2: Network Laboratory with Virtual Lab Presence
The UHCL campus serves students from a wide metropolitan area and student commute times in excess of one hour is not uncommon. In a semester-long graduate network course, a student may conduct a number of experiments, with each experiment requiring four or more hours, thus making it difficult for commuting students to allocate the requisite time. This specific issue has led the MIS faculty to investigate online experimentation as an alternative and provide remote access to network lab facilities to students by creating a virtual lab presence. Virtual presence provides students access to lab resources over the Internet and allows them to conduct experiments from their own premises using their own computers. The virtual lab presence was achieved through a set of network technologies which included a firewall, an authentication server and a virtual private network (VPN) technology [26]. Thus, virtual presence gave commuting students the choice of conducting the experiments remotely. Virtual presence has been a valuable service for the commuting students. However, it required a dedicated set of experimental pods shown in Fig. 3 to be reserved solely for remote experiments. Dedicated pods created resource issues as will be explained in next section. Additionally, real time TA support for students was also required for remote experiments. In order to alleviate the student competition for lab resources and TA time, the lab hours were extended until 10 pm. Additional lab hours during the weekends were also scheduled. Consequently, remote access lab support resulted in increased TA involvement in the network lab in the form of real-time online interaction with remote students.

D. Phase 3: Network Laboratory with Virtual Labs on Desktops
The virtual presence approach, while effective in providing remote access to the network lab, was not as effective in case of a large class enrollment, due to the need to reserve a larger number of physical lab experimental pods for remote access. This scenario also required more work on part of the TAs to support the remote students. Larger enrollment also resulted in more frequent replacement of and upgrade to the lab equipment. On the average, every three years, costly replacements and upgrades were needed in the network lab due to concerns arising from outdated technology, warranty issues and wear-and-tear of the equipment.
In order to address those issues, the focus was placed on the network lab virtualization tools to be deployed on the lab desktop computers starting in year 2010. An important task in the desktop-based virtual lab approach was the identification and selection of virtual network lab software that would align with the academic objectives of the MIS department. The commercially available software that provide virtual network lab implementations included NS-2, OPNET IT Guru, GNS3 Network Simulator, Tetcos Netsim Network simulator, CORE Network Simulator, Cloonix Network Simulator, Boson Netsim Network Simulator, IMUNES Network Simulator, Netkit, Mininet, and Cloonix. Due to the certification-reinforced network education approach, additional attention was given to virtual network lab software that assisted in Cisco CCNA, CCNA Security and also CCWA Wireless certifications. Consequently, Boson software NetSim tool was chosen as the product to deploy on desktop computers. This decision was based on the considerations that the selected product provided virtualization tools and also certification exam simulator software, ExSim-Max, for certification exam preparation.
Another important consideration in selecting Boson software product was the element of cost. The cost of the desktop version of the NetSim software license was comparable to a typical graduate student textbook price. Consequently, the selection gave students choice to purchase the software themselves. However, requiring students to purchase the software was not administratively viable because of the university's commitment to provide lab support to students with no additional charge. Nevertheless, the low cost of the particular virtual lab software selected provided a choice for the students to purchase the software for use at their own premises if they wished to do so.  Fig. 4 below shows the lab model used during this phase. The virtual lab software was installed on the existing desktop computers in the network lab and they were configured to be used by students remotely via VPN. This arrangement also allowed students in the lab to do the experiments using the desktop computers when there is a shortage of equipment pods. Thus, desktop based virtual lab implementation provided a relief in the use of equipment pod resources. Experimental procedures were written so that the same experiment could be conducted using the physical lab resources or by using desktop based virtual lab software.
VPN based access through the VPN concentrator allowed students to remotely logon to their desktop computer network using the Microsoft remote desktop tool. Once on the Laboratory network, students logged onto an idle desktop computer by trying addresses from an available list of IP addresses which were provided to them on course web site. The desktop-based virtual network lab model proved to be effective in serving the departmental goals in a number of aspects. First, it was found to be as effective as the physical lab in experimentation goals of the courses offered. Second, it allowed students in their preparations for certification tests. A third benefit of the virtual lab software was its effectiveness in coping with the demand on the physical computer network lab resources. A fourth benefit was sizing the demands for remote access, number of software licenses and network bandwidth capacity. Last but not least, Phase 3 was also effective in alleviating the student commute problems.

E. Phase 4: Network Laboratory with Virtual Labs on
Servers Listed benefits notwithstanding, the desktop based approach also came with its own drawbacks. One critical issue was disruptions in the online access to desktop computers. Since these desktops were also used for physical lab experiments, students had to be given administrative privileges to those computers. Consequently, sometimes students unintentionally made changes to computer configurations to render those desktops unusable for online use. Restoring disabled computers to original configurations proved to be a continuous maintenance effort on the part of TAs and lab technician. A second issue with the desktop based virtual lab approach was about expanding virtual lab capacity by adding more desktops due to available lab space limitations. Those issues resulted in work toward migration of desktop based virtual lab software to dedicated servers. Fig. 5 shows the virtual network laboratory model lab software running on servers in the Network lab. In this phase, dedicated servers with no student administrative privileges were used in the lab. Using server virtualization technology, four instances of the virtual network lab software were installed on four separate virtual machines, each running in the same server platform with Windows 2008 operating systems. Four high end computers, each with four virtual machine instances provided a total of 16 instances of the virtual lab software for online access. Later, due to increase in student enrollment, the server count was increased to six to provide a total of 24 virtual lab instances. Access to the virtual servers was accomplished again utilizing VPN based access to the Network Laboratory network. Once on the Network Laboratory network, students logged onto an idle virtual server machine by trying from an available list of IP addresses using Microsoft remote desktop login.
Server-based virtual network lab implementation adequately remedied capacity shortage and some of the maintenance issues mentioned earlier. However, those issues did not disappear completely. In particular, adding more servers to increase the capacity proved to be difficult. Operating and maintaining servers also required significant technician and supervisor support. Those concerns subsequently led the faculty to research cloud based implementation of the virtual network lab.

F. Phase 5: Virtual Lab on Private Cloud Servers
Cloud based server deployment in Phase 4 required moving the implementation from a faculty controlled physical environment to a remote and uncontrolled environment. In the MIS network lab, decoupling physical and virtual network implementations was targeted as an important goal from the experiences gained during the efforts in earlier phases. Physical network lab operation was still considered critical for the departmental needs. However, deploying virtual lab in physical lab premises created a number of issues as depicted earlier.
Initial efforts on the cloud based network lab approach began by researching similar deployments by other academic institutions. It was found that a number of universities have already placed computer labs on Internet clouds. However, many forms of cloud based labs were mainly about transitioning software-based course labs to cloud. North Carolina State University (NCSU) was one of the first universities to apply the virtual cloud technology to build a lab called the virtual computing lab (VCL) in 2004 and the number of users of the lab has significantly in-PAPER IMPLEMENTING CLOUD BASED VIRTUAL COMPUTER NETWORK LABS FOR ONLINE EDUCATION: EXPERIENCES FROM… creased since the inception of the lab [27]. According to a recent research, cloud deployment of virtual network labs using VCL and NetLab+ showed some successful test results [28]. Another recent research effort focused on a cloud based methodology for teaching of network security courses [29].
There has also been some research in the form of creating private clouds for universities [30]. The primary reasons behind implementing a private cloud are security and privacy issues for information placed on public clouds. NCSU implemented a virtual lab as a private cloud on university premises. Nimbus, a University of Chicago Science Cloud is an example of a private cloud to provide platforms for research and education purposes.
Many challenges mentioned as barriers to public cloudbased IT services [23] are also valid issues for transitioning to a cloud-based network lab. In particular, quantifying the benefits of cloud-based implementation; "it gets worse-before-better" concerns; issues related to governance, rules and regulations arising from state universities; and issues related to security, skilled resources and budget constraints were encountered and addressed. It is worthwhile to note that the barriers listed above are the same barriers encountered in the outsourcing of IT services. Consequently, it is important that academic institutions planning public cloud-based virtual lab implementations be familiar with the process of IT outsourcing.
The concerns about public clouds have led the MIS faculty to deploy a mini-private cloud implementation of the virtual network lab as a pilot project using MIS department servers. Access to the servers are provided in the same manner as in the Phase 4 implementation.
While mini-private cloud implementation is in use, the decision was also made to continue research into public cloud implementations for potential future deployment. It is believed that the technical experiences to be gained from private cloud deployment will be a valuable insight for public cloud deployment. At the time of this writing, private cloud based virtual network lab as well as physical network lab operations are in progress concurrently in a hybrid mode. Fig. 6 depicts the configuration of the network lab with virtual labs on cloud servers. Computing labs play a significant role in supporting student learning at academic institutions. Changes in these labs are required due to changes in the academic environment and evolving computing technologies and teaching modes. For some labs such as computer network labs, these changes may be in the form of hardware, software and operational changes imposing cost burdens on univer-sities. However, with the advent of cloud and virtualization technologies, hardware based labs such as computer network labs can also change from purely "brick-andmortar" labs to virtual labs. Virtualization along with cloud technology can provide opportunities in network lab virtualization. Private or public cloud-based virtual network labs may reduce operating costs and provide convenience and time savings to students.
Virtual network labs offer several economic and operational benefits. First, they can release valuable physical lab space which can be used for research activities or courses with more specific goals. Second, costly equipment upgrades in physical labs can be significantly reduced using virtualization and cloud technologies. Cloudbased virtual labs also provide better scalability in terms of increasing capacity as enrollment grows. They also require less maintenance such as equipment repairs and replacements. Thus, a small staff can support a diverse set of applications and services in a virtual lab. Last, but not least, online virtual network labs offer students the convenience of conducting networking experiments remotely.
While cloud-based virtual network labs offer economic, operational and convenience benefits, they also present some challenges that must be carefully examined for full deployment. These challenges include quantifying the benefits of a cloud-based implementation; "it gets worsebefore-better" concerns; issues related to governance, rules and regulations arising from state universities; and issues related to security, skilled resources and budget constraints. Such factors need to be carefully investigated before attempting the transition to cloud-based virtual network lab configuration. In this regard, insight and experience with virtualization and cloud migration will prove critical for success. A phased approach as described in this paper should assist the faculty and administrators with the technical, operational and policy experiences to gain better insight into the problems that may otherwise be encountered during cloud based deployment. A phased approach may also be more appropriate since different universities may have different educational goals in computer networking field. Consequently, the lab needs in different educational institutions can vary considerably resulting in variability of network lab implementations. Variability of goals affect experimental content, laboratory operations, and the hardware and software needs associated with lab implementation. A phased approach provides a good opportunity for understanding the technologies that are suitable for the specific educational goals. In pilot testing and quick deployment of virtual labs, commercially available virtual network lab tools may be more suitable.
The evolutionary phases described in this paper described the efforts involved in making the network lab online. However, it is important to emphasize that during those phases, concurrent use of both a physical lab and a virtual lab as a hybrid lab was considered critical to the operations as the physical lab provides a contingent resource to virtual lab. Due to technical staff and resource limitations, rudimentary methods were used to allow students to access idle desktop or server machines. As a final remark, it is also important to emphasize that, a physical lab is still considered a valuable resource for providing a "look and feel" for the real versions of the online virtual devices.