前言:想要写出一篇令人眼前一亮的文章吗?我们特意为您整理了5篇计算机网络实验范文,相信会为您的写作带来帮助,发现更多的写作思路和灵感。
前言
在计算机和网络等有关专业教学中,计算机网络是基础必修课程之一,对网络安全、信息技术、软件开发等课程有辅助作用。关于计算机网络的实践教学,互联网协议始终是教学的难点问题,传统课堂教学不能加强学生的感性认知,导致教学效果不佳。因此,基于加强学生对知识理论掌握的目标,许多学校都设置了计算机网络实验课程。然而在这种实验教学模式下,由于采取的是专业性网络分析应用系统,其功能繁琐,教学效果不明显[4]。关于专业性网络分析应用系统,尽管其被广泛运用于计算机网络教学实验,然而该系统设计的目标并非是教学实验,而是用于互联网检测与分析,采集的数据相对复杂,需相对专业的分析方能被利用,提高了教学实验开展的困难程度[1-3]。而计算机网络教学实验的目标是借助实验让学生了解互联网通讯过程,比如开始和结束会话、通讯协议、会话窗口管理、流量监控等,都是计算机网络教学实验的主要内容。结合计算机网络教学实验的目的,在TCP/IP协议基础上,对应每层开发一组实验项目,关于实验时所需的数据信息,可借助专用性网络分析应用系统和教学实验系统来捕获。再以Web形式显示,向学生展示完整的互联网通讯过程。上述这种方式对捕获数据的实时性要求不高,便于简化计算机网络教学实验,加强教学效果。并且以Web形式展示的教学成果受环境影响较小,学生可自主学习。
1计算机网络模型和网络协议
通常来讲,计算机网络模型是实现互联网通讯的基本条件之一,其分层架构划分出互联网通讯过程中的各项功能,任何计算机网络教学都是在网络模型的分层架构基础上开展的[5]。计算机网络模型一般可分为开放性互联参照模型与TCP/IP模型两种。1.1OSI模型和网络协议关于OSI参照模型,主要是由数据物理层、数据层、网络层、传输层、会话层、显示层和应用层七层,并且定义了每层的功能,而网络模型中每层功能是通过网络协议实现的。在OSI参照模型公布时,随之也了有关的网络协议,但这些协议的整体发展并不理想。正是由于上述原因,OSI参照模型目前只能用于计算机网络教学实践之中,市场上应用较多的是TCP/IP模型[6]。2.2TCP/IP模型和网络协议尽管OSI参照模型对网络不同层的功能进行了定义,然而由于没有有效网络协议的支撑,导致其应用难以实现。目前,在计算机网络之中,采用的TCP/IP协议群又被称为TCP/IP网络模型。TCP/IP网络模型及相应的协议如图1所示。在TCP/IP模型中,每一层TCP/IP协议族都被赋予了固定的协议,从而来实现该层被指定的功能,使得TCP/IP成为互联网通讯的标准。
2基于TCP/IP模型的计算机网络教学典型实验设计
关于网络通信的发展,TCP/IP的应用较为广泛,因此对网络通信的认识即对TCP/IP网络模型各协议的认识[7-8]。网络协议抽象性的特征使其讲授比较困难,是计算机网络课程教学的难点问题。对此,本文就实际运用比如网页浏览器等,通过分析网页浏览器服务器连接、网页跳转、网页下载等内容,来了解两个系统间的通讯过程,从而对基于TCP/IP网络模型的计算机网络教学实验设计进行研究。网页浏览器是学生常用的应用程序,对其感性认知较强,可通过对该应用程序的通讯来让学生全面了解互联网通讯。
2.1HTTP应用协议和应用程序通信
一般而言,计算机通讯的实质是两个系统间的通讯。就应用程序而言,可按照是否具有通讯功能来划分应用程序。比如:Excel表格只能在本地工作,不具备互联网通讯功能;IE浏览器、微信、Skype等都具备互联网通讯功能,属于互联网通信应用程序[9]。不管是哪一种网络模型,HTTP应用协议都作用于用户程序之中,生成传递方的用户信息。按照网络通讯原理,网络架构中每层都是由对应协议来定义相关功能的。结合应用程序的不同功能,应用层会采用对应网络协议,来进行数据封装。由此可见,就应用程序而言,可从应用层协议功能及其创建来加强学生对HTTP应用协议的理解。
2.2TCP传输协议和传输监控实验
关于TCP/IP网络模型,TCP协议是用于创建、断开连接和流量监控,是针对连接的传输协议。在某个程序要进行互联网通讯时,会向TCP申请建立连接来传递数据,直至连接断开为止。在TCP接收程序连接申请时,将通过三次握手来创建连接。在连接创建之后,TCP协议将分段封装协议数据,获得用于传递的TCP段,再传递给下一层,也就是IP协议[10]。对TCP协议的理解,可从三次握手和协议分段封装两方面来理解,结合数据形式可深入理解窗口、接口等抽象定义。
2.3IP网络协议和网络寻址
在互联网通讯之中,TCP协议负责双向通讯,要确保两方都能理解传递数据,接收一方能解封装和监控流量,不管是三次握手亦或数据发送,都要确保路由的准确性,还要将TCP段封装为IP包,而IP包是通过IP协议实现的。TCP段通过调用IP协议来封装IP包,要含有源主机与目的主机的IP地址,其是网络寻址的重要条件。在IP包通过路由时,路由会按照IP包中的目的主机IP地址,将数据包通过不同网络传递到目的主机[11-12]。
2.4接入层协议和信息传递
在对数据进行IP包封装之后,可确保数据包能从源主机传递至目的主机,在局域网中,数据接收和发送是根据互联网连接的MAC地址来确定的。由此可见,在传输数据包之前要将其封装为数据帧格式,而帧封装通常是在网卡中运行的。按照互联网类型的不同,数据也会被封装为各类数据帧。关于将数据包封装为数据帧,也就是在数据包上添加源主机MAC地址和目标主机MAC地址,一般情况下,每个计算机系统中都存储了一个MAC地址表,含有本机MAC地址和有通讯联系的其他主机MAC地址[13]。对于需通讯的主机MAC地址不在系统MAC地址表中的情况,计算机会广播ARP来取得目标主机的MAC地址[14]。关于目标主机的MAC地址取得,有以下两种情况:第一,双方在同一网络之中,目标主机在接受源主机ARP广播之后,会反馈给其MAC地址;第二,双方在不同网络之中,目标主机会接收不到源主机的ARP广播,此时对应网关会反馈其MAC地址,实现链路层封装,源主机将数据传递给网关,再根据IP地址传递至目的网络。
3结语
关键词:教学策略 实验室开放 教学改革 计算机网络实验
计算机网络实验教学是提高计算机应用专业学生实际动手解决问题能力的一个重要环节。在当今计算机网络应用非常广泛的时代,面对不断更新的网络技术,开创加强基础、培养能力、提高素质、鼓励探索、勇于创新的计算机网络实验教学改革思路。在教学方法上,注重启发学生的科学思维和创新意识,并注重动手能力的培养。为培养学生的不断跟踪、学习网络新技术的能力,必须优化计算机网络实验教学环境。在优化实验教学内容基础上,必须大力提倡开设综合开放性实验和设计性实验。
一、计算机网络实验教学策略
培养创新人才,实施创新教育必须注重开发训练学生的创造思维,鼓励学生以独特的方法去思考,不断地提出问题,并以实验验证,鼓励学生开拓思路,用不同的方案解决同一个问题,以求最佳实验效果,力求在实践中得到验证。计算机网络实验环节教学设计是依据对学习需求的分析,提出解决问题的最佳方案,使教学效果达到优化的系统决策过程。根据计算机网络实验教学的要求和目标,对适合实验教学的内容进行教学设计,在实践中可以采用如下策略:
1.自主式学习策略
教师对计算机网络实验的内容进行分析,通过精心地教学设计,培养学生独立搜集、分析、组织和表达信息的能力,培养学生自主探究的意识和技能。在计算机网络实践的内容和环节上进行改革,坚持以学生为本,教师将每次实验内容制作成实验指导书,简要地概括本次实验相关的基本理论知识点、实验目的、实验重点内容及操作难点在所,结合实验难点给出相应提示,对学生实验提出具体要求。教师要求学生自己通过查阅相关资料和使用网络资源来独立完成实验内容,倡导由学生自主研究解决实验过程中出现的问题。在一些关键问题上,教师作相应的启发性提示、释疑和引导。
2.探究式学习策略
在教师指导下,学生研究式学习,在这种方式下,教师鼓励学生发现实验过程中出现的问题,引导学生进行合理地推理分析,将所学知识创造性地解决实际问题。以校园网建设为例进行网络拓扑图的设计,教师引导学生熟悉不同网络设备以及相关的接口,如路由器、交换机、主机,在这基础上学习利用不同网络设备搭建网络系统。
3.协作式学习策略
协作式学习具有交互方便、灵活多样的特点。在计算机网络实践性教学中,采取分组实验,让学生合作来共同解决问题,这样既可以加强学生之间的相互学习研究、协调沟通能力,又可以培养学生的团队合作精神,在相互协作中快速地完成实验项目,集体的成功的会极大地激发学生的学习计算机网络的积极性。
4.情感激励法策略
情感激励法是教师在教学过程中利用情感因素的作用激发学生的学习积极性、提高教学效率的方法。在计算机网络实验时,教师的面对面的对学生进行提问,现场评分,无形中促使学生之间产生一种竞争和激励,这种竞争和激励会进一步推动学生学习的主动性和能动性。在情感激励法下,不少学生在做完基本实验内容后,主动积极地去扩展实验内容,这样会使学生更进一步地拓展学习网络相关理论。
二、实验室开放的总体要求与模式
计算机网络实验教学促进了学生对计算机网络理论知识的理解,开放的计算机网络实验室给学生提供一个相对轻松的学习场地,有利于学生对计算机网络基本理论知识的掌握和理解。学生在计算机网络实验过程中发现问题后会创新性提出解决方案,从而提高了学生的创新能力。
为培养学生的创新能力,开放教学实验室就形成了一定的环境,给学生创造了一定的条件。不仅在时间上开放实验室,而且在教学方法和教学手段上开放,从而改变传统的以传授知识为主的教学方式,树立以传授知识和培养能力并重的观念,将学习的主动权交给学生,最大限度地激发学生学习的积极性。因此,这也是教师计算机网络实践性教学观念意识上的开放。为了培养学生的创新精神,体现以学生为中心的教育理念,实行全方位、多层次的开放式实验教学与管理。在长期的实践中,使用了以下几种开放方式:
1.时间的开放
突破实验教学在时间上的限制,结合学院特点和专业特色,开放实验网上预约系统、为学生搭建网络化实验教学平台。在工作日保证开放实验室的基础上,根据学生实际需要安排晚上及双休日开放实验室。时间上可以预约开放,由学生事先向实验室提出申请,对需要做的实验内容及所需的仪器、设备、元器件提出要求,然后网络实验室根据学院的实际情况、学生人数及实验内容由实验室统计统一安排。
2.内容的开放
学生可以做基础实验,也可以做尚未取得实验结果的实验,更欢迎做一些自行设计的实验。学生在完成一个阶段实验任务后,由教师统一安排时间,对该阶段的实验内容集中开放。各阶段学生可按照实验室所规定的时间去实验外,还可以自己安排开放时间去实验室复习和操作。学生除完成规定的实验内容外,鼓励学生参加科技活动型开放实验,吸收优秀学生参与教师的科研项目。在计算机网络实验内容的多层次、多角度地考虑,促使更多学生在完成基础性实验后去参与复杂的具有创造力的实验。
3.对象的开放
可以对学生开放,鼓励学生多进实验室多做实验,提高学生的动手能力和创新能力,也可以对教师开放,鼓励教师多做科研实验、进行科学研究,促进实验室的和谐发展。这样增加了师生之间的交流活动,激发学生的学习计算机网络相关理论的热情,同时也对教师的业务能力提出了更高的要求,形成良性的循环。
三、改革实验内容,提高学生的创新能力
加强实验教学内容的设计,改革实验教学内容,从而培养学生综合运用所学计算机网络知识,解决实际问题,加深对计算机网络基本理论和基础知识的理解与应用。计算机网络实验教学内容的设计要符合实验室实际情况,紧紧围绕实验教学目标和教学任务来开展。从基本操作型、验证型出发,逐步开展综合型与创新型计算机网络实验。对于硬件设备无法满足的实验,可以选择使用相应的仿真系统,让学生对新技术新设备的设置有个直观的认识,同时可以弥补计算机网络实验设备购买经费相对不足对实验的影响。
通过基本操作型、验证型实验,让学生掌握基本实验理论和实验方法,掌握网络设备的操作。我们在实践中使用了以下基本操作型、验证型实验:
1.网线制作和局域网组建
(1)学会使用网线制作工具并制作二种不同标准的网线,完成后进行检测;
(2)了解网线制作的技能技巧及对网络性能的影响;
(3)利用做好的网线通过HUB和SWITCH组建局域网。通过双绞线的制作、局域网的组建,培养学生动手能力,同时对局域网有了更一步的理解,在实验内容设置时注重社会应用。
2.在PC机上熟悉常用网络命令
如Ping.exe,Netstat.exe, Telnet.exe, Tracert.exe, Winipcfg.exe,Arp.exe,Ftp.exe, Ipconfig.exe, Net.exe, Route.exe等网络命令使用。
3.使用SNORT观察网络数据包和TCP链接
(1)安装使用自由软件SNORT;
(2)截获以太网数据包,并描述以太网数据包的各层的帧结构;
(3)截获ARP,ICMP协议数据包并进行分析。
学生通过综合型实验,运用所学计算机网络知识,观察、分析一些典型的工程技术问题,设计实验方案、选择实验设备,从而达到培养学生综合应用能力的目的。我们在实践中使用了以下综合型实验:
1.使用SOCKET编程实现mini FTP Client/ Server及聊天程序
(1)独立完成mini FTP Client端及 Server端程序;
(2)聊天程序要求:能相互对发文本消息;
(3)尝试与现有的标准FTP Server互通,实现GET file,PUT file,CD(change Directory),PWD(display current directory in server)等功能。
(4)可以进一步在自己机器上的linux / unix平台下实现mini FTP Client/ Server或聊天程序。
2.复杂网络设计
(1)通过参考软件中自带的帮助、参考资料和教师的讲解等,熟悉模拟器操作的常用命令。对配置模式、配置参数的查看、保存、清除等进行了解。
(2)网络拓扑图的设计。熟悉不同网络设备以及相关的接口,如路由器、交换机、主机,学习利用不同网络设备搭建网络系统。
(3)网络路由器不同端口的配置。学习如何对网络路由器的以太网接口、快速以太网接口、串行接口以及相关参数的配置,以及环回接口、令牌环接口的配置,并且能够对配置结构进行验证。
(4)静态路由的配置。学习静态路由的设置,默认路由的设置,以及已有路由的删除。
(5)动态路由的配置。深入掌握RIP协议的原理,能够进行动态RIP路由设置,并对设置的结果进行验证。
由此可见,我们的计算机网络实验安排遵循由易到难、由浅入深的原则,学生通过基本操作型、验证型实验,掌握了计算机网络的基本知识。学生通过综合型实验,深入理解协议的运行机理,培养其编程开发能力,学生的创新意识和创新能力得以培养。
四、结束语
在计算机网络实验教学中,强调学生的主体性,要求充分发挥学生在学习过程中的主动性、积极性和创造性。通过计算机网络实验,不仅深化掌握了计算机网络的理论知识,而且使学生具备、分析、维护、开发软硬件产品的能力,学习掌握和应用现有设备的能力,特别是组织构造系统应用环境的集成能力,使学生学有所用,在计算机网络实验教学中逐步养成科学态度,培养创新意识,提高实践能力。
参考文献:
[1]何建新,习胜丰,陈伟宏.网络实验教学改革研究与实践[J].实验科学与技术,2009,7(4):99-101.
[2]方芸,高仲合,高博文.计算机网络实验教学改革[J].实验室研究与探索,2008,(6):91-93.
关键词:计算机网络;实验教学;NetRiver实验系统
中图分类号:G642 文献标识码:B
1引言
清华大学计算机系从1985年起开设“计算机网络原理”课程,开设了滑动窗口协议和应用层协议等网络实验内容。之后陆续开设了“计算机网络体系结构”、“无线网络和移动计算”和“计算机网络前沿研究”等研究生课程。2006年开设了强化实验课程“计算机网络专题训练”。在教学实践中,我们提出了“本科打基础、硕士重能力、博士出创新、科研促教学、实践贯始终”的教学理念,强化了计算机网络实验教学。针对不同阶段的学生,设置了不同的实验内容。本科生的网络课程重点在于基础网络协议和原理的掌握,通过配置观察实验和基本协议实验,加强感性认识,提高动手能力;硕士生的网络课程注重综合能力和对网络体系结构的整体把握,通过复杂协议编程实验,提高包括分析、设计和实现等在内的综合能力;博士生的课程则注重研究和创新,利用实验系统的可扩展性设计新实验、验证新算法。图1给出了计算机网络实验教学内容、课程体系和人才培养目标之间的关系。
计算机网络实验教学设计存在很多难点。网络协议数量巨大,TCP/IP协议栈的常用协议有数百个,主机、路由器等网络结点的协议栈实现有很大区别,各个协议的原理、功能和实现均不相同;协议描述文本难于理解、协议实现复杂,例如RFC 793(TCP)有85页,代码长度近一万行,RFC 2328(OSPF)有244页,代码长度超过三万行;课程实验依赖具体的操作系统,常用的操作系统包括Windows、Linux、BSD、Solaris等;网上存在大量开源代码供学生参考使用,难以公平评价学生的实验结果;网络协议栈复杂,难以有效检查;学生多,实验多,难以管理。
总结国内外以往的计算机网络原理实验教学,主要存在以下几个不足:
由于缺乏软硬件支撑环境,通常会设计一些模拟实验来代替实际的网络实验。这样做的缺点是学生缺乏对真实网络环境的感性认识和理解。
由于常用的操作系统只提供应用层的网络编程接口,学生只能做网络应用实验。应用层实验虽然能够锻炼学生网络编程的能力,但却不容易帮助学生理解底层协议的原理和工作流程,进而忽视“计算机网络原理”课程的核心内容和教学目标。
缺乏网络核心协议的实验,例如BGP和OSPF。
网络实验的管理和维护非常困难。做网络实验的学生多、实验项目多。在每次实验之前,实验管理人员和助教需要花费大量的时间调整网络来满足实验要求。
我们在长期从事计算机网络教学的基础上,利用科研成果,研制开发了NetRiver计算机网络实验系统。NetRiver系统包括客户端、测试服务器和管理服务器三个组成部分,具有以下特点:可控真实的全协议栈网络实验环境,支持实验代码编辑、编译和调试的集成编译环境,可视化的协议报文捕捉与行为分析,多层次实验手段,基于脚本语言的可扩展实验描述和执行,基于协调测试法的自动实验测试和功能丰富的实验管理平台。NetRiver实验系统拓宽了计算机网络实验内容,丰富了实验手段,提高了实验效率。
2相关工作
北京航空航天大学在2004年启动“先进计算机网络实验基地建设”项目,建立了北京市重点实验室――网络技术实验室。该网络实验室基本上采用全套的华为网络路由器和交换机设备,从低端到高端,建立了一个小型的互联网模拟实验室。该实验室构建了国内一流的计算机网络技术教学实验环境,但其存在一个很大的问题就是硬件投资过大,并且在IT技术发展迅猛的今天,这些硬件设施存在生命期短的问题。
Stanford大学本科计算机网络课程“Introduction to Computer Networks”为学生的实验提供了一个Linux操作系统下的集群作为中央服务器,学生可以远程登录,在集群环境中对自己的代码进行编译及调试。但由于没有便捷的一体化集成环境,在Linux操作系统中所有编译和调试的工作都需要学生手工进行,要求比较高,可能造成学生精力分散,无法集中于网络协议的设计和实现,并且这也需要Linux下编程的相关先修课支持。
MIT大学的本科生网络教学是放到课程“Computer Systems Engineering”中进行的,主要的动手环节是学生自己做Project的全套工作。虽然这样比较锻炼学生的动手能力,但跟Stanford大学的实验类似,对学生Linux下编程能力要求比较高,对于没有修过相关课程的学生来说,精力过多消耗在Linux编程上,而淡化了网络协议的理解。
3计算机网络实验系统NetRiver
计算机网络实验系统NetRiver是为计算机网络教学开发的一套网络实验平台系统。目前的网络实验大多以配置观察实验为主,无法使学生深入了解网络协议运行机制。由于网络实验本身往往涉及到系统底层实现,在真实环境中进行模拟实验一般会比较困难。比如进行TCP实验时,由于操作系统内核对TCP协议栈已经有了实现,因此学生所写测试程序发出的数据包往往会作系统处理或丢弃,导致无法进行TCP处理过程的模拟。针对上述问题,本系统为学生提供了进行网络协议编程、调试、可视化执行和自动测试的实验平台。在此平台上,学生无需关心系统对实验的影响,能够直接编写和测试协议相关的核心内容。
图2为实验系统常用的连接拓扑示意图。NetRiver系统由一台或多台测试服务器、一套客户端软件和一套实验管理软件构成。测试服务器通过与客户端交互协议包,实现实验功能,并提供自动测试和实验结果评分。客户端软件运行于多台PC机上,为用户提供基于Windows的集成实验环境,学生编写实验代码、调试和运行实验程序均在客户端软件上执行。管理服务器保存用户信息、测试例、实验代码和测试结果,管理客户端和测试服务器,实现基于Web的实验管理功能。
3.1NetRiver客户端
NetRiver客户端提供了界面友好的编程开发、调式和测试环境,同时还可以动态捕捉和分析实验过程中收发的数据报文,方便学生检查程序错误和进行调试。
图3所示是代码编写界面,学生在此界面中可以编写代码,并使用系统自带的编译工具进行编译和调试。
图4是报文分析界面,提供可视化的报文分析功能,可清楚的看到发出和收到的数据包,同时对数据包中的字段进行解析并显示,帮助学生分析程序中可能存在的问题。
3.2NetRiver测试服务器
学生完成实验之后,可选择相应测试例并开始对自己所做实验进行测试。测试过程是在客户端和测试服务器之间自动完成的,包含一系列的发包、收包过程。整个过程由事先编写好的脚本系统控制。根据实验内容和所选测试例,测试服务器会向客户端发出包含一定内容的数据报文,由学生所编写的程序对该报文进行处理,并得出一定结果(如回复、转发、丢弃或接受等),经过一系列的收发包过程,测试服务器会对实验完成情况做出相应评测,并将结果提交到管理服务器。
整个测试过程可描述如下:测试服务器打开脚本配置文件script,并将脚本装载到内存。客户端根据主界面传入的命令行参数获得需要测试服务器IP、测试例号和测试项目号。客户端和测试服务器建立socket连接。测试服务器收到建连请求后创建一个脚本解析器。客户端建立一个解析器。客户端向测试服务器发送下载脚本的请求。测试服务器收到请求后,找到对应地脚本解析器,并在脚本解析器中完成初始化,步骤包括以下两个部分。根据请求中包含地测试项目号和测试例号组装包含客户端脚本内容的分组,并发送给客户端。根据请求中包含地测试项目号和测试例号下载服务器端的脚本内容到本解析器,初始化相关变量。客户端收到包括脚本的分组后,填充到解析器中,并完成初始化操作。客户端和测试服务器端的解析器根据脚本的内容逐行解释执行,并调用相应的回调函数完成测试过程。测试服务器判定测试结果是否正确。测试服务器将结果发送到客户端。客户端将结果发送到主界面。
3.3NetRiver管理服务器
管理服务器用于对学生和实验信息进行管理,包括学生帐号和基本信息、实验内容及测试例、每个学生的试验完成情况等。由于整个实验是一个基于脚本控制的自动完成的过程,学生在对自己的实验进行测试之后,成绩会自动提交到管理服务器进行登记。教师或者助教可方便的在管理服务器提供的Web界面上查看所有学生的实验完成情况并进行汇总统计,学生也可通过该界面查看自己的实验结果。
3.4目前支持的网络实验
NetRiver实验系统目前所支持的实验如表1所示。由于系统使用了可扩展的脚本描述方法来定义实验和测试例,因此教师可根据需要方便的增加所需实验内容,实现扩展实验。NetRiver系统为每个实验都提供配置实验和编程实验两种实验方式,适应不同的实验要求。
4NetRiver实验系统的特色和创新点
可控真实的全协议栈网络实验环境
本实验系统提供了一个IPv4/IPv6全协议栈的网络实验环境,并且该环境建立在可控真实网络基础上。学生在一个真实网络环境中做实验,但是实验过程中不会受到杂乱数据的影响,可集中关注与实验相关的数据包收发。同时,学生实验可涉及到完整协议栈,无论是数据链路层、网络层还是传输层和应用层,都可以通过编程开发或者交互式配置观察来深入理解相应网络协议机制。
支持实验代码编辑、编译和调试的集成编译环境
实验系统面向学生的客户端提供了一整套开发调试解决方案。学生可在客户端上完成包括登录、实验选择、测试例选择、代码编写、编译、调试和测试在内的完整过程。界面设计友好,可让学生迅速进入实验状态。
可视化的协议报文捕捉与行为分析
为了便于学生观察报文和调试程序,本实验系统还提供了可视化报文分析功能。系统可在学生程序运行过程中实时捕捉实验相关报文,并且按照其时间顺序和发送方向以可视化的方式在界面上描绘出来,并且学生也可具体查看每个分组解析之后各域的内容,从而判断自己的程序潜在的错误。
面向因材施教的多层次实验手段
实验系统不但提供了全协议栈的实验支持,而且对学生也提供了多种可选的实验手段。除了编程开发实验之外,也可进行交互式配置观察实验。即,学生可在图形化界面上根据当前实验要求通过手动填写分组各个域的值来完成实验。这样既可以让学生掌握分组组成和协议运行过程,同时也不要求学生掌握编程技术,可适合于文科类学生使用。
基于脚本语言的、可扩展的实验描述和执行
实验系统所支持的实验是基于脚本语言编写的,具有良好的可扩展性。即,当实验内容发生变化,或者需要增删实验时,只需要修改或编写相应的脚本,而无需对系统本身进行修改,极大地简化了实验系统的更新和维护工作,同时使其具有非常灵活的可定制性。
基于协调测试法的自动实验测试
完成某个实验之后,实验平台可按照学生选择的测试例自动对该学生所做的配置或者编写的代码进行测试,同
时返回测试通过的数量和失败的数量。学生可在此基础上进行检查和调试,整个过程无需教师或助教的参与。
功能丰富的实验管理平台
实验系统针对学生和实验管理提供了一个功能丰富的B/S结构管理平台。学生可登录到该Web界面查看自己做过哪些实验以及实验的通过情况;助教可通过该平台查看所有学生的实验情况,并可进行汇总分析;教师除了可看到所有学生的情况之外,还可对学生和实验进行增删等管理操作。该平台避免了手工管理大量学生实验成绩的繁琐,可十分高效、方便而又准确的对学生实验情况进行管理。
5总结
NetRiver实验系统从2006年开始在 “计算机网络原理”课程中使用,取得了很好的效果。到目前为止,共有约两千多人次使用本系统完成教学实验。通过便捷、系统的实验以及与原理课程的紧密结合,极大促进了学生对网络体系结构的认识和对网络协议及相关原理的掌握。另外,由于实验系统的使用,打破了传统教学中需要学生学习复杂的系统接口、无法深入编写协议相关代码、无法清晰的观察协议运行机理的局面,赢得了学生的高度评价。
目前NetRiver系统已经在以下几个单位得到了部署和应用:清华大学计算机系、清华大学软件学院、清华大学网络中心dragonlab实验室、北京大学、信息工程大学。另外,黑龙江大学和浙江工商大学等院校正在远程试用。
参考文献
[1] Andrew S Tanenbaum. 计算机网络(第4版)[M]. 北京:清华大学出版社,2004.
1计算机网络实验管理系统的功能
计算机网络实验管理系统是基于客户/服务器模式进行研发的,根据学校中的主要用户主体,可以分别提供教师使用时的功能以及学生使用时的功能.在教师身份登录的条件下,计算机网络实验管理系统可以完成以下几个功能:其一,教师可以向所有学生或者是某一个学生发送实验的内容以及实验要求;其二,教师可以与学生进行交流,了解学生的学习进程;其三,教师可以利用该系统对学生进行监视,从而实现自动在线点名[1];其四,教师可以对学生提交的实验报告进行自动收取;其五,教师可以对学生的实验情况进行全程监督,同时还可以对某一个学生显示器上呈现的内容进行有效的动态扑捉.在学生身份登录的条件下,计算机网络实验管理系统可以完成以下几个功能:其一,学生可以对教师发送的实验内容与实验要求进行浏览,从而了解实验的基本信息;其二,学生可以向教师提交实验的报告;其三,学生可以对实验进行模拟;其四,学生可以利用该系统与教师以及学生进行交流.通过以上分析,可以看出,计算机网络实验管理系统的应用不仅可以大大减少教师的工作量,提高教师的教学效率,而机上对话功能的运用可以降低实验室内的噪音,从而使实验室保持良好的环境.同时,该系统的应用还可以有效地调动学生的学习积极性,激发学生的学习潜能,提高学生的学习效果.
2计算机网络实验管理系统的设计
2.1计算机网络实验管理系统的设计目标
计算机网络实验管理系统在设计过程中必须具有以下几个方面的功能:第一,该系统应该建立两种类型的数据库,分别是教师数据库与学生数据库,从而满足教学过程中教师与学生的不同需求;第二,该系统必须建立运行库,而运行库应该是在注册信息与数据库关联的基础上建立起来的,同时运行库还必须拥有导出功能;第三,该系统应该具有监视网络上每一台机器运行情况的功能;第四,该系统应该可以使教师对实验要求进行讲解并可以分发到每一台机器中,同时还可以对学生的实验报告进行提交与保存;第五,该系统应该具有对实验进行模拟的功能[2];第六,该系统应该能够为教师与学生交流意见时提供对话的平台.在以上六种功能之外,还可以适当的增加一些智能化的功能,比如自动输入的功能.
2.2计算机网络实验管理系统的模块设计
根据计算机网络实验管理系统功能的需求,我们可以将系统分解为以下五种模块:第一,系统的登录与注销模块.对于登录模块来说,该系统可以根据登录模块对用户的身份以及上机时间的长短进行确定,同时可以根据用户身份的不同提供不同的功能.对于注销模块来说,该系统可以对用户的下机时间进行确定.通过登录与注销模块、数据库以及运行库的情况,从而对教师与学生的出勤情况进行考察.从教师的角度来说,能够计算出教师每个月的课时数;从学生的角度来说,能够检查出学生迟到、早退以及旷课的情况,这在无形中帮助教师实现了点名.第二,系统的实验相关模块.该系统的实验相关模块中主要包含了三个功能,分别是实验要求的分发、实验报告的提交以及对实验进行模拟.在实验要求的分发功能中系统应该具有信息群发与单发的功能;在实验报告的提交功能中系统应该有自动存盘的功能.第三,系统的意见交换平台模块.该系统的意见交换平台模块应该实现教师与学生的对话要求,主要包括两种方式,分别是“一对一”与“一对多”的方式.第四,系统的监视模块.该系统的监视模块只有教师可以使用,该模块可以显示每个终端的连接情况,实现对终端使用情况的监视.此外,它还可以对运行资料库进行查阅,同时对运行资料库进行导出并保存所需的信息.第五,系统的帮助模块.该系统的帮助模块可以对软件的操作方法进行讲解,同时还可以使用户迅速的学会软件的使用方法[3].
2.3计算机网络实验管理系统的数据库设计
计算机网络实验管理系统中包括了三个数据库,分别是教师库、学生库以及运行库.其中,教师库与学生库中包括了教师的相关信息,比如用户的身份标识号、姓名以及上机时间等信息,从而掌握教师与学生的上机情况;运行库中主要包括了该系统在运行过程中所需要的一些基本信息.与此同时,该系统在运行过程中可以建立一个临时库,从而可以方便储存一些临时需要的数据.
3计算机网络实验管理系统的实现
3.1Socket接口
所谓的Socket是一个网络上跨平台的应用程序进程间的通信机制,对于计算机的应用程序来说,Socket类似于一个服务协议插座,程序中不同的协议,对应着不同的端口[4].微软公司在它们的Windows平台上提供了WindowsSocket规范,主要是为了给应用程序的开发者提供API,同时为了使软件供应商能够有统一遵守的规范.与此同时,WindowsSocket也定义了一个二进制接口,从而有效保障WindowsSocketAPI的应用程序可以在任何网络供应商的符合WindowsSocket协议的实现上工作.WindowsSocket规范定义并记录了API与网络协议族连接,特别是对于全部的WindowsSocket实现都可以支持流套接口以及数据报套接.应用程序主要是利用WindowsSocket的API,从而实现了计算机相互之间的通讯.同时WindowsSocket又可以通过下层的网络通讯协议功能以及操作系统调用实现实际的通讯工作,它们之间的关系如下图所示.在建立分布式应用的时候,目前主要使用的方法是运用客户服务器模型.该模型在使用过程中有一定的要求,即使用过程中必须有一整套由客户机与服务器达成共识的协议,该协议可以有效保障服务能够被提供或者是可以被接受.在不同的情况下,该协议的存在方式两种,分别是对称性的不对称性的.其中,在对称性的协议中,协议中的每一方都有可能会扮演主从角色.而在不对称性的协议中,往往是一方扮演着主机角色,相应地另一方则扮演着从机的角色.对于一个服务程序而言,往往是在一个“熟知端口”监听对方服务的请求,这也就是说,在没有请求发出的时候,该服务器进程是处在休眠状态的,直到有客户对这个服务器提出了连接的请求,此时,服务程序会被这一请求而“唤醒”,同时立即给客户提供相应的服务,即对客户的请求进行相应的反应.一般来说,在设计客户服务器应用程序的时候,连接的服务是其设计的标准,但是在特殊情况下,某些服务也是可以利用数据报套接口来提供的.Socket作为应用程序间的通信端口,在同一台计算机上的不同计算机的两个进程间可以分别建立两个Socket.通过连接之后,应用程序的两个进程之间就可以进行数据的相互交换工作.一般来说,Socket接口主要包括三个部分,分别是Socket的IP地址、Socket的通信端口以及Socket的类型,其中,Socket的IP地址主要是为了确定通信目的的计算机;Socket的通信端口主要是为了确定目的计算机的应用程序进程;Socket的类型中的套接口根据通讯的性质可以分为三种类型,分别是流式套接口、数据报套接口以及原始套接口[6].通常情况下,应用程序主要是用在同一类的套接口之间的通讯,但是只要底层的通行协议允许,那么不同类型的套接口之间也可以实现通讯.目前,对于客户而言,可以使用的套接口有两种,分别是流量套接口与数据报套接口.
3.2计算机网络实验管理系统的实现
本文中设计的系统的总体结构如下图所示.在使用该系统的时候,主要是通过Delphi语言来实现,使用Delphi语言的数据库引擎BDE可以使系统程序的编写与移植更加的简便,同时还能够有效地适应客户/服务器模式.Delphi的使用主要具有以下两种功能:其一,通过使用Delphi提供的访问数据库功能,从而可以对教师与学生数据库进行管理,同时还可以对学生上机时的出勤情况进行考察.此外,它还可以实现数据库的相关功能;其二,Delphi的集成开发环境提供了客户与服务器端Socket的ClinetSocket与ServerSocket构件,通过Delphi的Socket集成,从而可以达到教师与学生以及学生与学生之间进行交流的目的,其交流内容主要包括了实验要求的分发、实验报告的提交以及每个终端之间的对话等.
4结束语
关键词:计算机网络;实验;层次渐进法;网络应用编程
作者简介:高屹,男,副教授,研究方向为计算机应用技术;王琦,女,讲师,研究方向为计算机应用技术。
21世纪是网络信息时代,计算机网络的应用无处不在,越来越多的高校开设计算机网络课程。从研究生到高职高专的各个层次,从计算机网络工程专业到某些文科专业,越来越多的学生需要应用网络技能面对职业甚至生活基本技能的挑战,或就业于相关领域[1]。另一方面,计算机网络是公认比较难学的一门课程,涉及知识内容丰富,技术发展日新月异,由于就业方向及培养目标的不同,不同专业在教学内容和教学方法的选择上差异巨大。
绝大多数计算机网络课程都分为理论教学和实验教学两个部分。对于理论教学的方法,各院校都非常重视,很多专家教师结合各自的专业特点,进行了多方有益的探索,形成了多种比较成熟的教学方法,教学效果也得到了充分保证。针对理论教学内容的探索越来越深入,教学内容已经很好地细分,能够充分适应就业需求。在教材建设方面,以几大经典系列教材为代表[2-3],优秀教材层出不穷。与此相对应,计算机网络的实验教学还比较薄弱。
计算机网络是一门实践性很强的课程,缺少或者弱化实践环节,整体上很难达到教学效果,这一点已成为共识。与理论教学相比,对实验教学内容及方法的探索起步较晚,还存在一些不同认识,优秀实验教材[4]的数量也要少得多。
1对计算机网络实验教学的探索
计算机网络是一门工程应用特征非常明显的课
程。在进行课程改革时,工科院校应该以提高学生工程应用能力为目的,以市场为导向,形成一个较为完整、系统的实验教学体系[5]。既要保证通过实践验证所学的计算机网络基本理论,又要结合当前计算机网络的最新技术培养学生的综合素质和创新实践能力。
实验教学在实施上以学生的自主操作为主,但同样需要系统的管理与专业的指导。实验教学不是简单的布置题目,教学效果也不能完全依赖学生的发挥。
1.1存在的问题
1) 缺乏权威性实验教材。
一本好的教材对实验教学至关重要。除了丰富的实验选题外,还应该提供完整的技术思路、系统的方法指导和全面的背景知识。但不得不承认,目前权威的实验教材还比较缺乏,教师在教学活动中可参考借鉴的内容相对有限且不系统,造成教学效果基本依赖教师个体的水平和责任心,教学质量难以保证。
2) 对实验教学不够重视。
一直以来,教师往往更注重计算机网络理论教学而轻视了实验教学。由于缺乏教学经验的传承和积累,教师囿于实验室而缺乏对学生就业的预见性,加之缺乏权威教材的指导,开设的实验只是对网络操作系统简单应用的验证性实验,实验内容随意性比较大,针对性较弱,不能满足学生的就业需求。学生缺
少通过实践进行检验和加深对理论知识理解的机会,使学生对学习感到抽象和空洞,难以理解和掌握,教学效果不佳。
3) 实验内容取舍不当。
计算机网络包含的内容极其丰富,从教师的角度看,哪部分内容都很重要,都不想放弃。但内容的过分求全往往会造成学生在做每个实验时都蜻蜓点水,最终难以深入。要想充分利用有限的实验课时,实验内容必须取舍,那种希望通过一门课程的学习,使学生既搞清复杂的网络原理,又学会网络编程,同时还训练各种网络应用技能的愿望是不切实际的。
从实验的功能来看,计算机网络实验一般可分为三种类型:第一类是原理验证型实验,第二类是实践应用型实验,第三类是探索研究型实验[1]。在安排实验内容时,部分院校存在原理验证型实验比重偏大的问题。作为重点工科院校,借助于各类仿真软件和协议分析软件,绝大部分计算机网络的基本原理可以在理论教学中讲解演示清楚,不必再花费大量实验课时进行验证。所以,我们认为重点应放在实践应用型实验上,达到巩固所学内容并延伸思考的目的,利于学生学以致用及创新能力的培养。探索研究型实验的开设对象应该是那些学有余力且特别具有开拓钻研精神的学生,此类实验不应占用过多的统一实验课时,而是以开放性实验或学院资助参赛项目的形式实施。
4) 学生体会难以深入。
实验教学是理论教学的延伸,学生不能仅满足于学会或完成,必须要对所做实验有深刻体会。因此实验难度的安排和教师的引导至关重要。每个题目的难度要能够激发学生的主动思考,辅以教师的恰当引导,唤发学生对现有知识理解基础之上的深刻个人体会,并进一步唤醒学生的创新意识。
培养学生解决问题的创新能力是重要的教学目标,它离不开解放思想和独立思考。实验课程必须给学生提供独立思考的机会,兼顾军校的严格管理和鼓励学生个性充分发展。我们主张承认并客观面对学生的个体差异性,在实验内容和难度上不强求一致,而是对每个实验设置多个难度层次。后一层次的工作建立在前一层次完成与思考的基础之上,使每个学生个体都能最大限度地得到深刻的体会,我们称这种方法为层次渐进法。
1.2实验方法的选择
对于计算机网络的实验教学,选择适当的实验方法也是至关重要的。通过广大教师的不断探索,我们近年形成了很多有特色的实验方法,有的注重动手能力培养,有的注重实验室建设,有的注重实验系统和实验平台的应用[6],有的注重虚拟实验与真实实验相结合[7],有的注重基本原理与网络产品相结合等。
与实验内容的选择相同,对实验方法的选择也不可求全,以一到两种为宜。选择哪一种实验方法,需要根据专业特点,再综合考虑多方面因素。在开展网络实验的实践中,我院重点考虑了以下三方面的因素:
首先是与理论教学内容相结合。我院选择《计算机网络――自顶向下方法》作为理论教学教材,该书作者具有深厚的网络应用研究背景。在内容安排上,使教师能够在教学早期阶段就开始介绍网络应用程序的开发[2],对各类网络应用程序和应用级协议的关注度极高。
其次是与学生的就业预期相结合。我院主要培养胜任未来信息化军队领导岗位的高素质新型通信初级指挥人才,学生今后工作中接触计算机网络的方式主要是使用或设计网络应用程序。因此,本课程的定位应该是培养“使用计算机网络的技术人员”。
再次是对学生心理进行深度挖掘。青年学生知识面广,接受新鲜事物快,但他们不盲从,如果不事先认同,很难真正调动他们深入研究的积极性。作为学生,他们缺少科研攻关的经历,对于在学术上如何克服困难完成任务还缺少必要的心理预见。
综合上述因素,我们选择以网络应用编程为主要实验内容,这样与教材的知识契合度高。主要采用软件编程的实验方法,为学生将来作为技术人员使用网络打好基础。我们使用层次渐进法设计实验题目,以适应学生学习能力的个体差异性,避免因难度不当造成的心理落差。
我们不认为软件编程方法“难以保证教学质量的一致性,无法实现网络实验的基本功能[1]”。由于学生学习能力的个体差异性,教学质量很难“一致”,其实也不必强求“一致”,重要的是通过加强组织管理和恰当引导,充分发挥学生的主观能动性,在确保每个学生都能达到基本教学要求的基础上,将每个学生的个体能力发挥至最大,真正做到既传授知识,又培养能力。
1.3层次渐进法的实践
在我院计算机网络的实验教学实践中,除少量的原理验证型实验题目为公共科目外,学生主要完成实践应用型实验,具体说就是完成一个网络应用的设计与实现。
我们设计了多个网络应用题目,学生可以自主选择其一,每个题目都使用层次渐进法设置多级目标。这样既便于教师引导,又便于学生克服困难完成任务,提高教学质量。
下面就以一个实际题目为例,说明如何运用层次渐进的方法设计题目,并对实践效果加以分析。
2层次渐进的题目设计
本题目要求使用Socket编程,实现客户/服务器模式的客户端和服务器端程序,它们之间的通信使用TCP协议。具体实验目标被划分为10个层次,每一层目标的完成将是开始下一层工作的基础。希望学生能够充分发挥主观能动性,克服困难,不断进步。通过本题目的实践,希望每个学生都能在自己的能力和努力范围内取得最大程度的提高。
除第1层外,其他各层都不提供示例程序。各层次的功能要求如表1所示。
表1各层次功能要求
层次 功能要求
第1层 完成最基本的通信功能。通信是单向的,由客户端向服务器发送一个固定的字符串“Hello”,服务器成功接收后显示该字符串。客户端与服务器分别结束运行。
第2层 将通信改为双向。客户端输入一个任意字符串,向服务器发送;服务器接收后,增加一个后缀“_yes”并回传;客户端接收后显示。
第3层 增加循环控制功能,可多次输入、发送并回传。客户端在发送后对字符串进行判断,服务器在接收后对字符串进行判断,如果是某个特殊字符串,如“exit”,则退出循环,结束运行。
第4层 客户端向服务器发送一个指定文件。文件按“块”读取和传输,需要有辅助信息帮助服务器确定文件传输的开始和结束,这可以视为应用层协议的雏形。
第5层 增加多线程功能。使服务器可以同时接收多个客户传送的文件。
第6层 增加控制功能,允许一个客户发送多个文件。初始建立的TCP连接为控制连接,负责传递控制命令和文件信息;文件传输时建立新的数据连接,传输文件数据。
第7层 将文件的传输改为双向,允许客户从服务器取文件。
第8层 设计一个简单的应用层文件传输协议。在上一层基础之上,增加文件列表、创建子目录、改变子目录和删除文件等命令,形成一个较为完整的应用层文件传输协议――SFTP(Simple File Transfer Protocol)。
第9层 实现SFTP。
第10层 阅读RFC959,学习FTP协议的有关细节。研究一个开源的FTP系统。了解实用程序的编程风格,学习几个关键环节的实现方法。
注:每层都需要分别实现客户和服务器两个程序。开始时服务器监听,等待客户的连接。连接成功后继续完成上述功能。
3教学效果
在我院的计算机网络实验课程中,上述题目占用8个学时,从实施结果看,绝大多数学生都能够完成6至9层功能,取得了令人满意的教学效果。下面我们从各层的难度入手,对教学效果进行分析:
第1层只要掌握最常用的几个Socket函数即可完成,我们还给出了示例程序,几乎没有难度,仅仅是工作的一个起点。从第1层到第4层,各层之间的难度增加很小,各层增加的程序不过10行。所有学生都能在课内完成前4层,这其实也是该题目的最低要求。
单纯从编程的角度来看,第4层到第5层是一个较大的台阶,因为相当一部分学生没有多线
程编程的经验。我们采取的措施是:在实验指导书中讲解多线程编程的方法,提供多线程编程示例,给出多线程编程方法与本层功能结合的相关提示。借助这些参考知识,绝大多数学生能够实现第5层功能。
与前几层相比,从第5层到第9层的难度增加仍然很小,一旦突破第5层,第6至第9层都可以顺利完成。但这几层间的工作量增加较大,每层的实现需要一定时间。最终,有约1/4的学生能够进行到第9层。试想一下,如果不是采用层次渐进法,而是直接将第9层功能作为实验题目来布置,恐怕只有极少数非常优秀的学生才能够完成。
该题每一层比上一层的难度都有所增加,但增加部分都集中在单一技术点上,便于学生的学习研究,不至于被困难所吓倒。当课程结束,总结所做内容时,学生就会发现逐层难点的解决就构成了一个完整的科研攻关过程,从而初步形成一定的科研攻关经验与心理承受力。
实施层次渐进法以来,没有学生能够在课内完成全部10层任务,避免了个别学生在实验课中所有可能产生的盲目自信情绪。事实上,对任何人来说,第10层本身就很难在短时间内完成。
实验成绩按所达到的层次确定。前几层占分数比例比较大,后几层虽然难,所占分数却比较少,有利于大家共同提高,整体达到基本教学效果。这个措施还在一定程度上杜绝了编程实验中常有的抄袭和复制现象。
采用层次渐进法具有以下效果。
1) 增强学生的自信心。
课程结束时,无论停止在哪一层,学生对下一层的实现都会有一定想法,虽然还没做,但他们知道假以时日是能够做出来的。这样就避免了太难的实验题目吓退学生的学习兴趣与积极性,使不同层次的学生都有信心亲自动手解决问题,充分发挥实验教学的功能。
2) 为学生创新意识的培养创造条件。
在实验的后半段,有些学生已经不再按实验指导
书规定的层次要求往下做,而是根据个人的优势和愿望自由发挥。例如,有的学生本身具有MFC的编程基础,他们将SFTP客户端实现为标准的窗口界面,所实现的系统界面精美、使用方便。事实上,凡是做到第6层以上的学生,都会对后续工作产生一些想法,有时比我们想告诉他们的还要多。课后,还有学生继续选择相关的开放性实验项目,课程实验起到了很好的基础性作用。
3) 促进理论教学。
事实上,越是达到较高层次的学生,产生的创新想法越多,也越是感慨基本原理学习的重要性,因为他们正是从一个个基本问题的解决中一步步前行的。学生不仅可以通过实验加深理解计算机网络的相关理论,还可以在理论中寻求解答,提高学习的内在动力,提高课堂教学质量。
4结语
计算机网络中的变革是持续不断的[2],计算机网络教学也必须跟上网络技术的发展。笔者选择计算机技术中的网络应用程序编程为突破口,对网络实验课程的教学方法进行了一点探索。希望以此为基础继续探索,也希望对兄弟院校有所帮助。
参考文献:
[1] 陈鸣,胡谷雨,周雷,等. 计算机网络课程教学的思考与创新[J].高等教育研究学报,2008,31(2):66-68.
[2] James F. Kurose,Keith W. Ross.计算机网络:自顶向下方法(原书第4版)[M]. 陈鸣,译.北京:机械工业出版社,2010.
[3] 谢希仁. 计算机网络[M].4版. 大连:大连理工大学出版社,2004.
[4] 陈鸣,常强林,岳振军. 计算机网络实验教程从原理到实践[M]. 北京:机械工业出版社, 2007.
[5] 温志萍. 基于培养工程应用型人才的“计算机网络”课程教学改革[J]. 计算机教育,2008(22):12-15.
[6] 全成斌,徐明伟,赵有健,等. 计算机网络实验课程体系探索[J]. 计算机教育,2008(24):9-11.
[7] 罗芳琼. 高校计算机网络实验教学研究[J]. 福建电脑,2011,27(1):32-34.
Thoughts and Practice on Experimental Teaching of Computer Network
GAO Yi, WANG Qi
(Institute of Communications Engineering, PLA University of Science & Technology, Nanjing 210007, China)