Network+课程设计指导书周泓江苏淮阴工学院计算机工程系二OO九年九月十日1目录一、Network+课程设计的目的..................................................................................1二、实验环境与教学要求...........................................................................................1三、实施原则、方案与步骤.......................................................................................1四、设计课题...............................................................................................................2(一)课题综述...................................................................................................................2(二)参考书目...................................................................................................................4五、课程设计报告要求...............................................................................................5六、成绩评定...............................................................................................................5七、附录.......................................................................................................................51一、Network+课程设计的目的《Network+》是计算机科学与技术专业软件工程方向重要的一门专业基础课,内容庞大,涉及面广,知识点多,教、学难度都非常大,往往费了大量时间而达不到预期教学效果。俗语说:学习的最好方法是实践。本课程设计正是基于此,力求为学生提供一个理论联系实际的机会,通过实践使学生了解网络设计的整体情况,掌握网络需求分析的方法,熟悉主体方案设计(网络规划:网络构架及拓扑、设备选型及布线规划、IP地址规划,系统软件规划:操作系统及开发工具、网络服务)的原理和方法;学习文档编写规范,培养独立学习、吸取他人经验、探索前言知识的习惯。同时,课程设计可以充分弥补课堂教学及普通实验中知识深度与广度有限的缺陷,更好地帮助学生从全局角度把握课程体系。二、实验环境与教学要求要求实验室配备相关编程语言如:C、C++、C#、Java等语言的开发环境。要求教师在正确理解课程教学大纲的基础上,结合课题体系的实际需求及学生的实践能力、工作条件等外部因素,选择恰当的设计课题,既体现教学目的,又能反映实际教学情况。要求保证充足的实践课时,最好配备专职指导教师。要求同学们:1.要充分认识Network+课程设计的重要性,认真做好各项准备工作;2.既要虚心接受老师的指导,又要充分发挥主观能动性,要结合课题,独立思考,努力钻研,勤于实践,勇于创新;3.收集资料,自学相关知识,拓宽知识面,根据课题的基本要求,自行完成设计任务。4.要按时、独立完成规定的工作任务,不弄虚作假,不抄袭他人;5.严格遵守学习和劳动纪律,不无故缺席,不迟到早退,不懈怠,不拖拉,要积极主动;6.严格要求自己,树立严肃、严密、严谨的科学态度,按时、按质、按量完成。三、实施原则、方案与步骤制订Network+课程设计实施计划时,要体现以下设计原则:以学生为主,要求独立完成设计任务,注重培养学生自学能力、实践能力、文档撰写能力、主动探索精神。教师针对每位学生的知识基础、实践技能等提出具体要求,辅导要有侧重,要因材施教。对基础差的要勤检查、多指导,对能力强的要适时提高要求,增加选做内容,积极鼓励,充分发挥其潜力。要求学生从点滴开始,踏踏实实按规定去做,培养严谨的科学态度。教育学生遵守纪律,团结协作,尊重他人。通过设计工作以提高业务能力,增强团队协作精神。根据Network+课程设计的特点,采取集中方式,具体方案如下:1.教师下达Network+课程设计任务书任务书内容包括课题范围、主要技术指标、要求、所用仪器设备和参考资料及文献等。教师可以视情况讲授必要的设计思路和设计方法。2.学生完成预设计本阶段学生应明确自身设计课题,查阅资料及文献,自学新知识、新技术,掌握设计的基本方法,确定设计方案,进行设计分析,完成预设计。23.上机实现、调试及测试阶段经教师审查通过预设计方案后,即可进入实验室进行上机实践,编写程序、调试并测试。实验由学生独立完成,教师仅作定时指导。4.设计总结阶段本阶段学生要认真回顾,总结收获,发现不足,整理技术资料,撰写Network+课程设计报告书,写出心得体会和改进意见。具体实施时,要根据具体情况,如课程大纲要求、实验环境、学生专业、层次及软件水平等,具体安排设计步骤。一般的设计步骤如下:1.选题与搜集资料:学生根据个人兴趣及能力,选择或自拟课题,随后进行需求分析与系统调查,搜集相关资料,了解涉及的理论基础知识。2.系统分析与预设计:根据课题要求及搜集的资料,进行系统功能划分,进行模块设计,完成预设计。3.指导教师检查学生预设计完成情况,分析其工作量,设计可行性,以确定是否可以进入上机实践阶段。4.上机实践阶段:预设计通过的学生进入实验室,按预设计方案进行程序的编写、调试及测试,并记录结果。5.答辩:指导教师对每位同学设计的成果进行验收,并提出问题,根据学生回答情况给出相应的成绩。6.答辩通过的同学撰写Network+课程设计报告。7.结合每位学生的工作态度、实验成果、答辩情况及设计报告等,评定综合成绩。四、设计课题基于计算机科学与技术专业实际情况,规划设计适应当前发展,经济可靠的校园网,并在实验条件允许的情况下模拟实现其中的核心组建技术。(一)课题综述本课程设计可选的项目名称及内容要求如下(难易程度相当的情况下,学生可根据个人兴趣自拟课题设计内容):1.Winsock聊天程序的设计与实现基本要求:在Windows环境下,自选开发工具编写程序,进行调试,设计并实现一个简单的聊天程序,并进行测试。界面要求使用方便、简洁直观,功能要求:有客户端和服务端,双方可以一对一通信,及一对多通信,类似于Windows自带的NetMeeting聊天功能。提高要求:在Windows环境下,自选开发工具编写程序,进行调试,设计并实现一个使用TCP协议的聊天室,同时支持多个用户的在线聊天,并进行测试。基本目的:使得学生掌握套接字、TCP协议等相关知识,并进一步锻炼学生的网络软件编程能力和解决实际问题的能力。2.Ping程序的设计与实现基本要求:在Windows环境下,自选开发工具编写程序,进行调试,设计并实现Windows下Ping命令,设计并实现测试网络中一个主机连通性的程序。3基本目的:使得学生掌握ping命令、TCP/IP协议等相关知识,并进一步锻炼学生的网络软件编程能力和解决实际问题的能力。3.FTP的客户端的设计与实现基本要求:在Windows环境下,自选开发工具编写程序,进行调试,设计并实现一个基于FTP协议的客户端程序,并进行测试。根据指定的FTP服务器地址以及用户名、密码,能够从该服务器上下载选定的文件。客户端程序能够管理服务器列表,并能够获得服务器上的文件,也可以上传本地文件到服务器上。提高要求:设计一个FTP的服务器程序,该程序能够管理登陆客户端列表,处理每个客户端发来的请求、上传或下载。基本目的:使得学生掌握FTP协议等相关知识,并进一步锻炼学生的网络软件编程能力和解决实际问题的能力。4.文件传输协议的设计与实现基本要求:在Windows环境下,自选开发工具编写程序,进行调试,利用Windows环境中套接字socket的编程接口功能,设计并实现一个简单的应用层文件传输协议,并进行测试。基本目的:使得学生掌握传输协议等相关知识及TCP/IP网络应用程序基本的设计方法和实现技巧,加深对客户/服务器的工作模式的认识,并进一步锻炼学生的网络软件编程能力和解决实际问题的能力。5.邮件收发系统的设计与实现基本要求:在Windows环境下,自选开发工具编写程序,进行调试,设计并实现邮件收发功能,并进行测试。基本目的:使得学生掌握邮件收发相关协议知识及TCP/IP网络应用程序基本的设计方法和实现技巧,加深对客户/服务器的工作模式的认识,并进一步锻炼学生的网络软件编程能力和解决实际问题的能力。6.简单Web服务器的设计与实现基本要求:在Windows环境下,自选开发工具编写程序,进行调试,利用套接字设计并实现一个简单的Web服务器,并进行测试。基本目的:使得学生掌握HTTP协议的相关知识,加深对客户/服务器的工作模式的认识,并进一步锻炼学生的网络软件编程能力和解决实际问题的能力。7.路由器算法的设计与实现基本要求:在Windows环境下,自选开发工具编写程序,进行调试,利用套接字设计并实现一个模拟路由器工作的系统,能够采用不同的路由算法实现路由功能并进行测试。基本目的:使得学生掌握HTTP协议的相关知识,加深对客户/服务器的工作模式的认识,并进一步锻炼学生的网络软件编程能力和解决实际问题的能力。8.HTTP客户端的设计与实现4基本要求:在Windows环境下,自选开发工具编写程序,进行调试,设计并实现一个简单的HTTP客户端程序,并进行测试。基本目的:使得学生掌握HTTP协议的相关知识,加深对客户/服务器的工作模式的认识,并进一步锻炼学生的网络软件编程能力和解决实际问题的能力。9.数据包监控系统的设计与实现基本要求:在Windows环境下,自选开发工具编写程序,进行调试,运用操作系统提供的数据链路层抓包原理与机制,设计并实现一个可以捕捉数据包,并能对数据包进行分析的应用程序,并进行测试。基本目的:使得学生掌握链路层相关协议的相关知识,并进一步锻炼学生的网络软件编程能力和解决实际问题的能力。10.Echo程序的设计与实现基本要求:在Windows环境下,自选开发工具编写程序,进行调试,设计并实现一个Echo程序(包括客户端与服务器端),并进行测试:客户端向服务器端发送一个字符串,服务器端不做任何处理直接把其返回给客户端,并在客户端显示。基本目的:使得学生掌握Echo机制的相关知识,并进一步锻炼学生的网络软件编程能力和解决实际问题的能力。11.支持内容过滤的HTTP代理的设计与实现基本要求:在Windows环境下,自选开发工具编写程序,进行调试,设计并实现一个支持包括简单内容过滤在内等基本功能的HTTP代理服务器软件,并进行测试。内容过滤:如果用户访问的网页包含一些特殊的关键字,则HTTP代理把该网页内容丢弃,并给用户发送一个网页,指明该网络被禁止访问。网站过滤:如果用户访问某些不恰当的网站,则HTTP代理发给用户一个网页,指明该网站被进制访问。基本目的:使得学生掌握基于HTTP协议的代理服务器相关知识,并进一步锻炼学生的网络软件编程能力和解决实际问题的能力。(二)参考书目[1]谢希仁.《计算机网络》(第4版),大连理工大学出版社,2004[2]AndrewS.Tanenbaum著,潘爱