文档库 最新最全的文档下载
当前位置:文档库 › 计算机网络课程设计任务与要求

计算机网络课程设计任务与要求

计算机网络课程设计任务与要求

一、课程目标

深入理解计算机网络基本原理,将书本上抽象的概念与具体的实现技术相结合,体会网络协议的设计与实现过程,以及专业技术人员所使用的基本方法和技巧;熟悉相关应用开发工具,掌握网络协议应用开发技术;进一步熟悉网络设备,学习组网技术,掌握网络规划与设计的基本方法;培养一定的自学能力和独立分析问题、解决问题的能力;对设计中遇到的问题,能通过独立思考、查阅资料、参考文献,寻求解决方案。

二、设计题目说明

设计题目设置上,采取了分类、分级的形式。

分5个类别,分别是:网络协议或算法、网络服务、组网设计、网络应用编程、理论与应用研究。

分3个级别,从高至低分别是A、B、C。题目的级别综合依据创新性、综合性、实用性、难度等因素,不同级别,成绩起评分数有别。

A级题目(良-优):较难;综合性强、有明显或突出的创新、探究性较强、实际课题或项目的一部分(实用性);工作量非常饱满;富有建设性;有很强的分析问题与解决问题的能力。

B级题目(中-良):难度适中;工作内容侧重于设计或研究或较高水平应用;有一定综合性、有一定创新、有一定实用性;工作量饱满;有较强的分析问题与解决问题的能力。

C级题目(及格-中):难度不大或偏小;工作内容侧重于验证或学习或简单应用;基本上无创新;

工作量不大;有一定的分析问题与解决问题的能力。

三、任务完成形式

(1)交付课程设计说明书(纸质+电子版)

(2)通过现场验收或答辩

对于第一、四类题目,必须交付设计作品,设计作品指的是完整的源程序代码、相关数据文件;

对于第三类题目,必须交付设计作品,设计作品指的是网络拓扑文件、网络仿真配置文件;

对于第二、五类题目,必须交付能体现自己工作的视频课件,要求有一定的文字或声音解说。

课程设计说明书(纸质+电子版),对于对于第一、四类题目,内容包括:设计任务、系统分析、总体设计、详细设计(相应地给出关键的代码)、设计总结(评价/遇到的问题/体会/建议等)、使用说明等。

四、工作计划与进度安排

根据所选题目,合理安排进度计划(不包含查资料时间)。

以下仅供参考:

1. 原理知识

2. 实用技术(编程、或组网、服务器技术)

3. 环境与工具(系统平台、开发或仿真工具)

4. 总体设计、关键环节的详细设计

5. 系统实现(编码与调试、或配置与测试)

6. 课程设计说明书

五、成绩评定

总评成绩=平时成绩x20﹪+验收或答辩成绩x50﹪+报告成绩x30﹪

六、设计题目及选题

以班为单位组织选题,每人限选一题,每题限一人(除特别声明外);可自拟题目,需申报待批,自拟题目不能与已有的题目重复。题目分五类、三个级别,根据个人的兴趣及基础自行选择。

自拟题目要求:

(1)主要内容须与本课程相关(属于上述五种题目类型中某类);

(2)原则上仅限A、B级

(3)在课程设计正式开始前(至少提前三天),提交“课程设计自拟题目”申请报告,等待指导老师审批,申请报告内容分以下几部分,注意内容一定要具体,否则不予批准:

题目、类别、级别、申请人学号/姓名/专业、设计任务/内容、选题背景、相关的原理/技术/方法、系统平台与开发工具(语言)、可能的创新或特色之处、工作计划、参考文献。

第一类题目:网络协议、算法

要求:

(1)推荐采用图形界面实现。

(2)程序代码书写规范,有充足的注释。

(3)绿色软件:程序运行不需安装,避免写系统和注册表;

(4)开发平台、开发语言不限。

