当前位置:智城范文网>范文大全 > 征文 > 协议分析与测试课程的教学探索与实践

协议分析与测试课程的教学探索与实践

时间:2022-03-18 08:29:42 来源:网友投稿

方案和课程体系[1-2]。网络工程专业作为独立的特色专业,必须要有适应网络人才培养的特色课程,然而目前还几乎没有文献探讨此类问题。

如何建立完善的网络工程专业的课程体系, 开设符合培养目标的特色课程是一项值得研究和探讨的问题。本文就我校开设的特色课程“协议分析与测试”,分析其设置的合理性和重要性,给出教学内容和组织模式,并结合我校具体的教学与实践的情况,分析该门课程的实际教学效果,给出具体的教学方案

1课程的地位和重要性分析

网络协议是计算机网络的核心和灵魂,要掌握计算机网络技术并深刻理解其本质,必须了解协议的设计、分析、实现和测试方法。然而在现有的计算机学科的课程体系中,一般只有计算机网络、Internet原理等网络课程,没有关于协议分析和测试的课程。在多数的网络工程专业的课程体系中,也没有设置和协议分析相关的课程。我们调查了全国近140所开设了网络工程专业的高校的课程设置情况,只有11个学校设置了和协议分析、协议设计、协议工程相关的课程,开课比例不足10%。因此,该门课程的重要性并没有引起有关院校足够的重视。我们认为,目前广泛开设的计算机网络、Internet原理等课程一般只介绍网络各层常见协议的格式、交互过程和功能,并没有从较高的角度抽象概括网络协议的基本原理。因此,学生在学习完这些课程之后,往往只是掌握了计算机网络各层主要协议的功能,并不能从根本上理解协议的设计原则,甚至对协议有一种神秘感,不能独立从事协议的开发工作。这门课程的学习对于学生真正掌握网络协议的实质,进而培养创新能力具有重要的作用。

2课程的教学组织模式

2.1教学内容体系

此课程包括协议分析和协议测试两个部分(图1所示)。协议分析部分主要介绍网络协议的形式描述语言LOTOS、Estelle,形式化分析和验证技术,包括FSM,EFSM在协议分析中的应用。这部分内容主要培养学生了解协议的交互过程,深刻理解协议的本质,为设计和实现协议打下理论基础,协议测试部分的教学内容主要偏重应用,包括测试例的生成,协议测试工具的原理和使用,协议测试语言TTCN-3。这部分内容偏重于工程应用,主要目的是培养学生掌握协议测试基本方法,熟悉协议测试语言,基本掌握协议测试工具的使用。

2.2实践内容

对应于教学内容,实验内容也包括协议分析和协议测试两个部分(图1所示)。协议分析部分包括协议的形式化验证、协议内容和交互机制的解码分析;协议测试包括协议测试工具的使用,基于TTCN-3的协议测试程序设计。实验工具或仪器可以采用形式化协议分析验证工具、协议分析测试工具和测试程序开发工具。

形式化协议分析验证工具可采用SMV工具或SPIN工具。有限状态系统分析工具SMV比较简单,易于掌握,支持系统性质的验证。SPIN是专业的模型检测工具,被广泛用于协议的分析。但该工具使用起来比较复杂,需要较长时间才能掌握,不适合作为实验工具。

协议分析测试工具有两种形式,一种是带有自己的硬件设备,如福禄克网络公司的OptiView系列网络协议分析产品。这种硬件协议测试仪的优点是全面提供了各种网络接口,实时性强,分析处理速度快。但价格昂贵,是专业的测试分析工具,不适合作为普及型的教学实验仪器。另一种是纯软件的协议分析软件,如常见的协议分析软件有Sniffer Pro和Ethereal,它们的优点是可以直接从网卡上捕获数据,并进行解码分析,而不依赖特定的硬件设备。因此可以用协议分析软件作为实验工具。Ethereal不但在功能上和Sniffer Pro相似,可以满足教学的需要,而且是免费的开源软件,不存在知识产权问题。因此可以作为理想的协议分析实验工具。协议分析软件的一大功能是可以对协议解码分析,层次化的树状图显示分析结果。这使得学生可以更加生动直观地理解协议间的嵌套层次关系,加深对协议的理解。

