




已阅读5页,还剩50页未读, 继续免费阅读
(计算机应用技术专业论文)基于internet虚拟网络实验平台的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 随着计算机技术和网络技术不断发展,远程教学作为一种新的教 学模式已经得到越来越广泛地应用。近几年在远程教学领域中提出了 一种新的教学思路,即构建虚拟实验室的方法。而计算机网络课程, 作为高校的必修和主干课程之一,越来越受到各方的重视。 论文分析和总结了当前的一些计算机网络课程远程实验教学系 统的不足之处,提出了一种基于i n t e r n e t 的虚拟网络实验系统。系 统使用s i r e j a v a 作为离散事件处理引擎,将网络节点内部按照o s i 参 考模型分层来构造组件,使用户在实验中能够更好地理解节点内部的 行为以及网络各层的协议。 系统使用j a v a a p p l e t 的形式来实现客户端,使用j a v a b e a n s 来 开发虚拟仪器组件。在本实验平台上,用户只需要使用鼠标和键盘就 可以构建网络节点内部层次和网络拓扑结构,实验结果以动态演示过 程和动态文本跟踪窗口体现,让学生深入理解网络中的复杂行为。用 户还能够通过继承网络层次模板类在平台上实现自己的协议类,提高 了用户的动手能力。 关键词:虚拟实验室,计算机网络,a p p l e t ,s i m j a v a ,j a v a b e a n s 组件 a b s t r a c t w i t ht h ef a s t d e v e l o p m e n to fc o m p u t e r s c i e n c ea n dn e t w o r k t e c h n o l o g y , r e m o t ee d u c a t i o na san e we d u c a t i o nm o d eh a sa l r e a d yb e e n m o r ea n dm o r ew i d e l yu s e d an e we d u c a t i o nm e t h o d , b u i l d i n gv i r t u a l l a b o r a t o r y , h a sb e e np r o p o s e di nr e m o t ee d u c a t i o nf i e l di nr e c e n ty e a r s c o m p u t e rn e t w o r k i sa ni m p o r t a n tc o u r s ef o rc o l l a g es t u d e n t s ,a n di th a s f o c u s e dm o r ea n dm o r ea t t e n t i o n b ya n a l y z i n ga n ds u m m a r i z i n gt h ee x i s t i n gc o m p u t e rn e t w o r k c o u r s ev i r t u a ll a bs y s t e m ,t h et h e s i sp r o p o s e sac o m p u t e rn e t w o r kv i r t u a l l a bs y s t e mb a s e do i li n t e m e t t h es y s t e mu s e ss i m j a v aa st h ed i s c r e t e e v e n ts i m u l a t i o ne n g i n ea n db u i l d sl a y e rc o m p o n e n ti nt e r m so ft h eo s i m o d e l d u r i n ge x p e r i m e n t , s t u d e n t sc a nc l e a r l yu n d e r s t a n dt h eb e h a v i o r i nt h en e t w o r kn o d e a n dt h ep r o t o c o lo f e a c hl a y e ro f n e t w o r k t h ec l i e n to ft h es y s t e mi si m p l e m e n t e dw i t hj a v aa p p l e t , a n dt h e v i r t u a ln e t w o r kc o m p o n e n ti si m p l e m e n t e dw i t hj a v a b e a n s s t u d e n t sc a n b u i l dn o d ea n dn e t w o r kt o p o l o g yo nt h ee x p e r i m e n ts y s t e m t h er e s u l ti s e x p r e s s e db yt h ea n i m a t i o na n dd y n a m i c a l l yu p d a t e dt r a c e w i n d o w s t u d e n t sc a na l s ow r i t ep r o t o c o lc l a s sb ye x t e n d i n gt h el a y e rm o d u l e c l a s s k e yw o r d s :v i r t u a ll a b o r a t o r y , c o m p u t e rn e t w o r k , s i m j a v a , a p p l e t , j a v a b e a n s 原创性声明 本人声明,所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果。尽我所知,除了论文中特别加以标注和致谢的 地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包 含为获得中南大学或其他单位的学位或证书而使用过的材料。与我共 同工作的同志对本研究所作的贡献均已在论文中作了明确的说明。 作者签名:j 多器l 一 日期:二坦 年阜月丝日 关于学位论文使用授权说明 本人了解中南大学有关保留、使用学位论文的规定,即:学校有 权保留学位论文,允许学位论文被查阅和借阅;学校可以公布学位论 文的全部或部分内容,可以采用复印、缩印或其它手段保存学位论文; 学校可根据国家或湖南省有关部门规定送交学位论文。 作者签名:驻 导师签名 硕士学位论文第一章绪论 第一章绪论 近十年来,信息产业得到了飞速发展,计算机网络技术的进步和普及尤为引 人注目。据有关资料介绍,i n t e r n e t 的上网机器已超过5 ,0 0 0 万台,一些发达 国家上网家庭己超过总数的8 0 i l j ,中国的各行各业也在迅速网络化。 当越来越多的中国人,包括中国农民,已经开始在网上获得商业行情,出售 他们的产品的时候,迅速培养高素质的拥有知识创新能力的网络设计人才和高级 网络管理人才,应是高等学校网络教学的目标。而使用i n t e r n e t 这一媒介来进 行远程教学也是近几年来的研究热点。 1 1 课题的研究背景 近几年来,i n t e r n e t 的发展改变了人类的生活方式,大大提高了人们通信 的效率和速度,使得不同地域的人们可进行实时对话。作为教育本身来说,为了 给社会培养更多的高质量技术人才,其教学模式必将随着通信手段的提高进行相 应的改进,如何利用i n t e r n e t 进行远程教学( 即基于i n t e r n e t 的远程教学,或 现代远程教学) 已成为近年来各国教育界的重要研究课题。 远程教学与传统教学相比,不仅具有能够充分利用教育资源、使某一学科的 先进教学方法和优越的实验条件被广泛使用的特点,而且具有更高的灵活性1 2 1 , 不再受传统的面对面的统一教学模式的限制,从而可以节约大量的基础设施建设 的重复投资,有利于改善办学条件和提高教学水平、目前己被广泛的应用到大学 的实验教学中来。其实远程教学很早就开始了,如函授大学、电视大学等,只是 由于现代的i n t e r n e t 技术给远程教学提供了前所未有的交互性和巨大的资源共 享潜力,远程教学最近才得到如此重视。尽管目前人们对基于i n t e r n e t 的远程 教学模式还不是完全清楚,但有一点是确定的:基于i n t e r n e t 的远程教学在不 久的将来会成为一种重要的教育模式。 目前,对于高等院校来讲,实验室既是重要的教学阵地,也是主要的科研基 地,实验室的装备水平通常被当作衡量一所高校教学,科研水平的重要标志。而 实验则是教学活动中一个必不可少的过程,很多学习科目都是以实验课程为基础 的,尤其是对于些实践性较强的学科,实验对于培养学生的实际操作能力和解 决问题的能力是至关重要的,学生的大部分实践能力都是通过实验得到的。但是 由于资金的相对短缺使得高等院校的实验室很难购买多套先进但却价格昂贵的 硕士学位论文 第一章绪论 仪器设备。 网络虚拟实验室正是在这样的需求下而发展起来的。 美国u n i v e r s i t yo fv i r g i n i a 的w i l l i a mw u l f 教授在1 9 8 9 年提出了虚拟 实验室( v i r t u a ll a b o r a t o r y ) ,也称为合作实验室( c o l l a b o r a t o r y ) 的概念例, 用来描述计算机网络环境下的虚拟实验室环境。这种虚拟实验室环境的新思想, 致力于构筑一个综合不同工具和技术的集成环境。在这个环境里,科学家们可以 有效地利用地理上分布的各种资源( 数据、信息、设备、人员等) 从事科研活动。 w u l f 教授形象的把虚拟实验室称为。无墙的研究中心”【4 1 。在这种环境下,各 科研人员就某一科研项目进行交流,可以使用仪器,共享数据和资源。共同在数 字图书馆中提取信息,存储信息,撰写学术论文等。 他定义了虚拟实验室所能实现的基本功能: i 数据共享:在不同地点研究同一内容课题的研究人员能够迅速、方便地 查找所需要的数据库资料,及时了解最新科研动态; 2 软件共享:在不同地点的研究人员能够分享数据分析、图表显示、模型 构造的软件工具; 3 远程仪器控制:在不同地点的研究人员能够控制、操作一些位于远程或 人类难以到达的地方( 如火山、海底和太空等) 的仪器设备: 4 远程学术交流:不同地点的学者能方便地进行跨越时空的实时交流。 随着远程教学的发展和需求,虚拟实验室这个概念由最初的科研需要扩展到 远程教学环境中【5 l o 通过集成在远程教学环境中的虚拟实验室,老师和学生可以 更广泛,有效地交流,学生通过虚拟实验室提供的实验支持可以更有效地理解所 学课程嗍。虚拟实验室在远程教学中的应用,使远程教学的环境得到了完善,使 学生通过远程教学环境取得的学习效果得到了显著的提高。 信息时代的来临和网络技术、通信技术应用的广泛化,人们对网络和通信技 术的学习需求也日趋增大,作为教学的重点科目之一的计算机网络也越来越 受到重视,其远程实验教学更受到了重视。在近年来高速发展虚拟实验室系统的 热潮中,计算机网络课程的虚拟实验室也取得了一定的进展。人们针对计算机网 络课程实验的特殊性做出了很多有益的尝试并且取得了一定的成功,但是都有其 不足,都不能在远程教学环境中完全实现计算机网络课程的实验。所以计算机网 络课程远程实验教学系统的研究和发展成为了当今教育界被广泛关注的热点问 题。 2 硕士学位论文 第一章绪论 1 2 课题的研究现状 1 2 1 虚拟实验室的研究现状 利用现代计算机技术进行虚拟实验室的研究,国际上始于2 0 世纪9 0 年代, 是近几年来国内外研究的一个热点。虚拟实验就是利用鼠标的点击、拖动,将微 机上虚拟的各种仪器,按实验要求、过程组装成一个完整的实验系统,同时在这 个系统上完成整个实验,包括原材料的添加;实验条件的改变、数据采集以及实 验结果的模拟、分析。它突出了“软件即仪器”的新概念。虚拟实验室就是虚拟 实验运行的载体,是虚拟实验的运行环境。网络虚拟实验室通过计算机网络系统, 研究人员或学生可以不受时空的限制,使用仪器设备、共享数据和计算资源以及 获取其他信息,同同行进行研讨或得到教师的远程指导。如图l - - 1 所示,网络 虚拟实验室通常包含两层含义。 图1 1 网络虚拟实验室的基本结构 按实现方式网络虚拟实验室分4 种1 7 】 1 软件共享网络虚拟实验室:其特点为,共享服务端的虚拟实验室模拟软 件平台,接受客户端发送的实验请求,分析和处理实验参数,经过计算模拟最终 将结果返回客户端。整个系统不涉及具体的实验仪器硬件设备,只是利用软件模 拟实验的过程。 2 数据共享的网络虚拟实验室:其特点为实验数据已存在于远程数据库中, 服务器接收客户端请求在数据库中检索实验数据并返回客户端。 3 仪器共享网络虚拟实验室:服务端同样接受客户端的实验请求和实验参 数,使用实验参数配置与之连接的实验仪器硬件设备,由实验仪器硬件设备进行 实验,并将实验结果返回服务端,最后返回到用户端,实现实验仪器和实验数据 的共享在实验进行过程中客户端无法对其进行远程控制。文献 8 就是这类虚 拟实验室的一种实现。 4 远程控制网络虚拟实验室:与仪器共享网络虚拟实验室最大的区别在于, 除了实验仪器实验数据的共享之外,其还要实现客户端对实验仪器设备的远程控 制。基于w e b 的远程控制网络虚拟实验室框架如图l 一2 所示。 3 硕十学位论文 第一章绪论 仪 器 控 制 服 务 器 图i 一2 远程控制网络虚拟实验室框架图 软件共享实验室及数据共享实验室主要是用于演示性或验证性实验以及在 虚拟仿真中的设计与分析。而共享仪器的网络实验室主要是为了提高大型、贵重 仪器设备的利用,以便这些仪器为尽可能多的研究工作者服务。比较著名的像美 国i l l i n o i s 大学的n m r s c o p e 系统【9 】。通过i n t e r n e t ,研究人员在任何地方都能 使用i l l i n o i s 大学的仪器。如n m r i ( 核磁共振仪) 的使用,只要向该大学递交 了一个样品之后,经过授权的研究人员就可以与服务器联机,服务器将显示出一 张表示仪表设置的表格和功能清单,通过点击屏幕上的按钮就可以进行实验,生 成的图像将被传回到研究人员的计算机屏幕上。 与西方发达国家相比,国内在虚拟实验方面开展的工作还不多。目前从网上 可查到的信息和各院校开放的对外服务看,国内清华大学、北京大学、上海交通 大学、华南理工大学、中南大学等高校己陆续在网上设立了自己的电子教型1 0 1 。 其中有少数电于教室提供了有限的虚拟实验服务,如中南大学信息科学与工程学 院建立了一个数字图像处理网上虚拟实验室l n 】,学生可以通过联网计算机终端来 进行仿真实验。 、, , 1 2 2 虚拟网络实验室的发展现状 国外对虚拟网络实验室的研究已有一段时间,主要有以下几个网络仿真软 件: 1 u c b l b n l v i n tn e t w o r ks i m u l a t o r - 州s 2 n s 2 是一个多协议网络离散仿真软件,是美国d a r p a 支持的项目v i n t ( t h e v i r t u a li n t e r n e tt e s t b e d ) 中的核心部分f 1 2 1 。由u s i i s i ,x e r o xp a r cl b n l 和u cb e r k e l e y 这些美国大学和实验室合作研究开发,目的在于建立一个网络仿 真平台,为网络研究者提供网络仿真软件,来实现新的互连网络协议的设计和实 施。主要面向网络协议研究者。v i n t 提供给专业网络设计人员作为网络性能测 4 硕士学位论文 第一章绪论 试工具【l 孤,目前已在2 0 0 多家科研机构和大专院校使用。 n s 2 有很多特点,比如支持大规模多协议网络仿真,对同一个仿真模型提供 不同粒度的仿真实现。它提供一个仿真接口,可把真实网络节点流量灌入到仿真 模型中的节点,通过与真实网络同步,仿真网络在真实运行中的行为;提供可视 化软件n a m ,可动画显示需要的网络仿真过程,图形显示数据结果等。 2 r e a l r e a l 是由u cb e r k e l e y 的计算机系开发的一个网络仿真软件【1 4 】,主要用于 基于包交换的数据网络中,有关流动态行为和拥塞控制模式的研究。r e a l 提供 3 0 多个流控协议精确模型,并提供用户图形界面,使用户利用点击界面快速建 立仿真模型。 3 s s f n e t s s f n e t 是一个i n t e r n e t 网络和协议的仿真和建模环埘恬】,以基于j a v as s f ( s c a l a b l es i m u l a t i o nf r a m e w o r k ) 的组件构成,提供面向对象数据库的可扩 展仿真建模的并行环境。主要支持i p 包级别上的细粒度仿真,链路层和物理层 的协议模型以独立的组件方式提供。s s f n e t 的多域模型支持多协议主机和路由 器可达2 5 0 0 0 个以上的细粒度仿真,允许快速配置1 0 0 0 0 0 个节点或更大的网络 模型。提供s s f n e t 是d a r p a 支持的项目s 3 ( s c a l a b l es e l f - o r g a n i z i n g s i m u l a t i o n s ) 的其中一个部分 s s f n e t 分为s s f o s 和s s f n e t 两部分,s s f o s 用于主机和操作系统建模, s s f n e t 用于网络连接,节点和链路配置建模。s s f n e t 模型具有自配置的特点, 每一个s s f n e t 类的实例可以根据d m l ( d o m n i nm o d e l i n gl a n g u a g e ) 配置数据 库中的参数,自动进行自我配置。s s f n e t 提供的协议支持包括:i p ,n i c ,t c p , u d p ,s o c k e t 。o s p f ,b g p 4 ,h t t p 。 4 n e t s i m3 1 n e t s i m 是一个事件驱动仿真器【l q ,用于基于包交换网络,由m i tl c s a d v a n c e dn e t w o r ka r c h i t e c t u r eg r o u p 设计开发,用于他们自身的目的。其 仿真引擎很简单,是一个用c 编写的单过程,仅仅提供调度事件的软件。可以仿 真所有类型的网络。但为了运行仿真,用户必须用c 语言编写新的组件,修改一 些文件,并对相应的连接进行编译,然后使用工具箱创建仿真模型。仿真器结构 只提供调度事件的方法和与用户通信的方法。提供简单的xw i n d o wg r a p h i cu s e r i n t e r f a c e ( g u i ) 来显示网络拓扑和它的操作数据。g u i 显示图形的对象( 组 件按钮) 和信息对象( 参数和队列) 。通过在相关窗口中单击,可以在运行期间 变更一些组件参数,影响仿真过程。 其他一些较为成功的仿真平台有o p t i m i z e de n g i n e e r i n gt o o l ss y s t e m ( o p n e t ) d 刀,它和n s 功能比较强大,提供对几种不同网络结构的离散事件仿 硕士学位论文第一章绪论 真,包括目前广泛使用的因特网协议,同时提供了图形界面运行仿真过程,但是 需要很长时间去熟悉,不适合广大初学者使用。c o m n e t 是分析仿真软件分析仿 真软件,它使用比较简单,但是不提供对因特网协议的研究。m a r s 、n e t s i m 、r e a l 等。这些网络实验软件包往往只是为了研究网络系统的某类问题,因而缺乏全面 性和通用性。如:m a r s 只研究网络层的选路协议,而对传输层和应用层的协议 软件缺乏支持;n e t s i m 则集中研究传输层的相关问题( 通常是各种t c p 协议的 性能) ,但不支持网络的动态路由选择功能;r e a l 只研究网络中数据流的动态特 性以及拥塞控制机制。 1 3 研究目标 以上实验环境主要面向网络协议的研究者,为他们提供一个网络性能测试工 具,并且在不同的实验环境中构造网络拓扑结构使用不同的脚本语言支持,初级 用户较难上手,并不能为学习计算机网络课程的学生提供一个网络实验开放平 厶 口。 为了加强网络课程的实践环节,在教学过程中增加学生参与,培养学生的创 新精神和能力,我们利用面向对象技术和组件技术,设计并实现了基于i n t e r n e t 的可重用组件功能模块的网络实验开放平台,基本的设计目标是:系统功能相对 完整,结构清晰并对应于网络层次抽象;可以逐层监控网络中数据的流动和数据 格式,以便直观地分析协议机制;源代码开放,以便通过阅读程序了解协议的实 现方法;模块化设计并对功能进行封装,便于局部修改,从而让学生方便地参与 协议的设计和实现。虚拟网络原理实验室具有以下优点: ,1 投资少; 2 可以提供网络实验流程定制和运行的可视化; 3 能够设计自己的协议,组合到其他网络环境中,因此可以比较不同协议 之间的性能;可以把不同层的协议进行组合,观察它们的协同工作性能; 4 抽象出研究网络实验或项目的本质,。从而忽略一些不必要的细节。 1 4 论文组织结构 论文共分为六章。 第一章绪论。这一章主要介绍基于i n t e r n e t 虚拟实验室的研究背景,并介 绍虚拟实验室以及网络仿真的研究及反展现状,并提出基于i n t e r n e t 的虚拟网 络实验室的研究目标。 第二章需求分析的总体设计。这一章首先现有的网络远程实验进行分类。根 6 硕士学位论文 第一章绪论 据网络课程实验的特点提出系统需求,根据需求确定总体设计,提出设计思想以 及平台的总体架构。 第三章系统详细设计与具体实现。这一章主要介绍如何使用利用s i m j a v a 中的实体类构造网络层次模板类,并且介绍j a v a b e a n s 组件的注册过程的实现以 及组件属性配置的实现,还包括动态生成实验组件的实现以及实验组件之问端口 动态互连的实现。 4 第四章系统的关键技术。这一章对系统实现过程中使用的关键技术进行了详 细的介绍,包括离散事件仿真技术、j a v a b e a n s 组件技术、反射技术、x m l 技术 等关键技术在系统的不同功能模块中所发挥的作用。 第五章系统实验开发实例。这一章以距离矢量路由算法实验为例来介绍实验 实现过程。其中包括实验内容与需求,以及实验流程的实现以及对实验结果的分 析。 第六章结束语。对所做的设计与开发工作进行了总结,并阐述了将来进一步 的扩展与完善此开发系统需要做的工作。 硕士学位论文 第二章虚拟网络实验室系统的需求分析与总体设计 第二章虚拟网络实验室系统的需求分析与总体设计 从高等工程教育的角度看,培养学生实践动手能力和设计创新能力,是实验 室的核心目标。因此,虚拟实验室对远程教学的发展具有重要意义。在远程教学 模式下特别需要基于i n t e r n e t 的虚拟实验室。随着信息时代的来临和网络技术、 通信技术应用的广泛化,人们对网络和通信技术的学习需求也日趋增大,作为教 学的重点科目之一的计算机网络课程的实验教学也越来越受到重视。 我们提出基于i n t e r n e t 的虚拟网络实验室,旨在让学生理解计算机网络课 程的基础理论,并且对计算机网络体系和结构有一定的了解。 2 1 系统需求分析 目前计算机网络课程的远程实验教学有了一定的进展,主要以下面几种 方式存在: 1 以静态或者动态的网上素材展现实验内容和结果。静态素材一般是将书 本、教案等以静态的形式放于网上,只能固定的展现几种实验结果,学生通过这 种静态的素材不能充分地掌握实验内容,这种教学方式达不到基本的实验教学要 求;动态素材一般是在静态素材中出现的一些动画表现。中国i t 认证实验室远 程实验中心的在线模拟实验【l s l 采用f l a s h 动画实现,但是这些实验通常已经有 了固定的流程,用户只是按照固定的流程来演示,不能给学生提供真实的情景, 很难达到教学要求,即很难保证学生学习的质量。 2 用硬件组建小型实验网络通过服务器与i n t e r n e t 相连接,用户可以通过 服务器访问实验网络,并且通过服务器上所提供的实验软件进行实验并观察实验 结果。中国c c i e 实验室采用的就是这种方式【嘲,可以通过学员专用实验帐号 t e l n e t 远程登录到网校机房,直接对全真的路由器及交换机进行配置。这种方 式需要预定机时,不能多用户同时实验。普通学生操作不方便并且服务器访问流 量有限。这种方法耗费比较大,并且所提供的实验有限一般仅限于局域网和底层 的网络实验。 3 通过在网页上嵌套脚本程序针对特定范围的网络实验模拟仿真 2 0 1 。这种 方法对每一类实验都需要编写程序,代码重用率低,编码工作量大,不利于维护 和扩充实验。通过这种教学学生可以掌握一至两类实验但无法掌握大部分网络实 验,所以还是达不到计算网络的实验教学要求。 8 锄。冀誓翌竺圭竺? 亨要方式进行研究后不难发现它们都不能很好的满足计算 絮警课程远程实验教学的要求。总结出通用虚拟网络实验籍晶;磊翥丞薯im n t 一u lu 前扫:0 2 芝妻苎戋冀能。实验平台应提供友好的人机交互界面方便用户手工 或根据用户提供的参数自动生成相应的网络实验方案。 。”1j _ ; 耋曼曼髦冀:曼户i 提供的实验模块应能方便地嵌入到实验平台中进行测 试,还可添加到实验平台中取代过时的模块或增添新的功能。“”删 ;。:。妻曼堡笆薏技术实验平台应能提供不同层次的抽象方法来建立网络 元素的虚拟原型,收集相关的实验数据,合理调配系统的若主;z ”4 “”镏 奔皓:翌冀跫2 。芝验半台厦提供从实验方案的发生、网络模型的运行。到 实验数据分析全过程的可视化支持。 一” 根据以上的功能需求,可以画出用户的用例图如图2 - - 1 簖菜 图2 1 虚拟网络实验室用例图 篓 ;苗,寸警篓苎鬟鎏竺孝兰苎对于网络实验组件的获取与组件之间链路的搭建,用户 兰兰鼠标操作啊以构建实验漉实验组件使用j a v :釜磊曩某= 焉三。 x 丽兰茎耋竺耋数苎翌网络实验组件的属性进行设置。不用的网络层次组件具有 不同的属性参数,例如,网络层组件的参数包括了网络地五:。菇夏篆嚣;蕃嚣 9 硕士学位论文第二章虚拟网络实验室系统的需求分析与总体设计 口数最大值,最大分组长度等。 实验参数传递是在用户设置了实验参数后,将这些参数传输到j a v a b e a n 组 件中。 调用s i m j a v a 仿真引擎进行仿真是在用户开始运行实验后,调用s i m j a v a 的接口,把实验组件及组件之间的联系传递给s i m j a v a 进行仿真。 实验结果可视化是捕捉需要可视化的事件,将这些事件发送给跟踪窗口。用 户可以控制实验结果动态显示的速度。 2 2 系统的总体设计 根据虚拟网络实验平台的需求分析,我们将虚拟网络实验平台的功能划分为 五个相对独立的模块,总体设计模块图如图2 2 所示。这五个相对独立的模块 包括实验组件注册模块、实验流程可视化定制模块、网络实验组件模块,网络实 验运行模块和实验结果可视化模块。这些模块内部和模块之间具有高内聚、低耦 合的特性。 虚拟网络实验平台 实验组 件注册 模块 实验流程 可视化定 制模块 网络 实验 组件 模块 网络 实验 运行 模块 滩骓凰 实验i i 实验ll 端口ii 生成1 组件ll 组件l l 动态il 组件i 注册ll 注册l l 互连il 模块i 划i 焦垫il 模块i “ 实验结 果可视 化模块 鬻i 匮 程动态i i 窗口 演示i l 模块 模块i 。 实验组件注册模块:前一节已经提到我们使用j a v a 的组件标准j a v a b e a n s , 以组件的形式来开发实验器件,我们在实验平台上使用新的实验器件前,需要先 把这个实验器件注册到实验平台上。这个实验器件可能在服务器端也可能在客户 端。在服务器端的实验器件通常需要提供给所有的客户端使用,客户端通过远程 1 0 硕七学位论文第二章虚拟网络实验室系统的需求分析与总体设计 实验组件注册模块来实现将服务器端的实验器件注册到实验平台上,而在客户端 的由用户开发的实验器件通常是用户用来进行测试,其正确性不能保证,所以某 个客户提供的实验器件只在用户注册了这个实验器件后,对该客户在该次实验运 行过程中生效,这通过本地实验组件注册模块来实现。 实验流程可视化定制模块;这个模块主要实现用户通过鼠标的操作来构造网 络实验的流程,其中包括动态生成组件子模块和组件端口动态互连子模块动态 生成组件子模块主要实现对用户鼠标选定的网络实验组件的捕捉,并通过对画板 的鼠标单击响应来对这个网络实验组件进行实例化,而且实现对组件属性的配 置,并且这个组件在画板中可以根据用户的鼠标改改变自身的图形状态,如移动 位置等等。组件端口动态互连模块主要实现获取需要相连的两个组件各自的端 口,并对用户指定的端口进行互连 网络实验组件模块:这个模块是实验组件的集合该模块中的组件都是针对 计算机网络课程所开发的组件 网络实验运行模块;这个模块负责对所有需要运行的组件进行分析,反复以 下步骤:执行事件,对下一步需要仿真的事件进行排队。 实验结果可视化模块:这个模块主要实现实验结果的可视化效果,它包括实 验过程动态演示子模块和t r a c e 窗口子模块实验过程动态演示子模块主要实现 数据动态流动的演示。t r a c e 窗口子模块主要实现每个组件内部行为的文本窗口 动态更新显示 2 3 系统的总体架构 针对目前计算机网络课程远程实验系统的一些缺陷交互性、扩充性和软 件重用性方面存在的不足,如学生不能定制实验、无法将自己开发的实验设备等 加入实验室中扩充实验室功能,较难重用已有的功能模块构造新的实验,不能够 共同协作进行大型实验等,下面提出了基于i n t e r n e t 的计算机网络虚拟实验系 统的基本设计思想: 1 系统基于i n t e r n e t 开发,采用具有通用性及跨平台特性的b s 模式作为 系统体系结构。整个系统的编程实现采用面向对象、支持多线程、易于扩展及平 台移植性好的j a v a 语言实现; 2 以组件封装的方式提供网络课程的实验设备。在虚拟实验室中动态创建 组件对象,设置对象属性,调用对象方法,响应对象事件,让用户用组件组合的 方式来构造网络拓扑结构: 3 选用一个稳定的离散事件处理器作为仿真引擎,提供不同层次的抽象方 法来建立网络元素的虚拟原型。收集相关的实验数据,合理调配系统的仿真资源; 硕士学位论文第二章虚拟网络实验室系统的需求分析与总体设计 4 实验平台利用面向对象的技术以及j a v a s w i n g 的应用程序接口,提供从 实验方案生成、网络模型的运行,到实验数据分析全过程的可视化支持。 基于i n t e r n e t 的计算机网络课程虚拟实验室采用a s 模式,如图2 - 3 所示, 由客户端和服务器端两部分构成,客户端采用j a v aa p p l e t 实现,w e b 服务器端 提供已经编译好的j a v ac l a s s 文件( 包括网络设备实体组件库) 、实验组件库文 件( l a b 文件) 和用于组件注册配置的文件库( ) ( m l 文件) 。 客户端使用支持j a v a 虚拟机的浏览器下载含有h p p l e t 的页面,根据对 t p p l e t 中的事件响应,向服务器请求所需要的j a v ac l a s s 文件,然后使用本地 j a v a 虚拟机( j ) 执行下载到本地的j a v ac l a s s 文件。其中包括了对服务器 端组件注册x m l 文件的解析和对实验组件文件的读取。 虚拟实验室客户端使用面向对象的设计方法和组件技术【2 l 】,用j a v a 语言实现, 把r p p l e t 程序嵌入h t 札文件中提供给用户使用。具有j a v a 程序内在的平台无 关,安全,健壮等特点,只需要支持j a v a 的浏览器即可运行,或者使用虚拟实 验室系统推荐的w e bs t a r t 技术。 用户主机 器等等 j a v a a p p i c t 含a p p l c t 的贝面 请求需要的j a v a 类文 提交需垫的j a v a 类文 服务器 w w w 服务器 j a v a 类文 组仟注册 图2 3 虚拟网络实验室系统架构图 实验 场景库 虚拟实验室客户端对计算机网络课程每一特定功能的实验设备或算法等以 j a v a b e a n s 组件的方式封装,注册到虚拟实验室平台,作为虚拟实验室仪器设备。 虚拟实验室动态创建仪器设备,通过设置对象属性,调用对象方法,响应对象事 件的方式提供实验室仪器设备参数值在试验设计时的修改,并提供让组件相互通 信的机制使仪器设备能在虚拟实验室中进行数据交互、通信 虚拟实验室以可视化的手段给用户提供增加、删除、修改、移动、连接实验 硕士学位论文 第二章虚拟网络实验室系统的需求分析与总体设计 仪器设备。使用户感觉好像在真实的环境中操作他所需要的仪器设备,根据其实 验要求选择合适的仪器设备来完成实验过程。 以上描述的系统体系结构是我们在分析了可行性之后提出,系统完成后其功 能可以实现开发前期所提出的系统设计目标,基本上达到了设计要求。这种虚拟 实验室架构是对计算机网络课程远程实验教学的一次新的尝试,我们将在第三章 和第四章详细阐述系统的实现,在第五章我们以其中的一个实验来阐述系统的具 体功能。 2 4 系统运行环境 系统运行环境包括系统的客户端运行环境和服务器端运行环境。客户端需要 具有解释j a v a 字节码的虚拟机,服务器端提供w e b 服务器。下面针对这两个部 分具体介绍系统运行环境。 1 客户端运行环境 虚拟实验室使用j 2 s e 语言开发,具有j a v a 语言特有的跨平台性。只要计算 机系统具有解释j a v a 字节码的j v m ,即可在该计算机上执行j a v a ,所以它可以 运行在几乎所有流行的操作系统之上。如微软的w i n d o w s 系列,如w i n d o w s9 8 、 w i n d o w s a e 、w i n d o w sn t 、w i n d o w s2 0 0 0 系列、s u n 公司的s o l a r i s 、苹果 公司的m a c i n t o s h 以及l i n u x 和u n i x 操作系统等。 用户可以通过两种方式进入虚拟实验室,第一种方式是使用支持j a v a 的测 览器。不过n e t s c a p e 和i n t e r n e te x p l o r e r 的不同版本支持不同版本的j a v a , 所以使用i e 和n e t s c a p e 6 0 以下版本的浏览器需要用户自己安装相应版本的 j a v a 插件( j a v ap 1 u g i n ) 。目前虚拟实验室使用的j d k 的版本是1 4 1 。第二 种方式是使用w e bs t a r t 技术进入虚拟实验室,采用w e bs t a r t 技术会自动安装 相应的j d k 运行环境。 2 服务器端运行环境 服务器端主要提供w e b 服务器,可以安装在一台w i n d o w s2 0 0 0s e r v e r 或 w i n d o w sn t 上。在w i n d o w s2 0 0 0s e r v e r 或w i n d o w sn t 上安装服务器,可以选 择i i s 5 0 或其他b 服务器。也可以选择其他平台充当w e b 服务器,如l i n u x + a p a c h e 等。 一 当使用i i s 5 0 作为w e b 服务器时,必须把第三方软件包s i m j a v a j a r 放置 到发布的目录中放置j a v a 类文件的目录中 硕士学位论文第二章虚拟网络实验室系统的需求分析与总体设计 2 5 仿真方法的比较与选取 系统需要对网络中的节点、节点与节点之间的关联( 链路) ,节点内部的层 次和节点之间的流量进行建模仿真。通常对于网络节点和网络流量的建模包括数 学分析的方法和实体仿真的方法,数学分析的方法主要包括马尔科夫链和p e t r i 网等。 1 马尔科夫链 马尔科夫链是抽象程度最高、最具有数学化的一种描述,但不容易从现实系 统中直接抽象出来。因此建模比较困难。 2 p e t r i 网 p e t r i 网主要用于自控系统】,它的建模方法有自上而下的逐步求精法、自 下而上的组合法、扩张规则法以及混合设计法,但它的建模将功能设计与环境设 计混在一起,基于状态变量及关联矩阵转换的网络模型设计方法依然很复杂,在 网络模拟中涉及到许多状态,且它们的相互关系也很复杂,使p e t r i 网存在建模 的困难;而且它的求解依赖于转化到马尔科夫链,此过程也不容易实现。 3 离散事件驱动 网络中的数据流可以看作是离散事件,而节点通常通过处理离散事件来改变 自身的状态,所以选择一个性能良好的离散事件仿真引擎对于虚拟网络实验系统 平台的实验结果至关重要。 基于w e b 的离散事件模拟研究是近几年来的研究热点,使用编程语言实现的 模拟研究系统也开发了不少。基于c + + 的离散事件处理器有眦s e + + 、s i m + + 等等。 基于j a v a 语言开发的离散事件处理器有s i m k i t 、j s i m 和s i i i l l a v a 等。考虑到我 们的系统平台是使用j a v a 语言来实现,所以使用基于j a v a 语言开发的离散事件 处理器可以与系统平台向兼容,并且具有良好的运行速度。下面将具体介绍基于 j a v a 语言开发的几种离散事件处理器,并阐述选择s i m j a v a 作为系统平台中的 离散事件仿真引擎的原因。 1 ) s i m k i t s i m k i t l 2 3 1 是加拿大c a l g a r y 大学的一个合作科研项目t e l s i m 项目所开发用 于对其项目结果进行验证的简单离散事件仿真器。t e l s i m 的目标是对下一代通 信网络进行建模、仿真和分析。s i m k i t 中的仿真的实体只是一个逻辑进程。后 台并没有使用j a v a 多线程技术进行并行处理,所以并行性不佳。 并且s i m k i t 并不提供图形应用程序接口。因此s i m k i t 并不是一个通用的离 散事件处理器,也鲜少有研究课题使用s i m k i t 来进行仿真。 2 ) j s i m j s i m 是由美国o h i o 州大学开发的基于其自身项目的离散事件仿真器1 2 0 】。由 1 4 硕士学位论文第二章虚拟网络实验室系统的需求分析与总体设计 于它服务于专门的项目,它没有提供良好的可供调用的接口给用户来构造仿真实 体和调度事件。而且它作为离散事件仿真器推进时间的方式是周期扫描法,这种 方法需要较小的时问步长才会良好的仿真效果,而这可能造成大量仿真时间的浪 费。 3 ) s i r a j a v a s i r a j a v a 是一个j a v a 语言开发的离散事件仿真包阱】。它由英国e d i n b u r g h 大学的计算机科学院开发。e d i n b u r g h 大学的计算机科学院对仿真包开发的研究 已经有一段历史了。其最初实现的仿真包是基于c + + 语言的。在此基础上使用 j a v a 语言来开发s i m j a v a 是为了使仿真模型更加通用,并且支持j a v aa p p l e t 。 这个包可以实现动态实体构成的静态网络的仿真。其中的动态实体通过从端口发 送对象和接收对象来进行通信。这类模型非常适合通信协议的仿真。 s i m j a v a 由三个包( p a c k a g e ) 构成: e d u n i s i m j a v a - 提供基本的离散事件仿真应用程序接口( a p i ) ; , e d u n i s i m a n i r _ 提供仿真实体及通信可视化的应用程序接口; e d u n i s i m d i a 旷提供显示静态图形结果的应用程序接口; s i n l l a v a 仿真的过程中包含了大量的实体。这些实体并行运行于各自的线程 中,由一个静态类来控制这些线程,推进仿真时间。 通过以上的比较可以看出,s i m j a v a 提供了一套强大并且成熟的a p i 来用于 进行离散事件仿真。许多网络方面的课题也采用s i m j a v a 进行仿真,对其研究内 容进行来分析和验证。例如文献 2 5 使用s i m j a v a 来分析一种新的蓝牙分散网格 式协议的性能。文献 2 6 使用s i 叫l a v a 对计算机体系结构进行建模和仿真。 另一点非常重要的是s i m j a v a 提供的三个包中,有一个是专门用来提供仿真 实体可视化的a p i ,这对于实现一个具有良好人机交互图形界面的虚拟网络实验 平台是非常必要的。 综上所述,我们决定使用s i m j a v a 来作为虚拟网络实验平台的离散事件仿真 引擎。 。 2 6 系统的主要开发工具 系统设计,分析、开发和发布主要使用到以下的编程语言以及相应的开发工 具和软件包。实验平台采用可视化建模技术,利用r a t i o n a lr o s e 2 0 0 0 工具使用 u 札标准建模语言描述,采用j 2 s e ( j a v a 2s t a n d a r de d i t i o n ) 语言进行开发, 使用的开发包为j d k l 4 1 ,使用j b u i l d e r 7 0 作为软件开发的集成开发环境, 利用s i m j a v a l 2 作为离散事件仿真引擎对网络实验中的组件建模仿真。在发布
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年事业单位工勤技能-河北-河北房管员一级(高级技师)历年参考题库含答案解析
- 2025年事业单位工勤技能-江西-江西环境监测工五级(初级工)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-江西-江西垃圾清扫与处理工五级(初级工)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-江苏-江苏电工三级(高级工)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-新疆-新疆计算机操作员一级(高级技师)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-广西-广西水利机械运行维护工四级(中级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广东-广东计算机操作员四级(中级工)历年参考题库含答案解析
- 2025年事业单位工勤技能-广东-广东水工闸门运行工二级(技师)历年参考题库含答案解析
- 烹饪肉基础知识培训课件
- 2025年中级卫生职称-主管护师-社区护理(中级)代码:373历年参考题库典型考点含答案解析
- GA/T 954-2011法庭科学工具痕迹中凹陷痕迹的检验规范
- DB1331T004-2022雄安新区数据安全建设导则
- 环水保工程监理细则
- DB11-T1834-2021 城市道路工程施工技术规程高清最新版
- 穴位敷贴中医护理技术操作规范
- 冷却塔投标文件
- 手工电弧焊焊接头基本形式与尺寸
- 开拓进取:零碳汽车的材料脱碳之路
- (完整版)自我护理能力量表ESCA
- M2激光模式测量
- 网吧企业章程范本
评论
0/150
提交评论