(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协议进行解码【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. 发送和解析Ethernet ARP包

熟悉ARP协议并了解Winpcap编程,构造ARP包;先在主机A,ARP包发送出给主机B。再在主机B上解析此ARP包。【C】

6. 模拟TCP协议通信过程

编程,基于图形界面,仿真两个对等的tcp通信实体,完成一次文件(数据较长)传输的通信过程。

要求具有如下的交互能力:

(1)数据文件的长度的设置

(2)双方发送、接收窗口大小的设置

(3)报文丢失、出错、重复、顺序的人为设置(可定义有关策略

(4)发送、或接收能力的设置(假设一方主机很忙)

(5)设置可采取预先设置、也可中途设置

(6)可自动演示、可单步操作

(7)每一步报文都可给出tcp头部数据,并进行说明【B】

(8)给出时间轴,以起始时间为0,适当考虑网络发送、接收处理及传输延迟,给出每个报文发送与

接收时间

7. RIP路由仿真配置与测试程序设计

以图形化界面形式,对多个路由器组成的网络,实现RIP路由仿真配置与测试。

路由学习建议采用多线程方式实现。【A】

8. FTP客户端设计(基于winsock接口)

实现的ftp客户端,能列出/更改目录,上下传文件,显示文件列表等选项。【A】

9. HTTP客户端的设计与实现(基于winsock接口)

开发一HTTP客户端,使其能够向web服务器请求文件、和向服务器提交数据,以便服务器做出相应的处理。【A】

10. 电子邮件客户端的设计与实现(基于winsock接口)

完成一个电子邮件客户端软件,要求能够收取邮件、发送邮件、书写新邮件、具有图形化界面。

能批量发送邮件。【A】

11. 软件路由器的设计与实现(基于Winpcap接口)

(1)编程实现一个简易的路由器(具有路由功能)

(2)具有图形化界面、显示所有的过路、已路由、已丢弃报文

(3)对ethernet_ii、简单的ip、tcp、udp协议进行解码

(4)支持静态路由的配置【B】

(5)可以人为地对可路由报文进行延迟发送、删除、修改、改变发送顺序等操作【A】

12. 利用RTP协议完成多媒体数据流传输

(1)消化理解实时传输协议RTP及其源代码(可以从网上下载)

(2)分别编写个服务器、客户端程序,使用RTP协议来实时传输视频数据或音频数据【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)熟悉流水线可靠数据传输机制(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】

要求:

(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. 某单位网络应用服务器的搭建与测试(二)(基于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)Windows服务器集群的部署

(3)集群的应用测试

(以方案设计为主,以网络仿真为辅,仿真部分需要验收)

要求:

(1)论文论述详尽,主要内容有:

设计任务、需求分析、总体设计方案与拓扑图、设备选型、关键设计、仿真配置与测试、结论。(3)对方案中关键设计,尽可能用仿真软件进行仿真配置与测试。

组网仿真软件建议采用packet tracer(只能仿真cisco的部分中低端网络设备),

当然为了能在该软件中进行仿真,对原方案中的设计进行必要的简化、设备作必要的变通是必然的。(4)题目中的“某”,必须为具体的单位名称(最好为自己所熟悉的)

(5)没有特别说明时,目标网络规模为中等规模的园区网络(信息节点数为500个到5000个之间)(6)没有特别说明时,VLAN技术、RIP或OSPF动态路由技术必须运用到设计中

(7)没有特别说明时,支持internet接入

1. 某校园网组网路由方案设计(基于Packet Tracer)

某大学网络有20000余信息节点,分办公、教学、学生宿舍、家属四个区,

请结合实际分析其需求,重新对其网络进行规划设计:

(1)技术选型、总体设计

(2)设备选型

(3)详细的拓扑设计

(4)详细的IP规划(从网段到节点)

(5)给出合理的路由方案、含internet出口与教育网出口路由

(6)实现仿真配置与测试

(7)支持远程用户访问

2. 某校园网内网VLAN方案设计(基于Packet Tracer)

某大学网络有20000余信息节点,分办公、教学、学生宿舍、家属四个区,

请结合实际分析其需求,重新对其网络进行规划设计,不考虑与外网的互联:

(1)技术选型、总体设计

(2)设备选型

(3)详细的拓扑设计

(4)IP规划、VLAN设计、

(5)VLAN路由设计

(6)实现仿真配置与测试

3. 某校园网的扩容方案及实施(基于Packet Tracer)

对某校已有的校园网,根据新校区的建立和更多的要求对其进行扩容方案的设计与实施。

4. 某单位(企业、医院、社区、学生公寓、学校、酒店)网络规划与设计(基于Packet Tracer)

对某单位的网络进行需求分析,完成下列设计任务:

(1)给出技术选型、总体设计

(2)给出设备选型

(3)给出详细的拓扑设计

(4)给出VLAN设计、ip规划

(5)给出路由设计

(6)实现仿真配置与测试

5. 园区网络的路由设计(基于gns3环境)

6. 园区网络的防火墙设计(基于gns3环境)

7. 基于H3C网络设备的园区网络设计

8. 园区网络的路由冗余与链路聚合设计(基于gns3环境)

第四类题目:网络应用编程

要求:

(1)推荐采用图形界面实现。

(2)程序代码书写规范,有充足的注释。

(3)绿色软件:程序运行不需安装,避免写系统和注册表;

(4)开发平台、开发语言不限。

(5) 明确题目的意图,设计上应有足够的工作量

1. LAN小助手

编程实现以下功能:

(1)发送ICMP数据包,以获取指定IP网段中的活动主机,并将结果显示在标准输出设备或输出到文件中。

(2)显示这些主机的的IP地址与对应的MAC地址的关系表

(3)能显示本地机所有可用的网络接口与对应的ip地址

(4)能修改本地机指定网络接口的ip地址

(5) 能解析主机的域名(将域名解析成对应的IP)

2. 网络流量统计(基于raw socket)

监控网络,捕获一段时间内网络上的IP数据包,按IP数据包的源地址统计出该源地址在该时间段内发出的IP数据包的个数,并将其用图形表示出来。

3. 网络流量统计(基于Winpcap接口)

监控网络,捕获一段时间内网络上的IP数据包,按IP数据包的源地址统计出该源地址在该时间段内发出的IP数据包的个数,并将其用图形表示出来。

4. 包过滤防火墙的设计与实现(基于Winsock SPI接口)

要求实现一个简单的包过滤防火墙,能够根据IP 地址范围阻塞或允许客户机对FTP 服务的访问。

5. 包过滤防火墙的设计与实现(基于linux/Ubuntu)

要求实现一个简单的包过滤防火墙,能够根据IP 地址范围阻塞或允许客户机对FTP 服务的访问。

6. 简易HTTP代理服务器的设计与实现

代理服务器使用侦听socket在指定的端口上侦听web访问请求,对于客户端每次访问都自动创建一个线程,解析客户端Host头域里面的值,获取目标web服务器地址,并使用socket进行连接,以“中继”方式,转发双方的http包。

7. 基于UDP协议网上聊天程序

实现一简单的聊天程序实现网上聊天,包括服务器和客户端。要求:

(1)支持多人聊天。

(2)客户端具有图形化用户界面。

8. 基于TCP协议网上聊天程序

实现一简单的聊天程序实现网上聊天,包括服务器和客户端。要求:

(1)支持多人聊天。

(2)客户端具有图形化用户界面。

9. FTP服务器设计

实现一FTP服务器,能列出/更改目录,上下传文件,显示文件列表,支持NOOP/PASV/BIN等选项。

10. FTP客户端设计(基于与FTP协议相关的类)

实现的ftp客户端,能列出/更改目录,上下传文件,显示文件列表等选项。

11. 简单的端口扫描器(1人)

实现一个端口扫描程序,判断指定的主机有哪些端口可以提供服务, 并把扫描得知的结果记录下来。

12. 简单Web服务器的设计与实现(1人)

完成一个简单的Web服务器,要求能够通过HTTP Get命令获得一个简单的HTML文件。(可以带图片。)

13. HTTP客户端的设计与实现(基于与HTTP协议相关的类)

开发一HTTP客户端,使其能够向web服务器请求文件、和向服务器提交数据,以便服务器做出相应的处理。

14. 简单电子邮件客户端的设计与实现(基于与邮件协议相关的类)

完成一个电子邮件客户端软件,要求能够收取邮件、发送邮件、书写新邮件、具有图形化界面。提示:可选用基于JavaMail网络包实现。

15. P2P文件传输平台的设计与实现

分别设计一个服务器、客户端程序,客户端使用p2p协议从“服务器端”进行文件下载。

16.综合扫描器程序的实现

(1)ARP扫描实现

(2)ICMP扫描实现

(3)TCP扫描实现

(4)UDP扫描实现

17. 利用组播实现网络屏幕广播

(1)通过socket接口,引用UDP协议,设置成组播通信方式

(2)分别设计教师机端程序、学生机端程序,

(3)教师机端程序将本机屏幕画面,定时地以多播方式传给学生机端程序显示

18. 本地网络信息设置与网络对时程序设计

主要功能如下:

(1)本地网络信息的获取

计算机名称、IP地址、网卡地址、DNS设置、安装的协议、提供的服务、TCP/IP运行信息。

(2)修改本地计算机的网络设置

(3)采用ntp协议从internet上某个时间服务器,获取时间信息,准确地更新本地机时钟,支持手动、定时自动两种方式

19. 基于IPV6的文件传输程序设计

程序分文件发送端、文件接收端两部分。功能是发送端能向接收端传输文件。通信双方采用ipv6地址,在传输层上采用TCP协议传数据。

20. 基于多播的文件传输程序设计

程序分文件发送端、文件接收端两部分。功能是文件发送端能同时向n个接收端传输文件。要求采用UDP协议并以多播(组播)方式实现通信。

21.基于多线程的文件传输程序设计

程序分服务器端、客户端两部分。功能是服务器端能同时响应n个客户端的tcp连接请求,提供指定文件下载。服务器端要求采用多线程编程技术。

22. 点对点语音聊天程序设计

程序主要由语音采集、语音发送、语音接收、语音播放四个部分组成。

通信协议采用UDP;图形化界面;语音采集与播放采用windows API(ACM)接口。

23. 网络对弈程序设计

运用tcp协议设计一个五子棋联机对弈程序,采用图形化方式设计。

24. 网络U盘(2人)

(1)实现远程主机上管理自己的文件:如创建、打开、复制、删除文件或目录以及远程文件上传、下载;

(2)程序包括客户端和服务器端两部分:

客户端使用图形用户界面发出各种管理命令;接收服务器返回的操作结果。

服务器为每个用户建立一个目录(网络U盘),服务器维护用户对目录操作权限的列表,负责验证用户对文件的操作权限;接收和执行授权用户的命令并返回操作结果;

(3)用户界面:服务器端界面显示用户登录及认证信息和操作日志;客户端界面可以设置远程主机名;显示远程文件列表;操作命令可以采用菜单、按钮及弹出菜单来实现。要求界面布局合理、简洁美观。

(4)运用Socket 技术,使用TCP协议

25. 机房网络试题发放与回收软件设计(2人)

软件的结构是C/S模式

(1)分别设计教师机端、学生端程序

(2)学生端程序主要功能是:

运行后可以登录到教师端程序(考试系统)、

自动打开试题文档、提示考试相关信息、自动锁定键盘(考试计时结束)

(3)教师端程序主要功能是:

导入考生名单、核对登录者身份、向学生端发放试题文件(自动或手动)、启动考试计时、自动回收答题文件、自动清除学生端主机指定位置文件

26. 网络投票系统设计

服务器端:能编辑候选人名单、能发布投票的结果、能接收投票、能设置投票的起止时间、能记录每个投票者得名字、主机的ip、主机的cpu id、投票的时间、能制定和实施合理的投票规则。

客户端:能查看候选人名单、投票的结果、能投票

第五类题目:理论与应用研究

要求:

(1)内容涉及本课程相关领域的前沿、有良好的应用前景。

(2)目前已经实用化或初步实用化

(3)对普通学习者技术门槛还比较高、但很有应用、借鉴价值

(4)系统学习相关的理论知识和应用技术,与具体应用结合起来

(5)综合运用所学的知识,运用恰当的方法、手段或工具,对某些实际问题进行分析、实践,并给出自己的见解或结论。

(6)有足够的工作量

例:

1. Windows与Linux系统网络架构及编程接口研究

2. 基于Linux平台的路由器源代码的剖析

3. 网络翻墙的机制与应用

4. 网络分布式计算技术及应用

5. IPV6技术及应用

6. P2P技术及应用

7. Windows系统下网卡驱动程序开发技术

8. Linux系统下网卡驱动程序开发技术

9. 蓝牙通信技术及应用

10. 长中短距离无线通信技术及应用

11. 国内城域网主流技术与最新进展

12. 三网融合及其发展

七、参考教材

[1] Andrew S.Tanenbaum、David J.Wetherall. 计算机网络(英文版?第5版). 机械工业出版社

[2]谢希仁. 计算机网络(第5版). 电子工业出版社

[3]吴功宜. 计算机网络课程设计. 机械工业出版社 //C语言编程

[4] 王勇. 计算机网络课程设计(计算机课程设计与综合实践规划教材). 清华大学出版社 //Java 编程

[5] 叶树华. 网络编程实用教程(第2版). 人民邮电出版社.2010 //适合初学者

[6] 王艳平. Windows网络与通信程序设计(第二版). 人民邮电出版社 //适合高手

[7] 金华. C#网络编程技术教程(21世纪高等院校网络工程规划教材). 人民邮电出版社

[8] 思科网络技术学院CCNA Exploration4.0——LAN交换和无线

[9] 思科网络技术学院CCNA Exploration4.0——路由协议和概念

[10] 恒逸资讯, 吕政周. Windows Server 2008系统管理员实用全书. 电子工业出版社

[11] 冷罡华. Ubuntu Server最佳方案. 电子工业出版社

八、上机与验收安排

1、上机指导时间:

周一、三、五,第1-6节课

2、验收时间:

周日上午、下午

3、上机指导与验收地点:

逸夫楼107、209、409

4、指导老师:

邬欢欢,范泽华,李鹏

相关文档
相关文档 最新文档