测试程序开发工具可以使用TTCN-3的开发环境和工具。这类工具有TTworkbench等。使用这些工具可以开发基于TTCN-3的协议测试程序。

2.3教材选用

选用合适的教材是圆满完成教学工作的前提。目前国内外关于协议分析和测试的教材或专著并不多,主要有《Design and Validation of Computer Protocols》[3]、《网络协议的形式化分析与设计》[4]。另外,《计算机网络协议工程》[5]、《Principals of Protocol Engineering and Conformance Testing》[6]和《通信软件测试技术基础》[7]可以作为该门课程的参考教材。文献[3]是一部关于协议工程的经典教材。主要内容有协议规范和建模,协议的测试、综合与验证,以及协议的仿真和验证工具。这本教材的内容偏重于理论,不完全适合应用型本科的教学。文献[4]介绍了协议的形式化建模、分析、验证方法,和协议测试技术,是国内学者出版的一部比较适合本科教学的教材。文献[5]是国内第一本系统介绍协议工程的著作,论述了协议工程的定义、研究内容和研究方法,并介绍协议构造、协议模型、协议描述、协议验证、协议综合,协议实现和协议测试的理论和方法。文献[6-7]的特色在于介绍了协议的形式化描述语言Estelle, SDL, LOTOS, 和协议测试语言TTCN,偏重于工业应用。我们建议根据各自学校的培养目标因材施教,自己组织教学内容,编写教学讲义。

2.4协议分析与测试课程和其他课程的关系

本课程可以看作是协议工程课程的精简与核心。爱荷华州立大学的Thomas F. Piatkowski 教授在ICC’83会议上首次提出了“Protocol Engineering”的概念,随后在SIGCOMM’86上又再次介绍了协议工程的发展现状。协议工程用形式化的方法来描述在协议设计和维护中的各个活动,建立一套严格的协议设计方法,使协议开发的整个过程一体化、系统化和形式化,从而保证协议的完整性、正确性、安全性和可移植性。协议工程的主要内容有协议描述、协议分析、协议设计、协议实现和协议测试。考虑到学时限制和本科生的知识结构,我们从中提取出两个重要的和适合本科生知识体系的内容,即协议分析和协议测试,组成本课程的教学内容。

国内高等院校的网络工程本科专业一般在大二或大三已经广泛开设了计算机网络、TCP/IP原理与技术、Internet原理与技术等基础课或专业基础课。将这些课程作为本课程的先修课程,在学习了网络各层常见的主要协议后,学习协议的分析和测试方法,从总体上把握协议的原理和本质。学习了该门课程后,还可以开设网络故障诊断、网络协议设计与开发等选修课程,以丰富学生的知识体系结构。

3案例分析

安徽工业大学是安徽省首批获准开设网络工程专业的学校之一,在安徽省率先开展了网络工程专业学生的培养。我们积极探索了网络工程专业人才培养模式、知识体系结构和课程体系,并承担了安徽省高等学校省级教学研究重点项目“网络工程专业的人才培养模式及其课程体系设置研究”。

在我校制定的课程体系中,协议分析与测试课程被设置为32学时的选修课。其中实验为10个学时。此课程设置在第7学期,此时学生已经掌握了网络的基本原理,学习了各层协议,但并不了解协议的内在机理,只是了解了几个常见的协议。这门课程再从总体上介绍协议的形式化描述、分析方法,以及测试方法。可以通过教授这门课程,使学生在进入工作或继续深造之前提升对协议的认识。

课程的教学内容和学时安排如表1所示。由于总的讲课学时只有22个学时,所以我们只能把教学重点放在协议的有限状态机模型、协议测试例的设计、测试工具使用。考虑到本专业的培养目标是培养应用型人才,对协议的形式化分析只介绍最简单和直观的有限状态机模型。协议测试部分介绍测试例的生成方法、测试描述语言TTCN-3、以及协议测试分析工具的使用。

