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

计算机网络课程设计题目和要求

计算机网络课程设计题目和要求
计算机网络课程设计题目和要求

计算机网络课程设计通过课程设计,使学生在对计算机网络技术与发展整体了解的基础上,掌握网络的主要种类和常用协议的概念及原理,初步掌握以TCP/IP协议族为主的网络协议结构,培养学生在TCP/IP协议和LAN、WAN上的实际工作能力;学会网络构建、网络日常维护以及网络管理的方法,使学生掌握在信息化社会建设过程中所必须具备的计算机网络组网和建设所需的基本知识与操作技能。运用网络工程和软件工程思想,按照需求分析、规划、设计、配置的基本流程,经历一个完整的网络工程过程,培养学生调查研究、查阅技术文献、资料、手册以及编写技术文档的能力,培养学生将理论知识应用于实践的能力。

一、格式要求及须知:

(1)使用学院网站的课程设计模版,要求格式美观,字体及编号要求见表1。

表1 字体及编号要求

(2)参考文献:参考课本的参考文献格式(附录C)。但编号换成[1]、[2]……(3)附录:课程设计中的代码或得到的数据包等数据将作为该设计附件或附录,题目需要但没有的相应代码及数据包文件的将记整组不及格,需要重做。

(4)成绩记录:该设计成绩将记录到教务处成绩管理系统中。

(5)打印:经审查(发邮件到指导老师处或当面交流修改)后,方可打印、存档。打印后递送到指导老师的信箱。

(6)如发现两组设计雷同或抄袭互联网,该组重做!

二、任务完成形式:

交付课程设计说明书、设计作品(需要验收)。

设计作品指的是完整的源程序代码(对于第二类题目为仿真文件)。

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

设计工作计划与进度安排:

根据所选题目,合理安排进度计划,总体上需要40个小时。以下仅供参考:

1. 原理知识 4小时

2. 程序设计技术 4小时

3. 开发环境与程序调试环境 4小时

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

5. 系统实现(编码与调试) 12小时

6. 课程设计说明书 8小时

成绩评定方式:

总评成绩=平时成绩x10﹪+软件演示与陈述x45﹪+课程设计说明书x45﹪

设计题目与任务:

每组(自由分组)从下列题目中任选其一,班长统计每组题目,报给指导老师。

注意题目不能重复!!!

辅导时间、验收时间安排:

辅导时间:

1、网络答疑 qq群号()

2、现场答疑:第4,5周周二下午 5678节周五上午 1234节周日上午

1234节

辅导答疑地点:14307

上机指导地点:14410

验收时间:周日 14410 8:30~12:00

课程设计报告上交时间周五上午11:00交到14307

第一类:网络编程类题目(以软件形式验收)

要求:

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

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

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

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

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

题目1 基于C/S模式的简单聊天程序(2人)

1、设计要求

使用Socket实现网上聊天功能。用户可以通过客户端连接到服务器端并进行网上聊天。聊天时可以启动多个客户端。

服务器端启动后,接收客户端发来的用户名和密码验证信息。验证通过则以当前的聊天客户列表信息进行响应;此后接收客户端发来的聊天信息,转发给客户端指定的聊天客户(即私聊)或所有其他客户端;在客户断开连接后公告其退出聊天系统的信息。

客户端启动后在GUI界面接收用户输入的服务器端信息、账号和密码等验证客户的身份。验证通过则显示当前系统在线客户列表。客户可以与指定对象进行私聊,也可以向系统中所有在线客户发送信息。

实现本程序需要了解网络基础知识,掌握C/S结构的工作特点,掌握数据结构、高级语言及网络编程知识,可以选择Visual C++、C或Java等语言实现。

2、课程设计报告内容

(1) 给出系统的结构;

(2) 给出程序的流程图;

(3) 分别给出服务器端和客户端的程序源码;

(4) 给出程序的部分运行测试结果。

题目2 基于C/S模式的通讯录查询程序(2人)

1、设计要求

采用C/S模式,编写程序,实现通过客户端查询服务器端的通讯录的功能。

(1) 服务器端

接收客户端的查询请求,验证客户身份,如通过身份验证,则将客户要查询的通信录记录返回客户端。(客户身份数据及通信录数据均为虚拟数据,可自行编制,客户身份至少应有客户ID、客户密码(登录密码),通信录记录包括:人员编号ID、姓名,单位地址、手机号码、单位电话、宅电等。所有字段的数据类型可自行设计)。

