解析IP数据包网络协议分析课程设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
郑州轻工业学院 网络协议分析课程设计 设计题目:解析IP数据包 姓 名: 院 (系): 专业班级: 学 号: 指导教师: 成 绩: 时间: 2011年6月12日至 2011年6月17日 郑州轻工业学院 课 程 设 计 任 务 书 题目 解析IP数据包 专业、班级 学号 姓名 程序在Windows窗口环境下捕获IP数据报,并解析出各个字段信息,显示在窗口中。 选定本机IP后,程序捕获经过对应网卡的IP数据报,根据IP数据报的结构,拆分获得各字段的值,显示在窗口上。同时程序可以将捕获的所有数据信息导出到日志文件。 参考资料: 《网络协议分析》?寇晓蕤 罗军勇 蔡延荣 机械工业出版社 完 成 期 限:2011.6.13-2010.6.17 指导教师签名: 课程负责人签名: 2010年 6月 17 日 目录 第一章 引言 4 1.1. 关于题目 4 1.1.1. 题目要求 4 1.1.2. 选题背景 4 1.2. 关于编译软件 4 1.3. 关于稳定性 5 第二章 程序设计 5 2. 主要功能设计 5 2.1. 程序流程 5 第三章 程序实现 6 3. 类设计声明 6 3.1. RawSocket类 7 3.2. EventArgs类 7 3.3. Header结构 8 3.4. 主要功能的实现 8 3.4.1. 程序界面 8 3.4.2. 获得主机IP 9 3.4.3. 显示列表 10 3.4.4. 详细信息 11 3.4.5. 导出日志 12 第四章 程序测试 14 4. 程序测试 14 总结与体会 15 附录: 15 引言 关于题目 题目要求 捕获网络中的IP数据包,解析数据包的内容,显示结果,并将结果写入日志文件。 显示的内容包括:捕获的IP包的版本、头长度、服务类型、数据包总长度、数据包标识、分段标志、分段偏移值、生存时间、上层协议类型、头校验和、源IP地址和目的IP地址等内容。 设置停止标志,当程序接收到停止命令时即停止。 选题背景 IP数据包是网络协议学习过程中容易接触到的,选择这个题目一是为了将自己的所学知识加以运用,二是希望通过探索实践去实现题目,在实践和实际的项目中提高自己的编程能力。因此我选定了这个题目。 关于编译软件 本程序使用C#语言,Microsoft Visual Studio 2005进行编译。Visual Studio 是微软公司推出的开发环境,Visual Studio 可以用来创建 Windows 平台下的 Windows 应用程序和网络应用程序,也可以用来创建网络服务、智能设备应用程序和 Office 插件。 关于稳定性 经测试,本程序可以在windows操作系统中稳定运行,较为稳定。要求至少安装.Net Framework 2.0。 程序设计 主要功能设计 根据分析,这个程序要实现如下几个功能,初始化、捕获数据包、显示、导出日志。其中捕获数据包是程序的核心部分,是后续操作的基础。程序结构如图2-1所示。 图2-1 程序结构图 程序流程 根据分析后的程序结构图设计出相应的流程图。内容主要包括初始化,获得主机IP列表,绑定Socket,开始捕获数据,分析数据,显示数据项,导出日志文件,根据用户操作退出程序。 图2-2 流程图 程序实现 类设计声明 根据程序的结构,将程序需要实现的功能细化为相应的类属性和成员函数。程序有两个类,一个RawSocket类,用于数据包相关捕获和处理。一个EventArgs类,用于类间传递信息。同时还有一个公共结构体,对应IP数据包的格式。 RawSocket类 public class RawSocket { private bool error_occurred;//是否产生错误 public bool KeepRunning;//是否继续进行 private static int len_receive_buf;//得到的数据流的长度 byte[] receive_buf_bytes;//收到的字节 private Socket socket = null; //声明套接字 public vo

文档评论(0)

mx597651661 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档