计算机网络专业毕业设计(论文)网络监测与安全保障系统的总体设计.doc

上传人:文库蛋蛋多 文档编号:3992658 上传时间:2023-03-30 格式:DOC 页数:38 大小:725KB
返回 下载 相关 举报
计算机网络专业毕业设计(论文)网络监测与安全保障系统的总体设计.doc_第1页
第1页 / 共38页
计算机网络专业毕业设计(论文)网络监测与安全保障系统的总体设计.doc_第2页
第2页 / 共38页
计算机网络专业毕业设计(论文)网络监测与安全保障系统的总体设计.doc_第3页
第3页 / 共38页
计算机网络专业毕业设计(论文)网络监测与安全保障系统的总体设计.doc_第4页
第4页 / 共38页
计算机网络专业毕业设计(论文)网络监测与安全保障系统的总体设计.doc_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《计算机网络专业毕业设计(论文)网络监测与安全保障系统的总体设计.doc》由会员分享,可在线阅读,更多相关《计算机网络专业毕业设计(论文)网络监测与安全保障系统的总体设计.doc(38页珍藏版)》请在三一办公上搜索。

1、目录1 绪论111选题背景112论文组织结构12 网络监测与安全保障系统概述33 网络监测与安全保障系统分析431功能需求描述432目标系统要求44 网络监测与安全保障系统的总体设计实现64. 1数据包捕获模块分析6 4.1.1以太网数据包监听顾虑机制.6 4.1.2Libpcap介绍.6 4.1.3数据包捕获的实现.6 4.1.4本部分总结.94.2数据包分析模块设计9 4.2.1NetFlow技术.9 4.2.2NetFlow流量采集与聚合.11 4.2.3实际NetFlow流采集与流量监测.13 4.2.4本部分总结.144.3数据管理模块设计15 4.3.1MySQL的安装.15 4.

2、3.2数据导入和导出.16 4.3.3管理系统的设计.174.4 数据包安全模块设20 4.4.1网络异常分类.20 4.4.2异常处理保障网络安全.21 4.4.3本部分总结.295 网络监测与安全保障系统测试306 网络监测与安全保障系统的不足及改进思想327 结论33致谢34参考文献35附录361 绪论11选题背景随着我国各高校校园网建设的逐步发展,校园网渐渐成为各学校信息化的一个重要的组成部分。它不仅有效的提高了各部门的工作效率,也为校园生活提供了便利。然而校园网络日益膨胀,网络结构越来越复杂,安全隐患和网络检测建设也越来越多,维护工作也越来越困难。然而当今校园网的建设也随着科学技术的

3、发展变的越来越迫切和需要。随着需求不断扩大,大学生对于信息技术的要求和时效性也不断提高,因此校园智能网的建设也应运而生。然而,所有网络的建设必须要考虑到安全性,所以安全性也变得尤为重要,成了智能校园网建设的重中之重。要做到能更好的为学生老师服务,建设一个智能型的网络检测系统就不可或缺。因此,把校园网智能型网络监测与安全保障系统的设计和应用选作我的毕业设计题目。大多数安全性问题的出现都是由于有恶意的人试图获得某种好处或损害某些人而故意引起的。可以看作保证网络安全不仅仅是使它没有变成错误。他宝货要防范那些聪明的,通常也是狡猾的、专业的,并且在时间和金钱上是很充足、富有的人。当然校园网可能面临的只是

4、学生出于好奇方面的错误操作。这是网络安全问题的根源。因此,要做到网络安全。首先就必须要有一个智能的、合理的,从经济方面有相对划算的网络安全监测系统。本文将从智能型网络监测入手来保障校园网的安全。12论文组织结构第一部分:绪论:介绍了论文的选题背景、系统概述等。第二部分:系统概述:简述本课题的研究概况和存在的问题,以及本论文(设计)的指导思想、主要技术路线。第三部分:系统分析:需求分析、功能需求描述、目标系统要求、系统平台选择、数据库设计等。第四部分:总体设计及说明以及系统的功能实现,各功能模块的具体设计与实现方法。第五部分:系统测试。第六部分:系统的不足及改进设想。第七部分:结论。2 网络监测