(2) 客户端

以GUI方式接收用户输入的查询请求,向服务器发出查询并接收和显示查询结果。

(3) 其他说明

客户端需包括如下的按钮:

●连接。连接到查询服务器,回应:连接成功/失败;

●登录。用户登录(由服务器验证用户的身份)。回应:若用户不存

在,提示“无此用户”;若用户存在,提示“密码:”,用户输入

密码后,若正确提示“登录成功”,若不正确提示“密码错”。

●查询。根据用户ID或姓名查询用户信息。回应:若用户号(或姓名)

不存在,提示“错误的用户号(或姓名)”;若用户号(或姓名)

存在,给出该记录的详细信息。

●退出。退出查询系统,断开与服务器的连接。

服务器端的通讯录保存在数据库中,数据库类型不限。

实现本程序需要了解网络基础知识,掌握C/S结构的工作特点,掌握数据结构、高级语言及网络编程知识,可以选择Visual C++、C或Java等语言实现。

2、课程设计报告内容

(1) 给出系统的结构;

(2) 给出程序的流程图;

(3) 给出服务器端的数据表结构;

(4) 分别给出客户端和服务器端的程序源码;

(5) 给出程序的部分运行测试结果。

题目3 FTP客户端的设计与实现 (2人)

1、设计要求

遵循FTP协议,实现一个FTP的客户端程序,根据账号和密码登录指定的FTP服务器,可以查看服务器内容列表,下载选定的文件,重命名或删除指定的文件/文件夹,也可以把本地文件上传到服务器上。

实现本程序需要了解网络基础知识,掌握FTP的工作过程,了解FTP的相关命令,掌握高级语言及网络编程知识,可以选择Visual C++、Java或C 等语言实现。

2、课程设计报告内容

(1) 给出相关的原理和设计思路;

(2) 给出程序的流程图;

(3) 给出程序源码;

(4) 给出程序的部分运行测试结果。

题目4 PING程序的设计与实现 (2人)

1、设计要求

设计并实现程序,实现类似Windows自带PING程序的功能,可以向指定的域名或IP地址发送Echo 请求报文,并根据响应报文显示出Ping的结果。程序仅支持-t选项即可。

实现本程序需要了解网络基础知识,掌握Ping命令的使用、ICMP报文的作用和结构、高级语言及网络编程知识,可以选择Visual C++、C或Java 等语言实现。

2、课程设计报告内容

(1) 给出相关的原理和设计思路;

(2) 给出程序的流程图;

(3) 给出程序源码;

(4) 给出程序的部分运行测试结果。

题目5 一个单工的停-等协议及支持重传确定协议的实现(2人)

1、设计要求

对一个单工的停-等协议及支持重传肯定确定协议进行解释说明,并分别给出一个单工的停-等协议及支持肯定协议的例子,对函数进行解释说明。

2、课程设计报告内容

(1) 给出设计的需求分析,包括概要设计,详细设计;

(2) 列出程序代码;

(3) 给出程序实现结果(抓图)。

题目6 路由器查表过程模拟 (2人)

1、设计要求

编程模拟路由器查找路由表的过程,用(目的地址掩码下一跳)的IP 路由表以及目的地址作为输入,为目的地址查找路由表,找出正确的下一跳并输出结果。

2、课程设计报告内容

(1) 给出路由表的相关知识和原理;

(2) 详细描述设计过程;

(3) 给出设计思路;

(4) 列出程序代码;

(5) 给出查找过程的测试结果。

题目7 基于多线程的端口扫描程序 (2人)

1、设计要求

使用Socket实现简单的端口扫描功能。分别针对TCP和UDP,采用多线程技术实现端口扫描,给出扫描结果。

实现本程序需要了解网络基础知识、网络安全基础知识,掌握C/S结构的工作特点,掌握高级语言及网络编程知识,可以选择Visual C++、C或Java 等语言实现。

2、课程设计报告内容

(1) 给出程序的流程图;

(2) 给出程序源码;

(3) 给出程序的部分运行测试结果。

题目8 循环冗余校验(CRC)算法的实现 (2人)

1、设计要求

(1)利用结构体或数组模拟网络数据包结构。

(2)编码实现CRC算法,并将得到的校验位附加到网络数据包相应的位置。

(3)根据数据包的长度,随机生成一个数据包产生突变的位置,并对该位置的bit位模拟突变的产生。

(4)重新利用CRC算法校验该数据包,并指出产生的结果。

