实验1_基于WinPcap的简单网络编程
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
通信软件基础实验指导书
实验一:基于WinPcap的简单网络编程
一、实验目的
1、学习和掌握基于WinPcap编程的基本方法。
2、通过监控IP包流量,了解IP协议的工作原理和IP数据包的基本结构。
二、实验内容
使用WinPcap编写一个控制台程序监控IP数据包流量,要求:①以命令行形式运行:MonitorTraffic time 其中MonitorTraffic为程序名、time为设定的监控时间(单位为分钟);②输出内容:按源地址统计该时间段内发送的IP 包的个数。
三、实验步骤及实验结果
1)利用参考代码在VS2008开发工具编中写一个控制台程序
2)添加...\WpdPack\Include
3)打开cmd窗口,以命令行形式运行debug
4)运行
四、实验结果分析
(自己完成)
五、实验心得体会
网络编程最主要的工作就是在发送端把信息通过规定好的协议进行组装包,在接收端按照规定好的协议把包进行解析,从而提取出对应的信息,达到通信的目的!中间最主要的就是数据包的组装,数据包的过滤,数据包的捕获,数据包的分析,当然最后再做一些处理!
六、思考题:
实验提示:程序中要用到WinPcap(目前的最新版本是4.1.3),可参考下列算法:
1)取得当前网络设备列表(在标准输出上显示,以让用户进行选择);
2)将用户选择的Ethernet网卡以混杂模式打开,以接收到所有的数据包;
3)设置过滤器,此处的过滤器为“IP”;
4)捕获IP包并按包的源地址进行统计(用链表结构进行实现)。
程序流程图如下图所示:
开始
获取网卡列表
选取Ethernet网卡
打开网卡
(混杂模式)编译设置过滤器
捕获IP包
将IP包源地址加入
链表
N
是否超时
Y
输出链表内容
结束