(北京理工大学 软件学院,北京 100081)
摘 要:针对面向硕士研究生的高级计算机网络课程教学中存在的教学内容没有反映发展前沿、缺乏针对解决计算机网络设计与高级应用等实际问题的内容、教学方法缺乏系统性和整体观、考核方法只注重基础理论知识的记忆等问题,提出以创新能力培养为导向设计系统化教学体系,包括非严格分层的系统化理论教学内容、遵循科学发现过程的层次化实验教学内容、激发创新兴趣的二维系统化教学方法和强调创新能力的综合考核方法。
关键词:高级计算机网络;教学体系;实验;创新能力
0 引 言
计算机网络是计算机科学与技术学科、软件工程学科、网络空间安全学科的核心基础课程,贯穿于本科阶段、硕士阶段和博士阶段。高级计算机网络课程主要面向硕士阶段,在本科阶段掌握了计算机网络体系结构、网络基础协议分析等基本理论的基础上,深入探究计算机网络协议的技术原理,学习网络设计方法,理解计算机网络技术的发展前沿,为博士阶段的创新性研究打下坚实的基础。可见,高级计算机网络课程处于承上启下的核心位置,对于培养学生的科研创新能力具有关键作用。但目前高级计算机网络课程在教学中存在系统性不强、学生实践能力弱、前沿知识匮乏等问题[1],因此有必要针对这些问题提出相应的教学改革方案。
1 高级计算机网络课程在教学中存在的问题
目前高级计算机网络课程在教学中存在的主要问题包括:理论教学内容更新速度慢,无法反应计算机网络技术发展前沿;教学内容按照计算机网络体系结构以严格分层方式进行组织,方便学生掌握局部知识点,但缺乏对网络总体构成和工作原理的系统化理解;实践教学内容以网络基本配置等基础实践技能为主,缺乏对面向解决实际问题的综合实践能力的训练;理论教学和实践教学中都缺乏对科研方法和能力培养的内容;考核机制仍然以对客观知识的记忆为重点,没有突出对实践能力和创新能力的单独考核。
计算机网络技术作为推动国家发展的重要基础设施,近年来发展迅速,云计算、物联网、软件定义网络等新理论和新技术不断涌现,但现行的计算机网络课程教材没有涉及这些内容,甚至出现原有的一些原理与实际不符的情况,这使得学生只能机械地记忆抽象的知识而无法解释和解决新出现的网络技术问题。
教学内容严格按照物理层、数据链路层、网络层、传输层和应用层5个层次进行组织,根据讲授的顺序可分成“自底向上”[2]和“自顶向下”[3]两种方法,分别从基础知识和应用需求两个角度组织教学内容,但都存在知识点分散、缺少整体观的问题,不利于培养系统化思维习惯和能力。另外,很多硕士网络课程是在复习本科阶段所讲述的网络5层基本知识的基础上,增加无线网络和多媒体网络等内容,使得高级计算机网络成为计算机网络的简单扩充,这对于培养学生的科研创新能力毫无益处,甚至在加强学生的网络基础知识方面的作用也微乎其微。
硕士课程普遍存在“重理论、轻实践”的问题,高级计算机网络课程实践课时较少,而且实践教学内容仍然以网络基本配置等基础实践技能为主,对于如何将教学内容应用到实际研究工作中的关注度不够,缺乏解决实际问题的综合实践能力训练。
2 以创新能力培养为导向的高级计算机网络课程系统化教学体系
基于上文对目前高级计算机网络课程在教学中存在问题的分析,我们认为高级计算机网络课程的教学必须以培养科研创新能力为导向,以系统化的方法组织教学内容和教学方法,并根据学生的实际情况进行微调,在研究方法和网络相关知识方面为后续课题的研究奠定扎实的基础。
2.1 非严格分层的系统化理论教学内容
针对严格分层模型在描述可靠性、流量控制、安全等跨越多个分层的概念时容易产生混乱的问题,总体上以一种松散分层模型组织理论教学内容,将涉及多个层的主题放在一起讨论。以网络应用及其需求为出发点,从主机的互联问题开始,逐层向上讨论,在不同网络主题间建立联系,逐步形成端到端的网络系统概念。理论教学内容在Peterson L L的教材[4]基础上增加对发展前沿的专题研究,具体设置见表1。
理论教学内容从计算机网络应用的具体需求出发,分解成构建计算机网络的不同任务,从简单的单个计算机相连到复杂的大规模网络互联,最终实现安全、高性能的端到端通信,环环相扣,逐步实现应用需求。对于每一个主题,都按照“提出问题――分析并分解问题――解决问题”的过程进行教授,鼓励学生脱离教材,利用互联网资源自己寻求解决方案,这有助于培养学生的创新型思维和独立解决问题的能力。
硕士生应尽早了解计算机网络技术的发展方向,特别是近几年出现的云计算数据中心网络、软件定义网络等新技术,它们采用了与传统网络不同的体系结构,反映了新型网络应用的新需求,与前面学习的“传统”网络基础理论知识进行对比,不但能加深对所学知识的理解,而且能够帮助学生学习如何扩展思路,对同一问题提出不同的解决方案。这些教学内容不仅是知识的传授,也是对课题研究方法的讲解,能够帮助学生提高科研创新能力。
2.2 遵循科学发现过程的层次化实验教学内容
为了满足高级计算机网络课程对实践的要求,有必要设计合理的实验教学内容来帮助学生更好地理解和运用理论教学内容。我们设计了不同类型的实验内容,并充分利用各种硬件和软件工具设计了多样的实验方法。实验的难度和深度是逐u递进的,既能保证学生掌握基础理论,又能让他们学习研究方法,还能使他们深入了解发展前沿。
针对夯实理论基础、增强操作能力、培养创新意识3个层次的培养目标,设计了4类实验教学内容,包括分析验证型实验、综合设计型实验、研究型实验和前沿探索型实验,每一类实验的内容和方法见表2。
分析验证型实验是对理论教学内容的具体化和印证,面向硕士生的实验应该更强调系统性,不是孤立地分析单个协议的行为,而是针对端到端通信整个过程中所涉及的各个网络层次的协议,分析它们如何协作来共同完成网络应用的通信需求。另外,对在本科阶段只是简略介绍的RIP和BGP等路由协议、多媒体数据传输协议以及无线网络通信协议的实现细节进行分析。