大数据网络分析规划
好久没更博了,说明学习进度太慢了。
一 实施目的
用抓取的数据包做统计分析,分析出行为的特征信息,用于进一步的网络诊断
二 实现思路
对已经抓取和解析的大量的数据包,进行数据清洗和初步过滤,处理成半结构化的数据,导入到HDFS分布式文件系统中,做进一步的统计分析、信息检索、快速查询。具体采用Hive做统计特征的计算,Hbase作为详细信息的快速查询,Splunk对文件建立索引,全文检索,可以直观查询统计关键字,提示敏感信息。
三 系统流程图
四 具体模块
1. 数据包抓取:用现成的抓包工具,包含捕捉抓包、过滤 、解析、存储的功能,如windows下的抓包驱动winpcap,linux下的tcpdump和libpcap工具。
2. 数据清洗、初步过滤
3. 导入HDFS文件系统
分为三个部分:HDFS直接存取、存入Hbase、进一步清洗后存入Hive
注:Hbase和Hive的数据最终是存储在HDFS上的,只是是有结构的。
直接存取: 将抓包的文件不经过任何处理,作为原始数据存储在HDFS上,Splunk对原始数据以关心的敏感信息词来建立索引,提供全文检索的功能,可直接在web上查询关键字。
导入Hbase的为半结构化数据:将直接抓取的数据包导入Hbase,以抓取时间为Rowkey。供快速查询
导入Hive的为结构化数据:
表一 抽取的数据信息
表格 |
原始信息 |
捕包信息表 |
捕包的开始时间、结束时间、捕包次数、每次捕获包的个数、每次捕获包的总字节数的大小
|
包头信息表
|
流入接口 流出接口 来源地址 目的地址 协议类型 时间 长度 标志位 |
在Hive中进行统计特征提取:
表一 Hive统计特征
类型 |
特征 |
应用场景 |
报文统计 |
捕捉报文的总数与百分比 显示报文的数量 显示报文的大小 |
情景:流量统计 |
终端信息统计 |
IP终端节点统计 以太网终端节点统计 TCP/UDP终端节点统计 |
情景一:少量MAC地址与IP端点:可能很多远端设备收发报文 情景二:少量IP端点与大量TCP端点:每台主机可能有多个TCP连接,可能是网络攻击(SVN) |
协议统计 |
含有该协议的包数目在捕捉文件所有包所占的比例 含有该协议包的数目 含有该协议的字节数 抓包时间内的协议带宽 |
情景一:分析数据流负载是否正常 情景二:通过结合流量分类统计和协议分析,阻断大流量的流,如P2P的视频流 |
会话统计 |
以太网会话统计 IP会话统计 TCP/UDP会话统计
|
情景一:大量的广播风暴 情景二:如果看到来自某一MAC地址的大量数据,可以通过ARP获取其MAC地址 情景三:查看收发大量数据流的IP地址 情景四:查看扫描模式,如防止蠕虫病毒 情景五:如果有上百个TCP连接则不正常,并可以尝试查找无法辨识的端口号 |
其他 |
计算时间间隔内事件发生的次数 捕获TCP数据量 检查TCP序列号 计算帧之间的最小/平均/最大时间 |
情景一:查看TCP分析标识符,比如重传 情景二:分析单个方向移动的数据量 情景三:看TCP序列号是否相对稳定的增加,表示数据传输平稳,没有过多的重传或丢失。 情景四:计算平均时间等对查看报文之间的延时很有用,如果帧之间平均延时相对较低但突然某一点延时很长,可查看这一帧详情 |
4.可视化展示:
功能 |
表现形式 |
作用 |
统计图表展示 |
折线图 直方图 饼状图 框图 |
用来显示统计特征 部分信息筛选 查看摘要信息 |
异步统计 |
Web定制分布式查询,统计相应数值,消息通知机制 |
避免后台操作,方便其他人员开发统计 |
快速查询 |
Hbase快速查询一段报文详细信息 |
Hbase响应最快,容量大,用来查询具体信息 |
全文检索 |
Splunk以定义的敏感信息,建立索引 |
查询选择范围报文的敏感信息及所处的准确位置 |