已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
成都信息工程学院课程设计报告网络终端监控姓名:陈黎苗专业:信息安全班级:08级4班提交日期:2009年12月 13日基于Jpcap的本地流量监控器摘 要在互联网迅速发展的今天,网络安全问题日益成为人们关注的焦点,病毒、恶意攻击、非法访问等都容易影响网络的正常运行,多种网络防御技术被综合应用到网络安全管理体系中,本地流量监测是其中一种分析网络状况的有效方法,它从数据包流量分析角度,通过实时地收集和监视网络数据包信息,来检查是否有违反安全策略的行为和网络工作异常的迹象。本课题就是基于Jpcap的本地流量监控器的实现,来抓去局域网中的数据包并对其进行分析。关键词:局域网;数据包抓取;流量统计;Jpcap目 录1背景与意义11.1背景11.2意义12. 系统设计22.1系统主要目标22.2主要软件需求(运行环境)23 系统功能程序设计23.1基本要求部分23.1.2页面制作函数23.1.3日志输出函数43.2程序界面预览54. 测试报告55结论8参考文献931 背景与意义1.1 背景Jpcap是2003年日本开发的一套能够捕获、发送网络数据包的java类库。因为核心JavaAPI不能访问底层的网络数据,但Jpcap是一种提供在Windows或UNIX系统上进行这种访问的JavaAPI。Jpcap不是一种纯粹的Java解决方案,它依赖本地库的使用。在Windows或UNIX上,你必须有必要的第三方库,分别是WinPcap或libpcap。要在java中使用Jpcap类库需要安装Jpcap的运行和开发环境。 Jpcap类库结构1.2 意义计算机网络的普及应用已渗透到社会各个层面,给社会带来便利的同时也随之带来的安全和管理问题。互联网络是一把双刃剑;就如一个企业而言有些员工利用工作时间看新闻、玩游戏、干私活、聊天、泄密公司资料、炒股票、下电影、听歌曲、浏览色情站点、甚至在公司网上边拿老板工资边找工作等等。不仅仅消耗公司资源,更是因为影响公司效率、泄露公司机密、甚至丢失客户资源另人痛心。而利用局域网流量监控软件这非常有效的管理辅助手段并和企业的内部管理机制结合达到更加事半功倍的效果,已经成为大家的共识。很多单位很舍得对网络以及电脑设备的投入,但却不舍得对应用软件特别是安全软件投入是不恰当的,如果组建了性能出色的网络以及购买了现代化的办公设备,但却成了浪费公司人力和财力甚至是纵容员工上班时间做单位之外的事情就成了问题;反而降低了工作效率,甚至导致更大损失;因此网络监控非常必要;目前很多单位请了网络管理人员还建设了网站;但是把设备是管好了,可设备带来的方便却降低了工作效率(都用网络干别的事情去了),网络带来的客户因为员工缺乏管理而可能直接成为了竞争对手的客户了;因此仅购买设备是不够的,仅仅建设网站也是不够的,只管理设备也还是不够的,还需要把员工使用网络的内容监视和并把网络行为管理起来;特别是外贸企业、技术含量较高的企业(如软件、工程类)、政府关键部门等等对员工的上网监督管理的意义尤为重要。网络监控系统总体目标是能有效防止员工通过网络以各种方式泄密,实现对网络电脑及网络资源的统一管理和有效监控。2. 系统设计2.1系统主要目标基本要求部分: 1) 本机IP数据包的监控2) 统计流量大小3) 分析协议和内容4) 形成txt格式的日志2.2主要软件需求(运行环境)本软件使用JAVA语言编写,编译成功后的EXE文件可以在装有windows系统的任何计算机上使用。测试平台:Windows 7使用软件:Myeclips 8.53 系统功能程序设计 3.1基本要求部分public class CaptureData ;CaptureData函数的主要功能是设置监听设备信息,监听设备的调用以及监听数据的收集,是本流量监控器的核心函数。其主要代码如下:NetworkInterface netIntfs = JpcapCaptor.getDeviceList();try JpcapCaptor jpcap = JpcapCaptor.openDevice(netIntfs0,1024, false, 1000);在opendevice方法中的四个参数一次为监听设备名称,一次抓取的数据包量,是否设置为混杂模式的boolean函数值,以及调用processPacket的最大超时时间。openDevice()方法将一个参数返回到用以捕获的Jpcap对象,既然有了Jpcap实例,你可以调用processPacket()或loopPacket()开始监听了。这两种方式都带有两个参数:捕获的最大包数可以是-1(说明没有限制);执行JpcapHandler的一个类的实例。while (true) Packet packet = jpcap.getPacket();最终将得到的数据装入了packet中,那么本方法的工作也就到此结束。3.1.2页面制作函数在本流量监控器中采用了Jframe类来实现界面。在能够获取以太网上的数据报后,进行流量的图形化是十分必要的。通常的网络数据流量的测量方法是按照一定的时间间隔得出一个平均负载。所以首先要获得数据包大小的数据在进行进一步的计算。数据包的大小在Jpcap的Packet类中有直接的字段来表示,单位为字节。Packet类是可以包含所有被捕获包类型的,只要进行连续的数据包监听,那几乎所有的网络数据包都会捕获并在Packet类存放其长度。在菜单栏里将每个数据包中的数据都显示出来,具体代码如下:private void initGUI() try setSize(400, 300); jMenuBar1 = new JMenuBar(); setJMenuBar(jMenuBar1); Menu = new JMenu(); jMenuBar1.add(Menu); Menu.setText(u6293u5305); Menu.setPreferredSize(new java.awt.Dimension(35, 21);3.1.3日志输出函数日志是以柱状图下列表的形式显示在Jframe中的,在这里可以直观的看到捕获的数据包中的各种数据。columns.addElement(数据报时间); columns.addElement(源IP地址); columns.addElement(目的IP地址); columns.addElement(首部长度); columns.addElement(数据长度); columns.addElement(是否分段); columns.addElement(分段偏移量); columns.addElement(首部内容); columns.addElement(数据内容);3.1.4 柱状菜单显示函数在得到了数据之后我们需要在曲线图上将数据描绘出来。也就是画出曲线图。在Fluxdata函数中,定义了每个函数点在图上的位置,代码如下:r.addElement( timestamp.toString() ); /数据报时间r.addElement(IPPacket)packet).src_ip.toString(); /源IP地址r.addElement(IPPacket)packet).dst_ip.toString(); /目的IP地址 r.addElement( packet.header.length ); /首部长度 r.addElement( packet.data.length ); /数据长度 r.addElement( (IPPacket)packet).dont_frag = true ? 分段 : 不分段 ); /是否不分段r.addElement( (IPPacket)packet).offset ); /数据长度 3.2程序界面预览在打开程序的界面后会有相关的提示性操作。人机交互页面相对友好。可以看到左边有流量大小的标示,以KB为单位,每一跳为40Kbps。图3.2 程序界面预览4. 测试报告4.1在myeclipse中打开本地流量监控器。 图4.1 本地流量监控器图4.2 选择网卡4.2运行本地流量监控器,然后我们打开一个网页可以看到本地流量监控器上出现波图4.2.1打开一个网站图4.2.2本地流量的监控5结论本次课程设计对我来说是一个不小的挑战,在工作过程之中也遇到过种种问题与困难。但是最终在不断坚持下,最终完成了工作。然而,作品中仍存在诸多问题需要在今后更深入的学习和实践后改进,完成例如支持多个日志记录的友好性,使用面向对象的思想与语言进行编程,设计更加良好的人机交互界面等高级要求。因此,通过完成本次网络终端监控(本地流量监测)设计,不仅使我对Jpcap的原理、实现过程等诸多细节有了完整、透彻的理解,而且在具体实现中学习到了很多的知识与能力,认识到了自身存在的许多不足,对今后的学习起到了极大的帮助,使我找到了学习的方向,确立了努力的目标:加强自己的动手实践能力,力求结合各类资源,通过各种工具实践课本中学习的理论知识,真正做到“学以致用”。参考文献1 尹治本.计算机网络及应用教程M
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026事业单位工勤技能-新疆-新疆水利机械运行维护工三级(高级工)历年参考题库含答案详解
- 2026事业单位工勤技能-广西-广西环境监测工五级(初级工)历年参考题库含答案详解
- 2026事业单位工勤技能-广东-广东水土保持工一级(高级技师)历年参考题库含答案详解
- 2026事业单位工勤技能-山西-山西工程测量员二级(技师)历年参考题库含答案详解
- 2026事业单位工勤技能-山东-山东政务服务办事员二级(技师)历年参考题库含答案详解
- 2026事业单位工勤技能-四川-四川水工闸门运行工三级(高级工)历年参考题库含答案详解
- 2026事业单位工勤技能-吉林-吉林管道工二级(技师)历年参考题库含答案详解
- 2026事业单位工勤技能-内蒙古-内蒙古机械冷加工一级(高级技师)历年参考题库含答案详解
- 2026事业单位工勤技能-上海-上海林木种苗工二级(技师)历年参考题库含答案详解
- 2026中级卫生职称-主治医师-健康教育(中级)代码:365历年参考题库含答案详解
- 2026新教科版科学六年级上册全套分组演示实验报告(共28个实验可用下料填写实验报告单)
- 2026年保安员考试题库及答案
- 2026年海南(中考)地生会考真题考试试题及答案
- 沪教版初中英语八年级上册Unit 2 Amazing Numbers语法教案
- 铁路物流中心设计规范(Q∕CR 9133-2016)
- 人力放线方案
- 寄宿制学校学生一日常规要求
- 2026北京亦庄恒达人力资源服务中心面向社会招聘劳务派遣人员7人考试备考试题及答案解析
- 髌骨软化症康复
- 2026招聘轮机长面试题及答案
- 保险公司投诉培训
评论
0/150
提交评论