




已阅读5页,还剩15页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
上海应用技术学院课程设计报告课程名称 计算机通信技术课程设计_设计题目 编写一个tcp报文分析小工具_课程名称计算机通信技术课程设计课程代码设计题目题目a:编写一个tcp报文分析小工具题目b:编程实现ftp协议分析题目序号设计时间2011年 06 月13 日2011 年 06 月 24 日系(院)计算机专业网络工程班级一、 课程设计任务(条件)、具体技术参数(指标)1. 在指导书提供的课程设计题目中选择一题或自选(自选需经过指导教师认可)2. 每个题目每人独立完成,题目选定后不可更换。3. 用户提供的主操作界面应该方便用户的操作。4. 最后提交的课程设计成果包括:a) 课程设计报告电子稿。b) 提交需求分析报告、设计报告、系统测试用例设计及测试报告、用户手册。c)源程序文件。d)可执行程序文件。二、 对课程设计成果的要求(包括课程设计说明书、图纸、图表、实物等软硬件要求)1. 分析课程设计题目的要求;2. 写出详细设计说明;3. 编写程序代码,调试程序使其能正确运行;4. 设计完成的软件要便于操作和使用,有整齐、美观的使用界面;5. 设计完成后提交课程设计报告、设计文档、源代码文件的电子文档。三、 课程设计工作进度计划:第一天 选择课程设计题目,分析课题的要求,确定设计方案;第二天 按功能模块编写详细设计说明;第三天 绘制程序流程图;第四天 程序编写与调试;第五天 程序编写与调试;第六天 程序编写与调试;第七天 程序编写与调试;第八天 写课程设计报告; 第九天 提交课程设计报告;第十天 面试或答辩。四、 主要参考资料1windows网络程序设计, 夏靖波等编,西安电子科技大学出版社,20072网络程序设计教程,吴礼发编,北京希望电子出版社,20023tcp/ip协议详解卷一:协议,w.richard stevens,addison wesley/pearson4tcp/ip协议详解卷二:实现,w.richard stevens,addison wesley/pearson5tcp/ip协议详解卷三:事务协议,w.richard stevens,addison wesley/pearson6计算机通信技术课程设计实验指导书指导教师(签名): 2011.06.12 教研室主任(签名):2011.06.11目录1 目的及要求1.1 课程设计目的本课程设计是计算机科学与技术专业、网络工程专业重要的实践性环节之一,是在学生学习完计算机通信技术课程后进行的一次全面的综合练习。通过课程设计,使学生进一步掌握计算机网络通信的基本方法;网络协议的基本原理;掌握网络通信和网络协议的技术架构;深刻领会软件设计方法;提高程序设计文档的撰写能力等。1.2 课程设计要求在提供的课程设计题目中任意选择一题,题目选定后不可更换。(1) 要求在设计的过程中,完成清晰的功能设计。(2) 要求系统架构合理,模块划分清晰。(3)用户界面设计,以菜单形式体现各个功能,供用户选择。各功能之间原则上无先后次序。(4)编写程序代码,调试程序使其能正确运行(5)提交课程设计报告、相关文档及源代码。2 课程设计内容说明2.1 课程设计的题目编写一个tcp报文分析小工具2.2 具体设计要求实现一个简单的局域网报文抓取工具,对在网络共享域中抓取的数据包进行分析,并向屏幕输出tcp报文头部的每一个字段信息。要求:(1) 能实现共享域的数据包抓取。(2) 对抓到的数据包进行解析,要求能够解析出数据包中tcp的报文头部每一个域的信息。(3) 参考软件wireshark。2.3 设计实现思路根据系统功能要求,可以将问题解决分为以下步骤:(1) 回顾tcp协议报文头部的格式。(2) 寻找网络共享域中,数据包抓取的开发工具,目前比较常见的是winpcap。(3) 利用winpcap的数据包抓取功能,对抓到的数据包进行过滤,分析。(4) 解析数据报文,输出每一个域的对应值。(5) 利用wireshark软件,对输出值进行对比验证软件的功能和正确性。2.4 实验环境说明用vc+编译抓包程序,用winpcap实现数据包的抓取2.5课题的系统设计2.5.1 设计思路(1)回顾tcp和ipv4的首部格式0 4 8 16 24 32版本首部长度服务类型总长度标示标志片偏移量ttlprotocol首部校验和源站ip address目的ip addressip选项填充数据图1 ipv4首部格式ipv4首部格式说明:1. 版本:4b,包含当前运用的ip版本的信息2. 首部长度:4b,以4b为单位的ip首部的长度3. tos服务类型:8b指明当前如何处理数据报文4. 总长度:16b,以字节为单位的整个数据报文的长度5. 标示:16b,整数,源主机赋予数据报的唯一标识6. 标志:3b,只有低2位有效中间1位是df标志,为1是表示数据报不能被分片,为0表示可以分片7. 片偏移量:13b指出本数据报文片中数据相对于初始报文的数据偏移量,以8字节为单位计算偏移量8. ttl:1byte,设计的初衷是用来指明数据报在互联网上的允许保留的时间以秒为单位9. 协议:1字节,指明数据报数据区的格式10. 首部校验和:16b用于首部的校验11. 源地址和目标ip地址:各占32b指明数据报的发送者和最终的接受者12. ip选项,长度可变,主要用于控制和测试两大目的sportdert port序列号确认号数据偏移保留urgackpshrstsynfin窗口校验和紧急指针选项(长度可变)填充图2 tcp报文的首部tcp报文的首部格式说明:1. 源端口和目的端口,端口是传输层和应用层的接口2. 序号:tcp是面向字节流的,tcp传输的报文可以看做是连续的字节流3. 确认号:希望收到的下一个报文首部字段的序列号的值4. 数据偏移:指出tcp报文段的首部长度,以 4byte为单位5. 标志位:用于区分不同类型的tcp报文6. 窗口:该字段在传输过程中,动态变化,表明允许对方发送的数据量7. 校验和:检验和字段检查的范围包括伪首部,tcp首部和数据部分8. 紧急指针:只在url=1时才使用,指明该报文中有紧急数据的字节数,伪首部中的协议字段值一般为69. 选项:长度可变040byte(2)确定开发工具。确定使用vc+和winpcap开发工具来实现共享域中数据包的抓取。(3)上网查阅关于winpcap的使用方法和抓取数据包所要用的各种函数。(4)用vc+编程来具体实现数据包的抓取。(5)首先获先利用winpcap中的pcap_findalldevs函数来获得网卡列表,并将其打印出来。(6)利用winpcap中的pcap_open_live函数来打开选择的网卡。(7)利用winpcap中的pcap_compile来起到过滤作用,只接受tcp和ipv4的内容(8)使用回调函数pcap_loop(adhandle, 10, packet_handler, null)来捕获数据包,并打印tcp的报文首部2.5.2 系统功能模块图系统程序与辅助软件一起运行tcp ip数据包结构分析定义程序调用相关函数对所抓起的数据包进行分段分析wincap抓包分析ip首部结构定义tcp首部结构定义利用程序对获取的包进行过滤出tcpwincap对流经网卡的数据包进行抓取对相关的数据包的来源和去向分析调用之前定义的结构函数进行分段分析图3 系统功能模块图2.5.3系统流程图开始检测是否有wincap检查网卡否是打印网卡信息,要求用户自己选择网卡对用户输入进行检测是否符合范围打印输出抓取的tcp包信息(10个)结束否是否是给出提示信息要求用户进行输入,并对用户输入进行检查输入n输入y2.5.4 关键程序代码main() pcap_if_t *alldevs; pcap_if_t *d; int inum; int i=0; pcap_t *adhandle; char errbufpcap_errbuf_size;u_int netmask;struct bpf_program fcode;char k; /* 获得网卡的列表 */ if (pcap_findalldevs(&alldevs, errbuf) = -1) fprintf(stderr,error in pcap_findalldevs: %sn, errbuf); exit(1); /* 打印网卡信息 */ for(d=alldevs; d; d=d-next) printf(%dn, +i); printf(%sn, d-name); if (d-description) printf( (%s)n, d-description); else printf( (no description available)n); if(i=0) printf(nno interfaces found! make sure winpcap is installed.n); return -1; printf(enter the interface number (1-%d):,i); scanf(%d, &inum); /输入要选择打开的网卡号 if(inum i) /判断号的合法性 printf(ninterface number out of range.n); /* free the device list */ pcap_freealldevs(alldevs); return -1; /* 找到要选择的网卡结构 */ for(d=alldevs, i=0; inext, i+); /* 打开选择的网卡 */ if ( (adhandle= pcap_open_live(d-name, / 设备名称 65536, / portion of the packet to capture. / 65536 grants that the whole packet will be captured on all the macs. 1, / 混杂模式 1000, / 读超时为1秒 errbuf / error buffer ) ) = null) fprintf(stderr,nunable to open the adapter. %s is not supported by winpcapn); /* free the device list */ pcap_freealldevs(alldevs); return -1; printf(nlistening on %s.n, d-description); /* at this point, we dont need any more the device list. free it */ pcap_freealldevs(alldevs); /*过滤器*/if (d-addresses != null) /* 获取接口第一个地址的掩码 */ netmask=(struct sockaddr_in *)(d-addresses-netmask)-sin_addr.s_un.s_addr; else /* 如果这个接口没有地址,那么我们假设这个接口在c类网络中 */ netmask=0xffffff; /compile the filte if (pcap_compile(adhandle, &fcode, ip and tcp, 1, netmask) 0) fprintf(stderr,nunable to compile the packet filter. check the syntax.n); /* 释放设备列表 */ pcap_freealldevs(alldevs); return -1; /set the filter if (pcap_setfilter(adhandle, &fcode) 0) fprintf(stderr,nerror setting the filter.n); /* 释放设备列表 */ pcap_freealldevs(alldevs); return -1; /* 开始捕获包 */ pcap_loop(adhandle, 10, packet_handler, null);while(1)printf(n是否想要继续抓包(y/n): );getchar();k=getchar();if(k=y)pcap_loop(adhandle, 10, packet_handler, null);else if(k=n
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 泸州市重点中学2026届高三化学第一学期期末达标检测试题含解析
- 情景交际公开课课件
- 人教版 2024 版历史八年级上册第二单元《早期现代化的初步探索和民族危机加剧》测试卷(附答案)
- 学校常态化疫情防控方案
- 恒丰银行反洗钱培训课件
- 小学语文第一单元的复习方案
- 2026届安徽省滁州西城区中学高一化学第一学期期末经典试题含解析
- 宣化叉车实操考试试题及答案
- 新安化工考试试题及答案
- 无领导面试题及答案
- 双方签定协议书
- 2024-2025学年八年级数学下册期末培优卷(北师大版)含答案
- 2025福建福州市鼓楼区国有资产投资发展集团有限公司副总经理公开招聘1人笔试参考题库附带答案详解(10套)
- 2025年12345热线考试题库
- 多余物控制管理办法
- 2025年卫生健康行业经济管理领军人才试题
- 河南省洛阳市2024-2025学年高一下学期期末质量检测物理试卷
- 雅思介绍课件
- 《电商直播运营》教案-任务1 直播平台与岗位认知
- 反邪教宣讲课件
- 2025年重庆市高考物理试卷(含答案解析)
评论
0/150
提交评论