在线客服系统

基于大数据技术的网络日志分析系统研究

时间:2016-02-25 09:36 来源:www.fabiaoba.com 作者:任凯 邓武 俞琰 点击:

  【论文摘要】传统的日志分析技术在处理海量数据时存在计算瓶颈。针对该问题,研究了基于大数据技术的日志分析方案,即由多台计算机完成日志文件的存储、分析和挖掘工作;建立了一个分层的网络日志分析系统:Syslog完成日志采集,Hadoop负责分布式存储和并行计算,在MapReduce框架下重新实现了IP统计算法。实验结果表明,在数据密集型计算中使用大数据技术可以明显提高算法的执行效率和系统的可扩展性。

  【论文关键词】大数据;日志采集;MapReduce;日志分析;IP统计

  Research on network log analysis system based on big data technology

  REN Kai1, DENG Wu2, YU Yan3

  Abstract: There is a calculation bottleneck when traditional log analysis technology processes the massive data. To solve this problem, a log analysis solution based on big data technology is proposed in this paper. In this solution, the log file storage, analysis and mining tasks will be decomposed on multiple computers. A layered network log analysis system was established, in which Syslog fulfils the log acquisition, Hadoop is responsible for distributed storage and parallel calculation, and IP statistics algorithm is realized with MapReduce technology. The experimental results show that the use of big data technology in data?intensive computation can significantly improve the execution efficiency of algorithms and scalability of the system.

  Keywords: big data; log acquisition; MapReduce; log analysis; IP statistics

  0引言

  随着信息化建设的多年发展和逐层推进,大型企业在内部网络中积累了大量的软硬件资源,包括:交换机、路由器、防火墙、PC服务器、Unix小型机、各类业务应用系统、中间件、数据库等。这些计算机设备和网络设备持续不断地记录了大量的日志。日志文件作为硬件设备、系统和用户行为的记录工具,在监控网络运行情况、调查设备故障、保护系统安全等方面有着举足轻重的作用[1]。通过分析日志文件,能够获取有关设备故障、用户异常行为、网络运行状况等信息,有利于及时处置网络安全事件和软硬件故障,保证网络的稳定性和安全性。

  在大型企业的内部网络中,日志源众多、格式不一、体量庞大,长期存储的数据量可达TB或者PB级别。传统的日志分析系统使用单机技术处理海量数据,在存储和计算两方面都遇到了瓶颈。为了解决这些问题,近年来大数据技术被广泛应用。作为GoogleMapReduce[2]和GFS[3]技术的开源实现,ApacheHadoop集成了数据存储[4]、数据处理、系统管理等功能,已经成为大数据领域事实上的标准[5],特别适合于大数据的搜索、挖掘、分析和机器学习[6]。

  本文提出分层的网络日志分析系统,并详述了日志采集流程和实现方案,之后提出了一种基于MapReduce编程模型的IP统计算法,最后进行算法实验和效果分析。实验证明,基于大数据的日志分析技术具有更好的时效性和可扩展性。

  1网络日志分析系统

  1.1功能架构

  在大数据系统中,日志是广泛使用的数据采集方法之一[7]。它具有4V特征[8]:Volume,数据体量巨大;Variety,数据类型多样;Velocity,数据生成快速;Value,数据价值大但密度低。为了应对日志的大数据特性,结合日志数据的存储和分析流程,本文给出网络日志分析系统的分层架构,由日志源层、采集层、存储层、业务层、显示层组成,如图1所示。

  图1分层的网络日志分析系统

  日志源层:由企业内网中的计算机软硬件和网络设备构成,它们源源不断的产生各种日志记录。

  采集层:由一个或多个日志采集服务器构成,主要完成日志记录的接收和存储。由于HDFS无法有效处理大量小文件,日志服务器需要将较小的日志文件归档合并成大文件后,再发送给存储层。

  存储层:存储层负责对原始日志和统计分析结果进行分布式存储。它的底层采用HDFS文件系统,配置海量的存储空间;dfs.replication参数一般设置为3(也无需设置更大),保持数据的多个副本,这样能够可靠、持久的存储非结构化数据。基于HDFS的HBase用于存储结构化和半结构化数据,作为GoogleBigtable[9]的开源实现,它的列式存储特性能向上层提供更好的并行计算支持。原始日志主要存储到HDFS中,统计分析结果既可以存入HDFS也可以存入HBase中,HBase在满足大数据存储的同时,能够提供低延迟的数据访问。

  业务层:由各种日志分析程序构成,主要解决日志数据如何统计分析的问题。根据统计分析作业定制的功能需求,主要包括三种形式:MapReduce作业、Streaming作业和Hive作业。为了利用云计算并行执行的特点,传统的数据挖掘算法(如统计、归并规则、分类、聚类)必须使用MapReduce编程模型重新设计实现(称为MapReduce化)。Steaming作业可以使用Python、awk等语言开发MapReduce程序。Hive是Facebook开发的构建在HDFS之上的数据仓库应用,它提供类似于SQL的HiveQL(HiveQueryLanguage)查询分析功能,经过对HiveQL语句进行解析、转换、优化,最终生成多个MapReduce任务运行,提供部分与传统RDBMS一样的表格查询特性和分布式计算特性,使用者不用开发程序即可完成一些即查即用的临时统计分析任务。

  显示层:对业务层的处理结果进行再处理并通过界面显示。业务层的处理结果仍然存放在Hadoop集群中(HDFS或HBase),需要进行提取、分析、转换,最终以图、表、文字等形式展现到前端页面。

  日志数据的异地多备份存储和管理功能由日志源层、采集层、存储层完成;日志分析和数据挖掘功能由存储层、业务层、显示层完成。存储层和业务层依托Hadoop平台实现分布式存储和并行计算,物理形态采用Master/Slave工作结构。

  1.2日志采集与存储

  大型企业的内网中存在各类软硬件设备,这些设备每天产生大量日志,日志种类多样、格式不一、存储分散。有些设备以队列模式处理日志文件,受限于文件大小,旧记录会被新纪录覆盖;如果出现磁盘损坏、病毒、木马攻击等意外事件,也有可能导致日志数据丢失;日志的分散存放使得管理员需要反复登录不同的系统才能了解设备的运行状况,严重影响工作效率,网络规模较大、设备较多时,监控工作几乎无法完成。

  为了解决上述问题,同时考虑到安全性、可靠性、便捷性,日志采集层需要将所有日志文件汇总、统一存储、妥善保管,并能为统计、分析、查询等上层业务提供便利。本系统采用Syslog日志服务器完成日志数据的采集与存储功能。

  Syslog日志系统是加州大学伯克利分校BSDUnix的日志工业标准协议[10]。绝大部分计算机系统和硬件设备都支持Syslog协议,许多日志函数库(如Log4j)和第三方软件(如Tomcat)也已采纳Syslog协议。Syslog协议支持纯文本的标准日志格式,对于设备发生的一次事件,Syslog产生一行记录,它使用UDP传输协议,通过默认的514端口,将设备的日志数据推送到远端的日志服务器,日志服务器接收日志数据并写入文件系统。

  绝大部分的日志源设备使用Syslog协议不需要安装软件,只须进行简单配置:

  (1)Unix/Linux系统在“/etc/syslog.conf”文件中配置syslog日志服务器的IP地址;

  (2)网络设备(交换机、路由器)的日志一般都能支持Syslog协议,只要打开日志模块的远端发送功能,正确配置日志服务器的IP地址;

  (3)安全设备(如防火墙)也都采用Syslog协议,开启syslog功能并设置日志服务器IP地址即可;

  (4)Windows系统需要借助第三方软件Evtsys完成日志转发功能。

  通过设置一个Syslog日志服务器,可以将不同设备发送的日志,统一汇总到一个独立的位置,并进行进一步的清洗、分类、统一格式等预处理操作,当需要统计、分析日志时,可以很快地推送到HDFS中,作为业务层的输入数据。

  2并行日志分析算法

  DoS及DDoS攻击会使服务器高负荷运转,最终导致正常服务瘫痪。对服务器的访问日志中各IP地址的请求次数进行统计,获取请求次数频繁的IP地址是检测攻击源、防御攻击的有效方法。服务器的访问日志包含较多数据信息,日志文件通常达到GB数量级,传统的单机模式统计算法时效性很差。这里借助于MapReduce并行计算的特点,将传统单机算法改进为并行算法,称之为基于MapReduce的IP统计算法(IPStatisticsbaseMapReduce,IPStats?MR)。

  日志数据以文件形式存入HDFS,Map函数对每一行日志数据进行分析,提取申请访问服务器的源IP,输出的Key/Value是:SourceIP/1。Reduce的输入是相同的SourceIP,将其累加,输出的Key/Value是:SourceIP/n,它表示同一个IP对服务器的请求次数。IPStats?MR算法步骤如下:

  map(key,value)

  emit(value.SourceIP,1)

  reduce(key,values[v1;v2;...])

  i=0

  forvalinvalues[v1;v2;...]

  i++

  emit(key,i)

  3实验与效果评价

  网络日志分析系统由8台普通PC(Inteli53.2GHzCPU、4GBRAM)组成,其中1台为Master,6台为Slave,1台为Syslog日志服务器。安装软件为:CentOS5.5,Hadoop1.0.2,HBase0.92.1,Hive0.9.0。

  实验1:加速比实验

  该实验衡量并行算法的执行效果和性能。首先定义加速比(Speedup)的概念,如式(1)所示:

  [Sn=T1Tn](1)

  式中:Tn是IPStats?MR算法在n个Slave组成的集群上运行的时间;T1是只启动1个Slave时算法所运行的时间。

  分别完成4组实验:启动1个,2个,4个或6个Slave。实验结果如图2所示,它显示了数据集固定时,不断增加计算节点对并行算法的性能影响。

  图2IPStats?MR算法的加速比曲线图

  由于MapReduce框架会将计算工作分配到n个Slave上,理论上每增加一个计算节点,运算速度应该加快1倍。但从图2可以看出,实际情况没有达到这个效果。主要原因是各节点之间的通信、同步、调度等额外开销,而且节点越多,上述开销也越大。不过即使如此,加速比也基本接近线性增长。

  实验2:等效度量实验

  该实验评估增大问题规模对并行算法的性能影响。加速比的最大值是计算结点数n,但由于额外开销的影响,实际上加速比Sn小于n,因此用等效度量指标(ISO?efficiency)反映加速比接近n的程度,如式(2)所示:

  [E=Snn=11+T0T1](2)

  式中:T0为系统并行处理所引起的额外时间开销。

  实验在启动2个、4个或6个Slave的情况下,对不同的数据规模(日志文件大小分别为3.8GB,8GB,20GB)运行IPStats?MR算法。实验结果如图3所示,随数据规模增大,等效度量指标提高;随Slave个数增加,等效度量指标降低。但随着数据规模、Slave个数同时增加,等效度量指标保持常数。2个Slave处理3.8GB日志文件,4个Slave处理8GB日志文件,6个Slave处理20GB日志文件,等效度量指标E都保持在0.75左右。这说明当系统处理的数据增多时,能通过计算节点的增加来弥补性能的损耗,即IPStats?MR算法表现出良好的可扩展性。

  图3IPStats?MR算法的等效度量曲线图

  4结语

  网络日志的分析与挖掘技术在信息安全领域有着广泛的应用。传统的单机运算模式及算法在处理当前的海量数据时,暴露出诸多缺点。本文依托大数据技术,提出分层的网络日志分析系统,对传统的IP统计算法进行了MapReduce化。实验结果表明,大数据平台在处理数据密集型计算方面具有性能优势,能有效解决海量数据处理的伸缩性和实时性问题。

  【参考文献】

  [1]姜传菊.网络日志分析在网络安全中的作用[J].现代图书情报技术,2004(12):58?60.

  [2]DEANJ,GHEMAWATS.MapReduce:simplifieddataprocessingonlargeclusters[J].CommunicationsoftheACM,2008,51(1):107?113.

  [3]GHEMAWATS,GOBIOFFH,LEUNGST.TheGooglefilesystem[J].ACMSIGOPSOperatingSystemsReview,2003,37(5):29?43.

  [5]孟小峰,慈祥.大数据管理:概念、技术与挑战[J].计算机研究与发展,2013(1):146?169.

  [6]孔世明.基于最小生成树聚类算法在云计算平台下的设计与实现[J].科技通报,2013,29(8):100?102.

  [7]李学龙,龚海刚.大数据系统综述[J].中国科学:信息科学,2015(1):1?4.

  [8]陈超,张顺仕,尚守卫,等.大数据背景下电力行业数据应用研究[J].现代电子技术,2013,36(24):8?11.

  [10]李锦川,钱秀槟,方星.基于国产操作系统的网络日志管理系统构建[J].计算机安全,2010(10):59?61.


