A scalable blackbox-oriented e-learning system based on desktop grid over private cloud
Post on 30-Dec-2016
Embed Size (px)
eh i g h l i g h t s
Enabling e-learning users to contribute to the server computation via desktop grid. Developing agent-based worker deployment for the workers hosted in VMs. Developing new workunit-based scheduling algorithm for assigning tasks to workers of different capability.
a r t i c l e i n f o
Article history:Received 7 December 2011Received in revised form10 February 2014Accepted 24 February 2014Available online 20 March 2014
Keywords:Cloud computingDesktop gridE-learningVolunteer computing
a b s t r a c t
Traditional web-based e-learning system suffers from unstable workloads and security risks of incorpo-rating external executable objects to servers. This paper addresses these issues with emerging technolo-gies, as desktop grid and cloud computing. Learning users are motivated to be volunteers by hosting thevirtual machines equipped with e-learning desktop grid applications. We develop components to inte-grate the e-learning system and desktop grid into the circumstance in which each user serves not only atask producer, but also a volunteer that solves tasks. In order to enhance the responsiveness between thepassive desktop grid server and e-learning system, we have also developed asynchronous processes toenable the server and volunteer workers to cooperate in a tightly coupled manner. The system achievesthe scalability bymaintaining the ratio between the number of volunteers and the number of online usersbeyond certain threshold.
2014 Elsevier B.V. All rights reserved.
E-learning is a rapid growing and important application in theInternet and is widely used in many enterprises and educationalcommunities . With the continuous evolution of the Internet,there is an increasing demand for incorporating online practice oronline certification into traditional e-learning systems. This workfocuses on aweb-based computer language e-learning system thatallows users to upload their programs to the server where the codeis parsed, performed and evaluated.
The clientserver computing model provides the economicaland robust medium for adaptive learning management. However,
Correspondence to: Department of Computer Science, TungHai University, No.1727, Sec. 4, Taiwan Boulevard, Xitun District, Taichung 40704, Taiwan, ROC. Tel.:+886 4 23590415; fax: +886 4 23591567.
E-mail address: firstname.lastname@example.org (L.-P. Chen).
system non-responsiveness is often experienced since the clientrequest rate may exceed the fixed server capacity. A traditional so-lution is to build a dedicated server cluster with a task dispatcher.Since users can submit tasks intermittently in an e-learning sys-tem, a server may stay idle during non-training time.
Today, many research works have been devoted to variouse-learning systems. Instead of developing new functionalities, thiswork attempts to explore the feasibility of building a low-costand scalable e-learning system via user cooperation. The idea isto gather computing resources from e-learning users by usingthe recently emerged volunteer computing and cloud computingtechniques .
Volunteer computing is a type of distributed computing thatallows people donating their computing resources to certainprojects [7,8]. BOINC is a volunteer computing platform that hasdemonstrated its efficacy for large scientific research projects infields as biology, medicine, astrophysics, engineering and climatestudy [9,10]. By breaking a monolithic job into a large number
http://dx.doi.org/10.1016/j.future.2014.02.017Future Generation Comput
Contents lists availa
journal homepage: www
A scalable blackbox-oriented e-learning sover private cloudLung-Pin Chen a,, Jien-An Lin a, Kuan-Ching Li b, China Department of Computer Science, TungHai University, Taiwan, ROCb Department of Computer Science and Information Engineering, Providence University, Tac Department of Computer Science and Information Engineering, Chung Hua University, Ta0167-739X/ 2014 Elsevier B.V. All rights reserved.r Systems 38 (2014) 110
ble at ScienceDirect
ystem based on desktop grid
g-Hsien Hsu c, Zhi-Xian Chen a
iwan, ROCiwan, ROC
2 L.-P. Chen et al. / Future Generation
of units and distributing into different desktop computers calledworkers, BOINC can perform jobs efficiently via massive paral-lelism. Cloud computing  is a computing paradigm that de-scribes a model of supplement, consumption, and delegation ofcomputing resources to the users on-demand. Cloud computingplatform is usually viewed as a management system of a pool ofvirtualized resources . Virtualization brings many benefits formanipulating computing resources across complex and heteroge-neous environments.
In this work, the e-learning desktop grid refers to a VM infras-tructure built on top of the users computers, in which each user isnot only a generator of tasks, but also a volunteer to solving tasks.The following main issues are addressed.Promotion. Motivating has been always critical for volunteercomputing. A naive restrict approach is to prohibit users from sub-mitting new tasks unless they contribute their resources propor-tionally. In this paper, we adopt the non-restrict approach whichmotivates users via user credits in the e-learning web site.Performance. In the e-learning private cloud, user-perceived re-sponse time is a major concern since the workers are voluntaryand can disconnect spontaneously. The servers responsiveness di-rectly depends on the ratio between the number of online learnersand the number of online volunteers, which can be controlled viathe restrict or non-restrict promotion policies mentioned above.We introduce some high capability official workers and develop anew scheduling algorithm to integrate the official and volunteerworkers efficiently.Security. Unlike normal volunteer computing platformwhere tasksare normally generated in authenticated servers, the tasks inthe e-learning system are initiated by those in-trained learners.Executing the e-learning tasks may lead to unexpected resultsin the volunteers computer. In addition, to prevent plagiarism,volunteers must be prohibited from inspecting the code delegatedto their computers.
To the best of our knowledge, the notion of gathering com-puting resources from e-learning users to maintain system re-sponsiveness is original. There are several existing web-basede-learning systems that provide automated and distributed onlinejudge functionalities . These systems employ more serversas the system scale increases. In this paper, the e-learning desktopgrid achieves scalability by involving user computers. Most cloudcomputing platforms assume that VM hosts are directly controlledby a front-end server, which is not applicable in volunteer com-puting environment. In [14,15], the authors developed the toolsfor automated deployment of VMs to the computers owned byanonymous volunteers. Compared to their works, our deploymentcomponent is more complex since the system has to maintain amembership mapping between the e-learning system and the vol-unteer computing platform.
The proposed architecture allows participants not only to do-nate their resources but also to use others as well. When em-ploying a broker, the participants form a desktop grid communitythat helps members to solve overloaded large-scale tasks such ascomputational science projects or artificial intelligence game treesearches. Developing a resource broker that can fairly and effi-ciently assign resource for the desktop grid community will be afuture work.
The remaining of this paper is organized as follows. Section 2introduces the backgrounds of e-learning systems. Section 3discusses the system architecture and implementation issues.Section 3.4 discusses the scheduler for assigning tasks amongofficial and volunteer workers. Finally, conclusion remarks aremade in Section 5.
2. Blackbox-oriented e-learningThis work models an e-learning system as a blackbox-orientedsystema platform representing the learning contents as aComputer Systems 38 (2014) 110
composition of blackboxes, which are software components whoseinternals cannot be viewed. The term blackbox indicates that thesystem only considers the input/output of learner behaviors andignores completely other details. This model has been significantlyadopted in many organizations and is referred by different termi-nologies, such as outcome-based education or performance-basededucation, etc. . In this paper, we adopt the name blackboxin terms of software technologies.
An invocation of blackbox bwith input data I generates the out-put referred to by invoke(b, I). We assume that blackboxes are de-terministic. That is, a blackbox always produces the same result forthe same input data. Therefore, the behaviors of a blackbox cannotbe dependent on time-related functions or random-number func-tions.
In the perspective of computer language education, interactivecode review can conduct learning context more effectively. Thisapproach is referred to as the whitebox-oriented e-learning. How-ever, it is also considered difficult and costly to be implemented. Infact, the whitebox-oriented e-learning can be emulated by usingblackboxes with adapted granularity (fine grain vs. coarse grain).In the extreme case, given a sequence of program instructions, thesystem can create one blackbox for each single instruction to forceusers to examine the program line-by-line. On the other hand, con-structing blackboxes with coarse grain leads to a result-orientedlearning approach.
Fig. 1 illustrates the architecture of a blackbox-oriented LMS(Learning Management System). Each learning object in the DAGis associated with an instructor blackbox (or T-box) as well as a setof input data. To complete the lesson, a user has to construct auser blackbox (or U-box) and try to make it act like the T-box. Achecker is a program to determine whether two blackboxes actlike each other for the same input data. In this work, we usean elementary checker which simply uses the string comparisonfunctions to judge the equality of outputs of two blackboxes. Thechecker can be customized to evaluate blackboxes based on exacttextual matches or approximate pattern matches, depending onindividual e-learning application requirements.
When navigating the learning contents, a user is not allowed toadvance to objectw in theDAGunless all the prerequisite objects ofw (i.e., all the objects with edge tow) are completed. Theoretically,if the cardinality of input data is large enough and theU-box alwaysgenerates expected answers that can be approved by the checker,then user k has a high probability of successfully completing thetopicw. For each user, the learning progress is the collection of theobjects completed by the user.
This paper implements the LMS shown in Fig. 1 as a web-based e-learning system . In this system, each T-box representsthe instructional materials of a topic of computer language (C++or Java), including the textual and illustrative explanations, thesource code of the standard answer, and a set of input datafor learning evaluation. The teacher can upload the instructionalmaterials and maintain their precedence relationships up to theLMS via the web-based administrative interface. To complete acourse, a user has to upload aU-boxwhich contains the source codeof the answer for the topic. The server then compiles, executes,and invokes the checker to validate the answer. The user learningprogress is updated if the quality of the U-box is approved. In thisresearch paper, the implementation of the e-learning web site isbeyond the scope of this article and will be omitted.
3. System design and development
3.1. System architectureThis subsection gives an overview and depicts the specificrequirements for the e-learning desktop grid. The system containsan e-learning web server, a BOINC server and the worker control
Fig. 2. Architecture of the e-learning desktop grid.
components, as illustrated in Fig. 2. Depending on which serveris registered, a user can be an e-learning user, a BOINC user, orboth. The computers owned by e-learning users and BOINC usersare respectively referred to as user computers (UCs) and workers.The workers are further categorized into volunteer workers (VCs),which are user computers participating the BOINC desktop grid,and official workers (OCs), which are server computers maintainedby the system administrator.
Fig. 2 illustrates the life cycle of task execution involvinge-learning web site, desktop grid, and users. The first step is
WorkGenerator, periodically checks the database and performstask transformations. Formal discussion of task transformation iscovered in Section 3.2. Upon checking the e-learning database,WorkGenerator also tries to bring up some official workers tomaintain the minimal operating capability on the BOINC server.
The above WorkGenerator, transforming tasks between thedatabases, provides a loosely coupled integration without systeminternal modification. However, to construct a practical e-learningdesktop grid, more issues need to be addressed.Fig. 1. The architecture of a blackbox-oriented e-learning system.L.-P. Chen et al. / Future Generationthe transformation of e-learning tasks generated by e-learningusers to the BOINC tasks. A daemon in the BOINC server, namedComputer Systems 38 (2014) 110 3(1) Membership binding: the system can recognize the accountnames in different systems that refer to an identical user.
4 L.-P. Chen et al. / Future Generation
(2) Credit feedback: the course instructor can feedback the BOINCcredits to the e-learning system since the credits represent theamount of user contribution to the computational tasks.
(3) Security: tasks submitted to a worker must be hidden fromthe view of this worker, which is usually also a learning user.In contrast, the worker computer needs to be prevented fromintrusion when running volunteer tasks.
(4) Scalability: the system remains responsive in different systemscales.
These properties are not orthogonal. The membership bindingproperty not only prevents security risks from anonymous Inter-net publicity, but also enables the feedback of the volunteer con-tribution to the e-learning system. This researchwork develops thecomponents for integrating the e-learning web site and the desk-top grid that satisfy the above properties.
In this architecture, we disable the default registration inter-face provided by the BOINC server. Hence, the only way a usercan participate in the desktop grid is through the AutoDeploy-ment componenta software agent that is downloaded to a usercomputer to perform all the necessary steps for deploying a BOINCclient. The agent is basically a passive component which flatlyreads and performs the instruction sequences sent by the con-troller. The agent brings a VM instance to the user computer,prompts the e-learning account information and then makes theuse of it to configure the BOINC worker hosting in this VM. Withthis approach, the mem...