必做部分说明
实验一、局域网的组网
实验二、WWW服务器、FTP服务器的构建 实验三、串口通讯
选作部分说明
1.给出的题目,供各专业自由选题,也可自拟题目,若自拟题目,应按示例题目的格式提交申请,指导老师审核认可之后,方可作为课程设计的题目。 2.自由选题部分,是课程设计的核心内容,也是课程设计的主体。
3. 设计指导书《网络与信息安全系列课程实践教程》仅作为参考,不得与之完全雷同。 4.设计结束后要写出系统实践报告,以作为整个系统实践评分的书面依据和存档材料。设计报告以规定格式的电子文档书写、打印并装订,排版及图、表要清楚、工整,提交打印稿的同时,提交电子文档。系统实践报告按所要求的格式书写,包括:
? 设计任务、要求及所用软件环境或工具;
? 需求分析的简要描述、设计的模块构成、各模块的简要说明、流程图; ? 所设计软件的组成(程序文件和数据文件)及使用说明; ? 程序清单(核心代码); ? 设计总结和体会。
5.选题说明:
? 班内选做同一设计题目的人数 <= 8
? 班内选做同一设计题目、并且采用相同开发工具完成设计的人数 <= 5 ? 题目一经选定,不得随意更改
? 选做同一设计题目的同学并非大家合作完成同一道题目,而是每人独立完成全
部设计内容
选题于12月25日12:00结束,并由班长填写“×班选题情况汇总表”,通过电子邮件发送到各指导老师邮箱(联系方式见时间安排文档)。自拟题目在“×班选题情况汇总表”中的“备注”列给出题目名称,并需另外提交相关说明文档。
第1类 基于套接字的网络编程
设计1.1 局域网实时通讯工具
【设计目的】
1. 熟悉开发工具(Visual Studio、Delphi、BCB等)的基本操作; 2. 了解基于对话框的windows应用程序的编写过程; 3. 对于windows Socket编程建立初步的概念。
【设计要求】
1. 熟悉WinSock API 主要函数的使用;
2. 掌握相应开发工具对Windows Socket API的封装;
3. 制作基于局域网的一对一网络即时通讯工具,实现基本数据的网络传输。
【工作原理】
略。
【设计内容】
1. 服务器端设计 2. 客户端设计
【思考题】
1. 上述设计的内容,在支持一对一的客户服务器双向通信的同时,能否支持多个客户
端同时与服务器通信?若不能,如何改造程序结构,使其支持这种模式?
2. 上述客户端、服务器端成对使用,它们发送的信息、接收的信息应整合在一个程序
中实现,以增加适用性。
设计1.2 网络文件传输
【设计目的】
掌握实现网络文件传输的方法,并了解TCP连接是基于字节流的。
【设计要求】
1. 实现单线程文件传输功能;
2. 在以上基础上,掌握多线程技术,在文件网络传输时,可选择单线程或多线程; 3. 加入异常控制依据,增强程序的鲁棒性(Robust);
4. 了解如何提高套接字传输的速率,以及如何加强传输的稳定性。
【工作原理】
略。
【设计内容】
1. 服务器端(负责发送数据)设计 2. 客户端(负责接收数据)设计
【思考题】
1.套接字有基于阻塞和非阻塞的工作方式,试问你编写的程序是基于阻塞还是非阻塞的?各有什么优缺点?
2.如何将上述通信改为非阻塞,避免阻塞?
3.在传输前能否先将要传输的文件的相关属性现行报告给对方,以便对方判断是否接受该文件的传输?
4.了解并熟悉多线程工作原理,试编写基于多线程的网络文件传输程序。
设计1.3 广播通信设计
【设计目的】
1.掌握广播通信技术;
2.了解基于Winsock API的消息机制和编程应用方法; 3.了解Windows SDK编程架构。
【设计要求】
1.WinSock API编程,实现局域网消息广播的实用程序;
2.通过查阅资料,简述单播、广播、多播的区别和联系,以及各自的优缺点和适应范围。
【工作原理】
略。
【设计内容】
略。
【思考题】
完善上述程序,使用网络广播知识制作一个可用的局域网聊天室软件。
设计1.4 网络版小游戏
【设计目的】
1. 熟悉开发工具(Visual Studio、Delphi、BCB等)的基本操作; 2. 掌握windows应用程序的编写过程; 3. 对于windows Socket编程建立初步的概念。
【设计要求】
1. 熟悉WinSock API 主要函数的使用;
2. 掌握相应开发工具对Windows Socket API的封装;
3. 设计并实现一对一网络版小游戏,如:Tic-Tac-Toe、五子棋等。(注:不同的游戏
对应不同的设计题目)
【工作原理】
略。
【设计内容】
1. 服务器端设计 2. 客户端设计
【思考题】
1. 如何实现游戏双方的协同?
第2类 基于WEB的动态网页制作
【设计目的】
1. 熟悉开发工具(Dreamweaver、FrontPage、Visual Interdev等)的基本操作; 2. 掌握基本脚本语言(ASP、PHP、JSP等),并了解其数据库开发方法; 3. 掌握当今流行数据库(Access、MS SQL、MySQL、Oracle等)的使用与操作; 4. 动态WEB站点的安装与配置。
设计2.1 网上图书馆的设计与实现
【设计要求】
1. 通过以下过程:需求分析、E-R模型、关系模型分析,在数据库中构建数据库、表
或视图,熟悉数据库开发流程;
2. 根据图书馆系统功能,条理清晰地设计前台各脚本页面; 3. 在时间允许的情况下,适当考虑页面的美观; 4. 熟悉脚本页面与数据库的多种连接方法。
【工作原理】
略。
【设计内容】
略。
【思考题】
1.试比较你所采用的脚本的多种连接数据库方式?
2.如何提高脚本的执行效率,特别是数据库操作效率?并将你的方法体现到上述设计过程中。
3.试问你所设计的网上图书馆,与现在我校采用的网上图书馆管理系统有何异同点?你是怎么看待这个问题的。