《专业计算机网络课程设计任务与要求.doc》由会员分享,可在线阅读,更多相关《专业计算机网络课程设计任务与要求.doc(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、2014春计算机网络课程设计任务与要求一、课程目标深入理解计算机网络基本原理,将书本上抽象的概念与具体的实现技术相结合,体会网络协议的设计与实现过程,以及专业技术人员所使用的基本方法和技巧;熟悉相关应用开发工具,掌握网络协议应用开发技术;进一步熟悉网络设备,学习组网技术,掌握网络规划与设计的基本方法;培养一定的自学能力和独立分析问题、解决问题的能力;对设计中遇到的问题,能通过独立思考、查阅资料、参考文献,寻求解决方案。二、设计题目说明设计题目设置上,采取了分类、分级的形式。分5个类别,分别是:网络协议或算法、网络服务、组网设计、网络应用编程、理论与应用研究。分3个级别,从高至低分别是A、B、C
2、。题目的级别综合依据创新性、综合性、实用性、难度等因素,不同级别,成绩起评分数有别。A级题目(良-优):较难;综合性强、有明显或突出的创新、探究性较强、实际课题或项目的一部分(实用性);工作量非常饱满;富有建设性;有很强的分析问题与解决问题的能力。B级题目(中-良):难度适中;工作内容侧重于设计或研究或较高水平应用;有一定综合性、有一定创新、有一定实用性;工作量饱满;有较强的分析问题与解决问题的能力。C级题目(及格-中):难度不大或偏小;工作内容侧重于验证或学习或简单应用;基本上无创新;工作量不大;有一定的分析问题与解决问题的能力。三、任务完成形式(1)交付课程设计说明书(纸质+电子版)(2)
3、通过现场验收或答辩(3)交付完整的设计作品(或能体现自己工作的视频课件)、工作量、掌握程度:有效代码行数:600行以上对于第一、四类题目,必须交付设计作品,设计作品指的是完整的源程序代码、相关数据文件;对于第三类题目,必须交付设计作品,设计作品指的是网络拓扑文件、网络仿真配置文件;对于第二、五类题目,必须交付能体现自己工作的视频课件,要求有一定的文字或声音解说。课程设计说明书(纸质+电子版),对于对于第一、四类题目,内容包括:设计任务、系统分析、总体设计、详细设计(相应地给出关键的代码)、设计总结(评价/遇到的问题/体会/建议等)、使用说明等。四、工作计划与进度安排根据所选题目,合理安排进度计
4、划,总体上需要50个小时以上(不包含查资料时间)。以下仅供参考:1. 原理知识 8小时以上 2. 实用技术(编程、或组网、服务器技术) 8小时以上3. 环境与工具(系统平台、开发或仿真工具) 4小时以上4. 总体设计、关键环节的详细设计 10小时5. 系统实现(编码与调试、或配置与测试) 12小时6. 课程设计说明书 8小时五、成绩评定总评成绩=平时成绩x20+验收或答辩成绩x50+报告成绩x30六、设计题目及选题以班为单位组织选题,每人限选一题,每题限一人(除特别声明外);可自拟题目,需申报待批,自拟题目不能与已有的题目重复。 题目分五类、三个级别,根据个人的兴趣及基础自行选择。自拟题目要求
5、:(1) 主要内容须与本课程相关(属于上述五种题目类型中某类);(2) 原则上仅限A、B级(3) 在课程设计正式开始前(至少提前三天),提交“课程设计自拟题目”申请报告,等待指导老师审批,申请报告内容分以下几部分,注意内容一定要具体,否则不予批准: 题目、类别、级别、申请人学号/姓名/专业、设计任务/内容、选题背景、相关的原理/技术/方法、系统平台与开发工具(语言)、可能的创新或特色之处、工作计划、参考文献。 第一类题目: 网络协议、算法要求:(1)推荐采用图形界面实现。(2)程序代码书写规范,有充足的注释。(3)绿色软件:程序运行不需安装,避免写系统和注册表;(4)开发平台、开发语言不限。
6、(5) 明确题目的意图,设计上应有足够的工作量1. 网络协议解析(基于文件)(1)使用报文分析工具软件,捕获报文并进行存储,获得报文数据文件。(2)编程,在图形界面下,对报文的协议进行解码(3)对ethernet_II、ip、tcp、udp协议进行解码【C】(4)对ieee802.3、icmp协议进行解码【B】(5)对ftp协议进行解码【A】2. 网络协议解析(基于Raw Socket)(1)编程,基于socket API接口,使用raw socket捕获网络报文,过滤得到指定格式的报文(2)编程,在图形界面下,对报文的协议进行解码(3)对ethernet_II、ip、tcp、udp协议进行解
7、码【C】(4)对ieee802.3、arp协议进行解码【B】(5)对http协议进行解码【A】3. 网络协议解析(基于Winpcap接口)(1)编程,基于winpcap接口,捕获网络报文,过滤得到指定格式的报文(2)编程,在图形界面下,对报文的协议进行解码(3)对ethernet_II、ip、tcp、udp协议进行解码【C】(4)对IPV6、ICMPV6协议进行简单的解码【B】(5)对除ftp、http外的某种应用层协议进行解码【A】4. 模拟共享网络中Ethernet帧的发送过程使用至少2个线程模拟Ethernet上主机的数据发送流程。发送流程必须遵循CSMA/CD协议【C】。5. 发送和解
8、析Ethernet ARP包熟悉ARP协议并了解Winpcap编程,构造ARP包;先在主机A,ARP包发送出给主机B。再在主机B上解析此ARP包。【C】6. 模拟TCP协议通信过程 编程,基于图形界面,仿真两个对等的tcp通信实体,完成一次文件(数据较长)传输的通信过程。要求具有如下的交互能力:(1) 数据文件的长度的设置(2) 双方发送、接收窗口大小的设置(3) 报文丢失、出错、重复、顺序的人为设置(可定义有关策略(4) 发送、或接收能力的设置(假设一方主机很忙)(5) 设置可采取预先设置、也可中途设置(6) 可自动演示、可单步操作(7) 每一步报文都可给出tcp头部数据,并进行说明【B】(
9、8) 给出时间轴,以起始时间为0,适当考虑网络发送、接收处理及传输延迟,给出每个报文发送与接收时间7. RIP路由仿真配置与测试程序设计以图形化界面形式,对多个路由器组成的网络,实现RIP路由仿真配置与测试。路由学习建议采用多线程方式实现。【A】8. FTP客户端设计(基于winsock接口)实现的ftp客户端,能列出/更改目录,上下传文件,显示文件列表等选项。【A】9. HTTP客户端的设计与实现(基于winsock接口)开发一HTTP客户端,使其能够向web服务器请求文件、和向服务器提交数据,以便服务器做出相应的处理。【A】10. 电子邮件客户端的设计与实现(基于winsock接口)完成一
10、个电子邮件客户端软件,要求能够收取邮件、发送邮件、书写新邮件、具有图形化界面。能批量发送邮件。【A】11. 软件路由器的设计与实现(基于Winpcap接口)(1)编程实现一个简易的路由器(具有路由功能)(2)具有图形化界面、显示所有的过路、已路由、已丢弃报文(3)对ethernet_ii、简单的ip、tcp、udp协议进行解码(4)支持静态路由的配置【B】(5)可以人为地对可路由报文进行延迟发送、删除、修改、改变发送顺序等操作【A】12. 利用RTP协议完成多媒体数据流传输(1)消化理解实时传输协议RTP及其源代码(可以从网上下载)(2)分别编写个服务器、客户端程序,使用RTP协议来实时传输视
11、频数据或音频数据【A】13. 自定义应用层协议的设计与实现(基于UDP) 协议名称:myqq 协议功能:实现简单的聊天系统功能(1) 注册(2) 登入与注销(3) 获取在线用户表(4) 对指定用户发送聊天报文(5) 群发聊天报文【A】14. TCP通信仿真课件设计设计一个课件程序,采用图形化设计,主要功能:(1) 能读取wireshark或sniffer工具所捕获的数据文件(2) 能以直观形式表达TCP连接的建立、释放过程(3) 能以直观形式表达报文序号变化、应答机制【B】(4) 能以直观形式仿真报文的丢失与重传(5) *能以直观形式表达流量控制【A】15. 扩展UDP实现SR可靠数据传输(1
12、)熟悉流水线可靠数据传输机制(GBN);(2)熟悉TCP/UDP协议规范;(3)基于UDP的SR(选择重传)可靠数据传输机制分析与设计(4)UDP Socket程序设计(5)利用UDP实现可靠数据传输服务的验证系统设计与实现【A】16. TRACERT图形化工具 (1)另写一个程序,取代Windows 下的Tracert命令,并以图形界面显示输出结果。(2)能解析主机的域名(将域名解析成对应的IP)(3)支持对物理网络的跟踪【B】(4)支持逻辑网络的定义、及对逻辑网络的跟踪【A】17. OSPF实现熟悉OSPF协议,寻求指定有向图的最短路径。要求用图形显示求解过程。【A】第二类题目: 网络服务
13、要求:(1)在虚拟机环境下搭建操作系统平台,虚拟机网卡与物理网络进行桥接(2)网络操作系统类型为linux、ubuntu或windows server 2003/2008(3)学习相关服务器理论知识和配置、应用方法(4)合理规划所要求提供的服务 (5) 完成相关的配置,并进行相应的应用测试(6)对所遇到的问题进行分析和解决,(7)应有足够的工作量1. 某单位网络应用服务器的搭建与测试(一)(基于linux或ubuntu平台) (1)网络操作系统安装(在虚拟机环境下) (2)DNS、DHCP服务器 (3)邮件服务器 (4)FTP服务器 (5)WEB服务器 (6)TELNET服务、NFS服务2.
14、某单位网络应用服务器的搭建与测试(二)(基于linux或ubuntu平台) (1)网络操作系统安装(在虚拟机环境下) (2)防火墙服务 (3)SSH服务器 (4)VNC服务器 (5)VPN服务 *(6)P2P服务器3. 某单位网络应用服务器的搭建与测试(一)(基于windows server 2003/2008平台) (1)网络操作系统安装(在虚拟机环境下) (2)AD、DNS、DHCP服务 (3)Exchange邮件服务 *(4)ISA服务 (5)VPN远程访问 (6)、远程管理4. Windows服务器集群的部署与测试 (基于Vmware)(1)网络操作系统安装(在虚拟机环境下)(2)Wi
15、ndows服务器集群的部署(3)集群的应用测试第四类题目: 网络应用编程要求:(1)推荐采用图形界面实现。(2)程序代码书写规范,有充足的注释。(3)绿色软件:程序运行不需安装,避免写系统和注册表;(4)开发平台、开发语言不限。 (5) 明确题目的意图,设计上应有足够的工作量1. LAN小助手编程实现以下功能:(1)发送ICMP数据包,以获取指定IP网段中的活动主机,并将结果显示在标准输出设备或输出到文件中。(2)显示这些主机的的IP地址与对应的MAC地址的关系表(3)能显示本地机所有可用的网络接口与对应的ip地址(4)能修改本地机指定网络接口的ip地址 (5) 能解析主机的域名(将域名解析成
16、对应的IP)2. 网络流量统计(基于raw socket)监控网络,捕获一段时间内网络上的IP数据包,按IP数据包的源地址统计出该源地址在该时间段内发出的IP数据包的个数,并将其用图形表示出来。3. 网络流量统计(基于Winpcap接口)监控网络,捕获一段时间内网络上的IP数据包,按IP数据包的源地址统计出该源地址在该时间段内发出的IP数据包的个数,并将其用图形表示出来。4. 包过滤防火墙的设计与实现(基于Winsock SPI接口)要求实现一个简单的包过滤防火墙,能够根据 IP 地址范围阻塞或允许客户机对 FTP 服务的访问。5. 包过滤防火墙的设计与实现(基于linux/Ubuntu)要求
17、实现一个简单的包过滤防火墙,能够根据 IP 地址范围阻塞或允许客户机对 FTP 服务的访问。6. 简易HTTP代理服务器的设计与实现代理服务器使用侦听socket在指定的端口上侦听web访问请求,对于客户端每次访问都自动创建一个线程,解析客户端Host头域里面的值,获取目标web服务器地址,并使用socket进行连接,以“中继”方式,转发 双方的http包。7. 基于UDP协议网上聊天程序实现一简单的聊天程序实现网上聊天,包括服务器和客户端。要求:(1)支持多人聊天。(2)客户端具有图形化用户界面。8. 基于TCP协议网上聊天程序实现一简单的聊天程序实现网上聊天,包括服务器和客户端。要求:(1
18、)支持多人聊天。(2)客户端具有图形化用户界面。9. FTP服务器设计实现一FTP服务器,能列出/更改目录,上下传文件,显示文件列表,支持NOOP/PASV/BIN等选项。10. FTP客户端设计(基于与FTP协议相关的类)实现的ftp客户端,能列出/更改目录,上下传文件,显示文件列表等选项。11. 简单的端口扫描器(1人)实现一个端口扫描程序,判断指定的主机有哪些端口可以提供服务, 并把扫描得知的结果记录下来。12. 简单Web服务器的设计与实现(1人)完成一个简单的Web服务器,要求能够通过HTTP Get命令获得一个简单的HTML文件。(可以带图片。)13. HTTP客户端的设计与实现(
19、基于与HTTP协议相关的类)开发一HTTP客户端,使其能够向web服务器请求文件、和向服务器提交数据,以便服务器做出相应的处理。14. 简单电子邮件客户端的设计与实现(基于与邮件协议相关的类)完成一个电子邮件客户端软件,要求能够收取邮件、发送邮件、书写新邮件、具有图形化界面。提示:可选用基于JavaMail网络包实现。15. P2P文件传输平台的设计与实现分别设计一个服务器、客户端程序,客户端使用 p2p协议从“服务器端”进行文件下载。16综合扫描器程序的实现(1)ARP扫描实现(2)ICMP扫描实现(3)TCP扫描实现(4)UDP扫描实现17. 利用组播实现网络屏幕广播(1)通过socket
20、接口,引用UDP协议,设置成组播通信方式(2)分别设计教师机端程序、学生机端程序,(3)教师机端程序将本机屏幕画面,定时地以多播方式传给学生机端程序显示18. 本地网络信息设置与网络对时程序设计主要功能如下:(1)本地网络信息的获取计算机名称、IP地址、网卡地址、DNS设置、安装的协议、提供的服务、TCP/IP运行信息。(2)修改本地计算机的网络设置(3)采用ntp协议从internet上某个时间服务器,获取时间信息,准确地更新本地机时钟,支持手动、定时自动两种方式19. 基于IPV6的文件传输程序设计 程序分文件发送端、文件接收端两部分。功能是发送端能向接收端传输文件。通信双方采用ipv6地
21、址,在传输层上采用 TCP协议传数据。20. 基于多播的文件传输程序设计 程序分文件发送端、文件接收端两部分。功能是文件发送端能同时向n个接收端传输文件。要求采用UDP协议并以多播(组播)方式实现通信。21基于多线程的文件传输程序设计 程序分服务器端、客户端两部分。功能是服务器端能同时响应n个客户端的tcp连接请求,提供指定文件下载。服务器端要求采用多线程编程技术。22. 点对点语音聊天程序设计程序主要由语音采集、语音发送、语音接收、语音播放四个部分组成。通信协议采用UDP;图形化界面;语音采集与播放采用windows API(ACM)接口。23. 网络对弈程序设计 运用tcp协议设计一个五子
22、棋联机对弈程序,采用图形化方式设计。24. 网络U盘(2人)(1)实现远程主机上管理自己的文件:如创建、打开、复制、删除文件或目录以及远程文件上传、下载;(2)程序包括客户端和服务器端两部分:客户端使用图形用户界面发出各种管理命令;接收服务器返回的操作结果。服务器为每个用户建立一个目录(网络U盘),服务器维护用户对目录操作权限的列表,负责验证用户对文件的操作权限;接收和执行授权用户的命令并返回操作结果;(3)用户界面:服务器端界面显示用户登录及认证信息和操作日志;客户端界面可以设置远程主机名;显示远程文件列表;操作命令可以采用菜单、按钮及弹出菜单来实现。要求界面布局合理、简洁美观。(4)运用S
23、ocket 技术,使用TCP协议25. 机房网络试题发放与回收软件设计(2人)软件的结构是C/S模式(1)分别设计教师机端、学生端程序(2)学生端程序主要功能是:运行后可以登录到教师端程序(考试系统)、自动打开试题文档、提示考试相关信息、自动锁定键盘(考试计时结束)(3)教师端程序主要功能是: 导入考生名单、核对登录者身份、向学生端发放试题文件(自动或手动)、启动考试计时、自动回收答题文件、自动清除学生端主机指定位置文件26. 网络投票系统设计服务器端:能编辑候选人名单、能发布投票的结果、能接收投票、能设置投票的起止时间 、能记录每个投票者得名字、主机的ip、主机的cpu id、投票的时间、能
24、制定和实施合理的投票规则。客户端:能查看候选人名单、投票的结果、能投票七、参考教材1 Andrew S.Tanenbaum、David J.Wetherall. 计算机网络(英文版第5版). 机械工业出版社2谢希仁. 计算机网络(第5版). 电子工业出版社3吴功宜. 计算机网络课程设计(第2版). 机械工业出版社 /C语言编程4 王勇. 计算机网络课程设计(计算机课程设计与综合实践规划教材). 清华大学出版社 /Java编程5 叶树华. 网络编程实用教程(第2版). 人民邮电出版社.2010 /适合初学者6 王艳平. Windows网络与通信程序设计(第二版). 人民邮电出版社 /适合高手7 金华. C#网络编程技术教程(21世纪高等院校网络工程规划教材). 人民邮电出版社8 思科网络技术学院CCNA Exploration4.0LAN交换和无线9 思科网络技术学院CCNA Exploration4.0路由协议和概念10 恒逸资讯, 吕政周. Windows Server 2008系统管理员实用全书. 电子工业出版社11 冷罡华. Ubuntu Server最佳方案. 电子工业出版社八、上机与验收安排1、上机指导时间:第1周第2周2、验收时间:第3周周六上午3、上机指导与验收地点:5404 4、指导老师联系方式: