《数据通信与网络课程设计201009(10页).doc》由会员分享,可在线阅读,更多相关《数据通信与网络课程设计201009(10页).doc(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-数据通信与网络课程设计201009-第 8 页计算机网络课程设计一、 要求每位学生选择一个项目使用Java、C、VC或C#进行设计,每个小组最多3人,并要有明确的分工。通过课程设计帮助学生深入理解网络的基本工作原理和协议的设计思想,掌握处理网络问题的基本方法。二、 实习起止时间:2010.9.6 至 2010.9.10三、 考核时间和标准本周五(9月10日)早上8:00开始,按学号演示设计成果。9月17日(下周五)下午5:00之前必须提交各小组的课程实验报告(电子版和打印稿)根据题目的难易度、实现技术、完成情况和报告撰写质量给予A,B,C,D,E五级评分。设计提纲一、 利用Socket实现双
2、机通信目的与要求: 利用WinSock来实现双机通信,理解TCP状态机图。要求使用WinSock编程,采用其中的TCP面向连接方式,实现文本数据的交换。二、 基于WinSock的即时通信软件功能原理模拟目的与要求: 利用WinSock进行点对点通信,工作机制模仿即时通信软件的基本功能,登陆,上线,传递信息等等。分为客户部分和服务器部分两块,客户部分类似一般通信软件例如QQ,服务器部分主要提供客户端用户基本数据配置。三、 了解最基本的RS232接口的网络编程方法目的与要求:编写一个简单应用程序完成双机通信,采用停止-等待协议。四、 帧封装目的:构造帧对于理解网络协议的概念、协议执行过程,以及网络
3、问题处理的一般方法具有重要的意义。根据数据链路层的基本原理,针对普遍应用的Ethernet帧,通过构造一个具体的帧,引导同学深入理解网络协议的基本概念与网络问题处理的一般方法。要求:编写程序,根据给出的原始数据(即需要提供MAC帧结构中的“目的MAC地址”、“源MAC地址”、“类型字段”、“数据字段”,具体的值可以自己任意给定;更好的做法,是用Wireshark等抓包工具捕捉数据包(比如,捕捉一个UDP数据包)按照捕捉到的数据包的内容来提供MAC帧格式中各个字段部分,因为“数据字段”部分就是承载IP、ARP等上层协议数据的。注意,“校验字段”必须由程序生成),组装一个Ethernet V2.0
4、格式的帧(目前,局域网以以太网应用最广泛,应熟悉Ethernet帧格式)。实现方式不限,可以用命令行程序,也可以用界面程序;但是,结果即生成的MAC帧必须写到文件中,并且要以二进制的形式来写入文件。例如,如果用命令行程序来实现。题目附带的文件为二进制原始数据(文件名inputfile),比如可执行文件名为framer.exe,则命令行形式如下:framer inputfile outputfile inputfile为原始数据文件,outputfile为输出结果。操作系统、使用语言和编译环境不限。资料:Ethernet V2.0 帧结构:前导码帧定界符目的MAC地址源MAC地址类型字段数据字段
5、校验字段前导码和帧定界符:前导码56位(7字节)的10101011010比特序列组成,帧定界符为1字节,结构为10101011。目的地址和源地址均采用6字节,目标地址为00-00-E4-86-3A-DC,源地址为00-00-80-1A-E6-65。数据字段为46字节到1500字节,要注意不足46字节需在“数据字段”后面填充。帧校验字段采用8位CRC校验即可。例如,下面给出一个直观的结果:五、 以太网帧的发送过程目的:编写程序模拟Ethernet结点数据发送的流程,通过编写程序加深CSMA/CD工作原理的理解。流程:父进程开辟一块大小为sizeof(pid_t)字节的共享内存来模拟介质总线(共享
6、内存初始全部为0),fork两个子进程,当两个子进程都退出后父进程退出。两个子进程做相同动作,它们向介质总线上发送自己的进程号,完成10次成功的发送后退出。子进程检查共享内存是否全部为0,如果是则认为总线闲,否则总线忙继续载波侦听。当总线闲时立即启动发送,冲突计数器设置为16,将自己的进程号与共享内存中的数据作或运算(模拟发包),然后比较共享内存的内容与写入内容,相同则没有发生冲突,否则发生冲突。当没有发生冲突时,将共享内存清零,报告:xxxxx send success,xxxxx为进程号,作随机延时,开始下一个发送过程或者结束。当发生冲突时,将共享内存清零,报告:xxxxx send co
7、llision,冲突计数器减1。如果冲突计数器0,使用截止二进制后退延迟算法计算等待时间,等待后进入下一次尝试;如果冲突计数器V2;V0,V3,V2十二、 Web网站自动登录的实现目的:熟悉HTTP协议格式和工作过程。题目的背景:例如,在登录论坛或邮箱是,需要输入用户名和密码,(不考虑需要输入验证码的情况,那样还要实现验证码识别的模块,该题目不作要求)。编写程序来模拟这个过程来实现网站自动登录。下面以自动登录校内网为例,演示实现过程:(1)登录校内(2)用捕包软件如Wireshark捕捉刚才登录过程浏览器发送的HTTP数据包:因为,对这种填写表单一般采用POST的方法,所以,熟悉HTTP协议的
8、请求消息格式的话,实现网站自动登录,就是模拟浏览器刚发送的HTTP请求消息,按照刚捕获的HTTP请求消息的内容,来填充HTTP请求消息的各个字段,然后发送出去,Web服务器收到POST请求的消息,验证合法后就会返回登陆后的页面,这样就实现自动登录网站。在Windows,WinInet API有连接HTTP服务器,和设置HTTP请求消息头各字段的函数(如,OPenRequest()、AddRequestHeaders()、SendRequest()等)。下面是一个实现的例子:登录成功的话,得到的网页源代码与用浏览器登陆得到的源代码是一样的,因为,用这种方法用这种方法POST到服务器后,服务器返回
9、的网页的源代码。如果,服务器验证失败,返回的网页源代码会是重新登陆页面的源代码,这与用浏览器登陆是一样的。当然也可以从用Wireshark捕获的程序发送数据包看出来:成功的话,“Line-based test data”就是成功登录后页面的源代码;失败则是需要重新登录页面的源代码。该题目要实现类似的功能,具体不限,大家可以自由发挥想象力。这样,大家对HTTP协议可以有一个更深的了解。十三、 简单FTP服务器实现利用面向对象程序设计语言开发简单FTP软件。目的与要求:理解掌握文件传输协议的具体内容;要求可以传递简单文本文件;设计美观易用的图形界面。十四、 基于中间件技术的Web服务系统功能要求:
10、(1)在CORBA 、 COM/DCOM 、 EJB 等中间件技术中任选一种实现本程序。(2)Web服务程序实现的具体功能可以是多样化的。只要符合Web服务的概念和体系。(3)程序所实现的功能应是完整的,而Web服务站点应尽可能多提供服务供客户程序调用。(4)设计美观易用的图形界面。十五、 网络管理命令软件包设计阅读常用windows管理命令、常用网络命令使用技巧详解, 选择其中三个命令组成一个一体化的图形用户软件。十六、 编写一个类似 QQ的聊天程序包括客户端和服务器,可以供多个用户进行聊天。功能: (1)登录功能。客户端登录到聊天服务器,服务器管理所有登录的客户,并将客户列表发送给各个客户
11、显示。 (2)客户可以通过服务器转发,实现一对一和多对多聊天。 (3)实现呼叫功能。当客户端程序连接服务器时,通过服务器搜索所要呼叫的客户,如果检测到此用户且该用户正处于联网状态,则服务器通知此用户的客户端程序响应主叫方客户端程序,然后在主叫方和被叫方建立连接后,双方就可以聊天或进行其它的通信。 (4)客户端程序应该可以实时显示目前其它用户的状态(例如好友信息上、下线)。十七、 VLAN构建 要求:(1)编写完整的VLAN构建方案。包括所需设备以及详细列明各个步骤。(2)利用实验室提供的设备完成VLAN构建。测试其可用性。(3)通过各种方式记录构建过程。如照片,文字记录等等。(4)编写完善的构
12、建报告书。写明构建过程中所遇到的问题,解决方法,体会和总结等等。十八、 Frame Relay 构建 要求:(1)编写完整的Frame Relay构建方案。包括所需设备以及详细列明各个步骤。编写所需的程序。(2)利用实验室提供的设备完成Frame Relay构建。测试其可用性。(3)通过各种方式记录构建过程。如照片,文字记录等等。(4)编写完善的构建报告书。写明构建过程中所遇到的问题,解决方法,体会和总结等等。十九、 基于UDP协议的数据包收发程序功能:(1)按照UDP协议数据包发送方式实现用户端之间的通信。(2)统计包的发送和接收数,计算数据包的丢失数。(3)设计美观易用的图形界面。二十、
13、滑动窗口协议仿真功能:(1)程序按照滑动窗口协议实现端对端的数据传送。包括协议的各种策略,如包丢失、停等应答、超时等都应有所仿真实现。(2)显示数据传送过程中的各项具体数据。双方帧的个数变化,帧序号,发送和接受速度,暂停或重传提示等。(3)设计美观易用的图形界面。二十一、 RIP协议仿真 功能:(1)程序按照RIP协议机制实现路由器间的路由信息通信与更新。(2)显示通信过程中的各项具体数据。路由表修改信息、本地路由表更新过程和结果等等。(3)设计美观易用的图形界面。二十二、 软件防火墙设计 实现防火墙的基本功能: (1)检查传入数据包中的源地址或目标地址及其他信息,然后阻止数据包通过或者允许它
14、通过。 (2)通过匹配 IP 数据头来确定是否允许通信通过接口。(3)将所有传出的通信都记录在状态表中。在连接通信返回到接口时,将检查状态表以确保这些通信来源于此接口。(4)实现应用程序筛选器功能,允许用户分析特定应用程序的数据流并且提供应用程序特定的处理。(6)客户可制定特定的安全策略。(5)设计美观易用的图形界面。二十三、 软件VPN设计实现VPN软件的基本功能:(1)服务器端构建和维护子网,并具有一定的安全保护功能。如访问控制、信息加/解密等。(2)客户端可以快速的访问子网内部。在带宽足够情况下,允许许多客户同时访问。(3)在连接发生问题时有相应处理方案,如自动重接等等。(4)设计美观易用的图形界面。二十四、 网络监视器设计功能:(1)实现触发功能,让网络监视器在发生某种或某些情况时开始或停止捕获信息。(2)实现数据捕获筛选功能。包括:通过协议筛选、通过地址筛选、通过数据模式筛选。(3)实现捕获数据显示功能。由用户选定显示内容,以清晰易懂的方式显示数据。(4)分析数据功能。将捕获到的数据帧进行拆分分析。(5)设计美观易用的图形界面。二十五、 FTP站点搜索引擎 功能:(1)由客户指定搜索IP段。 (2)实现多线程搜索,要求搜索速度要尽可能高。(3)以目录树的方式将所有搜索到的FTP站点统一列出。打开某一站点的目录树即可查看其中的所有资源。(4)设计美观易用的图形界面