(5)CRC能够检出所有的错误吗如果不能,你能构造出无法检错的实例

2、课程设计报告内容

(1) 给出程序的流程图;

(2) 给出程序源码;

(3) 给出程序的测试结果。

题目9 子网划分工具的设计与实现 (2人)

1、设计要求

(1)编程实现一个子网划分的简单工具。

(2)能够根据用户输入的网络地址和子网掩码,判断出用户输入的合法性及网络的类别(A、B、C地址)。

(3)能够计算出下列参数:子网数及有效子网、每个子网的主机数、每个子网IP范围及广播地址。

(4)应有相应的帮助提示及良好的结果输出组织,易于用户使用和查看结果。

2、课程设计报告内容

(1) 给出程序的流程图;

(2) 给出程序源码;

(3) 给出程序的部分运行测试结果。

题目10 电路交换和分组交换的软件仿真比较(2人)

1、设计要求

软件编程(语言不限)实现将数据报文划分成若干个大小有限的短数据块,在每个数据块前面加上一些控制信息(即首部),包括诸如数据收发的目的地址、源地址,数据块的序号等,形成一个个分组,然后各分组在交换网

内采用“存储转发”机制将数据从源端发送到目的端。(节点交换机数目和连接方式可以根据需要自行设定);然后用将同样的报文用电路交换的方式从源端发送到目的端。

2、课程设计报告内容

(1)给出将报文划分成若干大小有限的短数据块和目的端接收到数据后将数据报文还原成原始报文的算法;

(2)模拟报文在路由器之间存储转发的过程;

(3)比较两种传输方式的效率。

题目11 RIP路由协议原型系统的实现 (2人)

1、设计要求

在了解RIP路由协议工作原理的基础上,实现其原型系统。路由节点能够利用广播发布本地节点的路由信息,其它节点接收信息并选择最优路径。

2、课程设计报告内容

(1)描述并分析RIP路由协议的工作原理;

(2)撰写设计文档;

(3)实现RIP路由协议原型系统,该系统具备的功能包括:广播本地路由,接收其它节点路由信息,根据路由信息选择最佳路径,支持最大不超过15跳的特性;

(4)测试原型系统功能,撰写报告。

题目12 TCP头部校验和计算方法的实现(2人)

1、设计要求

在网络数据传输过程中,网络上的数据都要通过差错控制来保证其数据的正确性。进行差错检测和控制的主要方法是:发送放在需要发送的数据后面增加一定的冗余信息,这些冗余信息通常是通过对发送的数据进行某种算

法计算而得到的。接收方对数据进行同样的计算然后比较冗余信息以检测数据是否正确。

2、课程设计报告内容

(1)对比TCP头部中校验和计算方式描述校验和计算方法

(2)画出计算校验和算法的流程图;

(3)计算编写程序完成校验和的过程;

(4)给出一个数据,计算其校验和并验证,写出结果。

题目13 基于C/S的时间同步服务器的实现(2人)

1、设计要求

时间服务器是在局域网中作为发布统一时间的服务器,它利用电脑网络把时间信息传递给用户。要求参照现有的时间服务器的原理以及效果实现一个时间服务器的服务端和客户端。服务器端开放指定的端口发布时间到网络中,其他客户端从网络中获取该时间并将本地时间与之同步。

2、课程设计报告内容

(1)给出相关的原理、设计思想和设计过程;

(2)画出时间同步服务器端与客户端的算法流程图;

(3)实现服务器端和客户端并给出使用说明;

(4)测试服务器端与客户端,写出测试结果。

题目14 基于TCP的数据包发送和接收程序的实现(2人)

1、设计要求

TCP是一种面向连接的、可靠的传输层协议。TCP协议工作在网络层IP的基础上。本课程设计的目的是设计一个发送和接受TCP数据包的程序,其功能是填充一个TCP数据包,发送给目的主机,并在目的主机接收此TCP 数据包,将数据字段显示显示在标准输出上。

2、课程设计报告内容

(1) 给出TCP传输的原理和过程;

(2) 分别给出服务器端和客户端设计的思路;

(3) 服务器端和客户端的程序代码;

(4) 给出测试结果截图并撰写课程设计报告。

题目15 网络数据包的捕获与分析 (2人)

1、设计要求

Jpcap是使用java语言编写的一个开源库,使用该库的函数可以方便

的捕获网络上传输的数据包。要求使用该库函数实现捕获经过一个网卡的所

