徐立艷
關(guān)鍵詞:大數(shù)據(jù);計(jì)算機(jī)網(wǎng)絡(luò)課程;教學(xué);虛擬仿真實(shí)驗(yàn)平臺(tái)
傳統(tǒng)計(jì)算機(jī)網(wǎng)絡(luò)課程實(shí)驗(yàn)教學(xué)在硬件設(shè)施和軟件服務(wù)平臺(tái)方面存在不足,大多數(shù)高校的計(jì)算機(jī)網(wǎng)絡(luò)課程實(shí)驗(yàn)只能在機(jī)房完成虛擬仿真實(shí)驗(yàn)學(xué)習(xí),限制了學(xué)生的實(shí)踐效率,對(duì)于提高專業(yè)課教學(xué)質(zhì)量不利。為了解決這個(gè)問題,基于B/S應(yīng)用軟件架構(gòu)、ASP.NET腳本語言、VMwarevSphere虛擬控制程序、SQLServer數(shù)據(jù)庫和應(yīng)用服務(wù)器等軟硬件,構(gòu)建一個(gè)計(jì)算機(jī)網(wǎng)絡(luò)課程教學(xué)的虛擬仿真實(shí)驗(yàn)平臺(tái)。該實(shí)驗(yàn)平臺(tái)包括計(jì)算機(jī)用戶權(quán)限管理模塊、實(shí)驗(yàn)預(yù)約模塊、實(shí)驗(yàn)?zāi)K和教材資源庫模塊等組成結(jié)構(gòu),可以用于設(shè)計(jì)一系列計(jì)算機(jī)仿真實(shí)驗(yàn)場景,并完成教學(xué)實(shí)訓(xùn)實(shí)踐操作。該平臺(tái)為計(jì)算機(jī)網(wǎng)絡(luò)課程教學(xué)提供了實(shí)際支持,具有管理實(shí)驗(yàn)用戶和指導(dǎo)實(shí)踐操作的重要意義。
1大數(shù)據(jù)環(huán)境下計(jì)算機(jī)網(wǎng)絡(luò)課程虛擬仿真實(shí)驗(yàn)平臺(tái)設(shè)計(jì)的要求
在大數(shù)據(jù)、云計(jì)算和人工智能技術(shù)的發(fā)展環(huán)境下,計(jì)算機(jī)網(wǎng)絡(luò)虛擬仿真實(shí)驗(yàn)平臺(tái)的設(shè)計(jì)與教學(xué)實(shí)現(xiàn)需要滿足以下幾方面的用戶需求:
1)實(shí)現(xiàn)“虛實(shí)結(jié)合”的計(jì)算機(jī)網(wǎng)絡(luò)課程教學(xué)環(huán)境需求。當(dāng)前的計(jì)算機(jī)虛擬仿真實(shí)驗(yàn)平臺(tái)主要是為了彌補(bǔ)現(xiàn)有計(jì)算機(jī)網(wǎng)絡(luò)課程無法滿足實(shí)際需求的情況而設(shè)計(jì)的。通過充分整合和利用計(jì)算機(jī)網(wǎng)絡(luò)教材大綱內(nèi)容和課程實(shí)踐案例,設(shè)計(jì)計(jì)算機(jī)網(wǎng)絡(luò)實(shí)驗(yàn)實(shí)訓(xùn)項(xiàng)目,并通過虛擬化仿真實(shí)驗(yàn)平臺(tái)進(jìn)行模擬。這樣可以彌補(bǔ)原有實(shí)訓(xùn)機(jī)房在進(jìn)行網(wǎng)絡(luò)實(shí)驗(yàn)時(shí)功能不足的問題。
2)實(shí)現(xiàn)計(jì)算機(jī)網(wǎng)絡(luò)課程教學(xué)資源的歸類需求。計(jì)算機(jī)虛擬仿真實(shí)驗(yàn)平臺(tái)的教學(xué)資源庫和應(yīng)用資源庫的設(shè)計(jì)主要目的是將分散的教學(xué)資源有序地整合、歸類和存儲(chǔ),以方便教師和學(xué)生進(jìn)行檢索、上傳、下載和調(diào)用。計(jì)算機(jī)網(wǎng)絡(luò)教材大綱體系較為完整,通過利用虛擬仿真實(shí)驗(yàn)平臺(tái)的教學(xué)資源庫,可以針對(duì)計(jì)算機(jī)網(wǎng)絡(luò)教材中的章節(jié)內(nèi)容,如“計(jì)算機(jī)網(wǎng)絡(luò)概述”“數(shù)據(jù)通信基礎(chǔ)”“物理層接口與標(biāo)準(zhǔn)”“數(shù)據(jù)鏈路層協(xié)議及功能”等,整合課內(nèi)外的教學(xué)基礎(chǔ)理論和課程案例資源,為計(jì)算機(jī)網(wǎng)絡(luò)虛擬仿真實(shí)驗(yàn)教學(xué)提供支持。
2計(jì)算機(jī)網(wǎng)絡(luò)課程虛擬仿真實(shí)驗(yàn)平臺(tái)建設(shè)的大數(shù)據(jù)技術(shù)
2.1B/S應(yīng)用軟件框架技術(shù)
B/S模式是基于瀏覽器/服務(wù)器模式的應(yīng)用軟件設(shè)計(jì)模式,主要用于構(gòu)建能實(shí)現(xiàn)不同軟件功能的系統(tǒng)框架。在B/S模式下,所有的軟件客戶端和軟件功能服務(wù)都集中在Web服務(wù)器中,客戶端只需安裝瀏覽器(如Chrome、MicrosoftEdge、InternetExplorer)和SQLServer數(shù)據(jù)庫等組件,就能進(jìn)行網(wǎng)頁資源檢索、數(shù)據(jù)庫訪問、軟件任務(wù)實(shí)現(xiàn)等操作。
2.2HTML5網(wǎng)頁設(shè)計(jì)技術(shù)
HTML5網(wǎng)頁設(shè)計(jì)是一種用于繪制網(wǎng)頁拓?fù)鋱D的技術(shù),通常涉及VML、SVG、Flex等子技術(shù)。不同的子技術(shù)用于編輯設(shè)計(jì)網(wǎng)頁導(dǎo)航欄、側(cè)邊欄、文本、超鏈接、圖像、表格和列表等要素。其中,VML是一種用于Web網(wǎng)頁圖形圖像編輯的技術(shù),可在IE內(nèi)核瀏覽器中運(yùn)行,結(jié)合ASP.NET腳本語言,制作靜態(tài)矢量圖和動(dòng)態(tài)圖;SVG是一種在IE內(nèi)核瀏覽器中用于抓取二維矢量圖形的工具,可幫助用戶快速抓取網(wǎng)頁SVG圖形,并支持導(dǎo)出為PNG、SVG、PDF等格式;Flex技術(shù)是網(wǎng)頁前端開發(fā)和動(dòng)態(tài)圖像生成的主要技術(shù),可根據(jù)網(wǎng)頁導(dǎo)航欄和側(cè)邊欄布局要求,靈活地控制塊級(jí)盒子的布局模塊[1]。
基于瀏覽器/服務(wù)器網(wǎng)絡(luò)架構(gòu)的Web網(wǎng)頁設(shè)計(jì)中,可以使用HTML5的
2.3ASP.NET腳本語言技術(shù)
ASP.NET是一種用于Web網(wǎng)頁組件開發(fā)的腳本語言,通常包括JavaScript和CSS等技術(shù)。JavaScript腳本用于在Web服務(wù)器內(nèi)開發(fā)程序,主要用于添加客戶端事件和標(biāo)記服務(wù)器控件屬性,例如將Web網(wǎng)頁正文標(biāo)記為,或?yàn)榭蛻舳颂砑邮录臄?shù)據(jù)表格(Datagrid)。CSS3用于定義Web網(wǎng)頁界面的樣式,可以使用translate()、scale()、rotate()和skew()等函數(shù)來自定義網(wǎng)頁結(jié)構(gòu)樣式和樣式表選擇符,并將網(wǎng)頁內(nèi)容和設(shè)計(jì)格式分類存儲(chǔ)。通過執(zhí)行修改網(wǎng)頁寬高比例和顏色條目的代碼,以保證Web網(wǎng)頁頁面的適配性和完整性。
2.4虛擬仿真技術(shù)
虛擬仿真技術(shù),也稱為計(jì)算機(jī)模擬技術(shù),主要用于模擬仿真軟件的運(yùn)行環(huán)境和執(zhí)行仿真實(shí)驗(yàn),并分析和驗(yàn)證提出的理論的科學(xué)合理性。在當(dāng)前的計(jì)算機(jī)網(wǎng)絡(luò)課程虛擬仿真實(shí)驗(yàn)平臺(tái)建設(shè)中,需利用hypervi?sor、VMware、XEN等大數(shù)據(jù)虛擬化技術(shù),以及人機(jī)交互技術(shù)、虛擬現(xiàn)實(shí)技術(shù)和網(wǎng)絡(luò)數(shù)據(jù)庫等虛擬仿真技術(shù)。通過設(shè)置可用于網(wǎng)絡(luò)數(shù)據(jù)監(jiān)控和動(dòng)態(tài)任務(wù)遷移的虛擬機(jī),開發(fā)如BosonNetSim、PacketTracer等計(jì)算機(jī)網(wǎng)絡(luò)模擬仿真軟件,并設(shè)定數(shù)值模擬和物理模擬等功能模塊[2]。
通過將計(jì)算機(jī)網(wǎng)絡(luò)實(shí)訓(xùn)數(shù)據(jù)代入微分方程,描述計(jì)算機(jī)仿真基本參數(shù)的相關(guān)關(guān)系和變化情況,采用比例縮放、溫度控制和顏色控制等方式,模擬不同環(huán)境下計(jì)算機(jī)實(shí)訓(xùn)項(xiàng)目的仿真結(jié)果,以便于測量仿真數(shù)據(jù)量并研究屬性變化。
3基于大數(shù)據(jù)的計(jì)算機(jī)網(wǎng)絡(luò)課程教學(xué)的大數(shù)據(jù)云平臺(tái)架構(gòu)設(shè)計(jì)
3.1云平臺(tái)架構(gòu)設(shè)計(jì)
計(jì)算機(jī)網(wǎng)絡(luò)課程仿真實(shí)驗(yàn)室平臺(tái)的建設(shè)通常是在大數(shù)據(jù)云計(jì)算平臺(tái)和VMwarevSphere虛擬化技術(shù)的支持下進(jìn)行的。該平臺(tái)包括VMM虛擬機(jī)監(jiān)視器、虛擬CPU、虛擬內(nèi)存、虛擬I/O接口和虛擬文件系統(tǒng)等虛擬化組件。VMwarevCenterServer服務(wù)管理軟件和網(wǎng)絡(luò)服務(wù)協(xié)議負(fù)責(zé)管理和協(xié)調(diào)不同虛擬設(shè)備之間的連接。具體的云平臺(tái)服務(wù)架構(gòu)如圖1所示。
在外部用戶向網(wǎng)絡(luò)云平臺(tái)發(fā)送服務(wù)請(qǐng)求后,VM?warevCenterServer服務(wù)軟件負(fù)責(zé)對(duì)物理主機(jī)資源進(jìn)行池化,提供數(shù)據(jù)中心的多個(gè)訪問控制點(diǎn),并設(shè)置硬件性能監(jiān)控、用戶訪問控制和虛擬資源配置等功能模塊。隨后,云平臺(tái)根據(jù)實(shí)際業(yè)務(wù)需求分配虛擬CPU、虛擬內(nèi)存和虛擬文件系統(tǒng),使虛擬機(jī)資源在整個(gè)數(shù)據(jù)中心內(nèi)共享,并實(shí)現(xiàn)不同物理主機(jī)之間的虛擬機(jī)動(dòng)態(tài)遷移。一旦所有虛擬化資源完成遷移,虛擬機(jī)就可以在目標(biāo)主機(jī)上正常運(yùn)行。
3.2數(shù)據(jù)庫設(shè)計(jì)
根據(jù)云計(jì)算平臺(tái)內(nèi)Web網(wǎng)頁資源和軟件數(shù)據(jù)資源的存儲(chǔ)需求,設(shè)置SQLServer數(shù)據(jù)庫和MySQL數(shù)據(jù)庫,統(tǒng)計(jì)并記錄不同類型的數(shù)據(jù)庫表結(jié)構(gòu)和數(shù)據(jù)屬性信息,并將其轉(zhuǎn)換為具有一一映射對(duì)應(yīng)關(guān)系的數(shù)據(jù)模型。目前,云計(jì)算平臺(tái)的SQLServer數(shù)據(jù)庫包含了用戶權(quán)限實(shí)體、班級(jí)實(shí)體、教材實(shí)體、計(jì)算機(jī)實(shí)驗(yàn)實(shí)體和虛擬機(jī)實(shí)體等組成內(nèi)容。在不同實(shí)體下,包括了用戶ID、訪問權(quán)限ID、標(biāo)識(shí)號(hào)、類型描述符、虛擬機(jī)ID、交換機(jī)ID等詳細(xì)內(nèi)容。按照以下數(shù)據(jù)標(biāo)識(shí)符設(shè)定來組織數(shù)據(jù):用戶姓名、用戶ID、訪問權(quán)限ID、虛擬機(jī)ID、交換機(jī)ID、類型描述符。根據(jù)這些設(shè)定,建立了計(jì)算機(jī)網(wǎng)絡(luò)課程教學(xué)的數(shù)據(jù)庫結(jié)構(gòu)關(guān)系圖,如圖2所示[3]。
4基于大數(shù)據(jù)的計(jì)算機(jī)網(wǎng)絡(luò)課程虛擬仿真實(shí)驗(yàn)教學(xué)平臺(tái)的總體架構(gòu)
基于B/S應(yīng)用軟件框架開發(fā)的虛擬仿真實(shí)驗(yàn)平臺(tái)具有基礎(chǔ)層、存儲(chǔ)層、虛擬化層、業(yè)務(wù)邏輯層和顯示層等層級(jí)結(jié)構(gòu)。具體的組成架構(gòu)如圖3所示[4]?;A(chǔ)層包括BS瀏覽器/服務(wù)器軟件結(jié)構(gòu)、ASP.NET腳本語言、云計(jì)算平臺(tái)和Web服務(wù)器的軟硬件。它為虛擬仿真實(shí)驗(yàn)教學(xué)平臺(tái)的搭建提供底層支持。存儲(chǔ)層包含SQLServer數(shù)據(jù)庫和MySQL數(shù)據(jù)庫的存儲(chǔ)結(jié)構(gòu)。它負(fù)責(zé)存儲(chǔ)用戶數(shù)據(jù)、環(huán)境配置json文件、實(shí)驗(yàn)手冊(cè)以及系統(tǒng)鏡像ISO等。通常會(huì)設(shè)置多臺(tái)服務(wù)器,以服務(wù)于不同時(shí)間段的海量數(shù)據(jù)資源和少量數(shù)據(jù)資源存儲(chǔ)需求,并完成不同類型數(shù)據(jù)的定時(shí)備份和存儲(chǔ)操作。
在計(jì)算機(jī)網(wǎng)絡(luò)仿真實(shí)驗(yàn)教學(xué)平臺(tái)中,設(shè)置了一系列的VMM虛擬機(jī)、虛擬交換機(jī)、虛擬路由器等運(yùn)行裝置。通過虛擬化層,能夠響應(yīng)顯示層用戶的數(shù)據(jù)訪問和交互請(qǐng)求。同時(shí),通過資源管理模塊對(duì)虛擬機(jī)資源進(jìn)行監(jiān)控、審核和配置調(diào)整,實(shí)現(xiàn)了系統(tǒng)化的資源管理。業(yè)務(wù)邏輯層作為外部用戶請(qǐng)求的傳遞發(fā)送層級(jí),包含了用戶管理、班級(jí)管理、教材管理、實(shí)驗(yàn)管理、環(huán)境管理、資源管理、實(shí)驗(yàn)預(yù)約和權(quán)限管理等子模塊。高校教師、學(xué)生和管理員主體可以通過點(diǎn)擊各項(xiàng)功能服務(wù),實(shí)現(xiàn)對(duì)用戶注冊(cè)、訪問權(quán)限控制、教材教案使用、實(shí)驗(yàn)環(huán)境創(chuàng)建以及教學(xué)資源管理等業(yè)務(wù)操作的執(zhí)行。
5大數(shù)據(jù)虛擬化仿真實(shí)驗(yàn)平臺(tái)在計(jì)算機(jī)網(wǎng)絡(luò)課程教學(xué)中的應(yīng)用研究
5.1用戶權(quán)限訪問的控制模型及實(shí)現(xiàn)
計(jì)算機(jī)網(wǎng)絡(luò)課程的教學(xué)參與者通常為教師、學(xué)生,而在高校引入虛擬化仿真實(shí)驗(yàn)教學(xué)平臺(tái)后,教師、學(xué)生、管理員成為計(jì)算機(jī)網(wǎng)絡(luò)課程的重要參與者。為實(shí)現(xiàn)不同課程參與用戶的訪問控制,提出基于數(shù)據(jù)屬性的分組訪問控制模型(AttributeBasedAccessCon?trol,ABAC),以屬性為依據(jù)對(duì)外部用戶的數(shù)據(jù)訪問進(jìn)行決策、授權(quán),以驗(yàn)證用戶數(shù)據(jù)訪問過程的合法性。
通常圍繞待訪問數(shù)據(jù)或任務(wù)的主體屬性SA、資源屬性RA、操作屬性O(shè)A、環(huán)境屬性EA等,首先定義用戶主體屬性,如“姓名”“ID”,將其整合設(shè)置為SA={UserName_Char,pzhuUser_ID,...}[5]。資源屬性RA主要針對(duì)Web網(wǎng)頁系統(tǒng)文件、申請(qǐng)?jiān)L問的數(shù)據(jù)記錄,具體到計(jì)算機(jī)網(wǎng)絡(luò)課程則包括教材資源訪問、實(shí)驗(yàn)功能服務(wù)訪問的數(shù)據(jù),每個(gè)資源都設(shè)定唯一的Res_ID標(biāo)識(shí),表示為RA={Res_Textbooks,Res_Experiments,...}。操作屬性O(shè)A為用戶主體的資源訪問動(dòng)作屬性,主要用于定義用戶查詢、增加、修改或刪除等行為,每個(gè)操作行為都對(duì)應(yīng)唯一屬性值,一般增、刪、改、查動(dòng)作屬性表示為OA={op?er_ID,TYPE_create,TYPE_delete,TYPE_update,TYPE_retrieve...}。
在完成以上一系列屬性標(biāo)識(shí)定義后,將用戶對(duì)不同數(shù)據(jù)或服務(wù)訪問的權(quán)限,設(shè)置為包含某一類屬性的表達(dá)式,存儲(chǔ)至訪問控制列表中,由訪問控制列表比對(duì)用戶標(biāo)識(shí)、后臺(tái)存儲(chǔ)屬性標(biāo)識(shí)的一致性,屬性的表達(dá)式表示為Permission=(PA,EA),PA=(SA,RA,OA)。其中只有SA、RA、OA的三元組屬性均一致才被允許訪問,否則不允許訪問。EA環(huán)境屬性通常情況下為空,若為空則表示用戶權(quán)限訪問不受到環(huán)境約束,若不為空則需要考慮環(huán)境約束。
5.2虛擬化仿真實(shí)驗(yàn)軟件平臺(tái)的應(yīng)用
基于B/S框架的虛擬仿真實(shí)驗(yàn)平臺(tái)的開發(fā)依賴于云計(jì)算平臺(tái)、Web服務(wù)器和網(wǎng)絡(luò)計(jì)算機(jī)等硬件設(shè)備,需要安裝用于計(jì)算機(jī)仿真模擬的虛擬網(wǎng)絡(luò)控制臺(tái)(VMwarevSphere)。外部用戶可以通過遠(yuǎn)程幀緩沖(RFB)協(xié)議的方式,通過輸入網(wǎng)絡(luò)控制臺(tái)的IP地址和I/O端口地址進(jìn)行連接[6]。外部用戶可以使用Web瀏覽器打開HTML5網(wǎng)頁,在加載SQLServer數(shù)據(jù)庫和jQueryUI的支持后,即可加載出VMwarevSphereJa?vaScript虛擬控制臺(tái)程序。具體操作見圖4。
通過調(diào)用VMwarevSphereAPI,可以生成用于與遠(yuǎn)程虛擬機(jī)建立連接的MKSticket腳本。將該MKSticket腳本嵌入HTML5網(wǎng)頁的執(zhí)行代碼中,可以方便后臺(tái)服務(wù)器對(duì)不同虛擬機(jī)的資源分配和調(diào)用進(jìn)行控制。同時(shí),MKSticket腳本中還包含Managedobject組件,該組件可用于遠(yuǎn)程監(jiān)控計(jì)算機(jī)虛擬仿真實(shí)驗(yàn)軟件的運(yùn)行、客戶端對(duì)象操作服務(wù)管理以及系統(tǒng)服務(wù)管理,基本上滿足計(jì)算機(jī)網(wǎng)絡(luò)課程的虛擬仿真實(shí)驗(yàn)教學(xué)需求。
6結(jié)語
計(jì)算機(jī)網(wǎng)絡(luò)是計(jì)算機(jī)專業(yè)課程的公共必修課,其中計(jì)算機(jī)網(wǎng)絡(luò)的基礎(chǔ)理論知識(shí)和課例實(shí)踐案例在教學(xué)中占有重要地位。因此,應(yīng)用教學(xué)更傾向于計(jì)算機(jī)實(shí)踐實(shí)訓(xùn)。根據(jù)不同計(jì)算機(jī)網(wǎng)絡(luò)實(shí)踐實(shí)訓(xùn)項(xiàng)目和課例案例的安排,可以基于B/S軟件服務(wù)框架建立計(jì)算機(jī)網(wǎng)絡(luò)課程的虛擬化仿真實(shí)驗(yàn)教學(xué)平臺(tái)。通過Web網(wǎng)頁,客戶機(jī)發(fā)送數(shù)據(jù)訪問和軟件功能處理請(qǐng)求,后臺(tái)Web服務(wù)器接收到特定的任務(wù)訪問請(qǐng)求后,調(diào)用相關(guān)的數(shù)據(jù)庫資源和虛擬機(jī)功能程序,并將結(jié)果返回給客戶機(jī)。服務(wù)器將返回的數(shù)據(jù)結(jié)果轉(zhuǎn)換為HTML文本形式,顯示在計(jì)算機(jī)前端面板中,能夠輔助并完成不同計(jì)算機(jī)項(xiàng)目的仿真模擬實(shí)驗(yàn)。