鄭文娟
摘 要: 針對實踐作業(yè)在計算機科學領域發(fā)展的重要性,進行了基于云計算的MOOC交互式實驗平臺研究。在交互式實驗過程中提出混合云架構,支持單一機器和網(wǎng)絡機群現(xiàn)場動手實驗,并建立基于信任的訪問控制方案,實現(xiàn)自我管理的資源分配。實驗過程是在內部私有云上執(zhí)行虛擬機鏡像,通過嵌入在Web瀏覽器的遠程桌面進行連接和訪問。通過MOOC交互式實驗平臺收集實驗數(shù)據(jù),并對結果進行測評,由此提高遠程學習和教育的質量。
關鍵詞: 云計算; 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 引 言
在計算機教育領域實踐作業(yè)是必不可少的,所以交互式軟件實驗平臺的研究成為MOOC的發(fā)展趨勢。通過云計算模式中混合云這一軟件架構完成實時實驗平臺的靈活配置。這些實驗平臺根據(jù)訪問請求進行自動配置,然后終端用戶通過遠程桌面、SSH和其他網(wǎng)絡協(xié)議實現(xiàn)連接。把這些設置嵌入到MOOC的實驗教學中,為用戶提供指導和基礎設施資源的訪問,以便于讓他們完成實驗。通過MOOC實驗平臺,不僅使學習者學習到了新知識,還可以讓其他人了解、評價課程的學習情況[1]。
1 基于云計算的MOOC實驗平臺
云計算技術將現(xiàn)有分散的不同形式的遠程實驗資源更新為虛擬化共享資源池,從而構成統(tǒng)一管理和調度的實驗云[2]。MOOC平臺利用云強大的存儲功能將優(yōu)秀的教育資源傳送到世界的各個角落,這是一個隱性知識顯性化的過程[3],為了在MOOC平臺上提供實踐軟件實驗時對管理計算資源的需求,在云計算架構中結合了公共和私有云資源 (見圖1),即混合云架構。這一架構的主要組件是核心,它主導一個Web應用程序。用戶可以使用一個Web瀏覽器連接到它或任意網(wǎng)絡協(xié)議。這個核心還負責選擇合適的硬件資源和部署實驗來執(zhí)行服務,這些服務向運行的實驗提供硬件資源。通過云構架進行模擬實驗,不僅提高實驗教學效果,更重要的是使一些缺乏實驗條件的學生能夠身臨其境地觀察實驗現(xiàn)象,甚至和異地的學生合作進行實驗[4]。而實驗過程中用戶活動數(shù)據(jù)可以通過活動監(jiān)控器和虛擬機內省來收集。這個活動數(shù)據(jù)存儲在數(shù)據(jù)存儲服務中的活動日志內,也保存了實驗的虛擬機磁盤映像和在實驗過程中生成的個人用戶數(shù)據(jù)??梢?,基于云計算的MOOC平臺還為用戶提供了一個強大的實驗結果管理機制[5]。
2 實時監(jiān)控用戶動態(tài)
在MOOC中,交互式問題設置成為對學生狀態(tài)進行控制的一個重要手段[6]。因此,需要自動的方法提供作業(yè)的反饋,監(jiān)控學習進度和評分。在InstantLab中,提出了兩個監(jiān)測技術來收集關于MOOC參與者的信息,即通過網(wǎng)絡平臺監(jiān)控活動和實驗場景監(jiān)控。
2.1 在網(wǎng)絡平臺上監(jiān)控活動
對活動的監(jiān)控也是教學和教師研究的信息來源?;谠朴嬎愕腗OOC交互式實驗平臺不僅能夠記錄詳細的統(tǒng)計信息,還能對實踐作業(yè)的實驗結果進行評估。對此,一個好的指標就是這個學生在課程中展示的活躍度和參與程度。在MOOC中可以通過監(jiān)測網(wǎng)絡平臺中的用戶活動來觀察和記錄學生活動。登錄、看視頻講座,開始、完成或異常中止軟件實驗等活動都會記錄在活動日志中,并且在之后可以用于基于信任的訪問控制。
2.2 實驗場景監(jiān)控
在MOOC虛擬機運行實驗,可以監(jiān)控用戶的活動,所以反饋不僅包括實踐作業(yè)的結果,也包括對實驗場景的監(jiān)控。這些監(jiān)控也可以作為一個指標來限制對所提供資源的濫用。
監(jiān)控學生的軟件實驗,應該透明、高效且可以防偽。在虛擬機管理程序的水平上實現(xiàn)了實驗場景監(jiān)控,這就是被稱為虛擬機內?。╒MI)的技術。將監(jiān)控置于管理程序內,不需要變更實驗模板,并且對于虛擬機執(zhí)行是透明的。同時虛擬機管理程序的隔離可以保護監(jiān)控免于篡改。管理者可以通過操縱客戶內存和虛擬硬件狀態(tài)來生成額外的監(jiān)控事件,信息可以通過監(jiān)控虛擬機網(wǎng)絡通信和掃描它的記憶來提取。
3 安全性
在MOOC上進行實踐作業(yè)需要保證實驗數(shù)據(jù)的完整性和安全性,于是,將云計算高效的運算處理能力和無限的存儲能力融入 MOOC交互式實驗平臺的研究中[7]。對于實驗場景的安全威脅,提出了虛擬機內省方法作為一個緩解策略,并且通過使用一個基于信任的訪問控制方案實現(xiàn)自動資源管理。
3.1 實時軟件實驗安全
向用戶提供訪問虛擬機的權限可能會使惡意用戶濫用所提供的資源并用于其他目的,因此妨礙了實驗的完整性和安全性。將虛擬機內省的機制作為一種解決方案來監(jiān)控實時軟件實驗以檢測是否有人濫用所提供的虛擬機。為了檢測是否有濫用行為,保留一張?zhí)摂M機實驗不允許出現(xiàn)的操作或系統(tǒng)狀態(tài)的黑名單。VMI技術用于監(jiān)控虛擬機并且檢測列入黑名單的行為或狀態(tài)。如果檢測到違反行為,系統(tǒng)首先會提醒用戶并顯示發(fā)生的違規(guī)行為。如果此違規(guī)行為持續(xù)下去,將會終止實驗并關閉相關的虛擬機。
3.2 公共網(wǎng)絡平臺的資源管理
在虛擬機大規(guī)模地運行軟件實驗是一個資源密集型的任務。因此,一個對實驗資源訪問權限細致的資源管理方案就是非常必要的,以便于將可用資源分配給諸多用戶。方案應該滿足以下特點:
(1) 自我管理。MOOC課程通常有大量的操作員不知道的用戶。由于缺乏關于用戶和管理費用的知識,手動分配用戶權限是不實際的。因此,應該具備自動分配訪問權限的功能。
(2) 濫用預防。對意外活動和濫用所提供的資源應該進行檢測并阻止。為了實現(xiàn)這樣一個資源管理方案,使用基于信任的訪問控制來控制實驗資源的訪問。
3.3 基于信任的訪問控制
基于信任的訪問控制(TBAC)是一個動態(tài)的訪問控制方案,它建立在聲譽和信任的概念之上,聲譽信息描述了位于某個系統(tǒng)中的某個行為者。基于這些信息,分配給行為者的信任水平表示行為者在未來表現(xiàn)出期望的方式的主觀信心??梢允褂脭?shù)值刻度值來表示信任水平,比如數(shù)值越大表明信心越強。信任水平可以根據(jù)一個行為者關于自己過去的行為或聲譽信息的經驗計算,這些信息則是可以從集中式系統(tǒng)或系統(tǒng)中其他行為者獲得。
TBAC就像是傳統(tǒng)的訪問控制模型的動態(tài)擴展,可以使用訪問特定資源要求的最低水平的信任級別來指定安全策略中的訪問規(guī)則。訪問請求被授予給信任級別大于或等于指定的最小的信任水平的行為者,否則就會拒絕訪問。
3.3.1 系統(tǒng)概述
基于信任的訪問控制機制的目的是管理用戶訪問MOOC系統(tǒng)有限的實驗資源的權限。為了構建這些信任級別,MOOC系統(tǒng)就不能依賴用戶的外部資源。為使TBAC方案自動運行,通過MOOC平臺中用戶的行為來計算其信任水平。因此惟一的要求就是在系統(tǒng)中識別到用戶,可通過OpenID登錄達到這一目的,見圖2。
圖2顯示,活動監(jiān)視器負責收集課程平臺上的用戶活動 (如開始/異常終止/完成實驗和課程)。關于用戶活動的數(shù)據(jù)存儲在活動日志中。當出現(xiàn)訪問一個實驗資源請求時,這一請求被傳遞給TBAC引擎。該組件可以根據(jù)用戶活動日志中以前的行為來計算其信任級別。如果計算產生的信任水平滿足實驗的要求則同意訪問,反之拒絕訪問。
3.3.2 MOOC實驗平臺的性質
MOOC系統(tǒng)信任水平的計算可以利用一種結構化課程的性質,在線實踐課程通常從很容易理解的入門課程開始。隨著教學內容的提高,實際實驗的資源需求也不斷提升。由于高需求的實驗是資源密集型的,因而只有技能熟練的學生才能夠訪問。因此,進行了4個不同階段的實驗,見圖3,這些在課程中都需要完成。
3.3.3 信任級別
利用這些階段采用交錯的方法計算信任級別,進入一個新的階段,見圖3,要求用戶達到前一個階段所需的信任水平。系統(tǒng)中這些水平使用數(shù)字表示,其中,每一個注冊在線課程平臺用戶的初始信任水平為每個階段可以達到的信任水平和下一階段需要達到的信任水平見表1。
這個方案確保了先進的、專業(yè)的資源密集型實驗只能由合適的、有需求的用戶使用。這個方案確保用戶在每個階段課程的努力都是必需的,以利于進行更高級別的實驗。使用這種方案可以防止非熟練用戶在入門階段完成無數(shù)瑣碎的實驗,以跳過這一階段到達高級階段的課程。
3.3.4 信任計算
為計算用戶在一個困難階段的信任水平,需要記錄來自于當前階段關于完成的作業(yè)和實驗的信息。假設在系統(tǒng)中一個用戶的兩個參數(shù)被做了記錄,每一個完成的任務由系統(tǒng)評估并且獲得一定的學分。如用戶在一個階段積累的學分總數(shù)是階段期間可以達到的最大數(shù)量的學分是第二個記錄的參數(shù)是用戶花費在實驗資源上面的時間,預期完成實驗的時間是用戶所需的時間是假設每個階段可用的最小信任級別是利用這些信息,可得信任水平為:
這種信任可以確保及時完成任務并評估實驗結果。為防止超過可達到的最高信任水平值,是封頂?shù)淖畲笏健?/p>
4 將硬件加速器嵌入到云基礎設施
當今硬件加速器的尖端技術在當前抽象化服務中很少體現(xiàn),因為它只能通過操作軟件在裸機上運行來發(fā)揮作用。延伸服務抽象化和提升虛擬化技術對于資源的集成和配置是必需的。在大規(guī)模網(wǎng)絡公開課的背景下,為了使用加速器技術提供實踐學習經驗,不僅需要平衡高性能云的額外成本和對于學生預期的學習價值,而且還需整合廣泛使用的加速器的公共云產品和托管在一個私有云的更多的外來加速器板。如果能確保每個加速器只有一個學生,就可以為他們提供硬件加速器的專有訪問權限。盡管這將保證學生獲取最好的編程經驗,但是這也需要限制學生的數(shù)量或動態(tài)增加加速器的數(shù)量,這依靠云產品并導致額外的成本。另一個問題是,當沒有任何云主機提供所需的加速器,但是在實驗室只是少數(shù)可用。這個極端會使大量的學生訪問很少量的加速器(最壞的情況下每個加速器有數(shù)百名學生訪問)。這樣的場景將會超出虛擬化和整合的可行性。惟一的選擇是針對加速器使用一個工作隊列和排隊任務提交。因為一次只會執(zhí)行一份工作,導致的執(zhí)行性能和忠誠度會非常逼真。另一方面,用戶體驗將變得相當有限,特別是因為調試成為一個問題。有種技術改善用戶體驗和MOOC網(wǎng)絡公開課的性能,在這樣的MOOC實驗教學中很多學生可以進行單一獨特的物理實驗。這種技術是從實驗的實際執(zhí)行中分離學生實驗代碼。代碼可以在虛擬機上進行編譯,這類虛擬機不需要訪問實際實驗硬件,從而在程序開發(fā)中形成快速反饋循環(huán)。
從云的角度來說,最有趣的部分介于兩者之間:每個加速器有相當數(shù)量的學生,并且可以提供。在這些情況下,云計算的虛擬化技術提供了一種允許多個用戶同時在相同的物理硬件上工作而不互相干擾的方式。
通過云計算實現(xiàn)了用戶信任計算和自動評測功能,既可以達到傳統(tǒng)實踐教學模式的效果,又適用于MOOC交互模式的教學[8]。
5 用例:InstantLab
InstantLab是模擬的MOOC交互式實驗平臺,通過實驗,還得出了一個針對InstantLab的TBAC方案的仿真結果,見圖4。
5.1 InstantLab的實現(xiàn)
通過不斷的探索研究得知,進行這些實驗所需的基礎設施是一個不斷變化的目標。一方面,必須適當?shù)鼐S護和更新硬件;另一方面,不得不處理不斷增加的各種平臺版本。為了解決這些問題,將這些實驗遷移到云。InstantLab是在云中進行操作系統(tǒng)實驗的方法,比如擴展帶有新系統(tǒng)調用的內核,這緩解了全體教師和學生維護硬件設備、版本多樣化和配置的開銷。
目前InstantLab的架構基于OpenNebula軟件棧,見圖4,其核心組件是一個Web應用程序,通過它用戶可以進行實例化實驗并運行。這些實驗的運行實例可以通過一個終端連接進行訪問和控制,這一終端連接建立在用戶Web瀏覽器中,可以使用一個代理服務來促進遠程桌面訪問。
5.2 用于InstantLab的基于信任的訪問控制
為了幫助InstantLab受到更多用戶的歡迎,分析了一個基于信任的訪問控制方案的適用范圍,以確保將實驗資源分配給需要的用戶。執(zhí)行TBAC系統(tǒng)時,平臺運營商面臨的挑戰(zhàn)是預測所選的策略的影響。與傳統(tǒng)的訪問控制相比,TBAC方案是一個用戶請求的啟發(fā)式的分類。由于采用限制訪問的主要動機是進一步限制實驗資源消耗,TBAC方案的批準率就是最重要的參數(shù),允許進入的學生越多,就會消耗越多的計算資源。目標是達到用戶總數(shù)40%的許可進入比例,只有這些用戶可以獲準使用先進的、有專業(yè)水平的實驗資源。
為預測在InstantLab中采用TBAC方案的影響,使用一個基于主體的仿真方法:通過過去使用InstantLab的經驗來識別用戶模式,這些代表不同的平臺用戶類型和技能水平。實施這些用戶使用模式來模擬仿真代理的用戶策略。在仿真過程中,代理們可以選擇不同的實驗,這些實驗分為不同階段。實驗成敗取決于代理的技術水平,并且只能嘗試有限的次數(shù)。
仿真使用repast7仿真套件建立,并作為一個離散事件仿真。在固定的時間步驟中,代理們會選擇和嘗試一個實驗。仿真一直運行,直到所有代理已經耗盡可用的實驗,結果如圖5所示。如果總用戶為100%,20%的用戶達到高級階段,22%達到專業(yè)的階段??偣灿?2%的用戶群體達到高級和專業(yè)階段,這是一個令人滿意的結果,有助于在一個開放的InstantLab版本內嘗試基于信任的訪問控制方案。
6 結 論
云計算服務把良好的硬件設備給用戶共享,優(yōu)質的軟件資源給用戶使用[9],基于云計算的MOOC交互式實驗平臺使高校軟件實踐課程的教學質量具有前所未有的開放性和透明性[10]。研究過程中提出以虛擬機內省作為檢測和防止濫用提供資源的方式,并解決訪問控制和資源分配的問題。這些信息可以用來確定用戶的學習行為和學習進展,即基于信任分數(shù)給用戶分配資源。將InstantLab用于MOOC交互式實驗平臺的教學,成功地展示了基于Web瀏覽器的遠程桌面訪問技術,為終端用戶的實驗教學提供服務。
參考文獻
[1] 周立濤,劉越,彭立宏,等.探索MOOC在計算機實踐教學中的應用[J].計算機工程與科學,2012(12):118?121.
[2] 王華忠,姚俊,程華,等.基于云計算的過程控制遠程實驗系統(tǒng)[J].實驗室研究與探索,2015(4):103?106.
[3] 肖冬梅,吳秀文,劉芳.教育資源配置視角下的慕課現(xiàn)象解構[J].圖書館,2015(5):17?21.
[4] 楊龍軍,陸洪毅.基于云計算平臺的計算機硬件遠程實驗室實現(xiàn)[J].華中科技大學學報,2013,41(z2):72?76.
[5] 王明星.計算機網(wǎng)絡實驗遠程教學管理模式研究[J].吉林工程技術師范學院學報,2013(5):55?56.
[6] 黃如花,李白楊.信息檢索MOOC中的交互式問題設計與評分導向[J].圖書與情報,2014(6):14?17.
[7] 李益騏,吳佳麗.基于云計算的新型遠程教育系統(tǒng)設計[J].西北大學學報,2012(1):42?46.
[8] 崔貫勛.基于云計算技術的MOOC實踐教學平臺[J].實驗室研究與探索,2015(8):119?123.
[9] 張輝.基于云計算的遠程教育資源和平臺建設探析[J].繼續(xù)教育研究,2013(5):57?58.
[10] 石博,何楚,卓桐,等.慕課教學中基于局部社區(qū)發(fā)現(xiàn)的主題交互模型[J].計算機應用研究,2015(6):1724?1727.