Enhanced Virtual E-Learning Environments Using Cloud ... Virtual E-Learning Environments Using Cloud Computing Architectures . ... Microsoft, Amazon, ... Amazon Web Services) ...

  • Published on

  • View

  • Download


  • Enhanced Virtual E-Learning Environments Using Cloud Computing Architectures

    Eugen Zaharescu 1, Georgeta-Atena Zaharescu 2

    ((1)Associate Professor PhD., Mathematics and Informatics Faculty,

    Ovidius University of Constanta, Romania 124 Mamaia Blvd., Constanta ROMANIA

    ezaharescu@univ-ovidius.ro ; http://math.univ-ovidius.ro/ (2) "Decebal" High School, Constanta, ROMANIA

    E-mail: aza@math.com

    Abstract This paper presents the essential information about the most complex software systems and platforms managing enhanced educational virtual spaces that can integrate adaptive hypermedia units, video-conference support, mobile devices, etc.. In the description of these modern e-learning technologies, their most important features are revealed, like communications across disciplines, collaboration and team capabilities based on Web infrastructure. These enhanced education services use shared cloud computing approaches or methods and provide an optimized e-learning management to generate creative and intelligent decision. The basic architectural concepts and principles are imported from grid computing and cloud computing systems (e.g. Microsoft Azure, IBM Smart Cloud, IBM Tivoli- Live Monitoring Infrastructure Services, IBM Computing on Demand (CoD)). World-class social networking services and online collaboration tools, including file sharing, Web conferencing, and instant messaging are described subsequently (e.g. IBM LotusLive). Keywords: Cloud Computing, Enhanced E-Learning Services, E-Learning Management Systems, Intelligent Virtual E-Learning Environments

    1. Introduction Cloud Computing technologies have changed the way applications are developed and accessed. More and more complex applications (e.g. word processors, spreadsheets, hypermedia presentations, database systems) are delivered as services over the Internet on a scalable infrastructure. All of them can be accessed from a web browser, while the software and files are hosted in the Cloud.

    Clouds are developed to address Internet-scale computing problems where some assumptions are different from those of the Grids. Clouds are usually referred to as a large pool of computing and/or storage resources, which can be accessed via an abstract interface using standard protocols. Clouds can be built on top of many existing protocols such as Web Services (WSDL, SOAP), and some advanced Web 2.0 technologies such as REST, RSS, AJAX, etc.

    Educational institutions can take advantage of Cloud applications to provide students and teachers with free or low-cost software environments. Browser-based applications are also accessible with a variety of computer and even mobile platforms, making these tools available anywhere the Internet can be accessed. This paper presents a Private Cloud Computing-based solution for the implementation of a virtual and personal learning environment using a wide range of technologies for science education.


  • University of Bucharest and "Babe-Bolyai" University of Cluj-Napoca


    2. Defining Cloud Computing Paradigm The major providers in the field of Cloud Computing are Google, Microsoft, Amazon, Yahoo, IBM and Intel. Cloud Computing applications are mainly intended to help organisations, institutions and individuals to stretch resources and work smarter by moving everything to the Cloud.

    One of the biggest promoters of the Cloud Computing is Google that already owns a massive computer infrastructure (the Cloud) where millions of people are connecting to. Today, the Google cloud can be accessed by Google Apps intended to be Software as a Service suite dedicated to information sharing and security. Google Apps covers the following three main areas: messaging (Gmail, Calendar and Google Talk), collaboration (Google Docs, Video and Sites) and security (email security, encryption and archiving).

    Microsoft is developing a new Windows platform, called Windows Azure, which will be able to run cloud based applications.

    Amazon extended its AWS (Amazon Web Services) suite with a new component called Amazon Elastic Compute Cloud (or EC2), that allows to the users to rent from Amazon processing power to be used to run their own applications. The EC2 users rent out from Amazon virtual machines that can be accessed remotely. The user can start, stop and create small, medium or large virtual machines through the web service, depending on the physical hardware performances.

    One of the many possible definitions for Cloud Computing may be the following: Cloud Computing is a large-scale distributed computing paradigm, driven by economies of

    scale, in which a pool of abstracted, virtualized, dynamically-scalable and managed computing power, storage capabilities, software platforms and services

    are delivered on demand to external customers over the Internet (Foster et al. 2009). The main characteristics of Cloud Computing as a specialized distributed computing paradigm

    are the following (Brunette and Mogull 2009): Scalability and elasticity. Cloud resources can be dynamically ("on-demand") delivered in real-

    time on a fine-grained and self-service basis. Users are able to re-provision with technological infrastructure resources;

    Economies of scale. Services are claimed to be free of charge or low cost even for hardware upgrades. Capital expenditure is converted to operational expenditure in a public cloud delivery model. The cost of licensing different software packages is moved to the data center level and there is no need to upgrade the local system when new service packs or patches are released. Also the infrastructure is centralized in low cost locations (such as real estate, electricity, etc.);

    Abstract entity. The provider can encapsulate and deliver different levels of services to customers outside the Cloud. The services can be dynamically configured (via virtualization or other approaches) and delivered on demand.

    Accessibility to software enables machines to interact with the Cloud software in the same way the user interface facilitates interaction between humans and computers. Users can reach the same result by using any Internet connected device having minimum software requirements. Cloud computing systems typically use REST-based API (Application Programming Interface).

    Device and location independence enables users to access systems using a web browser regardless of their location or what device they are using (e.g., PC, mobile phone). Devices with minimal hardware requirements could be successfully used as cloud clients. As infrastructure is off-site (typically provided by a third-party) and accessed via the Internet, there is no need to download or install a specific software. Only the Internet connection is required, in order to become part of the Cloud.

    High reliability is achieved because multiple redundant sites are used. In case of client computer crashes, almost no data are lost due to centralized storage into the multiple cloud

  • The 6th International Conference on Virtual Learning ICVL 2011


    resources. Thus well-designed cloud computing are suitable for business continuity and disaster recovery.

    Improved security is achieved due to centralization of data, increased security-focused resources, etc. The complexity of security is greatly increased when data is distributed over a wider area or greater number of devices. Private cloud installations are in part motivated by users desire to retain control over the infrastructure and to avoid losing control of certain sensitive data or lack of security for stored kernels.

    Improved efficiency and utilization for under-used systems (only 1020% often utilized). Increased peak-load capacity is achieved with no need to engineer for highest possible load-levels on the client side;

    Constant performance monitoring. Most of the consistent and loosely coupled architectures are implemented using web services as the system interface.

    Maintenance of cloud computing applications is easier, because they do not need to be installed on each user's computer. They are easier to support and to update, as the changes reach the clients instantly.

    On the other side, few Cloud Computing disadvantages could be indentified: overall performances may be affected by the Internet connection transfer rate; data center subscription fee may be more expensive than the private hardware costs, on

    a long term basis; data security require a high level QoS (Quality of Service) management and the need

    for backups is critical. Cloud computing systems are implemented and structured over 5 layers: 1. Client Layer may be any computer hardware device (e.g. regular PCs, notebooks, mobile

    phones, PDAs or any other similar equipment) and/or computer software application (operating systems, web browsers) that relies on cloud computing for application delivery and that is in essence useless without it.

    2. Software as a Service (SaaS). Cloud application layer deliver software as a service over the Internet, eliminating the need to install and run the application on the customer's own computers and simplifying maintenance and support. Software as a Service (SaaS) delivers special-purpose software that is remotely accessible by consumers through the Internet with a usage-based pricing model. Salesforce is an industry leader in providing online CRM (Customer Relationship Management) Services. Live Mesh from Microsoft allows files and folders to be shared and synchronized across multiple devices. Partial taxonomy: Google App, Microsoft Dynamics CRM online, Microsoft Live@edu, Business Producivity Online Suite, Exchange Hosted Services, Microsoft Office Web Apps, CampusEAI, EducationERP.net, Campus Management, Jaspersoft, Coupa's e-Procuiement.

    3. Platform as a Service (PaaS). Cloud platform services deliver a computing platform and/or solution stack as a service, often consuming cloud infrastructure and sustaining cloud applications. It facilitates deployment of applications without the cost and complexity of buying and managing the underlying hardware and software layers. The Platform Layer adds on a collection of specialized tools, middleware and services on top of the unified resources to provide a development and/or deployment platform. For instance, a Web hosting environment, a scheduling service, etc. Platform as a Service (PaaS) offers a high-level integrated environment to build, test, and deploy custom applications. Generally, developers will need to accept some restrictions on the type of software they can write in exchange for built-in application scalability. An example is Googles App Engine, which enables users to build Web applications on the same scalable systems that power Google applications. Partial taxonomy: Google App Engine, Microsoft Azure Services, Amazon SimpleDB, Microsoft SDS, Oracle Higher Education Constituent Hub, Amazon SQS, Dynamsoft, Force.com, Microsoft Dynarnics CRM online.

  • University of Bucharest and "Babe-Bolyai" University of Cluj-Napoca


    4. Infrastructure as a Service (IaaS). Cloud infrastructure services deliver computer infrastructure typically a platform virtualization environment as a service, along with raw (block) storage and networking. Clients can access these resources as a fully outsourced service. The amount of resources consumed (and therefore the cost) will typically reflect the level of utility computing activity. Infrastructure as a Service (IaaS) provisions hardware, software, and equipments to deliver software application environments with a resource usage-based pricing model. Infrastructure can scale up and down dynamically based on application resource needs. Typical examples are Amazon EC2 (Elastic Cloud Computing) Service and S3 (Simple Storage Service) where compute and storage infrastructures are open to public access with a utility pricing model. Eucalyptus is an open source Cloud implementation that provides a compatible interface to Amazons EC2, and allows people to set up a Cloud infrastructure at premise and experiment prior to buying commercial services. Partial taxonomy: EducationERP.net, Amazon S3-EBS- EC2, Eucalyptus, Microsoft, Oracle Coherence, Rackspace, RightScale, 3Tera App Logic, EnStratus, Flexiscale, GoGrid, CloudStatus, CampusEAI.

    5. Server or Fabric Layer contains the raw hardware resources, such as computing resources, storage resources and network resources. These computer hardware and/or computer software products are specifically designed for the delivery of cloud services, including multi-core processors, cloud-specific operating systems and combined offerings.

    Fig. 1 Cloud Computing structuring layers The complete Cloud Computing taxonomy can be found in a technical report from Cloud

    Security Alliance Organisation (Brunette and Mogull 2009).

    3. Cloud Computing for E-learning The architectural pattern of Cloud Computing-based E-learning systems follows the layered structure of services (Saas, PaaS and IaaS) and abstract/virtualized resources offered by Cloud Computing (figure 2).

    Client Layer

    Server / Fabric Layer

  • The 6th International Conference on Virtual Learning ICVL 2011


    Studying the related work in this domain, one may found several interesting achievements and implementations. A brief analysis of these systems is presented here.

    Several modern Cloud Computing-based e-Learning applications that can use IaaS for dynamic assignable storage and compute resources were proposed by (Dong et al. 2009a). They describe a general and simple architecture with monitoring, policy and provision modules.

    BlueSky cloud framework (Dong et al. 2009b), developed by Xian Jiaotong University (China), enables physical machines to be virtualized and allocated on-demand for e-Learning systems. The BlueSky framework is focused on delivering IaaS and has some architectural layers dealing with physical resources, provisioning, monitoring and user interface but no security layer for user access policies.

    Virtual Computing Laboratory (VCL) (Vouk et al. 2008), developed by North Carolina State University (USA), enables students to reserve and access virtual machines (VMs) with a basic image or specific applications environments, such as Matlab and Autodesk. VCL does not offer collaboration features, but offers (IaaS and PaaS) platforms which could be used to host collaboration systems (SaaS) on top of it.

    Snow Leopard Cloud (Cayirci et al. 2009) provides PaaS for North Atlantic Treaty Organization (NATO) to run its various military exercises and mission events. In addition, Snow Leopard is used to run web 2.0 applications, such as video teleconferencing, voice over IP, and remote management, over handheld devices and terminals. As Snow Leopard Cloud is targeted towards military usage, it has a multi-level security and the network infrastructure is encrypted.

    Fig. 2 Cloud Computing architectural levels for E-learning

    The Google App Engine provides a Java web framework. It is based on the servlet container

    Jetty and BigTable for data storage. Applications written for Google App Engine are scaled automatically by Google.

  • University of Bucharest and "Babe-Bolyai" University of Cluj-Napoca


    4. Private Cloud Computing Architecture for E-learning The proposed private cloud architecture is implemented on top of an existing hardware infrastructure (figure 3). It consists of three computer pools (PC Pool, Research Pool and Server Pool), using separate IP subdomains within different locations of education institution. The PC Pool computers may use a Linux operating system (e.g. Ubuntu) and may have KVM (Kernel-based Virtual Machine) installed, whereas the other pools may have Debian OS and Xen configured. The PC and Server pools are used by students and staff for teaching purposes while, the Research Pool is used for research and development purposes.

    The pools are managed by a Cloud Management System (CMS), as shown in figure 4. The CMS is divided into several layers for extensibility and maintainability, while Monitoring, Management and Security components are incorporated across all layers to ensure high reliability and secured services, as described in the following paragraphs:

    User Interface Layer provides various access points to users and/or administrators of the cloud system CMS.

    Fig. 3 Cloud Computing architecture for E-learning

    Fig. 4 Cloud Management System for E-learning

    Business Layer regulates resource supply and demand to comply to economically use and Service-Level Agreements (SLA). This layer enables users to reserve VMs in advance and manage their personal VMs.

  • The 6th International Conference on Virtual Learning ICVL 2011


    System Layer monitors daily operations of the CMS, such as submitting jobs, managing user accounts and monitoring Quality of Service (QoS).

    Resource Interface Layer deals with the physical hardware. It provides interfaces and plug-ins to various virtualization, database and distributed systems as well as other technologies, such as Xen, Amazon EC2, Amazon S3, and Nagios.

    Monitoring & Management Component ensures the reliability of each layer in the cloud. This component allows system administrator to monitor and to initiate activities of each layer, in case of failures, conflicts with SLA objectives, under- or over-utilized resources.

    Security Component ensures the privacy, recovery, integrity and security of user data and transactions, on all system layers.

    Acknowledgment This paper was accomplished as part of the research project no. 551/2009 granted by Romanian CNCSIS.


    Conference Proceedings: Cayirci, E., Rong, C., Huiskamp, W., Verkoelen, C. (2009): Snow Leopard Cloud: A Multi-national

    Education Training and Experimentation Cloud and Its Security Challenges. In: Proceedings of the 1st International Conference on Cloud Computing (CloudCom 2009), Beijing, China

    Dong, B., Zheng, Q., Yang, J., Li, H., Qiao,M. (2009a): An E-learning Ecosystem Based on Cloud Computing Infrastructure. In: Advanced Learning Technologies, 2009. ICALT 2009. Ninth IEEE International Conference on. 125 127

    Dong, B., Zheng, Q., Qiao, M., Shu, J., Yang, J. (2009b): BlueSky Cloud Framework: An E-Learning Framework Embracing Cloud Computing. In: Proceedings of the 1st International Conference on Cloud Computing (CloudCom 2009), Beijing, China (165171).

    Foster, I., Zhao, Y., Raicu, I., Lu, S. (2008): Cloud Computing and Grid Computing 360-Degree Compared. In: Proceedings of the Grid Computing Environments Workshop (GCE08), Austin, Texas, USA 116-120

    Vouk, M., Averritt, S., Bugaev, M., Kurth, A., Peeler, A., Schaffer, H., Sills, E., Stein, S., Thompson, J. (2008): Powered by VCL Using Virtual Computing Laboratory (VCL) Technology to Power Cloud Computing. In: Proceedings of the 2nd International Conference on the Virtual Computing Initiative (ICVCI08).

    Technical Reports: Armbrust, M., Fox, A., Griffith, R., Joseph, A.D., Katz, R., Konwinski, A., Lee, G., Patterson, D., Rabkin, A.,

    Stoica, I., Zaharia, M. (2009).: Above the Clouds: A Berkeley View of Cloud Computing. Technical Report UCB/EECS-2009-28, Univ. of California at Berkeley

    Brunette, G. & Mogull, R. (2009). Security Guidance for Critical Areas of Focus on Cloud Computing, Cloud Security Alliance. http://www.cloudsecurityalliance.org/guidance/csaguide.v2.1.pdf

    Internet Sources: Fully Automated Installation (FAI). http://www.informatik.unikoeln.de/fai/ GoogleAppEngine: Googles PaaS infrastructure.http://code.google.com/appengine/ JMeter: Apache JMeter. http://jakarta.apache.org/jmeter/ Libvirt: virtualization API. http://libvirt.org/ LDAP: Lightweight Directory Access Protocol http://tools.ietf.org/html/rfc4510 Nagios: Nagios: IT-infrastruktur monitoring tool. http://www.nagios.org/ OLAT: Online Learning And Training. http://www.olat.org/ Qumranet: KVM: White Paper. http://www.linux-kvm.org/ Shibboleth:: A Single-Sign-On Solution. http://shibboleth.internet2.edu/ TimeEdit. http://www.timeedit.com/



View more >