有流量,并能显示出来(或存入数据库)并按照要求撰写课程设计报告。

2、课程设计报告内容

(1)用java 的Jpcap开源库捕获数据包。

(2)通过编程实现抓取通过一个网卡的所有数据包,并把这些数据包存

入数据库。

(3)运用所学的网络知识对数据包进行分析,并把分析所得的结果用友

好的界面呈现。

(4)给出相关的原理和设计思路、程序的流程图、程序源码及运行测试结果。

题目16 网络U盘(2人)

(1)实现远程主机上管理自己的文件:如创建、打开、复制、删除文件

或目录以及远程文件上传、下载;

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

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

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

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

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

题目17 模拟以太网帧封装(1人)

要求:根据给出的原始数据,组装一个格式的帧。默认的输入文件为二进制原始数据。封装得到的帧输出到二进制数据文件中。

题目18 网卡驱动程序设计(2人)

要求:熟悉Windows DDK(Driver Development Kit)编程机制,了解NDIS(Network Device Interface Specification)提供的一些库函数的使用方法和各种数据结构的定义。掌握用Visual C++ 开发中小型项目的方法,并学会使用Driver Studio(集成DDK)来建立(网络)驱动程序的基本框架。

应用Visual C++ + WINDOWS DDK + Driver Studio实现一个简单的Realtek8139小端口网卡驱动程序。

题目19网络流量统计(2人)

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

题目20包过滤防火墙的设计与实现(2人)

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

题目21 简单电子邮件客户端的设计与实现(1人)

要求:完成一个电子邮件客户端软件,要求能够收取邮件、发送邮件、书写新邮件、具有图形化界面。提示:可选用基于JavaMail网络包实现。题目22 综合扫描器程序的实现(2人)

(1)ARP扫描实现

(2)ICMP扫描实现

(3)TCP扫描实现

(4)UDP扫描实现

题目23 利用组播实现网络教学(2人)

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

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

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

题目24 本地计算机基本信息管理(1人)

要求:如:获取计算机的名称和IP地址;获取计算机的子网掩码;获取计算机的DNS设置;获取计算机的网卡地址;获取计算机安装的协议;获取计算机提供的服务;获取计算机的所有网络资源;修改本地计算机的网络设置;获取计算机TCP/IP的所有信息。

题目25 点对点语音聊天程序设计(2人)

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

通信协议采用UDP;图形化界面;语音采集与播放采用windows

API(ACM)接口。

题目26 TCP通信仿真课件设计(2人)

要求:设计一个课件程序,采用图形化设计,主要功能:

(1) 能读取wireshark或sniffer工具所捕获的数据文件

(2) 能以直观形式表达TCP连接的建立、释放过程

(3) 能以直观形式表达报文序号变化、应答机制

(4) 能以直观形式仿真报文的丢失与重传

(5) *能以直观形式表达流量控制

题目27 网络对弈程序设计(1人)

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

题目28 网络游戏**开发(1人)

要求:开发一个网络游戏,如坦克大战、网页小游戏等。

题目29加密解密软件的设计与实现(2人)

要求:根据对称密钥密码体制或公钥密码体制加密解密算法的原理,设计并实现一个加密解密软件。

题目30 网络对时程序实现(2人)

(1)设计一个程序从internet上某个时间服务器,获取时间信息,准确地更新本地机时钟

(2)采用ntp协议

(3)支持手动、定时自动两种方式

第二类:网络工程类题目(以方案设计为主,以网络仿真为辅,仿真部分需要验收)

要求:

(1)论文论述详尽。

(2)论文包括设计任务、需求分析、总体设计方案与拓扑图、系统主要设备报价、软硬件设备选取、关键设计或配置、网络安全方案、其它(如网络管理方案、综合布线设计)、设计总结。

(3)对方案中关键设计,尽可能用仿真软件进行仿真配置与测试。

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

当然为了能在该软件中进行仿真,对原方案中的设计进行必要的简化、设备作必要的变通是必然的。

(4)题目中的XX,必须为具体的单位名称(最好为自己所熟悉的)

(5)目标网络规模为中等规模的园区网络(信息节点数为500个到5000个

之间)

(6)VLAN技术、RIP(或OSPF)技术必须运用到设计中

(7)支持internet接入

(8)支持远程用户访问

题目1 某企业组网方案设计 (2人)

a、设计要求

给出本课程设计的可行性分析,用户需求分析,网络规划,设备选型清单,系统配置,网络安全及管理措施,基于需求分析进行网络规划。

