监控IP数据包流量系统设计书.doc

监控IP数据包流量系统设计书.doc

ID:55561642

大小:425.00 KB

页数:32页

时间:2020-05-17

监控IP数据包流量系统设计书.doc_第1页
监控IP数据包流量系统设计书.doc_第2页
监控IP数据包流量系统设计书.doc_第3页
监控IP数据包流量系统设计书.doc_第4页
监控IP数据包流量系统设计书.doc_第5页
资源描述:

《监控IP数据包流量系统设计书.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、监控IP数据包流量系统设计书一、课程设计目的和要求1.课程设计目的:随着internet技术的发展,基于IP协议的网络应用成为网络技术研究与软件开发的一个重要基础,因此学习网络层的基本概念,了解IP协议的基本容,对于掌握TCP/IP协议的主要容和学习网络课程是十分重要的。通过本次课程设计,有助于熟悉IP包格式和加深对IP协议的理解。2.课程设计要求:编制程序,监控网络,捕获一段时间网络上的IP数据包,按IP数据包的源地址统计出在该时间段发出的IP包的个数,将其写入日志文件中并用图形表示出来。程序的具体要求如下:1.在图形窗口界

2、面下,根据用户输入的捕获时间和选择的网卡输出该段时间的IP数据包流量分析2.能够将捕获的信息写入日志文件一、一、课程设计的容1.课程设计的容:1)使用Winpcap,Winpcap的主要功能在于独立于主机协议(如TCP/IP)发送和接受原始数据包;2)列出网卡列表,让用户选择可用的网卡;3)使用过滤器捕获IP包,别的包都过滤掉;4)捕获IP包并按包的源地址进行统计(用链表结构进行实现)。5)将统计结果输出到图形窗口界面或输出到日志文件程序流程如图8-1所示。2.一些必要的基础知识1.熟悉IP首部格式2.使用Winpcap工具W

3、inPcap是一个基于Win32平台的,用于捕获网络数据包并进行分析的开源库.WinPcap产生的目的,就是为Win32应用程序提供这种访问方式;WinPcap提供了以下功能a)捕获原始数据包,无论它是发往某台机器的,还是在其他设备(共享媒介)上进行交换的a)在数据包发送给某应用程序前,根据用户指定的规则过滤数据包b)将原始数据包通过网络发送出去c)收集并统计网络流量信息使用Winpcap工具主要需要三个步骤:1).安装底层驱动:在Winpcap官网(.winpcap.org)下载并安装Winpcap.exe即可2).导入库文

4、件:下载wpdpack开发包,并在开发环境(VC)中导入Lib和Include文件夹路径。VC导入步骤(工具->选项->目录,分别在IncludeFiles和LibraryFiles中加入…/wpdpack/Include和…/wpdpack/Lib)3).在应用程序中导入需要的DLL和头文件:方法一:VC下:工程->设置->在Object/Librarymodules下添加ws2_32.libwpcap.lib(注意中间的空格)方法二:在源文件中添加命令处理:#pragmacomment(lib,“ws2_32.lib”)#

5、pragmacomment(lib,“wpcap.lib”)本程序将会用到的Winpcap功能有:获取本机所有适配器信息pcap_findalldevs以混杂模式打开适配器pcap_open_live编译并设置过滤器pcap_compilepcap_setfilter捕获数据包pcap_next_ex释放打开的适配器信息pcap_freealldevs1.VC++图形窗口界面编程包括按钮,编辑框,列表框,列表控件等控件的使用2.其他相关知识,如文件操作,链表操作等一、课程设计核心知识1.获取本机网卡信息本课程设计要实现对数据包

6、的捕获,首先就要获取并列出本机上的所有网卡信息,这个功能是通过Winpcap提供的pcap_findalldevs来实现的。该函数原型如下intpcap_findalldevs(pcap_if_t**alldevs,char*errbuf)pcap_if_t是一个用于描述网卡信息的结构体。里面包含了网卡的名字,描述等信息。通过这个函数可以得到一个网卡信息组成的链表。函数错误则返回-1。2.打开用户选定的网卡得到网卡信息之后,可以通过列表框等形式显示出来,在用户选择后,通过pcap_open_live打开指定网卡:pcap_t*

7、pcap_open_live(char*device,intsnaplen,intpromisc,intto_ms,char*ebuf)  函数功能:获得用于捕获网络数据包的数据包捕获描述字。参数说明:device参数为指定打开的网络设备名。snaplen参数定义捕获数据的最大字节数。promisc指定是否将网络接口置于混杂模式。to_ms参数指*定超时时间(毫秒)。ebuf参数则仅在pcap_open_live()函数出错返回NULL时用于传递错误消息。这些参数中最重要的就是promisc参数,通过它可以将网卡监听设置为混杂

8、模式,混杂模式是指不管网卡接收到的数据包是不是发给自己的,都向应用程序上传。这样可以捕获一些广播信息。本程序将监听模式设为混杂模式。3.编译并设置过滤器在打开网卡并得到网卡描述符后,可以编译并设置过滤器。编译过滤器:intpcap_compile(pcap_t* p,stru

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。