课程实验为10个学时,安排两次实验。实验一为基于SMV的协议验证,实验二为基于协议分析软件的协议交互过程分析。

另外,配合实验教改建设,我们开发了局域网协议分析软件[8],该软件具有数据包捕获、协议解码分析、网络性能分析和主动性测试等主要功能及捕获过滤等辅助功能。支持局域网各层常见的协议。该软件基于Windows平台,只要利用原有的网卡即可实现链路层数据的捕获,硬件要求低,部署简单方便,适合作为实验工具。

通过对学生的问卷调查,总体上对该门课程的设置持肯定态度,80%的学生认为这门课程对自己很有帮助,增进了对协议本质的理解。但与此同时,90%的学生认为协议形式化分析的内容很难,不易掌握。这和这部分内容本身的难度以及学时较少,教师不容易讲得透彻有关。因此,这门课程的设置得到了学生的肯定,但在教学内容和课时分配上还需要进一步调整。

4结语

如何让学生更加深层次理解抽象的网络协议的内在机理,进而初步具有协议分析、开发和测试的能力是长期困扰计算机网络教学的一个重要问题。为了解决此问题,必须从整体的高度和系统的角度讲授网络协议的分析方法、测试方法。本文提出开设协议分析与测试这门课程的建议,通过安徽工业大学的教学实践表明,该门课程可以显著提高本科生对网络协议机理的理解,为今后从事网络、通信软件的设计和开发工作打下良好的基础。在教学过程中,我们也发现了一些教学内容、教学方法上的问题,如何在教学内容的难度和学生的理解能力之间寻求平衡,是我们今后教学过程中需要重点研究的问题。

参考文献:

[1] 姜腊林,易建勋,陈倩话,等. 网络工程专业培养方案的研究与实践[J]. 高等教育研究学报,2005,28(3):67-69.

[2] 胡山泉,高守平,于芳. 应用型网络工程本科专业知识体系建设初探[J]. 计算机教育,2009(12):88-89.

[3] Gerard J. Holzmann. Design and Validation of Computer Protocols[M]. Englewood Cliffs:Prentice Hall,1990:1.

[4] 古天龙,蔡国永. 网络协议的形式化分析与设计[M]. 北京:电子工业出版社,2003:1.

[5] 龚正虎. 计算机网络协议工程[M]. 长沙:国防科技大学出版社, 1993:1.

[6] B.Sarikaya. Principals of Protocol Engineering and Conformance Testing[M]. Chichester:Ellis Horwood,1993:1.

[7] 赵会群. 通信软件测试技术基础[M]. 北京:人民邮电出版社,2005:1.

[8] 郑啸,魏仰苏. 局域网协议测试仪的设计与实现[J]. 计算机工程,2005,31(13):228-230.

Exploration and Practice of the Course of Protocol Analysis and Testing

ZHENG Xiao, YUAN Zhi-xiang, QIN Feng, CHENG Ze-kai

(School of Computer Science, Anhui University of Technology, Maanshan 243002, China)

Abstract: Network engineering is a new major set up by the ministry of education of China in 2001,so its curriculum system and teaching mode are in the process of exploration, and it is worth discussing how to set up the course reasonably. This paper suggests setting up the course of protocol analysis and testing in the major of networking engineering. The teaching content, experiment content, textbook and relationship with other courses are presented. A case study presents a teaching plan of this course and analyses the students’ comment. The teaching result shows that students improve their understanding about network protocol, and the problem of the recognition rest on the surface of knowledge is solved.

Key words: network engineering; protocol analysis; protocol testing; course reform

(编辑:彭远红)

推荐访问: 探索 实践 协议 课程 测试

版权所有:智城范文网 2010-2025 未经授权禁止复制或建立镜像[智城范文网]所有资源完全免费共享

Powered by 智城范文网 © All Rights Reserved.。粤ICP备20058421号