5、与安全保障系统概述本文主要介绍了智能型校园网监测与安全保障系统的设计和应用。主要包括:数据包捕获模块,基于多模式的流量采集方式实现数据包级捕获组件与Netflow接受组件;数据包分析模块设计,基于流的抽样分析方法进行流量数据检测与处理,本文主要通过Netflow技术来整合数据的检测与处理;数据管理模块设计,采用MySQL数据库的设计,实现对数据内部物理调整,并选择合理的存取路径以提高数据库访问速度;数据安全模块设计,根据捕获到的数据异常情况进行警告活禁止处理,保障网络安全;最后是系统的测试,通过对网络进行流量监测分析,建立网络流量基准;通过连接会话数的跟踪、源目的地址对的分析、TCP流的分析,

6、及时发现网络中的异常流量,进行实时告警,保障网络安全。例如,网络中,如果网络所接受的流量超过它实际的运载能力或者有人利用恶意的ARP攻击软件在校园网中影响到其他用户的网络流量,就会引起网络性能下降。然而在实际的网络中,如果对网络流量控制得不好或者发生网络阻塞,将会导致网络吞吐量下降,网络性能降低。通过流量测量不仅能反映网络设备工作是否正常,而且能反映出整个网络运行的资源瓶颈,这样管理人员就可以根据网络的运行状态及时采取故障补救措施和进行相关的业务部署,提高网络的性能。通过网络传播计算机病毒的种类越来越多,信息安全受到了普遍而严重的威胁,容易导致网络阻塞甚至瘫痪。因而对网络进行流量监测分析,可以

7、建立网络流量基准,通过连接会话数的跟踪,源目的地址对的分析,TCP流的分析,能够及时发现网络中的异常流量,进行实时告警,保障网络安全。该系统针对复杂的网络流量分析,提出了一个基于多模式的流量采集技术。主要功能模块在内核中运行,极大提高了系统效率。对数据的处理采用了两层快取的方法,当有突发流量时,能够有效的保持数据的完整性。同时能够对监测网络的流量进行各种协议分析并统计出各个通讯主机当前带宽的使用排名。方便管理员查看与维护。当监测到网络中出现IP伪造、DoS及的攻击DDoS等,系统能够侦测到异常,并可以了解到该主机的详细使用情况,保障了网络的安全性。3 网络监测与安全保障系统分析31功能需求描述

8、 在网络中,如果网络所接收的流量超过它实际的运载能力,就会引起网络性能下降。然而在实际的网络中,如果对网络流量控制得不好或发生网络拥塞,将会导致网络吞吐量下降,网络性能降低。通过流量测量不仅能反映网络设备工作是否正常,而且能反映出整个网络运行的资源瓶颈,这样管理人员就可以根据网络的运行状态及时采取故障补救措施和进行相关的业务部署,提高网络的性能。通过网络传播计算机病毒的种类越来越多,信息安全受到了普遍而严重的威胁,容易导致网络阻塞甚至瘫痪。因而对网络进行流量监测分析,可以建立网络流量基准,通过连接会话数的跟踪,源目的地址对的分析,TCP流的分析,能够及时发现网络中的异常流量,进行实时告警,保障

9、网络安全。该系统针对复杂的网络流量分析,提出了一个基于多模式的流量采集技术。主要功能模块在内核中运行,极大提高了系统效率。对数据的处理采用了两层快取的方法,当有突发流量时,能够有效的保持数据的完整性。同时能够对监测网络的流量进行各种协议分析并统计出各个通讯主机当前带宽的使用排名。方便管理员查看与维护。当监测到网络中出现IP伪造、DoS及的攻击DDoS等,系统能够侦测到异常,并可以了解到该主机的详细使用情况,保障了网络的安全性。32目标系统要求本论文通过对网络流量的检测。将检测到的数据包信息导入到MySQL数据库中,在MySQL数据库中对数据进行管理和集中处理,根据捕获到的数据一场情况进行警告或