b、课程设计报告内容

(1) 完成需求分析;

(2) 企业网络拓扑方案设计;

(3) 列出所需网络设备、服务器、PC机的设备清单;

(4) 给出部门PC机的IP地址分配方案;

(5) 给出第三层VLAN设计方案;

(6) 给出路由器配置方案。

题目2 一个简单的校园网设计与实现 (2人)

a、设计要求

为所在学校设计一个简单的基于三层交换技术的校园网络。具体要求:

(1) 每部门1个单独的子网,自定义子网需要的IP地址数,至少有4种不同的地址规模;

(2)

(3) 计算每个部门的网络地址、掩码,并指定网关地址;

(4) 每个子网1个单独的VLAN,并使用三层交换机互连各VLAN。

b、课程设计报告内容

(1) 计算各VLAN信息;

(2) 绘制网络拓扑图,要求包含三层交换机、二层交换机等节点,并标注各VLAN信息;

(3) 完成交换机配置,具体包括:

①三层交换机中创建VLAN,为VLAN分配IP,配置与二层交换机互连的Trunk链路;

②二层交换机中创建VLAN,配置与三层交换机互连的Trunk链路,并体会跨二层交换机的VLAN配置。

(4) 基于PacketTracer,实现校园网原型,并测试网络的可用性。

题目3 校园无线网络组网方案设计(2人)

a、题目内容和要求:

⑴了解FIT AP和FAT AP的几种典型的组网方式;掌握无线网络的两种体系结构;掌握网络b、系统设计方法。

⑵理解无线网络设备的工作原理,掌握无线网络控制器AC、无线网络接入点AP、无线网桥、交换机、路由器、服务器、防火墙、入侵检测、行为审计以及流量控制等设备的选型方法。

⑶了解传统校园网服务的工作原理,掌握服务如DNS、WEB、FTP等的配置方法。

⑷理解校园无线网络的室内外覆盖原则;掌握信道规划原理。

⑸设计校园网络拓扑结构,并给出相应的校园无线网络的室内外覆盖方案和信道规划方案。

⑹完成设备配置及测试。

⑺按照要求撰写学年设计报告并准备答辩。

题目4 某学院计算机大楼的综合布线系统方案设计(2人)

a、题目内容与要求:

⑴掌握综合布线系统的构成,熟悉各子系统相对应的设计原则。

⑵能够对综合布线系统中用到的各种材料,譬如:支架、pvc管材、线缆、配线架、机柜等进行选型。

⑶能够熟练使用综合布线系统中用到的相关安装工具和测试工具。

⑷绘制出综合布线系统结构图、布线路由图、信息点分布图等。

⑸按照要求撰写学年设计报告并准备答辩。

大楼的基本情况:大楼为6层结构,建筑面积6000多平方米,有普通教室、多媒体教室、实训室、办公室、学生科技活动中心、图书阅览室等功能用房。一楼是办公区,二楼、三楼为教室,四楼、五楼为实训室。

大楼除通常用的信息网络和语音电话外,在出入口、楼梯口、走廊和实训室安装了网络监控点,每层楼安装两个网络考勤点,该大楼的信息点的种

5. XX医院网络规划与设计(2人)

6. XX社区网络规划与设计(2人)

7. (其它单位)网络组网方案设计(2人)

8. 网络应用服务器的搭建(2人)

(1)网络操作系统安装(在虚拟机环境下)

(2)DNS、DHCP服务器

(3)邮件服务器

(4)P2P服务器

(5)防火墙

(6)VPN远程访问、远程管理

参考资料:

1.Winsock编程

2.Winpcap编程

3.Windows DDK(Driver Development Kit)编程机制。

4.NDIS(Network Device Interface Specification)提供的库函数

5.Java网络编程基础

(1)I nternet地址操作

(2)U RL和URLConnection

(3)套接字ServerSocket和Socket编程

(4)J Mail包

6.组网技术

7.网络技术与组网工程

参考教材:

[1] 吴功宜. 计算机网络课程设计. 机械工业出版社计算机网络课程设计(计算机课程设计与综合实践规划教材).清华大学出版社《网络编程实用教程(第2版)》. 人民邮电出版社.2010 windows网络与通信程序设计》(第二版). 人民邮电出版社 //适合高手

[5] 思科网络技术学院CCNA ——路由协议和概念

[6] 思科网络技术学院CCNA ——LAN交换和无线

相关文档