(计算机应用技术专业论文)计算机网络虚拟实验系统的设计与实现.pdf_第1页
(计算机应用技术专业论文)计算机网络虚拟实验系统的设计与实现.pdf_第2页
(计算机应用技术专业论文)计算机网络虚拟实验系统的设计与实现.pdf_第3页
(计算机应用技术专业论文)计算机网络虚拟实验系统的设计与实现.pdf_第4页
(计算机应用技术专业论文)计算机网络虚拟实验系统的设计与实现.pdf_第5页
已阅读5页,还剩55页未读 继续免费阅读

(计算机应用技术专业论文)计算机网络虚拟实验系统的设计与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

北京邮电大学硕士论文计算机网络虚拟实验系统的设计与实现 计算机网络虚拟实验系统的设计与实现 摘要 随着社会的发展和科技的进步,人们对计算机的人机交互方式提 出了新的要求,虚拟现实技术应运而生。它主要综合了计算机图形技 术、多媒体技术、传感器技术、显示技术、仿真技术以及网络技术等 多种技术为一体,将虚拟场景构建于网络之上,从而实现不同物理位 置上多个用户共同“沉浸 在一个虚拟场景中,并可以实现自由漫游及 与其它用户之间的相互交流。 虚拟实验系统是虚拟现实技术的一个重要应用。用虚拟实验系统 来开展科学实验和研究将对传统教学仪器产生历史性的变革。运用虚 拟实验系统建立全方位、多层次、多模式的实践教学环境,将会使学 生的实践操作技能和技术应用技能得到全面的提高。计算机网络虚拟 实验系统旨在基于国产基础软硬件产品,研究构建虚拟实验系统的关 键技术,结合l i n u x 培训课程的需求,面向高校和专门的培训机构开 发计算机网络实验系统。 计算机网络虚拟实验系统采用b s ( b r o w s e r s e r v e r ) 架构,j a v a 技 术开发,j a v a 2 d 作为底层绘制技术,s w i n g 作为用户界面开发技术, 面向l i n u x 以及w i n d o w s 平台下的浏览器使用。本文详细的介绍了 虚拟实验系统的设计及开发过程,介绍了虚拟实验系统的整体架构, m v c 模式的使用以及三层结构的划分;从系统流程的角度介绍了框 架的实现方法;提出了计算机网络及协议的仿真方案,对其中的关键 算法进行了深入研究并综合利用多种技术,在系统中实现了整个方 案。 在系统开发过程中,存在一些不足之处。针对b s 体系结构及开 发过程中所面临的问题,本文提出利用r i af r i c hi n t e r n e ta p p l i c a t i o n , i i 北京邮电大学硕士论文计算机网络虚拟实验系统的设计与实现 富互联网应用程序) 技术,改进计算机网络虚拟实验系统的用户界面 开发方案。在改进方案中,采用了2 0 0 7 年刚刚推出的j a v a f x 技术。 由于j a v a f x 技术刚刚起步,因此并没有成熟的技术路线可循,在论 文中所提出的改进方案,是对j a v a f x 技术的初步应用和探索。 关键字:虚拟实验,j a v a ,富客户端应用,j a v a f x i l l 北京邮电大学硕士论文 计算机网络虚拟实验系统的设计与实现 d e s i g na n dd e v e l o p m e n to ft h ev i r t u a l e x p e r i m e n ts y s t e mf o rc o m p u t e rn e t w o r k s a b s t r a c t w i t ht h em o d e r n i z a t i o no ft h e s o c i e t y a n d i m p r o v e m e n t o f t e c h n o l o g i e s ,p e o p l eh a v en e wr e q u i r e m e n t sf o rt h ec o m m u n i c a t i o nm o d e b e t w e e nh u m a na n dc o m p u t e r a n di tl e a d st ot h ea p p e a r a n c eo fv i r t u a l r e a l i t yt e c h n o l o g y t h ev i r t u a lr e a l i t yt e c h n o l o g yi s a ni n t e g r a t i o no f c o m p u t e rg r a p h i c st e c h n i q u e ,m u l t i m e d i at e c h n i q u e ,s e n s o rt e c h n i q u e , d i s p l a yt e c h n i q u e s ,s i m u l a t i o nt e c h n i q u e ,a n di n t e r n e tt e c h n o l o g i e sa n d s oo n i tb u i l d sv i r t u a ls c e n e so nt h en e t w o r kt oi m p l e m e n tap l a t f o r mt h a t m u l t i - u s e r sf r o md i f e r e n tp l a c e sc a ni m m e r s ei n t oa n dc o m m u n i c a t ew i t h e a c ho t h e rw i t hn ob o u n d v i r t u a le x p e r i m e n ti sa na p p l i c a t i o no fv i r t u a lr e a l i t yt e c h n o l o g y t h ef a c tt h a tal o to fr e s e a r c h e sa n de x p e r i m e n t sa r eb a s e do nt h ev i r t u a l e x p e r i m e n ts y s t e m sw i l lb eah u g ei m p a c to nt h et r a d i t i o n a le x p e r i m e n t m e t h o d s am u l t i l a y e r , m u l t i m o d et e a c h i n ge n v i r o m e n tw h i c hi sb u i l t b yu s i n gt h ev i r t u a le x p e r i m e n ts y s t e mw i l lg r e a t l yb o o s tt h ep r a c t i c a l a b i l i t y o ft h es t u d e n t s t h ev i r t u a le x p e r i m e n ts y s t e mf o rc o m p u t e r n e t w o r k si sap r o j e c tb a s e do nt h ed o m e s t i ci n f r a s t r u c t u a ls o f t w a r e ,i t s m a i np u r p o s ei st os t u d yt h ek e yt e c h n o l o g i e sw h i c ha r eu s e dt ob u i l d v i r t u a le x p e r i m e n ts y s t e m s ;i tc o m b i n e dw i t ht h el i n u xt r a i n i n gc o u r s e , p r o v i d et h e c o m p u t e rn e t w o r k c o u r s e a n dt h ev i r t u a l e x p e r i m e n t i v 北京邮电大学硕士论文 计算机网络虚拟实验系统的设计与实现 p l a t f o r mt ou n i v e r s i t i e sa n dt r a i n i n gi n s t i t u t i o n s t h ev i r t u a le x p e r i m e n ts y s t e mi sab sa r c h i t e c h t u r es y s t e m ,a n d d e v e l o p e db yu s i n gj a v at e c h n o l o g y i tu s e sj a v a 2 da s t h er e n d e r i n g t e c h n i q u e ,a n du s e ss w i n gt od e v e l o pt h eg u i ( g r a p h i c u s e ri n t e r f a c e ) t h es y s t e mc a nr u no nd i f f e r e n tb r o s w e r sa n dp l a t f o r m s t h i sp a p e r m a i n l yi n t r o d u c e st h em e t h o d so ft h ed e s i g na n dd e v e l o p m e n to ft h e w h o l es y s t e m t h es y s t e mu s e st h em v c p a t t e r n ,a n dc a nb ed i v i d e di n t o 3t i e r s w ew i l la l s oi n t r o d u c et h e i m p l e m e n t a t i o n o ft h es y s t e m s f r a m e w o r k ,d i s c u s sa b o u tt h es i m u l a t i o nm e t h o d so fc o m p u t e rn e t w o r k s a sw e l la st h ep r o t o c o l s ,a n ds t u d yo nt h ek e ya l g o r i t h m si nt h i ss y s t e m i n e v i t a b l e l y , t h e r ea r es o m ef l a w si nt h ed e v e l o p m e n tp l a n i nt h e l a s tc h a p t e r , w ew i l li n t r o d u c eh o wt oi m p r o v et h eu ip e r f o r m a n c eb y u s i n gt h er i a ( r i c hi n t e r n e ta p p l i c a t o n ) w e w i l lu s et h en e w l yr e l e a s e d j a v a f xi nt h ei m p r o v e dp l a n a n db e c a u s ej a v a f x w a sac o m p l e t e l yn e w t e c h n o l o g y , i t sj u s tr e l e a s e di n2 0 0 7 ,s ot h e r ei sn om a t u r ep l a nt h a tw e c a nt a k ea d v a n t a g eo f t h ei m p r o v e dp l a nd i s c u s s e di nt h i sa r t i c l ei sa f i r s ts t e pa n da d v e n t u r ei n t oj a v a f x k e yw o r d s :v i r t u a le x p e r i m e n t ,j a v a ,r i c hi n t e r n e ta p p l i c a t i o n ,j a v a f x v 北京邮电大学硕士论文计算机网络虚拟实验系统的设计与实现 独创性( 或创新性) 声明 本人声明所呈交的论文是本人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果,也不包含为获得北京邮电大学或其他 教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任 何贡献均己在论文中作了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处, 本人签名:垂亟拯 本人承担一切相关责任。 日期:圣蝇:圣:三生 关于论文使用授权的说明 学位论文作者完全了解北京邮电大学有关保留和使用学位论文的规定,即: 研究生在校攻读学位期间论文工作的知识产权单位属北京邮电大学。学校有权保 留并向国家有关部门或机构送交论文的复印件和磁盘,允许学位论文被查阅和借 阅;学校可以公布学位论文的全部或部分内容,可以允许采用影印、缩印或其它 复制手段保存、汇编学位论文。( 保密的学位论文在解密后遵守此规定) 保密论文注释:本学位论文属于保密在一年解密后适用本授权书。非保密论 文注释:本学位论文不属于保密范围,适用本授权书。 本人签名:王遨拯日期:垄堕:圣:三鱼 导师签名: 眨荔:益勉 日期:型壁! 垒:兰 北京邮电大学硕士论文计算机网络虚拟实验系统的设计与实现 1 1 论文研究的内容 第一章绪论 远程教学作为一种新型的教育模式己经成为近年来各国教育界的重要研究 课题。在远程教育环境中进行学习的学生大部分能力都必须通过实验得到,因为 实验是大部分工程类和应用类课程的重要一环,是人们快速的、廉价的获取知识 和技能的有效途径,是现代远程教学质量提高的关键。因此网上远程实验教学已 成为远程教学研究的重要方面,受到了教育晃的广泛关注,但是远程教学实验, 却是一个全新的同时也是亟待解决的问题。从目前的远程教学环境来看,其网上 素材基本分为两类:静态与动态。静态素材一般是将书本、教案等以静态的形式 放于网上;动态素材一般是在静态素材中出现的一些动画表现。虽然后者以动画 的形式表现,但并不具备可变性,不能给学生提供真实的情景,很难达到教学要 求,即很难保证学生学习的质量。为了解决这一问题,人们将近年来提出的虚拟 实验室引入了远程实验教学体系当中。虚拟实验室这个概念的提出最初是为了整 合分散在各地的科研资源和科研力量,但引入远程实验教学后,经过科研人员的 大力发展,以其良好的性能弥补了远程实验教学的不足,是解决远程实验教学问 题的有效途径,并且是当今教育界实现远程教学环境中的实验教学的主要方式, 所以虚拟实验室的发展和完善是现代远程教学质量提高的关键。 虚拟实验室( v i r t u a ll a b o r a t o r y ) ,亦称为“合作实验室( c 0 1 l a b o r a t o r y ) ”,最早 在1 9 8 9 年由美i 虱u n i v e r s i t yo f v i r g i n i a 的w i l l i a mw u l f 教授提出。虚拟实验室是以 虚拟现实技术为基础,构建虚拟实验环境的一门技术。所谓虚拟现实( v i r t u a l r e a l i t y ) 技术又称灵境技术,是近十几年兴起的高新技术,它的定义可以归纳如 下:虚拟现实技术是利用计算机生成一种虚拟环境,并通过多种专用设备使用户 “沉浸”到该环境之中,实现用户与该环境直接进行自然交互的技术。这里, “r e a l i t y ”的含义是现实的世界或现实的环境。1 2 1 j 1 2 2 j 所以,“v i r t u a lr e a l i t y ”f 虚拟 现实) 的另一个名称是“v i r t u a le n v i r o n m e n t ”( 虚拟环境) 。虚拟现实是一门涉及计 算机仿真技术、图像处理与模式识别、智能接口技术、人工智能技术、多传感器 技术、语音处理与音响技术、网络技术、并行处理技术和高性能计算机系统等技 术的综合集成技术,是当今计算机科学研究的一个热点方向。使用虚拟现实技术 进行仿真实验教学,具有相当的现实意义: ( 1 ) 弥补远程教学条件的不足。 在远程教学中,往往会因为实验设备、实验场地、教学经费等方面的原因, 北京邮电大学硕士论文计算机网络虚拟实验系统的设计与实现 而使一些应该开设的教学实验无法进行。利用虚拟现实系统,可以弥补这些方面 的不足,学生足不出户便可以做各种各样的实验,获得与真实实验一样的体会, 从而丰富感性认识,加深对教学内容的理解。 ( 2 ) 避免真实实验或操作所带来的各种危险。 学生在虚拟实验环境中,可以放心地去做各种危险的或危害人体的实验。例 如,虚拟的化学实验,可避免化学反应所产生的燃烧、爆炸所带来的危险;虚拟 的外科手术,可避免由于学生操作失误,而造成”病人”死亡的医疗事故;虚拟的 飞机驾驶教学系统,可免除学员操作失误而造成飞机坠毁的严重事故。 ( 3 ) 彻底打破空间、时间的限制。 利用虚拟现实技术,可以彻底打破空间的限制。大到宇宙天体,小至原子粒 子,学生都可以进入这些物体的内部进行观察。虚拟技术还可以突破时间的限制, 一些需要几十年甚至上百年才能观察的变化过程,通过虚拟现实技术,可以在很 短的时间内呈现给学生观察。 另一方面,信息时代的来临和网络技术、通信技术应用的广泛化,人们对网 络和通信技术的学习需求也同趋增大,作为教学的重点的计算机网络系列课程也 越来越受到重视,其远程实验教学更成为了焦点。在近年来高速发展虚拟实验室 系统的热潮中,计算机网络系列课程的虚拟实验室也取得了一定的进展。目前已 经做出了很多有益的尝试并且取得了一定的成功,但是也都有其不足。所以计算 机网络课程远程实验教学系统的研究和发展成为了当今教育界被广泛关注的热 点问题。其中,使用虚拟现实技术解决计算机网络课程远程实验教学是热点中的 热点。 研究如何利用计算机仿真技术来构建计算机网络虚拟实验系统是本篇论文 的核心。可以说,计算机网络虚拟实验系统是仿真技术在教育领域的应用。论文 中结合远程教育和仿真现实理论,探讨在设计和开发虚拟实验系统过程中遇到的 问题。论文中关心的问题主要包括:应选取什么样的技术组合进行开发,整个系 统应使用什么架构,采用怎样的实现方案及其技术细节等等。 随着i n t e r a c t 的发展和浏览器的兴起,b s ( b r o s w e r s e r v e r , 浏览器服务器1 架构逐渐成为企业级w e b 应用程序的主流架构模式。然而用户对应用程序复杂性 要求日增,但现在的w e b 应用程序对完成复杂应用方面却始终跟不上步伐。用户 与今天中等复杂程度的w e b 应用程序交互时,其体验并不能令人满意。w e b 模型 是基于页面的模型,缺少客户端智能机制。而且,它几乎无法完成复杂的用户交 互( 如传统的c s 应用程序和桌面应用程序中的用户交互) 。这样的技术使得w e b 应用程序难以使用,支持成本高,并且在很多方面无法发挥效应。b s 架构的主 要缺陷有: 2 北京邮电大学硕士论文计算机网络虚拟实验系统的设计与实现 ( 1 ) 过程复杂 过程复杂性是由于需要表达一个多步骤或多选项任务或互动作用所引起的。 由于h t m l 互动性的限制,常常使用户感到w 曲应用程序难以使用。为了避免这 种难以忍受的用户体验,便需将任务在表面上看来“自然”的部分处区分成多个步 骤,甚至需多个网页共同完成。这种以网页为主的用户界面通常需要反复翻转网 页,以解决在顺序步骤中有牵连性的改变。其结果是过程复杂和用户体验差。 ( 2 ) 配置困难 许多w e b 应用程序允许用户配置自己的产品。但是配置产品是一项很困难的 过程,应用程序必须能够表达出有关的复杂性,尤其是当用户可以从数十、数百 或数干选项中定制出一个产品时。表达这些复杂性包括指出所需条件、有效和无 效组合、一些导致问题的元素以及它们的适当解决方法;还有最重要的是容许用 户观看最后结果。这些是传统w e b 应用程序相当难以表现的。 ( 3 ) 反馈复杂性 高度互动性的应用程序,能使反馈变得复杂,也即是指用户行动和快速移动 或情节不断改变的屏幕元素之间的反馈环路。传统的h t m l 页面一向来都可以说 是无法表达这类复杂性。它所需要的是拥有高度互动性和局部智能型的客户端应 用程序,以便可以在无需刷新全页或干扰与服务器之间的通信的情况下,响应用 户的输入和改变它们的状态或界面。放弃如今依赖服务器的客户机将使用户体验 更吸引,同时也解决了反馈复杂性的问题。 为了提高用户体验,出现了一种新类型的互联网应用程序,即富互联网应用 程序( r i c h i n t e r n e ta p p l i c a t i o n s ,r t a ) 。这些应用程序结合桌面应用程序的反应快、 交互性强的优点与w e b 应用程序的传播范围广及容易传播的特性。r i a 简化并改 进了w e b 应用程序的用户交互。这样,用户开发的应用程序可以提供更丰富、更 具有交互性和响应性的用户体验。 虚拟实验系统应该具有沉浸( i m m e r s i o n ) 、交互( i n t e r a c t i o n ) 、构想 ( i m a g i n a t i o n ) 三特性。为了使计算机网络实验系统能够达到上述目标,就需要提 升用户体验( u s e re x p e r i e n c e ) ,使用户在使用系统的过程中,有身临其境的感受。 所谓用户体验是指用户使用一个软件产品或者访问一个网站时的全部体验,包括 印象和感觉是否成功,是否享受,是否还想使用;能够忍受的问题,疑惑和b u g 的程度等等。因此,论文最后还将探讨如何使用r i a 技术提高用户界面效果, 提升用户体验并提高系统的开发效率。 3 北京邮电大学硕士论文计算机网络虚拟实验系统的设计与实现 1 2 论文结构 论文主要分成五个部分: 第一章绪论:主要介绍论文所要讨论的核心问题及文章结构。 第二章虚拟实验系统的分析与设计:本章主要介绍计算机网络虚拟实验系统的 项目背景,项目需求分析,以及总体设计方案。 第三章系统的实现方案:主要介绍系统框架的具体实现和仿真层的实现。仿真 层的实现主要包括网络设备的仿真,协议仿真和网络命令仿真。 第四章界面i 丌发及优化:引入r i a 的概念,介绍j a v a f x 技术,并提出利用j a v a f x 技术进行用户界面开发的方案。 第五章总结及展望:总结全文,并对虚拟实验系统和r i a 技术的前景进行展望。 1 3 攻读学位期间的主要工作 在攻读硕士学位期间,在导师的指导下参与了多项科研工作,通过在项目开 发中的学习,提高了理论水平和实践能力。期间的主要工作有: ( 1 ) 参与了国家“十五科技攻关项目“国产基础软件技术培训系统与课程 开发”的研发工作。在项目组中的主要工作有:参与了系统的需求分析工作; 独立设计和实现了路由器、交换机的仿真模块;设计了网络命令的仿真算法并应 用于系统之中;开发了计算机网络协议的仿真模块,通过使用j a v a 多线程技术, 模拟网络中的各种协议,如r i p , o s p f , i g r p , a r p , v l a n ,t r u n k , v r p 等;使 用j a v ax m l 编程技术,实现了系统的s a v e b a d 模块;设计了一个系统测试模 块,该模块采用j u n i t 框架,并应用到测试工作中;参与了图形界面的编码工 作;参与了系统底层绘制和事件处理框架的编码工作;在二期丌发过程中,参与 了系统功能扩充方案的设计。 ( 2 ) 参与了国家“十五”科技攻关项目“面向中小学的远程教育关键技术及 示范”子课题“基于国产基础软件的多媒体网络教学及远程支持系统的研发工 作。在项目中,参与开发了“中学物理实验 子模块,主要工作有:参与了用户 界面的开发工作;参与了底层的事件响应模块的丌发;设计了器材信息模块并在 系统中实现。 4 北京邮电大学硕士论文计算机网络虚拟实验系统的设计与实现 第二章虚拟实验系统的分析与设计 2 1 项目的背景及意义 仿真技术作为一门独立的科学已经有5 0 多年的发展历史了,他不仅用于航 天、航空、各种系统的研制部门,而且已经广泛应用于电力、交通运输、通信、 化工、核能各个领域。特别是,近2 0 年来,随着系统工程与科学的迅速发展, 仿真技术已从传统的工程领域扩充到非工程领域,因而在社会经济系统、环境生 态系统、能源系统、生物医学系统、教育系统也得到了广泛的应用。 所谓仿真技术,就是以相似原理,系统技术,信息技术,以及仿真领域有关 的技术为基础,以计算机系统,与应用有关的物理设备及仿真器为工具,利用模 型对系统进行研究的一门多学科的综合性技术。 在没有计算机的时代,仿真都是利用实物模型的方式来进行的,又称作物理 仿真,物理仿真有很多的优点,比如:形象、直接、易信,但也有很大的局限性, 重用性差,易毁坏等等。现代的仿真技术绝大多数都是基于计算机技术的。通过 计算机,我们可以将研究的对象进行数学描述,建模编程,并在计算机运行。计 算机仿真以其不可代替的优势,取代了传统的仿真模式,成为了现今的主流,因 此,现代的仿真技术,也称为计算机仿真。 在认识仿真之前,先要了解与仿真相关的两个概念:系统与模型【2 0 1 。 系统:一般来说,所谓“系统”就是指按照某些规律结合起来,相互作用、相 互依赖、相互依存的所有实体的集合。描述系统的“三要素”实体、属性、活 动。实体确定了系统的构成;属性也称为描述变量,用来描述每一实体的特性; 活动定义了系统内部实体之间的相互作用,从而确定了系统内部发生的过程。举 个例子说,我们可以把一个理发馆定义为一个系统。该系统的“实体”包括服务员 和顾客,顾客到达模式和服务质量就是两个实体的“属性”,而整个服务过程就是 “活动”。在系统的三要素上,加上系统的边界,便构成了系统。 模型:所谓模型就是系统某种特定功能的一种描述,它集合了系统必要的信 息,通过模型可以描述系统的本质和内在的关系。它一般分为物理模型和数学模 型两大类。物理模型与实际系统有相似的物理性质;而数学模型是用抽象的数学 方程描述系统内部各个量之间的关系而建立的模型。一般的计算机模拟模型都是 数学模型。 有了以上的知识,我们就可以得出仿真的步骤:明确研究系统,建立系统的 模型,然后在模型上进行实验,这一过程便是仿真。 北京邮电大学硕士论文计算机网络虚拟实验系统的设计与实现 我们说的计算机仿真主要是数字仿真,它主要包括三个要素:系统、系统模 型与计算机。联系这些个要素的三个基本活动是:模型的建立( 抽象出数学关系 式) 仿真模型的建立( 选择合适的算法) 和仿真实验( 运行程序) 。 图2 1 计算机仿真三要素及三个基本活动 之所以要采用仿真系统代替真实的系统,主要原因在于: ( 1 ) 在真实系统上进行实验可能会引起系统破坏或是发生故障,例如,对于 一个真实的化工系统或是电力系统进行没有把握的试验将会冒巨大的 风险。 ( 2 ) 需要进行多次试验时,难以保证多次系统试验的条件都相同,因而无法 准确判断试验结果的优劣; ( 3 ) 系统试验时间太长或费用昂贵: 随着信息时代的到来,远程教育成为一种重要的教学模式,其中实验教学更 是远程教育的一个重要环节,而虚拟实验室技术的发展和完善则是解决远程实验 教学的关键,也是远程教学质量提高的关键。计算机网络系列课程作为远程教学 的重点,其实验环节也十分关键,所以针对计算机网络课程远程实验教学的虚拟 实验室的开发一直是研究人员的工作重点。虽然已经取得了一定的进展,但是现 有的平台在很大程度上不能够完全满足计算机网络系列课程中丰富的实验要求, 特别是目前尚无针对大专院校计算机网络系列课程中计算机网络实验的虚拟实 验系统,所以对虚拟实验系统进行研究,进而丌发出计算机网络虚拟实验系统是 一件非常有研究意义的工作。 “国产基础软件技术培训系统与课程开发”是国家“十五”重大科技攻关项目 的子课题,项目旨在基于国产基础软硬件产品,研究构建虚拟实验系统的关键技 术,结合l i n u x 培训课程的需求,面向高校和专门的培训机构开发计算机网络实 验系统及课程。项目中研发的计算机网络虚拟实验系统,主要面向对计算机网 络有一定基础的学习者,系统通过仿真网线、集线器、路由器、交换机、计算机 等实验器材,用户可以自己组建一个小型计算机网络,进行各种网络虚拟实验, 包括l i n u x 、w i n d o w s 计算机的配置,路由器的配置、路由协议的配置,交换机 的配置,交换机管理配置,d h c p 的配置、w e b 的配置、f t p 的配置、d n s 的 缗:置、s a m b a 服务器的配置、h t t p 的配置实验等多种实验。 6 北京邮电大学硕士论文计算机网络虚拟实验系统的设计与实现 计算机网络实验系统是计算机仿真技术在教育领域的实践。它以现实世界中 真实的计算机网络系统为基本模型,通过使用多种计算机技术,在网络上构建虚 拟的实验环境。此系统的开发,将能够解决现实中师资,硬件,场地不足的特点, 通过计算机网络,为广大教育、培训机构提供良好的教学平台。 交t f 性 沉慰性 图2 - 2 虚拟现实的三特性 此外,计算机网络实验系统作为计算机仿真技术的应用,还有3 个“i ”,即 沉浸( i m m e r s i o n ) 、交互( i n t e r a c t i o n ) 、构想( i m a g i n a t i o n ) 的特性,用户可以 沉浸到计算机系统所创造的虚拟实验环境中,与虚拟环境进行交互,并能得到与 实际物理参与联系相似的感受,这更是提高了此系统作为教育教学工具的可用 性。 2 2 系统的需求分析 2 2 1 系统的总体目标 计算机网络虚拟实验系统应通过尽量真实地模拟显示客观事物,让使用者具 有身临其境的感觉,提高学习实践的兴趣。系统充分发挥虚实结合的优势,提供 虚拟仿真器材,满足实验需要,解决了实际不具备硬件条件或网络环境的问题。 计算机网络虚拟实验系统仿真多种型号的交换机和路由器,并仿真w i n d o w s 平台和l i n u x 平台的p c 机。用户可以通过将各种设备拖放到实验平台上,组成 网络拓扑并进行试验。系统仿真的典型实验主要包括:l i n u x 文件管理、l i n u x 常用命令、l i n u x 进程、v i 编辑器及用户管理实验;l i n u x 和w i n d o w s 环境下的 基本网络配置、资源共享、防火墙、虚拟专用网( v p l , o 、d n s 配置、h t r p 服务、 f t p 服务,d h c p 配置和s a m b a 配置实验;路由器基本路由配置、静态路由配 置、动态路由配置、r i p 协议、i g r p 协议、o s p f 协议和a r p 实验;交换机基 本配置、v l a n 配置和v t p 实验等几十种典型实验。此外实验系统应具有以下 特点: ( 1 ) 仿真网络器材的逻辑功能和网络通信协议,提供典型实验及实验指导。 ( 2 ) 实验过程中能够动态改变网络拓扑。同类软件中,绝大多数实验过程都 7 北京邮电大学硕士论文计算机网络虚拟实验系统的设计与实现 是基于固定不变的网络拓扑,即用户一旦搭建好实验的网络拓扑结构, 就不能变动,只能在此基础之上进行实验。而本系统支持用户随时修改 网络拓扑,例如,在某个实验的过程中将一台新的设备接入网络。 ( 3 ) 系统应支持跨平台,不受操作系统和浏览器种类的限制。此外,为了适 应远程教育的需要,还应该提供网上实验的功能。 2 2 2 用户界面及功能 系统的主界面布局分为四大块:器材栏、器材属性栏、实验区以及信息提示 区,每个区域负责特定的交互功能,下面逐一进行介绍。 1 器材栏 器材栏界面主要用来展示各种器材,供用户选择。器材栏中共有四大类器材: 计算机、集线器、交换机、路由器。每一大类下出列具体型号。用户可以选中自 己需要的器材,用鼠标拖入到实验区中,进行实验。 图2 3 器材栏 2 器材属性栏 ! 用户在器材栏中选中相器材时,器材属性栏窗口将会显示该器材的一些属 性信息,供用户了解该器材的作用。 图2 4 器材属性栏 北京邮电大学硕士论文计算机网络虚拟实验系统的设计与实现 3 实验区 在此区域中,主要用来拖拽器材,搭建实验电路,进行实验操作以及器材操 作。该区域可能会有多个窗口,搭建实验电路将是一个窗口,这个窗口的右上方 没有关闭按扭,当操作器材是将会以一个t a b 窗口形式显示出来,这种窗口将会 有关闭按扭。 在实验区应支持的操作包括:器材的拖动,连线,器材和线的删除,器材的 右键菜单等。如2 5 图所示,用户将2 台p c 和2 台2 5 0 1 型号的路由器从器材栏 拖拽到实验区并组成网络进行实验,通过鼠标点击某个器材,便可进入此器材的 操作界面对其进行操作。 图2 5 系统买验区界面 4 信息提示区 该区域用来提示器材的一些操作提示信息以及实验信息,提示信息内容主要 包括: ( 1 ) 当前选中的器材。 ( 2 ) 右键菜单提示。 ( 3 ) 正在进行的操作,例如:“您i f 在进行连线,连线的方法是”。 ( 4 ) 图形界面操作中某些1 i 支持的功能等等。 2 3 总体设计方案 目6 仃,国内外有很多旨在教学的计算机网络模拟系统,比较著名的计算机 网络教学系统自。c i s c o 公司出品r o u t e r s i m 平俞,s y b e x 公司开发的c c n a l a b , r o u t e r s i m 公司丌发的n e t w o r kv i s u a l i z e r 模拟器,以及b o s o n 公司丌发的b o s o n n e t s i m 模拟器等等。这些系统各有优势,f 日也有其不足。总的来说,这些系统 9 北京邮电大学硕士论文计算机网络虚拟实验系统的设计与实现 大都是针对网络认证考试而设计,并不适用于大专院校的教学之中,而且不能很 好的支持网上实验和管理功能,缺乏跨平台的能力。 因此在技术选择上,系统主要采用b s 架构和j a v aa p p l e t 技术,利用j a v a 对w e b 的强大支持和跨平台特性,使系统能够应用于各种操作系统和浏览器之 上。另外,本系统采用s w i n g 技术开发用户界面,采用j a v a 2 d 技术作绘制模块 的底层接口,利用双缓冲机制技术,即将所有要绘制的信息在后台准备好,然后 再交由前台显示,这样避免了屏幕的闪烁感,同时利用纹理技术,提高系统的绘 制速度以及运行性能。 系统总体设计主要采用m v c 机制,即数据、视图、控制器。三者之间相互 联系有保证足够松的耦合。其中数据主要用来记录数据和实现一些与操作没有过 多关系的功能函数,负责提供具体的数据操作接口和算法的功能实现以及处理控 制器不能处理的信息;视图负责绘制,提供给用户绘制的接口,并用来表示器材 以及各种操作在外观产生的影响;控制器主要负责处理鼠标以及键盘的输入消 息,同时调用数据和视图提供的接口来修改具体的数据和绘制信息。 在层次结构上,实验系统主要由三个功能层组成:绘制引擎层、仿真框架层、 具体仿真实现层。引擎层主要负责提供底层的绘制功能,通用界面的绘制,底层 信息的采集,信息处理泵的运转,信息处理函数的调用,以及整体的初始化与销 毁;仿真框架层提供了一个针对各种仿真系统的较通用的框架,这个框架是在引 擎层的基础上实现的,仿真框架层主要负责仿真流程的运转,为其上层的具体实 现层提供针对引擎层的功能调用;具体仿真实现层则实现了计算机网络仿真这一 具体仿真系统的各种功能,包括系统的算法,以及各种器材、协议的具体布局模 拟【3 l l 。 具体仿真实现层 仿真框架层 引擎层 图2 6 系统的层次结构 在系统框架设计中,我们主要达到如下几个目的: ( 1 ) 尽量将各种功能模块( 绘图、用户操作处理、核心仿真,初始化、销毁 等) 抽象出来,这样在完成某个功能模块时不必关心其他模块的实现,其他模块 的修改也不会影响此功能模块。 ( 2 ) 设定一种固定的数据交互方式,使得开发者能够尽量将注意力放在真正 1 0 北京邮电大学硕士论文计算机网络虚拟实验系统的设计与实现 的功能实现,而不是各种数据( 图形、输入信息、仿真算法) 的交互方式上。 ( 3 ) 各个框架模块之间尽量保证低耦合。 1 绘制引擎层 这一层为上层提供了绘制的接口,它封装了与系统有关的绘制工作和底层信 息采集工作。 ( 1 ) 引擎模块( e n g i n e ) :该模块主要用来提供全局唯一的若干资源,每隔一秒 更新引发重新绘制,各种鼠标、键盘操作的修改,属性数据、显示更新。 ( 2 ) 系统模块( s y s ) :该模块主要是将与具体操作系统相关的功能包装起来, 比如取得系统的毫秒级时间、初始化与销毁框架主线程( 该线程主要用来更新框 架单元里的绘图模块、用户操作模块、用户输入操作处理) ,设置鼠标的各种信 息,创建与销毁绘制模块,创建器材栏、属性栏模块。 ( 3 ) 绘制模块( r e n d e r s y s t e m ) :该模块主要负责对系统各种视图的绘制,使 用的是j d kj a v a 2 d 开发工具包,然后抽象出各种需要使用的绘制接口并对其进 行包装。开发人员只需用包装后接口,而不需要了解内部的实现细节。 2 仿真框架层 ( 1 ) 框架单元模块( e n g i n u n i t ) :框架单元主要有两个单元,一个是实验区的 框架单元,另一个是属性栏的框架单元,它们负责的功能基本相似,所以可以将 它抽象出一个基类,主要功能是用来设置和记录各种控制器、绘图模块、鼠标键 盘事件、以及各种操作命令。 ( 2 ) 控制器( c o n t r o l l e r ) :该模块主要是用来处理来自系统鼠标、键盘事件, 同时调用数据和视图提供的接口来修改具体的数据和绘制信息。每个控制器只能 完成一种功能,所以在该系统存在许多控制器,比如移动器材控制器,添加器材 控制器,连线控制器等等。所有的控制器类均继承自c o n t r o l l e r 类: c l a s sc o n t r o l l e r 判断该控制器是否可以控制本事件 b o o lc a n h a n d l e e v e n t ( ) ; 进入控制器 v o i de n t e r ( ) ; 处理鼠标信息,返回信息表示是否可以更改当前的控制器 b o o lh a n d l e e v e n t ( ) ; ) ( 3 ) 控制管理器( c o n t r o l l e r m a n a g e r ) :针对不同的系统事件,负责对各个控制 北京邮电大学硕士论文计算机网络虚拟实验系统的设计与实现 器、命令进行调度与控制,每隔l m s 它将对系统所有的控制器、命令进行轮询, 询问它们是否能处理当前系统事件,若能,则调度该控制器或命令。 ( 4 ) 器材栏模块( d e v i c e f r a m e ) :该模块主要负责放置各种实验器材,提供器 材选择的接口。 3 仿真实现层 绘制引擎层和仿真框架层为系统提供了底层的基础设施,也可以将其视为一 个可重用的框架。在这个框架基础上,我们只要再设计跟仿真内容相关的一些模 块,便可完成实验平台的各项功能。 ( 1 ) 实验模块( e x p e r i m e n t ) :实验模块是系统的核心,负责器材b u f f e r 的初始 化,属性栏与器材栏的初始化,器材管理类的初始化,以及负责记录当前实验绝 大部分,包括实验的各种操作信息,实验脚本的保存与读取,监听实验拓扑结构, 器材属性信息是否发生变化,然后对实验进行更新。更新过程为:先对所修改的 器材进行属性的更新,其次整个算法进行更新,再次每个器材进行表盘显示数据 的更新。因为实验是系统唯一的实例( i n s t a n c e ) ,所以在设计该模块时,采用了 s i n g l e t o n 模式。 ( 2 ) 实验器材模块( d e v i c e ) :器材模块主要是对实验的各种设备进行设计,同 时记录设备所有的属性信息。所有的器材都继承自d e v i c e 类,如2 7 图所示: 图2 - 7 器材类之间的关系 ( 3 ) 器材管理模块( d e v i c e m a n a g e r ) 该模块主要用管理实验所需的各种器 材,包括设备的生成,销毁。 本章主要介绍了计算机网络虚拟实验系统的项目背景,提出了系统的总体需 求和功能需求,并根据需求提出了系统的技术路线和设计方案。在下面的章节中, 将根据设计方案,讨论实现的方法和技术细节。 1 2 北京邮电大学硕士论文 计算机网络虚拟实验系统的设计与实现 第三章系统的实现方案 3 1 系统的框架实现 本节主要讨论系统框架的实现方案。由于系统中所涉及的模块众多,为了给 读者以清晰的认识,我们首先从介绍系统的生命周期出发,分析系统从启动到退 出的整个过程以及其中所涉及到的主要模块,然后再分别讨论各个模块的实现细 节。 3 1 1 系统框架流程 下面介绍计算机网络虚拟实验系统的仿真框架流程。仿真框架从启动专运行 专退出的整个流程如下所示: 步骤1 系统启动时,首先初始化器材栏模块,以及系统模块,该模块将会 提供一些与系统相关的接e l ,同时也提供了创建器材栏( d e v i c e f r a m e ) 。 d e v i c e f r a m ed e v i c e f r a m e = n e wd e v i c e f r a m e ( ) ; c o m m o n s y ss y s = n e wc o m m o n s y s ( d e v i c e f r a m e ) ; 步骤2 调用引擎模块的初始化函数。并将a 步骤初始化好的系统模块与 此模块相关联。代码示例如下: e n g i n e i n i t ( s y s ) ; 步骤3 初始化实验区框架单元模块,同时引擎将记录该单元。代码示例如 下: e n g i n e u n i tm _ e n g i n e _ u n i t = n e we n g i n e u n i t ( ) ; e n g i n e s _ w o r k _ u n i t = m _ e n

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论