10、者禁止处理保障网络的安全。本项目通过对网络进行流量监测分析,建立网络流量基准;通过连接会话数的跟踪、源目的地址对的分析、TCP流的分析,及时发现网络中的异常流量,进行实时告警,保障网络安全。根据网络流量在网络运行的各个环节中的关键地位,对网络流量进行研究,同时采取一定的方法,科学地测量和分析流量特征成为一项艰巨而有意义地工作。而FMonitor(Flow Monitor)流量监测与安全保障系统能够很好的解决校园网智能型网络监测和安全。该流量监测与安全保障系统基于Linux平台,采用了层次化和模块化的设计。FMonitor核心模块为内核流量捕获模块和流量分析模块。内核流量捕获模块和流量分析模块同

11、时运行在Linux内核中;流量捕获模块采用基于Libpcap的包捕获技术,实现网络上所有数据包的捕获,将采集到的数据包,通过在内存中建立数据表和通过MySQL数据库结合的方式存储数据,提供给流量分析模块完成流量统计的任务。该系统针对复杂的网络流量分析,提出了一个基于多模式的流量采集技术。 主要功能模块在内核中运行,极大提高了系统效率。对数据的处理采用了两层快取的方法,当有突发流量时,能够有效的保持数据的完整性。同时能够对监测网络的流量进行各种协议分析并统计出各个通讯主机当前带宽的使用排名。方便管理员查看与维护。当监测到网络中出现IP伪造、DoS及DDoS的攻击等,系统能够侦测到异常,并可以了解

12、到该主机的详细使用情况,保障了网络的安全性。4 网络监测与安全保障系统的总体设计实现4. 1数据包捕获模块分析该部分主要是基于流的抽样分析方法进行流量数据检测与处理。本文通过libpcap的数据包捕获机制。网络安全的主要技术之一是对网络数据包进行分析,而网络数据包捕获有是网络数据分析的基础,其速度和捕获能力直接影响到数据分析的效率和准确率。本文在Linux平台上,研究了数据包捕获函数库Libpcap并设计完成一个小型数据包捕获器。4.1.1以太网数据包监听过滤机制传统以太网的数据传输技术是IEEE802.3标准定义的载波监听冲突检测技术(CSMA/CD)。以太网上的所有主机是通过物理总线拓扑或

13、星型拓扑间接到一条共享信道上的。当某个主机要发送数据包时,Ethernet协议将数据以Ethernet数据帧格式发送到共享信道上。正常状态下各主机网络接口对读入数据帧进行检查,如果数据帧中携带的物理地址是自己的或者物理地址是广播地址,那么就会将数据帧交给网络层处理,否则,丢弃该数据包。可见,网卡只接受和自己的地址有关的信息包,网卡就必须设置成杂乱模式。Linux下将网卡eth0设置成杂乱模式的命令如下:#Ifconfig eth0 promise 。4.1.2 Libpcap 介绍Libpcap(Libpcap for Packet Capture)即分组捕获函数库,是由劳伦斯伯克利国家实验室

14、开发的独立于操作系统的一个在用户级进行实时分组捕获的API函数接口,其函数库中大约有24个通用的Libpcap函数,2个Win32中专有的函数。所有的Libpcap函数均以pcap_为前缀。Libpcap用于用户组层次的数据包接获工作,它为底层网络监控编程提供一个易于移植的应用框架。它还可以按照用户指定的要求(如:特定IP地址、特定网段地址、特定协议类型、特定端口等)对数据包进行过滤,只捕获用户指定的数据信息包。4.1.3数据包捕获的实现 要在Linux平台上使用Libpcap函数库来捕获网络中的数据包,首先要在系统中安装Libpcap函数库,下载后需要先解压缩(此处下载的压缩文件是libpc

15、ap-0.7.1.tar.gz),然后把它安装到系统中才可以实用。步骤如下 #tar zxvf libpcap-0.7.1.tar.gz #,/configure #make #make install为实现数据包捕获,实用Vi编辑器编写一个C语言文件(如:datacap.c),该文件的变成流程如下图所示。其中利用Pcap_compile()函数和Pcap_setfilter()函数编译和设置过滤策略。经过滤,Pcap_compile()函数只能捕获满足过滤策略要求的网络数据包。为显示捕获的数据包详细信息,我们可以采用网络数据包分成协议处理方法,对捕获的数据包按照协议格式进行反的解析。Call

