CORE在网络协议分析教学中的应用

CORE在网络协议分析教学中的应用
作者:薄云霞,尹风雨,李润求
来源:《当代教育理论与实践》 2012年第3期
    作者简介:蒋云霞(1975-),女,湖南衡阳人,工学硕士,副教授,主要从事计算机网络教学与科研工作。
    蒋云霞a,尹风雨a,李润求b
一带一路五通    (湖南科技大学 a.计算机科学与工程学院;b.教务处,湖南 湘潭 411201)
    摘要:网络协议分析课程是高校计算机网络及其相关课程教学的核心与主线,亦是网络教学的重点和难点。论文在分析了目前高校网络协议教学的现状及不足的基础上,对基于开源的协议分析演示软件CORE进行了介绍,详细阐述了其体系结构、原理及其在网络协议教学中的具体应用。
    关键词:网络协议;虚拟网络;协议分析;CORE
    中图分类号:G423.04文献标识码:A文章编号:1674-5884(2012)03-0065-02
    一网络协议与协议分析
    网络协议通常由语法、语义和时序3部分组成,是计算机网络中进行数据交换而建立的规则、标准和约定的集合,学生对这部分内容的掌握程度直接决定了他们对复杂、抽象的计算机网络基本理论、体系结构及相关应用的掌握程度。为了有效地掌握网络协议的工作原理,必须对网络协议进行分析,即通过程序分析网络数据包的协议头和协议尾,了解数据信息和相关的数据包在产生和传输过程中的行为,从而更好地识别网络通信过程中可能出现的问题,全面观察以及了解网络的运行情况,积累相关的网络使用和分析经验,从而为更好地设计和使用网络及相关产品打下坚实的基础[1]。目前,国内外的研究主要基于网络流量观察以及网络监视探测,网络数据分析。对于网络协议的语法、语义的分析较为成熟,可通过大量工具(如Flash,GDI+,WPF,NS2,NS3,Omnet++,OPNet Modeler等),以数据化、表格化、图形化等方式来展现网络协议的分析结果,为计算机网络协议分析的可视化教学与演示提供了良好的学习基础[2]。
    二网络协议分析教学的现状
    目前,国内高校的网络协议分析课程大多采用以下几种教学方式:
    1.理论与实例结合模式:这种教学模式主要是将理论知识通过Word、PPT等办公软件,以文字、图表等形式来讲解网络协议的相关工作原理与具体实现,同时辅以了一定的实例分析说明。这种方法虽
樟宜医院然有实例讲解,仍过于抽象,不利于学生的理解和促进其学习主动性,且网络协议众多,很难在生活中逐一地到实例,因而只适合少部分协议的教学。
pgd678    2.动画演示模式:随着多媒体计算机的普及,多媒体教学模式已广泛应用于各种课程的辅助教学当中(如Flash、Authorware、PPT等多媒体制作工具的广泛应用)[3]。这种模式虽然能直观地表达网络协议的语法和语义,但难以表现网络协议中的状态变迁和数据交互,且越是复杂的协议,其多媒体课件的制作周期和复杂程度都相应的增加,且难以保证多媒体课件的灵活性和可扩展性,也只适合大多数常用协议讲解的辅助教学。
    3.协议抓包模式:随着一些开源协议分析软件的出现(如WinPcap、Ethereal、Sinffer等),部分老师开始在教学中通过直接使用这些软件来演示如何获取网络中的数据包(即抓包),并对其进行分析,以了解协议的工作原理与设计策略。但这是个悖论,因为分析数据包的内容需要对协议有较深的了解,这对刚接触计算机网络的学生无疑是个较高的门槛。
    综上所述,由于网络协议本身比较抽象,现有的教学方法和手段很难直观、形象地展现一个协议的语法、语义和时序这3个要素,因此,如何在网络协议分析课程的教学中,将理论与实例相结合,动画演示与数据分析相结合,以充分利用CDIO[4](即Conceive Design Implement Operate,构思、设计、实施,操作)的教学理念,来促进学生的学习主动性,提高学生的协议设计水平和实际动手能力,
