(完整)IP包流量分析程序的设计与实现.docx
《(完整)IP包流量分析程序的设计与实现.docx》由会员分享,可在线阅读,更多相关《(完整)IP包流量分析程序的设计与实现.docx(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1 .引言IP就是真实流量,是有人真正浏览了您的网站而产生的流量,每台电脑只 有一个IP地址,所以一个IP就是一个人,反映在统计上就是独立IP数量,IP 是Internet Protocol (因特网协议)的缩写,它是通过计算机网络进行交流的 最常用的协议之一。IP监控解决方案就是通过有线或者无线IP网络把视频信息以数字化的形式 来进行传输。只要是网络可以到达的地方就一定可以实现视频监控和记录,并且 这种监控还可以与很多其它类型的系统进行完美的结合,无论是由模拟摄像机加 视频服务器组成的解决方案,还是单独由网络摄像机组成的解决方案,或者是两 者混合组成的解决方案,IP监控都已被证明是一种极具吸
2、引力的解决方案。在 越来越多的原有行业应用中,这种革命性的技术正在逐步取代传统的监控系统, 在提高安全性的同时也进一步的降低了成本;而在许多新的应用领域,它还是第 一次用到,也因此开创和激发了许多新的市场。正是由于它系统的可扩展性,IP 监控逐渐巩固了其在现有监视和远程监控行业应用的地位,也加速了在其他新兴 行业的应用,监控本地网络,捕获一段时间内以本机为源或目的地址的IP数据 包,统计IP数据的信息,列出本机到相同目的地址或同一源地址到本机且数据 包协议类型相同的据包的数量。IP协议的目标很简单:生成发往目的地的数据报,而且除了把这个数据包发 送到下一跳路由器之外,不需要担心任何事情。实际上
3、,IP协议很复杂,否则, IP数据报头就不需要那么多的字段。认真研究IP数据报头是非常重要的。IP 协议负责接收和发送指定IP地址数据包。但是,IP协议并不保证数据传递的可 靠性。1.1 设计目的随着网络技术的飞速发展,链路容量和设备处理能力不断升级,Internet 的规模呈爆炸性增长,社会对Internet的依赖性越来越高,随之而来,网络传 输的业务类型已从简单的低带宽要求的文件传送、电子邮件等变为数据、语音、System.out.println(nPacketNumbers:n + counter); /输出包的数量3. 2.4捕获IP包(1)次模块为捕获IP包并按包的源地址和目的地址进
4、行统计。工作原理:从文 本中读取数据包的信息,将源地址和目的地址提取出来建表,根据源地址和目的 地址来进行数据包流量的统计。(2)代码实现:public class CounterPackets ArrayList ips,存放读取文本信息HashMap counter;/存放地址和对应的数据包的数量public CounterPackets() counter = new HashMap(); 建一个 HashMap 的存储对象)/从packet.txt.中读取捕获到的IP数据包信息public void readPackets() throws lOException ips = new
5、ArrayList();BufferedReader br = new BufferedReader(new FileReader(npackets.txtn);while (br.read() != -1) ips.add(br.readLine();)counter();)统计流量public void counter() for (int i = 0; i ips.size(); i+) Stringf result 二 getlps(ips.get(i);String index = result(0 + + resultl;setNumber(index);)/获取源地址和目的地址p
6、ublic String! getlps (String ips) StringBuffer sb = new StringBuffer(ips);for (int i = 0; i ips.length(); i+) if (ips.charAt(i) = 7 | ips.charAt(i) = ips.charAt(i) =sb.replace(i, i + 1,)ips = sb.toString().trim();return ips.split(Hs+H);数目叠加public void setNumber(String index) if (counter.containsKey(
7、index) int value 二 counter.get(index);counter.put(index, value+1); else counter.put(index, 1);)将结果打印到控制台public void print() (“源地址“ + ” ” + “ 目的地址“ + ” ” + nPacketNumbern);Iterator it = counter.keySet().iterator(); 定义遍历类while (it.hasNext() while 控制循环String index = (String) it.next(); 从 it 中得到下一个字符串St
8、ring ips = index.split(ns+H);/切割成字符串数组String srclp = String.format(n%-6s, ips0);String dstlp = ipsl;int number = counter.get(index);System.out.println(srclp + ” + dstlp + + number);/输出信息4运行结果4.1获取网络设备列表运行程序,扫描到PC机当前网络设备列表,格式以网卡号加网卡设备参数 以及MAC地址信息。选择网卡号,进行IP流量扫描。如图4.1所示。 Problems ( Web Browser 粕 Serve
9、rsConsole国* * |凰星屏阚I出日” 违 Testjpcap Java Application D:MyEclipse6. Ojrebinjavaw. exe (Jun 26, 2011 10:00:28 AN)0: DeviceNPF_GenericDialupAdapter(Adapter for generic dialup and VPN capture) datalink: EN10MB(Ethernet)MAC address:0:0:0:0:0:0:1: DeviceNPFJ2E3D876D-0514-443F-B7BB-BF7B9D08DB16(Realtek 10/
10、100/1000 Ethernet NIC datalink: EN10MB(Ethernet)MAC address:0:2 4:8c:3 6:8b:5:address:/10.3.24,228 /255.255.255.0 /255.255.255.255I请输入网卡号图4.1当前网络设备列表4. 2选择网卡扫描出网卡信息后,然后选择网卡后,用户选择抓包时间进行扫描,如图4. 2所小.请输入网卡号1,输入抓包时间(分钟)1图4.2用户选择时间操作4. 3设置过滤器当开始程序运行时,扫描出用户PC的网卡信息,然后选择网卡号和抓包世 界,然后开始捕获IP数据包的信息,程序运行后,会捕获到该时间
11、段网卡的IP 流量信息,然后显示再控制台。如图4. 3所示。1309053679:7439491309053679:7440581309053679:7449321309053679:7449791309053679:7519111309053679:7546511309053679:7547131309053679:7682691309053679:7683831309053679:7731581309053679:7819211309053679:7820471309053679:7963011309053679:7964181309053679:8026051309053679:8027
12、071309053679:8083131309053679:8084341309053679:8239431309053679:8240591309053679:8415201309053679:8427631309053679:8598451309053679:8599561309053679:873344/111.124.108.23-/10.3.24.228 protocol(17) priority(O) /10.3.24.228-/lll.124.108.23 protocol (17) priority(0) /120.9.142.217-/10.3.24.228 protocol
13、(17) priority(0) /10.3.24.228-/120.9.142.217 protocol(17) priority(0)/120.14.119.155-/10.3.24.228 protocol (17) priority(0)/120.9.142.217-/10.3.24.228 protocol(17) priority(O)/10.3.24.228-/120.9.142.217 protocol (17) priority(0)protocol(17)protocol(17)protocol(17)protocol(17)protocol(17)priority(0)
14、priority(0) priority(0) priority(0) priority(0)/120.9.142.217-/10.3.24.228 protocol(17) priority(0)/10.3.24.228-/120.9.142.217 protocol (17) priority(O) /111.124.108.23-/10.3.24.228 protocol (17) priority(0) /10.3.24.228-/111.124.108.23 protocol(17) priority(O) /120.9.142.217-/10.3.24.228 protocol(1
15、7) priority(0) /10.3.24.228-/120.9.142.217 protocol (17) priority(0)protocol(17) protocol(17) protocol(17) protocol(17) protocol(17) protocol(17)priority(0) priority(0) priority(0) priority(0) priority(0) priority(0)/120.9.142.217-/10.3.24.228 protocol(17) priority(0) /in o o a ooo x_ 71 on n 1 errh
16、op (117) offset(0) ident(24836) UDP 63 64 6000hop(64) offset(0) ident(52801) UDP 6000 6364 hop (48) offset(0) ident(64776) UDP 6000 6000 hop(64) offset(0) ident(52802) UDP 6000 6000hop (113) offset(0) ident(19429) UDP 6000 6000hop(48) offset(0) ident(64777) UDP 6000 6000hop (64) offset(0) ident(5280
17、3) UDP 6000 6000hop (117) offset(0) ident(24837) UDP 63 64 6000 hop (64) offset(0) ident(52804) UDP 6000 63 64 hop(113)offset (0) ident(19430) UDP 6000 6000hop (117)offset (0) ident(24838) UDP 6364 6000hop (64) offset (0) ident(52805) UDP 6000 63 64hop(48) offset (0) ident(64782) UDP 6000 6000 hop(6
18、4) offset(0) ident(52806) UDP 6000 6000hop (117) offset (0) ident(24840) UDP 63 64 6000hop(64) offset(0) ident(52807) UDP 6000 6364 hop (48) offset (0) ident(64783) UDP 6000 6000 hop(64) offset(0) ident(52808) UDP 6000 6000hop (117) offset (0) ident(24841) UDP 6364 6000 hop(64) offset(0) ident(52809
19、) UDP 6000 6364 hop (117) offset (0) ident(24842) UDP 63 64 6000 hop(64) offset(0) ident(52810) UDP 6000 6364 hop (117) offset (0) ident(24843) UDP 6364 6000 hop(64) offset(0) ident(52811) UDP 6000 6364hop (48) offset(0)ident(64788) UDP 6000 60004 7 - sa / uo。i、 TTnn ennn 、 uccc图4.3捕获IP数据包的信息4.4捕获IP
20、11309053680:338059源地址27.36.131.124PacketNumbers:153程序捕获数据包的过程中,首先显示如图4. 3的流量监控形式。然后以源地 址,目的地址,包数量的形式进行统计,显示再控制台。IP数据包流量统计的 结果,如图4. 4所小。priority(C/120.14.119.155-/10.3.24.228 protocol (17)目的地址 PacketNinnber10.3.24.2283127.36.131.1243120.9.142.2173910.3.24.2283910.3.24.228210.3.24.2288111.124.108.2331
21、图4. 4统计结果5.结束语5.1 课程设计应有的态度本人认为,程序设计目的在于开阔眼界,把课本知识联系实际实践,给予学 生处理实际问题的机会,而不应该只是一味地从网上搜索,这种快餐式文化,显 然是与课程设计的目的背道而驰的。课程设计的目的是培养学生综合运用所学知 识,发现,提出,分析和解决实际问题,锻炼实践能力。对大三学生来说,更应 该重视与珍惜课程设计,因为这是个很好的实践机会,然后应该深入了解题目, 理清思路,通过课程设计培养联系实际和解决实际问题的能力。5. 2课程设计心得体会为期两周的课程设计结束了,但它却给我留下深刻的印象:我清楚的感到, 随着科技的发展以及计算机网络在各行各业的广
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 完整 IP 流量 分析 程序 设计 实现
限制150内