刘彪 赵鹏 张丽娜
摘要:针对非计算机专业中计算机网络实验教学的现状,提出将虚拟的网络仿真技术引入实验教学中来,结合OPNET软件,介绍具体实验过程。
关键词:实验教学;网络仿真;OPNET
0、 引言
网络通信的需求日益提高,规模越来越庞大,网络健壮性和可靠性等指标也很难进行准确评估。不论是构建新网络,还是对原有网络升级改造,或者开发测试新协议,都需要对整个网络的传输指标(例如数据传输最大速度、平均速度、网络延迟和数据吞吐率等)、健壮性和可靠性进行客观评估,以使网络具有较高的性价比,最大程度地保护已有投资,提高软硬件资源利用率,提供最好的服务质量。网络技术应用已经越来越多地进入各个行业,对该方面人才的培养也提出了更高的要求,所教授的内容在不少非计算机专业学生的工作、学习、生活中得到应用。
1、非计算机专业网络实验教学现状分析
对于非计算机类专业学生(如电气专业),学习计算机网络与通信技术这门课程的积极性并不是很高。以笔者所在的电气专业为例,开设的计算机网络与通信技术课程课时少,内容较浅但很全面,涵盖了全部计算机网络的协议层内容和概念抽象,教学方法传统,学生一般为了拿到学分而参与学习,主观能动性较差。同时由于实验条件有限,实验内容均按照实验教案设计好的流程,让学生一步步机械执行,最后记录结果,该方式对学生学习知识、开阔思维并未起到预期的作用,结果导致学生兴趣下降,学习效果不太理想。
笔者所在的计算机网络课程组结合多年的教学经验,发现造成上述问题的具体原因有以下几点:一是课堂讲授理论性太强,过于抽象,教学过程缺乏趣味性,难以吸引学生进一步自主学习;二是大部分学生觉得实验项目较少、缺乏连贯性且模式固定,不能很好地将理论与实践相结合,无法保证学生动手能力得到锻炼和提高;三是计算机网络实验教学投入的经费有限,实验设备更新换代难以跟上网络技术的发展。仍以笔者所在的电气专业为例,之前计算机网络与通信技术这门课程的教学实验包括四大类,共计6个实验,其中第1个实验认识网络配置为认知类实验,第2个实验学习制作网线为简单动手验证实验,第3个实验IIS配置和第4个实验CRC校验验证均为验证类实验,第5个实验网络协议分析为协议验证实验,第6个实验转发表与路由器实验是在现有模拟软件的基础上进行的验证类实验。上述实验偏向于按照固定的步骤操作后进行知识点验证,而且各知识点相互独立,实验过程中很多学生局限于按照提示步骤得到实验结果,缺乏综合性、设计性,不利于学生动手能力和综合素质的提高。然而,如果在实验教学中设计需要硬件设备支持的综合性实验,还受到经费和实验环境的限制,可操作性不大。
网络仿真技术是通过建模和统计分析的方法模拟网络行为,从而获得特定网络特性和参数的技术,其中建模分为网络建模(网络设备、通信链路等)和流量建模两部分。模拟网络行为是模拟网络数据在实际网络中传输、交换和复用的过程。通过网络仿真,可以获取多种网络特性参数,常用的有网络节点性能统计量、网络流量、网络延迟、全局性能统计量等,既能够得到业务层数据统计量,也能够得到指定协议内部特殊参数的统计结果。利用这种虚拟实验形式,将计算机硬件和专用软件组合,在计算机上完成多种实验项目而不需要传统的实验硬件器材,可以低成本、高效率地提高实验教学效果,从而使学生的素质和能力得到进一步的提升。
目前在教学和科研活动中使用较多的网络仿真软件很多,包括Berkeley NS、OMNeT++、SSFNET、OPNET等,其中OPNET Modeler的功能最强大,提供了大部分通信网络和分布式系统建模的模拟仿真开发环境,是当前应用最普遍的一种网络仿真软件。笔者选择以OPNET为仿真载体进行探讨。
2、OPNET介绍
OPNET是美国OPNET Technologies Ins公司的产品,是一款功能强大的网络仿真和建模工具软件。它支持面向对象建模,并提供友好的图形化编辑界面,能够完全模拟研究通信协议和路由算法的真实网络环境,利用详细完备的结果分析器可以对网络性能进行快速高效、形象直观的分析并输出为用户需要的多种图表。
OPNET是一个网络仿真软件包集合,能够分析较复杂网络的行为与性能,利用其建立网络模型后,可以在任意位置插入探头,用于信息量采集及数据统计。仿真输出能够以数字方式、图形化界面方式进行观察,也可以输出到第三方的软件包进行进一步的分析。同时OPNET的模型库提供了多种系列仿真模型,利用这些仿真模型可实现对网络不同层次的独立仿真或者交叉仿真。
在实验教学方面,OPNET可实现多种类型的仿真实验,包括认知性、验证性、设计性、创新性以及综合性的实验,主要具有以下特色:(1)通过建立综合性仿真实验平台,使学生能够全面、立体地对课堂内容进行设计、操作与验证,相对于原有各自分立的几个实验,在提高学生素质和专业知识方面有较大幅度的提高;②提高学生参与实验设计的比重,使学生直观地感知各种网络设备,自行完成网络的设计、配置、验证过程,加强学生多维思路的开拓;③让学生动态地、有机地感受计算机网络通信中关键协议与算法的执行流程,可以提高学生学习和参与实验的兴趣,更加综合性地理解、掌握与灵活运用课堂知识;④在增加较少硬件成本的情况下实现综合性实验。
3、实验样例
3.1实验流程介绍
提供实验样例的目的是为了让学生尽快掌握实验的流程,参照此流程可以按照自己的思路设计网络拓扑,加入各类设备,调整网络范围,在不同情况下对网络性能参数进行仿真分析,从而提高学生参与实验设计的比重,直观地感知各种网络设备,自行完成网络的设计、配置、验证过程,加强学生多维思路的开拓。
考虑到非计算机专业实验课时和专业深度问题,教师让学生通过自己构思,针对自己感兴趣的网络性能指标,选择不同网络拓扑接头、网络设备、网络范围,通过仿真的手段观察、分析、对比网络参数的变化。实验设计占用4个学时(含1个课外学时),包括教师对仿真软件的概述、实验流程讲解及仿真软件中常用设备介绍l学时,学生利用课外时间构思自己的实验架构与参数指标1学时,利用OPNET网络实现自己的思路并进行仿真及分析2学时。
实验指导书以介绍OPNET用法的书籍、论文上给出的初级应用为例,对具体试验流程简要介绍如下。
(1)建立工程,设置环境,给出网络络覆盖的范围、性质、模型家族种类等内容。
(2)为网络指定网络拓扑、节点模型和链路模型。可让学生选择一种拓扑结构,包括星型(star)、总线型(bus)、环型(ring)、树型(tree)等多种连接方式;按照自己的构想设定网络中结点设备的类型及数量,可选择不同厂商的设备模型,选择结点设备模型及数量;选择所连接的链路模型;在上一步给出的网络覆盖范围中给出中心结点的坐标及半径,这一步仅是一个初始设定,后期可根据需要任意拖动各设备的物理位置;添加服务器并连接到网络中;添加业务配置模型,可选定后拖动到场景中。
(3)设定待观察的网络性能参数,比如选择服务器的吞吐量或者整个网络的延时、冲突次数等内容。
(4)设定仿真参数,运行仿真,显示待观察的网络性能参数并进行分析。
(5)设计或者扩展用于对比的网络拓扑,再次运行仿真并对结果进行对比分析。
3.2具体实验样例
以计算机网络实验室为背景,该实验室包括70台电脑,场地范围为80m2,分别通过两种方式进行组网:第一种方式采用一台交换机,第二种方式采用两台交换机,均采用星型拓扑方式。两个实验场景占用9m×9m的空间按照上述流程设计:第一种方式包含1个服务器、1个交换机和连接在该交换机上的70个网络设备结点;第二种方式包含1个服务器、2个交换机和等量连接在这2个交换机上的70个结点,交换机结点35通过交换机结点71连接到服务器结点73。
设定要观察的网络性能参数,包括服务器的网络时延以及整个网络的时延、负载率( Bit/sec)、吞吐量(Packages/sec)。运行0.5h的仿真,分别观察上述性能参数对比情况。
两种方式整个网络的时延结果分别如图l和图2所示,可以看出采用两个交换机的方式网络时延也有明显的增加。
两种方式服务器时延结果分别如图3和图4所示,可以看出采用两个交换机的方式服务器时延明显增加了30%左右。
两种方式服务器的负载率和吞吐量结果并没有太大的差异,分别平均在6000bits/sec和2.5packages/sec附近,这说明负载率和吞吐量与网络总体容量(包括信息和设备)关系较大。
另外对比了第二种方式中两个交换机的时延,按照与服务器的距离,远端交换机结点35和近端交换机结点71的时延分别如图5和图6所示,可以看出时延与物理连接的关系,并通过课堂教学中所学的网络实验构成进一步分析。
4、结语
将OPNET引入网络实验教学,可以迅速建立网络模型并且方便模型的变化,对网络的规划设计提供可靠的定量依据,实现对网络性能的预测。同时在几乎不增加硬件成本的情况下完成教学实验。尤其是面向非计算机专业学生,可以针对一些课堂教学中基础的性能指标进行验证,让学生根据自己的兴趣点自行设计网络模型,提高学生参与实验的比重,使学生直观地感知各种网络设备,自行完成网络的设计、配置、验证过程,加强学生多维思路的开拓,使学生能够个面、立体地对课堂内容进行设计、操作与验证,相对于原有各自分立的几个实验,在提高学生素质和专业知识方面能够有较大幅度的提高。