基于云计算的MOOC交互式实验平台研究
2017-06-12郑文娟
郑文娟
摘 要: 针对实践作业在计算机科学领域发展的重要性,進行了基于云计算的MOOC交互式实验平台研究。在交互式实验过程中提出混合云架构,支持单一机器和网络机群现场动手实验,并建立基于信任的访问控制方案,实现自我管理的资源分配。实验过程是在内部私有云上执行虚拟机镜像,通过嵌入在Web浏览器的远程桌面进行连接和访问。通过MOOC交互式实验平台收集实验数据,并对结果进行测评,由此提高远程学习和教育的质量。
关键词: 云计算; MOOC; 交互式实验平台; 访问控制方案
中图分类号: TN911?34; TP393 文献标识码: A 文章编号: 1004?373X(2017)11?0029?04
Research on MOOC interactive experiment platform based on cloud computing
ZHENG Wenjuan
(Business College of Shanxi University, Taiyuan 030031, China)
Abstract: For the importance of practical assignment in development of computer science field, the MOOC interactive experiment platform based on cloud computing is researched. The hybrid cloud architecture is put forward in the interactive experiment process to support the live hands?on experiment of single machine and network machines. An access control scheme based on trust was established to realize the resource allocation of self?management. The experimental process is that the virtual machine mirror image is carried out on the internal private cloud, which is connected and accessed through the remote desktop embedded in the Web browser. The experimental data is collected and its result is evaluated by means of the MOOC interactive experimental platform to improve the quality of distance learning and education.
Keywords: cloud computing; MOOC; interactive experiment platform; access control scheme
0 引 言
在计算机教育领域实践作业是必不可少的,所以交互式软件实验平台的研究成为MOOC的发展趋势。通过云计算模式中混合云这一软件架构完成实时实验平台的灵活配置。这些实验平台根据访问请求进行自动配置,然后终端用户通过远程桌面、SSH和其他网络协议实现连接。把这些设置嵌入到MOOC的实验教学中,为用户提供指导和基础设施资源的访问,以便于让他们完成实验。通过MOOC实验平台,不仅使学习者学习到了新知识,还可以让其他人了解、评价课程的学习情况[1]。
1 基于云计算的MOOC实验平台
云计算技术将现有分散的不同形式的远程实验资源更新为虚拟化共享资源池,从而构成统一管理和调度的实验云[2]。MOOC平台利用云强大的存储功能将优秀的教育资源传送到世界的各个角落,这是一个隐性知识显性化的过程[3],为了在MOOC平台上提供实践软件实验时对管理计算资源的需求,在云计算架构中结合了公共和私有云资源 (见图1),即混合云架构。这一架构的主要组件是核心,它主导一个Web应用程序。用户可以使用一个Web浏览器连接到它或任意网络协议。这个核心还负责选择合适的硬件资源和部署实验来执行服务,这些服务向运行的实验提供硬件资源。通过云构架进行模拟实验,不仅提高实验教学效果,更重要的是使一些缺乏实验条件的学生能够身临其境地观察实验现象,甚至和异地的学生合作进行实验[4]。而实验过程中用户活动数据可以通过活动监控器和虚拟机内省来收集。这个活动数据存储在数据存储服务中的活动日志内,也保存了实验的虚拟机磁盘映像和在实验过程中生成的个人用户数据。可见,基于云计算的MOOC平台还为用户提供了一个强大的实验结果管理机制[5]。
2 实时监控用户动态
在MOOC中,交互式问题设置成为对学生状态进行控制的一个重要手段[6]。因此,需要自动的方法提供作业的反馈,监控学习进度和评分。在InstantLab中,提出了两个监测技术来收集关于MOOC参与者的信息,即通过网络平台监控活动和实验场景监控。
2.1 在网络平台上监控活动
对活动的监控也是教学和教师研究的信息来源。基于云计算的MOOC交互式实验平台不仅能够记录详细的统计信息,还能对实践作业的实验结果进行评估。对此,一个好的指标就是这个学生在课程中展示的活跃度和参与程度。在MOOC中可以通过监测网络平台中的用户活动来观察和记录学生活动。登录、看视频讲座,开始、完成或异常中止软件实验等活动都会记录在活动日志中,并且在之后可以用于基于信任的访问控制。
2.2 实验场景监控
在MOOC虚拟机运行实验,可以监控用户的活动,所以反馈不仅包括实践作业的结果,也包括对实验场景的监控。这些监控也可以作为一个指标来限制对所提供资源的滥用。
监控学生的软件实验,应该透明、高效且可以防伪。在虚拟机管理程序的水平上实现了实验场景监控,这就是被称为虚拟机内省(VMI)的技术。将监控置于管理程序内,不需要变更实验模板,并且对于虚拟机执行是透明的。同时虚拟机管理程序的隔离可以保护监控免于篡改。管理者可以通过操纵客户内存和虚拟硬件状态来生成额外的监控事件,信息可以通过监控虚拟机网络通信和扫描它的记忆来提取。
3 安全性
在MOOC上进行实践作业需要保证实验数据的完整性和安全性,于是,将云计算高效的运算处理能力和无限的存储能力融入 MOOC交互式实验平台的研究中[7]。对于实验场景的安全威胁,提出了虚拟机内省方法作为一个缓解策略,并且通过使用一个基于信任的访问控制方案实现自动资源管理。
3.1 实时软件实验安全
向用户提供访问虚拟机的权限可能会使恶意用户滥用所提供的资源并用于其他目的,因此妨碍了实验的完整性和安全性。将虚拟机内省的机制作为一种解决方案来监控实时软件实验以检测是否有人滥用所提供的虚拟机。为了检测是否有滥用行为,保留一张虚拟机实验不允许出现的操作或系统状态的黑名单。VMI技术用于监控虚拟机并且检测列入黑名单的行为或状态。如果检测到违反行为,系统首先会提醒用户并显示发生的违规行为。如果此违规行为持续下去,将会终止实验并关闭相关的虚拟机。
3.2 公共网络平台的资源管理
在虚拟机大规模地运行软件实验是一个资源密集型的任务。因此,一个对实验资源访问权限细致的资源管理方案就是非常必要的,以便于将可用资源分配给诸多用户。方案应该满足以下特点:
(1) 自我管理。MOOC课程通常有大量的操作员不知道的用户。由于缺乏关于用户和管理费用的知识,手动分配用户权限是不实际的。因此,应该具备自动分配访问权限的功能。
(2) 滥用预防。对意外活动和滥用所提供的资源应该进行检测并阻止。为了实现这样一个资源管理方案,使用基于信任的访问控制来控制实验资源的访问。
3.3 基于信任的访问控制
基于信任的访问控制(TBAC)是一个动态的访问控制方案,它建立在声誉和信任的概念之上,声誉信息描述了位于某个系统中的某个行为者。基于这些信息,分配给行为者的信任水平表示行为者在未来表现出期望的方式的主觀信心。可以使用数值刻度值来表示信任水平,比如数值越大表明信心越强。信任水平可以根据一个行为者关于自己过去的行为或声誉信息的经验计算,这些信息则是可以从集中式系统或系统中其他行为者获得。
TBAC就像是传统的访问控制模型的动态扩展,可以使用访问特定资源要求的最低水平的信任级别来指定安全策略中的访问规则。访问请求被授予给信任级别大于或等于指定的最小的信任水平的行为者,否则就会拒绝访问。
3.3.1 系统概述
基于信任的访问控制机制的目的是管理用户访问MOOC系统有限的实验资源的权限。为了构建这些信任级别,MOOC系统就不能依赖用户的外部资源。为使TBAC方案自动运行,通过MOOC平台中用户的行为来计算其信任水平。因此惟一的要求就是在系统中识别到用户,可通过OpenID登录达到这一目的,见图2。
图2显示,活动监视器负责收集课程平台上的用户活动 (如开始/异常终止/完成实验和课程)。关于用户活动的数据存储在活动日志中。当出现访问一个实验资源请求时,这一请求被传递给TBAC引擎。该组件可以根据用户活动日志中以前的行为来计算其信任级别。如果计算产生的信任水平满足实验的要求则同意访问,反之拒绝访问。
3.3.2 MOOC实验平台的性质
MOOC系统信任水平的计算可以利用一种结构化课程的性质,在线实践课程通常从很容易理解的入门课程开始。随着教学内容的提高,实际实验的资源需求也不断提升。由于高需求的实验是资源密集型的,因而只有技能熟练的学生才能够访问。因此,进行了4个不同阶段的实验,见图3,这些在课程中都需要完成。
3.3.3 信任级别
利用这些阶段采用交错的方法计算信任级别,进入一个新的阶段,见图3,要求用户达到前一个阶段所需的信任水平。系统中这些水平使用数字表示,其中,每一个注册在线课程平台用户的初始信任水平为每个阶段可以达到的信任水平和下一阶段需要达到的信任水平见表1。
这个方案确保了先进的、专业的资源密集型实验只能由合适的、有需求的用户使用。这个方案确保用户在每个阶段课程的努力都是必需的,以利于进行更高级别的实验。使用这种方案可以防止非熟练用户在入门阶段完成无数琐碎的实验,以跳过这一阶段到达高级阶段的课程。
3.3.4 信任计算
为计算用户在一个困难阶段的信任水平,需要记录来自于当前阶段关于完成的作业和实验的信息。假设在系统中一个用户的两个参数被做了记录,每一个完成的任务由系统评估并且获得一定的学分。如用户在一个阶段积累的学分总数是阶段期间可以达到的最大数量的学分是第二个记录的参数是用户花费在实验资源上面的时间,预期完成实验的时间是用户所需的时间是假设每个阶段可用的最小信任级别是利用这些信息,可得信任水平为:
这种信任可以确保及时完成任务并评估实验结果。为防止超过可达到的最高信任水平值,是封顶的最大水平。
4 将硬件加速器嵌入到云基础设施
当今硬件加速器的尖端技术在当前抽象化服务中很少体现,因为它只能通过操作软件在裸机上运行来发挥作用。延伸服务抽象化和提升虚拟化技术对于资源的集成和配置是必需的。在大规模网络公开课的背景下,为了使用加速器技术提供实践学习经验,不仅需要平衡高性能云的额外成本和对于学生预期的学习价值,而且还需整合广泛使用的加速器的公共云产品和托管在一个私有云的更多的外来加速器板。如果能确保每个加速器只有一个学生,就可以为他们提供硬件加速器的专有访问权限。尽管这将保证学生获取最好的编程经验,但是这也需要限制学生的数量或动态增加加速器的数量,这依靠云产品并导致额外的成本。另一个问题是,当没有任何云主机提供所需的加速器,但是在实验室只是少数可用。这个极端会使大量的学生访问很少量的加速器(最坏的情况下每个加速器有数百名学生访问)。这样的场景将会超出虚拟化和整合的可行性。惟一的选择是针对加速器使用一个工作队列和排队任务提交。因为一次只会执行一份工作,导致的执行性能和忠诚度会非常逼真。另一方面,用户体验将变得相当有限,特别是因为调试成为一个问题。有种技术改善用户体验和MOOC网络公开课的性能,在这样的MOOC实验教学中很多学生可以进行单一独特的物理实验。这种技术是从实验的实际执行中分离学生实验代码。代码可以在虚拟机上进行编译,这类虚拟机不需要访问实际实验硬件,从而在程序开发中形成快速反馈循环。
从云的角度来说,最有趣的部分介于两者之间:每个加速器有相当数量的学生,并且可以提供。在这些情况下,云计算的虚拟化技术提供了一种允许多个用户同时在相同的物理硬件上工作而不互相干扰的方式。
通过云计算实现了用户信任计算和自动评测功能,既可以达到传统实践教学模式的效果,又适用于MOOC交互模式的教学[8]。
5 用例:InstantLab
InstantLab是模拟的MOOC交互式实验平台,通过实验,还得出了一个针对InstantLab的TBAC方案的仿真结果,见图4。
5.1 InstantLab的实现
通过不断的探索研究得知,进行这些实验所需的基础设施是一个不断变化的目标。一方面,必须适当地维护和更新硬件;另一方面,不得不处理不断增加的各种平台版本。为了解决这些问题,将这些实验迁移到云。InstantLab是在云中进行操作系统实验的方法,比如扩展带有新系统调用的内核,这缓解了全体教师和学生维护硬件设备、版本多样化和配置的開销。
目前InstantLab的架构基于OpenNebula软件栈,见图4,其核心组件是一个Web应用程序,通过它用户可以进行实例化实验并运行。这些实验的运行实例可以通过一个终端连接进行访问和控制,这一终端连接建立在用户Web浏览器中,可以使用一个代理服务来促进远程桌面访问。
5.2 用于InstantLab的基于信任的访问控制
为了帮助InstantLab受到更多用户的欢迎,分析了一个基于信任的访问控制方案的适用范围,以确保将实验资源分配给需要的用户。执行TBAC系统时,平台运营商面临的挑战是预测所选的策略的影响。与传统的访问控制相比,TBAC方案是一个用户请求的启发式的分类。由于采用限制访问的主要动机是进一步限制实验资源消耗,TBAC方案的批准率就是最重要的参数,允许进入的学生越多,就会消耗越多的计算资源。目标是达到用户总数40%的许可进入比例,只有这些用户可以获准使用先进的、有专业水平的实验资源。
为预测在InstantLab中采用TBAC方案的影响,使用一个基于主体的仿真方法:通过过去使用InstantLab的经验来识别用户模式,这些代表不同的平台用户类型和技能水平。实施这些用户使用模式来模拟仿真代理的用户策略。在仿真过程中,代理们可以选择不同的实验,这些实验分为不同阶段。实验成败取决于代理的技术水平,并且只能尝试有限的次数。
仿真使用repast7仿真套件建立,并作为一个离散事件仿真。在固定的时间步骤中,代理们会选择和尝试一个实验。仿真一直运行,直到所有代理已经耗尽可用的实验,结果如图5所示。如果总用户为100%,20%的用户达到高级阶段,22%达到专业的阶段。总共有42%的用户群体达到高级和专业阶段,这是一个令人满意的结果,有助于在一个开放的InstantLab版本内尝试基于信任的访问控制方案。
6 结 论
云计算服务把良好的硬件设备给用户共享,优质的软件资源给用户使用[9],基于云计算的MOOC交互式实验平台使高校软件实践课程的教学质量具有前所未有的开放性和透明性[10]。研究过程中提出以虚拟机内省作为检测和防止滥用提供资源的方式,并解决访问控制和资源分配的问题。这些信息可以用来确定用户的学习行为和学习进展,即基于信任分数给用户分配资源。将InstantLab用于MOOC交互式实验平台的教学,成功地展示了基于Web浏览器的远程桌面访问技术,为终端用户的实验教学提供服务。
参考文献
[1] 周立涛,刘越,彭立宏,等.探索MOOC在计算机实践教学中的应用[J].计算机工程与科学,2012(12):118?121.
[2] 王华忠,姚俊,程华,等.基于云计算的过程控制远程实验系统[J].实验室研究与探索,2015(4):103?106.
[3] 肖冬梅,吴秀文,刘芳.教育资源配置视角下的慕课现象解构[J].图书馆,2015(5):17?21.
[4] 杨龙军,陆洪毅.基于云计算平台的计算机硬件远程实验室实现[J].华中科技大学学报,2013,41(z2):72?76.
[5] 王明星.计算机网络实验远程教学管理模式研究[J].吉林工程技术师范学院学报,2013(5):55?56.
[6] 黄如花,李白杨.信息检索MOOC中的交互式问题设计与评分导向[J].图书与情报,2014(6):14?17.
[7] 李益骐,吴佳丽.基于云计算的新型远程教育系统设计[J].西北大学学报,2012(1):42?46.
[8] 崔贯勋.基于云计算技术的MOOC实践教学平台[J].实验室研究与探索,2015(8):119?123.
[9] 张辉.基于云计算的远程教育资源和平台建设探析[J].继续教育研究,2013(5):57?58.
[10] 石博,何楚,卓桐,等.慕课教学中基于局部社区发现的主题交互模型[J].计算机应用研究,2015(6):1724?1727.