版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据通信与网络课程设计一、实习内容选题:1. 帧封装2. 模拟Ethernet帧的发送过程3. 发送Ethernet ARP包4. 解析IP数据包5. 监控IP包流量6. IP地址的合法性及子网判断7. 发送TCP数据包8. UDP服务器设计9. OSPF实现10. Web/FTP/Mail等服务器实现二、要求每位学生选择一个项目使用Java、C、VC或C#进行设计。通过课程设计帮助学生深入理解网络的基本工作原理和协议的设计思想,掌握处理网络问题的基本方法。考核标准根据题目的难易度、实现技术、完成情况和报告撰写质量给予A,B,C,D,E五级评分。课题一:帧封装目的:构造帧对于理解网络协议的概念
2、、协议执行过程,以及网络问题处理的一般方法具有重要的意义。根据数据链路层的基本原理,针对普遍应用的Ethernet帧,通过构造一个具体的帧,引导同学深入理解网络协议的基本概念与网络问题处理的一般方法。要求:编写程序,根据给出的原始数据(如“Hello World”),组装一个IEEE802.3格式的帧。题目附带的文件为二进制原始数据(文件名分别为input1和input2),要求程序为命令行程序,比如可执行文件名为framer.exe,则命令行形式如下:framer inputfile outputfile inputfile为原始数据文件,outputfile为输出结果。操作系统、使用语言和
3、编译环境不限。 资料:帧结构:前导码目的地址长度字段帧定界符源地址数据字段校验字段前导码和帧定界符:前导码56位(7字节)的10101011010比特序列组成,帧定界符为1字节,结构为10101011。目的地址和源地址均采用6字节,目标地址为00-00-E4-86-3A-DC,源地址为00-00-80-1A-E6-65。长度字段根据给出的数据字段长度生成。数据字段为46字节到1500字节,要注意不足46字节需填充。帧校验字段采用8位CRC校验。input1input2课题二 以太网帧的发送过程目的:编写程序模拟Ethernet结点数据发送的流程,通过编写程序加深CSMA/CD工作原理的理解。流
4、程:父进程开辟一块大小为sizeof(pid_t)字节的共享内存来模拟介质总线(共享内存初始全部为'0'),fork两个子进程,当两个子进程都退出后父进程退出。两个子进程做相同动作,它们向"介质总线"上发送自己的进程号,完成10次成功的发送后退出。子进程检查共享内存是否全部为'0',如果是则认为总线闲,否则总线忙继续载波侦听。当总线闲时立即启动发送,冲突计数器设置为16,将自己的进程号与共享内存中的数据作"或"运算(模拟发包),然后比较共享内存的内容与写入内容,相同则没有发生冲突,否则发生冲突。当没有发生冲突时,将共享内存
5、清零,报告:xxxxx send success,xxxxx为进程号,作随机延时,开始下一个发送过程或者结束。当发生冲突时,将共享内存清零,报告:xxxxx send collision,冲突计数器减1。如果冲突计数器>0,使用截止二进制后退延迟算法计算等待时间,等待后进入下一次尝试;如果冲突计数器<=0,报告:xxxxx send failure,结束本次发送,进入下一个发送过程或者结束。提示:为了模拟冲突的过程,在这个程序中不要使用任何进程同步机制。如果用了同步,反倒失去了“冲突”特性。课题三 发送以太网 ARP包要求:1在熟悉ARP协议并了解Winpcap编程,或者下载JAV
6、A类:jpcap包。(Jpcap下载。你只需要把lib中的dll文件拷贝到jre的bin目录,同时lib中的jar文件拷贝到jre中的lib/ext目录下就安装完整,当然你可以使用exe安装包进行安装,这样会更加的简单。)2构造ARP包,选择并打开网卡,将ARP包发送。命令格式:arpsend src_ip src_mac dst_ip dst_mac flagflag: 0 表示ARP请求;1 表示ARP应答。资料:Jpcap is a Java class package that allows Java applications to capture and/or send packet
7、s to the network.Jpcap is based on libpcap/winpcap and Raw Socket API. Therefore, Jpcap is supposed to work on any OS on which libpcap/winpcap has been implemented. Currently, Jpcap has been tested on FreeBSD 3.x, Linux RedHat 6.1, Fedora Core 4, Solaris, and Microsoft Windows 2000/XP.Jpca
8、p supports the following types of packets: Ethernet, IPv4, IPv6, ARP/RARP, TCP, UDP, and ICMPv4. Other types of packets are captured as raw packets (i.e., instances of the Packet class) which contains the whole data of the packets. This allows Java applications to analyze unsupported pac
9、ket types.Jpcap ver.0.5.1Installer for Windowsjpcap-0.5.1.zipSamplesTcpdump Simple/limited implementation of tcpdump.ARP Sample source code for implementing ARP. Traceroute Simple implementation of Traceroute.SendTCP, SendUDP, SendICMP Samples of how to send TCP/UDP/ICM
10、P packet. 课题四 解析IP数据包网络数据包通常可以通过WinPcap或LibPcap获取网络数据包。WinPcap(详细内容参见 )是一个开源的、运行于Win32平台的体系结构。也可以用Jpcap获取网络数据包。WinPcap的安装和使用安装WinPcap驱动程序和DLL程序(可以从网站下载)开发人员使用的开发工具包(developers pack),库文件、包含文件、简单的示例程序代码和帮助文件。设计目标:捕获网络中的IP数据包,解析数据包的内容,将结果显示在标准输出上,并同时写入日志文件。要求:1 以命令行形式运行:ipparse logfile其中ipparse是程序名,log
11、file是纪录结果的日志文件名2 在标准输出和日志文件中列出捕获的IP包的版本、头长度、服务类型、数据包总长度、数据包标识、分段标志、分段偏移值、生存时间、上层协议类型、头校验和、源IP地址和目的IP地址等内容。3 以键盘输入Ctrl+C退出。课题五 监控IP包流量要求:编程监控网络,捕获一段时间内网络上的IP数据包,按IP数据包的源地址统计出此地址在该刻时间内发出的IP包个数,将其写入日志文件中或用图表表示统计结果。用命令行运行:IPStatistic time logfile其中,time 为时间间隔,单位为秒。课题六 IP地址的合法性验证目的:掌握IP地址的分类,准确理解子网、掩码的概念
12、,确切地明了IP地址的合法格式。要求:1. 在判断一个IP地址合法性时要自行编写代码,不要使用任何inet函数。2. 程序要求为命令行程序,格式为:ip_test subnet/mask ip_addr 其中,程序名称为ip_test,参数为IP地址/子网掩码,如:: 3. 子网号和子网掩码的合法性也要检查。4. 运行结果提示需要提示:IP地址是否合法、子网掩码是否合法和IP地址是否为子网成员。 提示:在判断不合法IP时要考虑全面,比如以下情况均属于不合法课题七 发送TCP数据包目的:编程设计UDP服务器一个发送TCP数据包的程序。填充一个TCP数据包,并发送给目的主机。要求:1. 程序要求以命令行形式运行:SendTCP src_IP src_Port dst_ip dst_port其中,SendTCP为程序名称,参数为源IP地址和端口,目的IP地址和端口2. 其它的TCP头部参数请自行设定。数据字段“Nanjing Agricultural University”3. 发送成功在屏幕上输出“send OK”。 课题八 UDP服务器设计要求:设计一个使用UDP发送和接收数据包的服务器和一个客户端通过UDP方式与服务器进行数据交换的Java Applet程序。提示:1. 使用J类中的DatagramSocket和DatagramPacket等类;2. 可以引入多线程同步技术,建立
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年博尔塔拉蒙古自治州辅警协警招聘考试真题附答案详解(能力提升)
- 2024年商洛辅警协警招聘考试真题及答案详解(名师系列)
- 2024年临沂辅警招聘考试题库完整参考答案详解
- 2023年白山辅警招聘考试题库及1套参考答案详解
- 2024年信阳辅警招聘考试题库含答案详解(综合题)
- 2024年临夏州辅警招聘考试真题及答案详解(全优)
- 2023年黄石辅警协警招聘考试备考题库及答案详解一套
- 2024年娄底辅警协警招聘考试备考题库含答案详解(综合卷)
- 2023年辽阳辅警协警招聘考试备考题库附答案详解(模拟题)
- 2024年北海辅警招聘考试题库及答案详解1套
- 快递物流反恐怖防范规范
- 人教版九年级化学全册复习提纲
- 红牛营销案例分析
- 边坡位移监测记录表
- 抖音员工号申请在职证明参考模板
- 足球俱乐部试训个人简历
- 等保2.0测评标准
- 民航概论全套课件
- 各种硬度换算表硬度
- 2023年沧州银行校园招聘笔试题库及答案解析
- 煤矿建设安全规范解读
评论
0/150
提交评论