16、back()函数是为了实现分层解析处理功能,如图4-1、4-2。图4-1 数据包捕获流程图图4-2 网络监听流程图 数据包捕获文件datacap.c的部分关键程序代码如下:Viod capture(char*filterstr) char errbufPCAP_ERRBUF_SIZE; pcap_t *descr; char * interface=CAPTURE_INTERFACE; bpf_u_int 32 maskp; bpf_u_int 32 netp; struct bpf_program fp; if (“pcap_lookupnet():%sn”,errbuf); exit(1)

17、; descr =pcap_open_live(interface,BUFSIZ,1,-1,errbuf); if(descr=NULL) printf(“pcap_open_live():%sn”,errbuf);Exit(1);If(pcap_setfilter(descr,&fp)=-1)fprintf(stderr,”Error setting filtern”);Pcap_close(descr);Exit(1); If(pcap_loop(descr,-1,callback,NULL)0) printf(“pcap_loop:%sn”,pcap_geterr(descr); Pca

18、p_close(descr); Exit(1); 数据爆捕获设计完成后,要使Libpcap功能函数起作用,还需要实用将datacap.c文件编译成可执行文件,并将把Libpcap函数库编辑到目标文件中,方法如下:#gcc _ o datacap.o datacap.c lpcap。此处实用linux自带的GCC编译工具把数据包捕获模块的C语言文件datacap.c编译成可执行的二进制目标文件datacap.0。要运行datacap.o文件可以在Linux终端窗口中使用下面命令:.datacap.o。有些场合,我们需要设计一个捕获程序并要求该程序在系统启动起来是,就能自动运行,而不需要管理员的干

19、预,要实现这个目的,可以采用下述方法实现。首先将datacap.o文件放在/etc/rc.d目录下,然后用Vi编辑器打开并编辑/etc/rc.d/rc.local文件(该文件在系统启动时会自动执行),在该文件末尾加上sh/etc.rc.d/datacap.o,这样系统启动时就可以自动执行数据包捕获程序。4.1.4 本部分总结高效而准确的网络数据包捕获分析是进行网络安全检测和网络流量计费的基础和保障。随着网络的发展,网络数据包捕获分析必将收到越来越多用户的重视,拥有关法的应用前景。本文对网络数据包捕获机制进行研究,分析了传统以太网数据包监听过滤机制和Libpcap分组捕获函数库,并在Linux平

20、台上设计实现了一个小型的网络数据包的捕获分析器,该捕获分析器运行简单、高效、准确。并能实现数据包级捕获组件与Netflow接受组件4.2数据包分析模块设计该模块采用基于多模式的流量采集方式实现数据包及捕获组件与Netflow接受组件4.2.1 NetFlow技术 NetFlow是Cisco公司提出的基于Cisco IOS系统的一种应用。它用于提供网络设备上数据包形成的“流”的统计信息,并逐渐演变成为网络流量统计和安全分析的主要手段。目前利用:NetFlow可以实现网络流量监测,用户应用监控,网络安全,网络规划以及流量计费等功能。 NetFlow有两个核心的组件:NetFlow缓存,存储IP流信

21、息;NetFlow的数据导出或传输机制,NetFlow利用此机制将数据发送到网络管理采集器。(1)流(Flow)的定义 一条流由一个源主机与一个目的主机间的单方向传输的网络数据包组成,其中,源和目的主机由各自的IP地址和端口号来标识。一条流一般由以下七个关键字段惟一标识: 源地址 目的地址 源端口号 目的端口号 第3层协议类型(如TCP,UDP) 服务类型 入逻辑接口标示符(2)流(Flow)格式 启动NetFlow的设备会输出其缓冲区里的信息,以UDP包的形式传送给NetFlow流量采集器。包由包头和若干流记录组成。常用的NetFlOW输出包格式共有5个版本,它们分别是Version 1,V

22、ersion 5,Ver-sion 7,Version 8和Version 9,其中V5是最为流行和成熟的版本,目前得到最广泛的使用。最新的V9已经被列入IETF的标准,并有待进一步研究和规范。V9采用了模板技术与流记录相结合的方式,使NetFlow输出包的格式具有动态和可扩展的特性。NetFlow V9的输出格式主要由三部分构成: 包头部(Packet Header):包括版本号、包中数据流总数、系统时间、数据流序列、数据源ID等。 模板流集(Template FlowSet):包含一个或多个模板,模板是用于描绘数据流中各个数据段的含义,可以在路由器上根据需要自行设置模板。 数据流集(。Da

23、ta FlowSet):包含多个数据流,每个数据流集通过模板ID对应某个模板。数据采集端根据模板来解析数据流。4.2.2 NetFlow流量采集与聚合(1)系统概述 根据NetFlow的特点,设计并实现了一个网络流量监测系统,其系统结构如图4-3所示。图4-3 NetFlow网络监测系统图当NetFlow采集器接收到从路由器发送来的Net-Flow数据包后,采集器将进行数据包的解析和数据流聚合,形成多种适合统计分析需要的数据,再分门别类地存入数据库。分析器则根据前端不同的查询请求,依照一定的查询策略从数据库不同的表中提取相应数据进行分析展现。 本系统的后台采集器和聚合处理部分用JAVA编写实现

24、,数据库采用开源的MySQL,而NetFlow流量分析利用Tomcat服务器通过Web方式展现,前台部分用JSP编写实现。工作的重点即在于数据采集、数据聚合以及数据库设计部分。(2) NetFlow流采集 采集器的设计 数据采集模块是整个系统的基础。由于。NetFlow数据流量非常大,为防止丢包系统采用缓冲区和线程池结构,如图4-4所示。图4-4 NetFlow流量采集模型当采集器监听到一个NetFlow数据包时,将该数据包接收到缓冲区,并从包解析线程池中取出一个线程,根据相应的NetFlow的报文格式解析出数据流信息,将该原始流信息放入缓冲区,然后将原始流存入数据库,同时采用相应的聚合策略聚

25、合原始流生成聚合流并存入相应的数据库中。 NetFlow数据包接收与解析 由于NetFlow数据是借助于UDP数据报来传送,因而倘若后续的处理速度跟不上数据包到达的速度,则会出现严重丢包的现象。为解决高速大流量数据的及时接收及较低丢包率问题,采用了多线程的方式来实现。用独立的两个线程分别完成数据接收和解析操作:接收数据的线程在特定的IP地址监听相应的UDP端口,接收到的数据暂存在缓冲区中;解析线程从缓冲区提取数据,按照相应的报文格式进行解析。由于接收线程和解析线程共享同一个临界资源,即接收的缓冲区,需要对临界资源进行加锁操作。 下面为部分实现多线程采集的JAVA代码实例,其中packet为接收

26、的NetFlow数据包对象,linkedLst为linkedList容器,利用synchronized进行线程间同步 接收线程NetFlow流聚合 NetFlow的原始数据数据量非常庞大,保存每一条流数据的原始记录将会使对数据进行查询分析时产生效率低下的问题,在绝大部分应用中也没有必要把数据粒度设计得如此之小。所谓流量聚合,是指对符合NetFlow数据格式的原始流记录根据一定条件进行流量合并,实现多条流合并为一条的过程,以实现原始流的压缩整理。(1) 聚合策略 流量聚合有三个关键要素:聚合条件(F)、时间粒度(T)和聚合项(C)。满足相同聚合条件和时间粒度的流进行流量叠加,并保留聚合项。三元组

27、聚合策略:,其中: 按照实际流量分析的需要,从F,T,C中各取出一个值组成一个聚合策略。对于T的粒度要根据实际监控的时间长短和监测精度来设置,一般来说T3 min适合于当天实时流量的监测;T30 min用于一周流量的分析;T3 h用于一月内流量的分析。(2) 聚合的实现 对于一个新采集的原始流,必须能根据其所携带的聚合条件信息快速匹配是否已存在与其相同聚合条件的聚合流,若有则做流量叠加,若没有则创建一条新的聚合流。Hash表具有从Key快速映射到Value的特点,这种特点对于实时性较高的聚合非常有意义。图4-5为流量聚合的Iash表设计。图4-5 流量聚合hash表设计在图5中聚合条件(F)作

28、为Key,聚合项(C)作为Hash函数的映射值,时间粒度(T)作为Hash表导出到数据库的时间。这样可以满足实时流量监测的需要,同时也压缩数据减少存储空间,提高数据的查询效率。4.2.3 实际NetFlow流采集与流量监测 在本系统设计的数据采集器的支持下,系统数据库为前端分析提供了充足且多样化的数据准备,前端程序只需通过简单的查询语句即可得到所需的数据集,简化了查询的工作量。利用该系统采集NetFlow数据包50 000个,时间持续约7 h,时间粒度为3 min,主要检验丢包情况,以及聚合后压缩效率。这次采集无丢包发生,表1为该系统采集的数据结果。 图6是系统由所采集的数据生成的该时段的流量

29、监测图4-6。图4-6 局域网某时段网络流量4.2.4结 语 NetFlow数据流的海量特征使得服务器程序的效率至关重要,因此基于NetFlow的流量监测的主要任务是如何根据应用保存最重要的网络流特征以及如何更高效地实现数据检索。基于NetFlow特点,提出了一套适用于大流量网络的流量采集与聚合存储方案。流量采集通过多线程和缓冲区机制实现,有效提高了流量采集的可靠性。采集的原始流经聚合,并通过合理的分级存储策略进行存储组织,为前端的数据分析提供了全面支持。本系统在实际应用中取得了良好效果。下一步还将对采集和多级聚合存储方案进行改进,以丰富系统对网络流量统计分析功能,并力争为异常流量分析提供较为

30、完善的数据支持。具体如图4-7。图4-7 NetFlow流量分析系统结构4.3数据管理模块设计4.3.1 MySQL的安装本模块采用MySQL数据库的设计,实现对数据内部物理调整,并选择合理的存取路径以提高数据库访问速度。(1)MySQL 数据库的安装MySQL是一个可以跨平台的数据库系统,一个真正支持多用户、多现成的SQL数据库系统,也是具有客户服务器体系结构的分布式数据库管理系统。同时,也是Linux系统中实用最为简单的数据库系统,安装、实用和管理都较为简单,且数据库系统的稳定性也相当不错。要安装MySQL必须获得它的安装文件,可以再Linux安装盘获得,几乎所有的Linux发行版都内置了

31、MySQL数据库。如果不知道系统是否安装了PostgreSQL或已经安装了何种版本,可以通过实用下面的命令进行查询。root9 zq # rpm qa | grep mysql 程序运行结果如下。 root zq #rpm qa | grep mysqlmysql-server-5.0.22-2.1.0.1mysql-connector-odbc-3.51.12-2.2mysql-5.0.22-2.1.0.1libdbi-dbd-mysql-0.8.1a-1.2.2上面表示MySQL服务器已经安装,版本为mysql-server-5.0.22-2.1.0.1。假如Linux系统还没安装MySQ

32、L服务程序,MySQL服务程序在RPM安装包文件可以通过Red Hat Enterprise Linux 5 系统的安装盘(DVD版第一张)进行安装,加载光驱后在光盘的Server目录下找到MySQL对应的安装包文件进行安装。要想用数据库,必须要启动数据库服务,可以通过一下方式来启动PostgreSQL服务。实用mysql脚本启动PostgreSQL。root zq #/etc/init.d/mysqld start若希望MySQL在下次系统启动时自动启动,可以运行ntsysv命令,在打开的service菜单中将mysql选中。4.3.2 数据的导入和导出(1)MYSQL的命令行模式的设置:桌

33、面-我的电脑-属性-环境变量-新建-PATH=;path/mysql/bin; 其中path为MYSQL的安装路径。(2)命令行进入MYSQL的方法:C:mysql -h hostname -u username -p按ENTER键,等待然后输入密码,这里hostname为服务器的名称,如localhost,username为MYSQL的用户名,如root.进入命令行就可以直接操作MYSQL了。(3)从数据库导出数据库文件:将数据库mydb导出到e:mysqlmydb.sql文件中:打开开始-运行-输入cmd进入命令行模式c:mysqldump -h localhost -u root -p

34、mydb e:mysqlmydb.sql然后输入密码,等待一会导出就成功了,可以到目标文件中检查是否成功。将数据库mydb中的mytable导出到e:mysqlmytable.sql文件中:c:mysqldump -h localhost -u root -p mydb mytable e:mysqlmytable.sql将数据库mydb的结构导出到e:mysqlmydb_stru.sql文件中:c:mysqldump -h localhost -u root -p mydb -add-drop-table e:mysqlmydb_stru.sql/-h localhost可以省略,其一般在虚

35、拟主机上用。4.3.3管理系统的设计网络管理协议(Simple Network Management Protocol,SNMP)的体系结构是围绕着一下四个概念和目标进行设计的:保持管理代理的软件成本尽可能低;最大限度的保持远程管理的功能,以便充分利用Internet的网络资源;体系结构必须有扩充的余地;保持SNMP的独立性,不依赖于具体的计算机、网关和网络传输协议。在最近的改进中,又加入保障SNMP体系本身安全性的目标。实用SNMP进行通信的实体被称作SNMP应用实体。SNMP代理与一系列SNMP应用实体的集合称作SNMP共同体(SNMP Community)。标示每一个SNMP共同体的字符

36、串被称谓SNMP共同体名。如果SNMP应用实体接收到的SNMP报文源自与之同处一个SNMP共同体的SNMP应用实体,则该报文被称作可靠SNMP报文。鉴别报文在SNMP共同体中是否可靠的规则集合被称作鉴别机制。利用一种或几种鉴别机制鉴别一个SNMP报文是否可靠的访问被称作鉴别访问。与特定网络元素相关的MIB对象子集被称作该网络元素的SNMP MIB视图。(1)设计的目标和原则系统应具有良好的可移植性和跨平台性,在系统的开发中不需要考虑特定的操作系统和特定的运行环境。不同的用户有不同的操作权限,在系统中可以简历不同层次的用户组,在登录到系统后,不同的用户可以看到不同的视图。规范的数据库设计,减少数

37、据冗余,合理的数据库设计有利于降低有数据的存储空间和提高体统的执行效率。本系统提供了同意的图形用户界面和有强大的数据库管理功能。实用MySQL数据库配合PHP程序存储一些变量数据并对变量数据进行调用,如:主机名、主机IP、SNMP团体名、端口号、模板信息等变量。实用RRD环状数据库管理网络流量数据和生成力量分析图标。在图像管理上,系统采用了树状结构的查看界面,对收集到的网络性能数据以图形的方式表现出来,通过不同的颜色的曲线来反应不同的性能数据。在用户管理上,能对用户的权限进行细致的划分,不同用户具有不同的操作权限和用户视图。通过设置阀值的方式,以图形颜色的变化和声音来对异常流量进行预警,实现网

38、络流量的负载均衡。系统总体架构采用分层的方法,将整体分为三层:第一层是用户界面模块,第二层是功能模块,第三层是通信模块。根据系统的不同功能及其面向对象的不同又分为9个模块。 系统的总体架构如图4-8所示。图4-8 数据库系统的总体架构(1) 系统的工作流程系统运行的主要流程如下图所示,简要说明如4-9:图4-9 系统通讯流程图SNMP通信模块定时向SNMP设备发送网络数据采集令,SNMP设备将相关数据反馈给SNMP通信模块。SNMP通信模块将采集到的数据发送给图形处理模块,图形处理模块按相关规则整理好数据并将其存放到环状数据库中。在图形处理模块的系统用户通过图形的用法如下:系统用户通过图形用户

39、接口程序查看某台设备的流量等运行情况。图形用户接口程序向MySQL数据库查询该设备的主机名、IP地址、SNMP团体名、端口号等信息。图形用户接口程序利用刚才查到的该设备的相关信息在图形处理模块中查询,图形处理模块生成该设备性能情况的图形。图形用户接口程序将该设备运行情况的图形返回给用户功能模块的划分系统的设计遵循软件工程的规律,运用模块化的设计思想,非常方便以后对软件的修改和维护。本系分为6大模块,分别是用户管理认证模块、设备管理模块、接口管理模块、流量管理模块、流量分析与图标处理模块和流量一场处理模块。本文重点介绍数据分析与图形处理模块图形处理模块主要是饿瘦来自流量管理模块的接口流量等网络性

40、能数据,并以RRD环状数据库格式存储。在用户需要查看某个或某些设备的性能状况时,按照用户的要求将数据以图标的方式现实给用户。以方便用户能直观的了解设备乃至整个网络的隐形情况。本系统不仅会每5分总就自动生成所有的BMP图像,而是仅当用户发生请求时,才从RRD数据库里取出数据,然后调用RDD数据库的绘图函数,生成BMP图像并现实在前台。这种方式打打的增加了系统5分钟内可处理的端口个数。除此以外,前台还提供了丰富的历史查询功能及权限管理功能。由于RRS能够管理大的数据量,在其中可能存储多年的详细记录,可以供网络管理员分析实用。系统可以长期存储收集道德网络流量数据,并可根据用户的要求,以图标的方式表现

41、出1年、1个月、1个星期一级任意时间短的网络流量状况。SNMP是一种广泛应用于TCP/IP网络的管理协议,PHP是具有良好跨平台的网络变成语,这两者的结合为网络管理提供了强大的技术支持。本系统实用的操作系统为Linux,Web服务器为Apache,编程语言为PHP,数据库系统为MYSQL,这些开源团建可以说是网络应用开发的最佳组合,所以实用这套开源系统平台开发的应用系统可移植性好、执行效率高、实时交互性好、易于修改和维护,并且极大的降低了开发成本。实用本系统可以对网络中的网络设备和服务器等一切基于SNMP的网络硬件进行监控,通过定时采集网络设备各端口的流量来得到该网络设备的总流量,对于服务器而

42、言,则是定时采集服务器的CPU、内存、系统负载、网卡流量等数据,来全面了解网络的运行情况。然后系统把采集的数据进行整理、加工并存储于RRD环状数据库中,根据用户的需要对流量数据进行分析,以图标的方式展现出来,比如可以展现给用户每小时、每天、每月、每年网络流量的分析图表,可以同济任意时间段流量的最大值、最小值、平均值等等。网络管理者可以对网络短期和长期的性能进行分析,从整体上了解网络的运行情况,合理实用这些网络流量数据资料对发现网络运行中的问题、网络的升级改造都有重要的意义。对于网络流量的监控还可以有效的安排网络中大量数据的传输工作,通过掌握网络流量的高峰期和低谷期,使大量的数据的传输工作避开网络流量的高峰期,从而可以提高网络的利用率,防止大量数据的传输工作导致的网络拥塞问题。进而保障网络的安全性能。4.4 数据包安全模块设该模块主要同过以上对数据的采集、分析、管理、处理等根据捕获到的数据异常情况进行警告或禁止处理来保障网络的安全。4.4.1 网络异常分类网络流量异常的产生有多种原因造成,总结起来产生网络流量异常的主要原因有:(1)网络设备自身发生的故障,例如在网络中由于路由器或者是交换机的故障导致网络拓扑结果的变化或是网络的中断都

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号