www.fabiaoba.com),是一个专门从事期刊推广期刊发表、投稿辅导、发表期刊的网站。
  本站提供如何投稿辅导、发表期刊,寻求论文刊登合作,快速投稿辅导,投稿辅导格式指导等解决方案:省级论文刊登/国家级论文刊登/ CSSCI核心/医学投稿辅导/职称投稿辅导。

投稿邮箱:fabiaoba365@126.com
 在线咨询: 投稿辅导275774677投稿辅导1003180928
 在线咨询: 投稿辅导610071587投稿辅导1003160816
 联系电话:13775259981

联系方式
李老师QQ:发表吧客服610071587 陈老师QQ:发表吧客服275774677 刘老师QQ:发表吧客服1003160816 张老师QQ:发表吧客服1003180928 联系电话:18796993035 投稿邮箱:fabiaoba365@126.com
期刊鉴别
  • 刊物名称:
  • 检索网站:
热门期刊
发表吧友情提醒

近来发现有些作者论文投稿存在大量剽窃、抄袭行为,“发表吧”对此类存在大量剽窃、抄袭的论文已经停止编辑、推荐。同时我们也提醒您,当您向“发表吧”投稿时请您一定要保证论文的原创性、唯一性,这既是对您自己负责,更是对他人的尊敬。

此类投稿的论文如果发表之后,对您今后的人生和事业将造成很大的麻烦,后果不堪设想,请您一定要慎重,三思而后行。

如因版权问题引起争议或任何其他原因,“发表吧”不承担任何法律责任,侵权法律责任概由剽窃、抄袭者本人承担。

 
QQ在线咨询
陈老师:275774677
张老师:1003180928
李老师:610071587
刘老师:1003160816
论文刊登热线:
137-7525-9981
微信号咨询:
fabiaoba-com

友情链接

申请链接