文档详情

基于Winpcap的网络嗅探器的实现.doc

发布:2017-08-29约字共41页下载文档
文本预览下载声明
课程设计Ⅰ设计报告 题 目: 基于Winpcap的网络嗅探器的实现 学 号: 姓 名: 学 院: 专业班级: 指导教师: 设计时间: 指导老师评语: 评定成绩: 签名: 日期: 目 录 1 概述 3 1.1 课程设计的目的 3 1.2 设计任务与要求 3 1.3 开发环境 3 2系统设计的基本概念与原理 3 2.1 IP协议基本知识 3 2.2 TCP协议基本知识 7 2.3 UDP协议基本知识 9 2.4 winpcap基本知识 9 2.5 winpcap基本原理 14 2.6 MFC编程框架 17 3 基于Winpcap的单文档网络嗅探器的设计与分析 20 3.1 系统设计实现的基本原理与过程 20 3.2 系统功能设计 22 3.3 系统架构设计 22 3.4 子系统与模块设计 23 3.4.1 网络嗅探器设置模块 23 3.4.2 网络数据包的捕获模块 24 3.4.3 解析和显示模块 24 4 系统详细设计与实现 24 4.1 数据结构的设计 24 4.2 全局变量与函数的声明 25 4.3 嗅探器界面设计 26 4.4 嗅探器捕获模块的设计与实现 26 4.5 网络数据包捕获模块的设计与实现 31 4.6 解析和显示模块的设计与实现 32 4.6.1 列表视图初始化设置 32 4.6.2 从读取离线数据包并在列表视图中显示 33 4.6.2 响应用户鼠标消息,解析对应行的数据包信息。 36 5 系统调试与运行 38 5.1 winpcap函数库的安装 38 5.2 sniffer网络嗅探器的测试与运行 38 6 课程设计总结 39 参考文献 40 1 概述 1.1 课程设计的目的 目的:设计一个GUI程序,实现IP、TCP、UDP数据包的捕获和解析。通过编程了解各类数据报的结构,掌握网络编程的基本原理和方法。 1.2 设计任务与要求 本课程设计的基本内容是捕获IP,TCP,UDP数据包,通过解析数据包,理解和掌握各类数据包的结构 (1)设计一个GUI程序,完成局域网数据包的捕获和IP、TCP、UDP数据包的解析; (2)捕获几个网络数据报,给出实例并分析各数据包各字段的含义; (3)说明基于Winpcap编程的基本原理、程序的总体框架,绘制每个函数的详细设计流程图。 1.3 开发环境 标准PC机,Windows操作系统,vs2008集成开发环境,Winpcap函数库。 2系统设计的基本概念与原理 2.1 IP协议基本知识 IP协议介绍 IP是英文Internet Protocol(网络互连的协议)的缩写,中文简称为“网协”,也就是为计算机网络相互连接进行通信而设计的协议。在因特网中,它是能使连接到网上的所有计算机网络实现相互通信的一套规则,规定了计算机在因特网上进行通信时应当遵守的规则。任何厂家生产的计算机系统,只要遵守 IP协议就可以与因特网互连互通。 IP协议的网络互连实现 各个厂家生产的网络系统和设备,如以太网、分组交换网等,它们相互之间不能互通,不能互通的主要原因是因为它们所传送数据的基本单元(技术上称之为“帧”)的格式不同。IP协议实际上是一套由软件程序组成的协议软件,它把各种不同“帧”统一转换成“IP数据包”格式,这种转换是因特网的一个最重要的特点,使所有各种计算机都能在因特网上实现互通,即具有“开放性”的特点。 IP数据报 TCP/IP协议定义了一个在因特网上传输的包,称为IP数据报(IP Datagram)。这是一个与硬件无关的虚拟包, 由首部和数据两部分组成,其格式如图2.1所示: 图2.1 IP数据报一般格式 IP数据报的详细格式如图2.2所示: 0 3 7 15 31 版本 首部长度 服务类型 总长度 标识 标志 片偏移 生存时间 协议 头校验和 源IP地址 目的IP地址 选项 填充域 数据部分 图2.2 IP数据报的详细格式 IP数据报固定部分各字段含义: (1)版本 占4位,指IP协议的版本。通信双方使用的IP协议版本必须一致。目前广泛使用的IP协议版本号为4(即IPv4)。关于IPv6
显示全部
相似文档