积极培养学生的工程意识和工程水平是一个具有深刻指导意义的研究课题,其相关技术手段与教学产品的研发无疑会对计算机网络教学起到重要作用。
kones
    三CORE在协议分析教学中的应用在与不在
    CORE(Common Open Research Emulator)是由Zegreb大学的IMUNES开源项目衍生而来的一个开源网络研究模拟器[5],最早是由波音公司的网络技术研究小组研发出来的,目前由美国海军研究实验室提供后续开源项目的相关技术支持工作。该模拟器具有良好的人机界面和可扩展性、自定义性,可以构建各种类型的虚拟网络场景,并对用户提交的应用程序和网络协议等功能模块进行无修改的运行,以测试其性能和可行性,被普遍地用于协议研究、应用程序平台测试、网络安全研究、网络容量研究等领域。CORE的体系结构如图1所示。其中:
   
    1.CORE GUI层是由Tcl/Tk语言实现的,用于设计网络拓朴,并为节点分配其类型,所用协议类型、链路类型等构建虚拟网络所需要的各个虚拟部件类型,及可视化编辑(增加、删除、移动节点、设备等功能)与配置管理。
    2.CORE服务层通过使用Python脚本,实现了所有的网络模拟会话的管理功能,负责所有虚拟节点在虚拟网络中的数据通信。其中,虚拟节点和网络的实现主要利用了Linux的LXC和OpenVZ虚拟化技术(Linux内核从2.6.18版本开始已包括了这两大模块),LXC主要用于实现虚拟节点,使得虚拟节点具有私有的进程空间和网络协议栈,而OpenVZ则使得Linux系统可以运行多个LXC的虚拟节点,使其具有独立的文件系统,从而成为独立的虚拟节点设备(如路由器、网关、交换机、主机等)。最后,CORE通过Linux Ethernet来实现虚拟节点设备间的连接,从而构建用户所需要的网络。
    同时,1、2两层之间的通信则通过自定义的、基于Socket的CORE API来完成相互的通信。CORE的整个系统具有良好的模块化特性,允许混合各种类型的功能模块,甚至允许虚拟网络由其他的网络仿真(模拟)软件来构建(如EMANE,移动Adhoc网络模拟器)后再加入到CORE当中来运行。
12.7mm高射机    通过CORE良好的人机界面和虚拟化技术,我们可以在Linux和FreeBSD操作系统环境中,让学生自己对有线网络、无线网络、移动网络及其混合网络的3~7层协议进行有效的设计、测试和调试,并可通过多个场景进行分布式网络模拟;同时也可以让教师以可视化的方式实现协议分析的动态讲解,实
例如图2所示。目前,CORE良好的可扩展性使得普通的PC也可以进行大规模节点网络的模拟(如具有1000 000个节点的网络模拟,具体数量只受到PC自身硬件条件的限制),而且还可以通过相关的设置连接其他模拟器,甚至是真实的网络及应用程序。
   
    四结语
    网络协议分析教学是计算机网络教学及其相关课程的核心,该课程掌握情况直接决定了学生对计算机网络运行的熟悉程度,计算机网络协议的设计水平。CORE作为开源的免费网络研究工具,不仅对网络应用程序和网络协议提供了良好的运行平台,更为学生进行协议设计提供了良好的测试环境,有利于学生全面掌握网络的相关原理(如协议设计、网络安全、网络规划等),从工程的角度更好地学习计算机网络相关知识。
    参考文献:
    [1] 李冬妮,李健.网络协议过程分析平台及可视化研究[J].网络安全技术与应用,2010(12):9-11.
    [2] 郭文平,周雁,陈盈,等.基于动画演示的网络协议教学实践[J].计算机教育,2011(9):93-96.
    [3] 金华.基于任务驱动的网络协议分析与应用教学[J].信息技术教学与研究,2011(49):163-164.
    [4] 陈祥章.CDIO在高职《计算机网络技术》课程教学中的应用[J].当代教育理论与实践,2011,3(2):44-45.
    [5] Ahrenholz J, Danilov C, Henderson T, Kim J H. CORE: A Real-time Network Emulator[C]. Proceedings of IEEE MILCOM Conference,2008.
    (责任编校晏小敏)

本文发布于:2024-09-23 05:34:09,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/136990.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议