




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
精品论文大集合一种基于统计指标和 dbms 的网络监测分析方法1鄢北军 1,章洪良 1,曾彬 21 湖南大学软件学院,湖南省长沙市(410082)2 湖南大学计算机与通信学院,湖南省长沙市(410082)e-mail:摘要:在网络监测中,对监测生成的海量数据的进行存储和分析是网络监测的一大瓶颈, 如何在满足监测要求的前提下减少存储的数据量并简化分析过程是目前人们非常关注的问 题。本文从网络监测的实际需求出发,提出一中基于存储统计指标和 dbms 的网络监测分 析方法,并且在实际网络中实现和部署了一个原型。实际应用的效果表明,该方法很好的解 决了网络监测中的数据瓶颈问题。关键词:网络监测,统计指标,数据库管理系统 中图分类号:1引言网络监测是了解网络流量,分析网络业务性能的重要手段。一套监测系统从功能上可以 分为数据采集和数据分析两部分。目前对监测采集到的数据有两大类处理方法。一是利用平 面文件存储数据,数据格式包括二进制日志格式、ascii码文本格式、html格式和xml等 格式。这种方法在数据量不大的短期监测中适用。但在实际应中对高速网络进行监测,数据 量一天就能突破一个tbit1,2。平面文件系统难以对海量数据进行有效的管理,同时在此基 础上的后期分析困难,系统扩展性差。另一种做法是简单的利用数据库管理(dbms)系统 存储管理数据,利用数据库系统能较好的解决了海量数据难管理的问题,而且分析性能较高, 系统具有一定可扩展。但现有的基于dbms监测系统消耗存储空间更多,对硬件资源要求高, 导致监测代价太大2,3。为了方便监测数据的管理,同时简化分析过程和节约监测成本,本 文提一种基于统计指标和dbms的网络监测分析方法。该方法对实时捕获得到的数据包进行 在线处理,生成预先定义好的一系列指标,再依周期将这些指标录入关系数据库;然后通过 关系数据库完成管理和后续的分析处理工作。实际应用的结果表明,本文所提出的方法能在满足网络监测要求的前提下,大幅度减少 存储开销,并提高了网络监测系统的性能。本文后续章节分为研究背景和相关工作、方法描 述和原型实现、功能及性能评估和结论这四个部分。首先,在研究背景和相关工作部分简单 介绍了现有的典型网络监测数据处理方法并分析了他们的不足,解释网络监中测数据瓶颈的 成因及影响;接下来,在方法描述和原型实现部分,介绍了本文所提出的新方法的基本思想 和功能流程,并一个原型实现为例进行详细说明;第三部分根据实际应用效果对原型系统进 行功能和性能评价;最后,结论部分总结本文所提出的方法。2相关工作目前网络监测分析系统有很多,大多采用平面文件系统也就是操作系统自带的文件系统 存储数据,snort4系统就是这样的典型。snort 基于 libcap5抓包,可以输出包括二进制、 文本、xml 等在内的多种格式的记录文件。其中二进制格式也称为 tcpdump6格式,在网 络监测中最为普及。该记录格式将网络数据包的信息以原始二进制形式保存。下面截取了一 个 tcpdump 格式文件的开头片断做简单分析:1本课题得到国家自然科学基金 (60673155, 60703097)的资助。-2-0008: a1 b2 c3 d4 00 02 00 040008: 00 00 00 00 00 00 00 000016: 00 00 ff ff 00 00 00 010024: 3f 44 32 28 00 0c 2d af0032: 00 00 00 96 00 00 00 960040: 00 06 25 60 f4 c0 00 030048: 93 a7 09 38 08 00 45 000056: 00 88 8e 53 00 00 80 110064: 9d 9d c0 a8 01 66 ca 680072: 81 fd c2 34 1f 40 00 740080: c3 ad 02 08 16 00 22 000088: 10 01 82 5d 90 6f 30 fd0096: 96 3b b1 0f e5 ff 8e 3e其中开始的 24 字节为文件头信息,表明该文件是 tcpdump 格式文件。后面就是一连串封装了的数据包,封装格式从上到下为“应用层包-tcp 包-ip 包-链路层封装-tcpdump 格 式文件”。tcpdump 格式的文件非常紧凑,包含的内容也很丰富,但对存储空间的消耗大的 惊人。 在一条满负载的 oc-192 链路中,按平均包大小 550byte,存储包头 28byte 计算。 tcpdump 格式文件理论上将以 130mbyte/s 速度增长。虽然实际网络流量不会这么大,但即 使以 1m/s 的速率增长也太快了,一天的监测数据就需要消耗掉一个普通硬盘的存储空间。其 它基于平面文件的存储格式如文本格式,xml 格式只是对 tcpdump 格式内容做了简单“翻 译”,对存储空间的要求甚至还高一些。利用平面文件存储监测数据除了消耗存储空间巨大 外,数据管理分析性能也成问题,因为所有文件的命名和存放路径选择往往需要人工参与。 随着监测的持续,数据文件越来越多,文件重复命名路径错误等人工出错的概率也随之增 大。在数据分析过程中,分析往往程序需要某个特定数据段。而文件系统是数据流的形式记 录数据的,定位数据需要一次线性扫描,加上文件数量多又没有组织,使分析过程开销增大, 降低整体分析性能。针对平面文件系统难以管理海量数据等问题。近年来有不少监测系统开始利用数据库管 理系统(dbms)替代平面文件系统。其中 intrabase3是一种全基于 dbms 的网络监测分 析方法。它将 tcpdump 格式等形式的文件经过一个过虑模块转换成关系数据表记录的形式, 然后录入数据库。数据表是事先计好的,过滤模块根据数据表的设计来转换数据。下图 1 展示了转换 tcpdump 数图 1 intrabase 核心表fig1 intrabase kernel table据文件时的数据库的核心数据表设计。其中表 connect 用来保存链路连接信息,该表由一个四元组(源地址 ip,目的地址 ip,源端口和目的端口)确定一个连接,id 主键同时作为packets 表的外键。表 packets 以时间戳做主键,余下字段除 connid 之外,分别对应 tcp 包头中的序列号,数据长度,标志符,窗口,ack 信息等内容。以这种方式,网络中每一个tcp 包对应于 packets 表中的一条记录。除了核心数据表外,还可以根据需要增加其他辅助 表。intrabase 完全将数据由数据库系统来托管。同时,可以利用聚簇,索引,并行检索, 数据表分区等数据库优化技术,使得数据的查找分析能在短时间内完成。一定程度上解决了 监测数据不便管理的问题。同基于平面文件的监测系统比较,intrabase 的分析过程不需要 额外的工具,简单的编写 sql 语句就能得到在在二进制格式下不能直接获得的信息。例如 统计 tcp 包总流量,interbase 系统中只要一个简单的“selecet sum(nnbyte) from packets”语句。又因为 sql 是国际标准化的,系统可以在各种数据库间移植,有良好的 通用性和扩展性。不过 interbase 的作者也指出,保存同等信息的情况下,interbase 系统占 用的存储空间是二进制格式文件的 1.5 倍左右。所以目前简单的应用 dbms 只能一定程度 上缓解海量监测数据管理困难的问题。综上所述,非常需要一种方法,可以在保证满足网络监测分析要求的前提下,大幅减少 监测数据,使系统便于管理,提高监测性能。3.改进方法和原型系统3.1 基于统计指标和 dbms 的方法本文的方法也是是基于数据库的,数据库在数据存储管理方面有一般文件系统不具备的 优势。首先文件系统的管理人工参与程度较高,管理自动化程度底,容易出现数据讹误。在 数据库技术中,用户无需关心数据存储管理的底层细节,可以集中精力在网络监测业务本身。 其二,文件系统用字节流形式保存数据,不知道数据间的关系,查找和插入的效率底。而数 据库用多叉树的结构组织数据,并提供索引、分区等技术大大提高了数据操作效率。关系数 据库技术已经发展了 40 多年,既有完备的理论体系又有很多成熟的商业产品,是目前应用 最广和最可靠的数据存储技术。虽然本文所提出方法基于关系数据库,但是在 dbms 中所保存的并非是传统方法中的 数据包记录信息,而是预先定义好的周期性统计信息。图 2 展示了基于统计指标和 dbms 监测系统的框架。图 2 改进方案架构图fig2 improved sketch diagram其中,探针直接接入被测链路,以被动监测的方式侦听数据表,并根据控制台下达的命令来捕包,然后将处理结果传回给控制台。探针可以同时有很多个,一般是一个被测链路 对应一个探针。控制台是用户与系统交换的接口,负责向探针下达监测任务,接受监测数据 并写入数据库。控制台同时兼有实时显示和数据分析功能。数据库存储并管理监测数据和系 统的全局信息。-7-进行监测时,首先由用户根据监测需求确定相关的统计指标和统计周期的时长,向控制台输入参数。控制台选择正确的探针并向它下达监测指令。探针接受指令将每一个指标映射 为内存变量,在统计周期开始时这些变量归零。探针解析所有捕的数据包并将结果累加到对 应的变量上。一个周期结束时,将指标的累计值传回控制台,然后指标归零开始下一轮周期。 控制台对接受的数据简单整理后直接写入数据库。数据总量只与指标数据和周期时长有关。 分析过程也相当简单,用户通过控制台或其它 sql 工具向数据库发送命令和 sql 语句就能 得到结果。3.2 实现原型基于上述的方法,采用 oracle9i 数据库,我们实际开发了一套基于统计指标和 dbms 的网络监测分析系统。它可以完成一些网络监测的简单功能,其主要用于监测和分 析实际网络中依据各层协议的流量构成和变化趋势情况。其中,具体的协议层次包括数据链 路层(mac),网络层(ip),传输层(tcp 和 udp)。如图 3 所示,其给出了在关系数据库 中 tcp 层所包含指标对应的数据表设计。tcp_protlinkinfopk p_time pk linkid pk prot_idperiod in_packet out_packet in_byte out_bytepk linkidsorce_ip des_ip sorce_prot des_ip bandidth otherstcp_prot_listpkprot_idprot_name others图 3 tcp 层数据表设计fig3 the design of tcp data table表 linkinfo 保存全部被监测的网络链路信息,是一个全局表。表 tcp_prot_list 是辅助表,一个协议 id 对应一个具体的 tcp 上层协议。表 tcp_prot 是用来保存 tcp 层以上协议流量 信息的主表,由时间戳和链路 id,协议 id 组成联合主键。其中链路 id 和协议 id 是外键, 分别与 linkinfo 表和 tcp_prot_list 表关联。每条记录表示一个 tcp 层上具体协议在一个统 计周期内的流量累计值。mca 层,ip 层,udp 层数据表设计与图 2 类似,所以对应还有数 据表 mac_prot, ip_prot,udp_prot, mac_prot_list, ip_prot_list, udp _prot_lis。所有 list 表中的每 个记录将在数据采集过程中对应一个指标,数据采集流程如下图 4,表 1 列出了确定的具体 的统计指标。图 4 数据采集流程图fig4 data capture process表 1 原型统计指标tab.1 system metricslist 表确定的指标mac_prot_listip,arp,mpls,gsmp,x25,ppp,802.1ip_prot_listtcp,udp,icmp,ospf,isis,egp,gre,mtp,sp,igrp,micptcp_prot_listhttp,ssh,ftp,smtp,rap,telnet,h323,sockets,httpsudp _prot_lissnmp,udns,nfs,netbios,rip,tftp,uldp,uwins为了便于理解,我们以一个封装了 http 协议内容的数据包来演示该流程。该包的封装形式如下:负载http 头tcp 头mac 头探针捕包后由外向内进行解析,首先分析 mac 包头信息,得知这个 ip 包,在统计指标中,将 ip 包个数加 1,将 ip 协议流量加上对应得值。然后分析 ip 头并将 tcp 包个数加 1,tcp 协议流量加上对于得值。最后分析 tcp 头,并累加 http 协议指标的信息。到此对这个数据包 的在线处理结束,抛弃该包接着处理下一个。周期结束时,由探针将各个统计指标值发给控 制台。控制台在接受到数据后打上时间戳并加上链路 id 和协议 id,然后分别录入数据表 mac_prot_list,ip_prot_list,tcp_prot_lis。4功能和性能评估我们从存储空间开销、数据分析和数据管理、通用性可扩展性这三方面分析对我们的系 统进行评估。4.1 存储空间开销应用基于统计指标和 dbms 的方法能有效减少数据冗余,减少存储空间的开销,从而 解决网络监测中因数据量大引起的存储处理困难的问题。首先从理论上分析,以往不利用统计指标的方法,无论时基于平面文件还时数据库,本 质上都是对数据包逐一记录。我们把存储空间消耗记为 space,网络速率记为 traffic,网络数 据包个数记为 pacekts_count,监测持续时间为 t。数学符号 表示正比例的线性关系,则有 列关系存在:spacepacekts_counts pacekts_counttraffictspacetraffict由前面两个关系可以推导出第三个关系,即监测数据所占存储空间与网络总流量成正 比。如果使用统计指标的方法,假设统计周期时长为 period,统计指标个数为 number,则有:spacenumbert/period存储空间与网络带宽无关,与指标个数和统计频率成正比。图 5 是一天的实际监测结果, 可印证上述分析。1008060402001:00 5:00 9:00 15:0017:0021:00线3 线2线1图 5 实际监测结果fig5 actual measurement result图中 x 轴表示时间,y 轴表示数据量。其中矩形的点表示某个时刻被测链路的实际流量,所以线 2 代表链路实际网络流量。菱形点表示某个时间点后监测 60 秒生成的 tcpdump 格式数据文件大小,线 3 可以表示 tcpdump 格式文件存储空间消耗速率。这两条线变化情况 一致,说明存储空间与网络流量呈线性正比例关系。图中三角行的点表示我们的原型系统在 某个时间点占据的累计存储空间大小,它呈直线缓慢增长且不受网络流量波动影响。3.2 数据分析和数据管理已实现的原型系统具有较强的分析功能,而且分析过程简单。目前已具备的功能有:分析表 1 中列出的全部协议的网络流量随时间变化情况。分析网络流量组成,各个协议流量百分比。分析被测链路总流量分布情况,带宽利用率变化情况。比较各链路流量情况。此外我们打算扩展热点协议分析,如对 p2p 和 voip 协议和业务流分析等功能。并朝着 监控发展,不仅仅能监测网络,而且能根据监测分析结果自动对网络进行调整。分析过程不需要第三方工具,全部用标准 sql 语句实现。部分分析代码以存储过程的 形象驻留在数据库上,可减少编译次数,提高分析性能。在数据管理方面,由 oracle 数据库管理组织数据并自动生成索引。索引用树的数据结构 组织,定位数据的代价与数据量是的关系。同时通过对几个数据量大主表按时间分区,可 以进一步减少分析过程中的数据扫描时间。3.3 通用性和扩展性该系统是一个通用监测平台,具有良好的可扩展性。整个系统基于数据表和指标统计值, 各个指标之间没有直接的依赖关系。所以当有新的监测任务或监测内容有所更改时,只需更 改或增加新的指标即可。在分析阶段,编写新的 sql 语言也是非常简单的。综上所述,基于统计指标和数据库的监测分析方法能在满足监测需求的前提下,解决网络长期监测中数量过大的问题,并简化分析过程,节约监测成本。4总结本文针对网络长期监测中数据量过大导致存储和处理困难的问题,提出一种基于统计指标和 dbms 的网络监测分析方法。与已有方法相比具有如下优势:需求驱动,保存统计 指标信息的做法大幅度减少数据冗余方便数据管理,简化分析过程,可以建立一个通用网 络监测平台,在其基础上可以进一步实现监控功能降低网络监测的硬件成本。当然我们的 方法要求系统有很强的在线抓包和处理能力,我们也在做这方面的努力并有了一定的进展。 总的来说,基于统计指标和 dbms 的方法能够在中低端磁盘和内存配置的情况下完成对网 络进行长期的持续监测,降低了监测成本。参考文献1 v.paxson, “experience with internet traffic measurement and analysis”, lecture at nttresearch, february2004.2s.b.moon and t.roscoe, “metadata management of terabyte datasets from an ip backbone network: experience andchallenges”, in processing of workshop on network-related data management (nrdm), 2001.3 m.siekkinen, e.w.biersack, g.urvoy-keller, v.goebel and t.plagemann “intrabase: integrated trafficanalysis based on database management system” inforcom 2005. 4 snort: 5 libcap: 6 tcpdump:a measure and analysis method for network based onstatistical information and dbmsyan beijun 1,zhang hong-liang 1,zeng bin 21 software college of hunan univer
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 区块链推动办公用品供应链的智能化升级
- 区块链技术下的新型教育模式探索
- 医学科研论文写作中的数据分析技巧
- 教师疫情期间工作总结模版
- 人工智能的商业化应用及发展趋势
- 医疗AI的监管政策与数据保护实践
- 医疗数据共享的区块链解决方案及其效率优化
- 借款用途合同范例写
- 光伏签约合同范例
- 《SPSS Modeler数据挖掘方法及应用(第4版)》全套教学课件
- 【MOOC】数据结构与算法-北京大学 中国大学慕课MOOC答案
- 农村社区体育课件
- 员工培训流程图
- 《微观经济学》考试复习题库(含答案)
- 江苏省南通市2024-2025学年高一上学期11月期中英语试题(无答案)
- 2024年“头脑奥林匹克万人大挑战”题库
- 智研咨询发布:2025年中国金针菜(黄花菜)行业市场全景调查及投资前景预测报告
- 医院定岗定编方案
- 保健推拿操作技术规范 第3部分:小儿DB41-T 1782.3-2019
- 《害羞与社交焦虑症:CBT治疗与社交技能训练》随笔
- AIGC视域下非遗文创产品的数字化转型升级路径研究
评论
0/150
提交评论