文档介绍:flow流量统计环境
周昌令
北京大学计算中心******@pku.
Netflow简介
Netflow流量统计技术是Cisco公司提出的一项网络数据流统计标准,得到了主流厂商如Juniper、Extreme等的支持。
flow技术可以监测网络上的IP流(IP flow)信息。flow流量信息可以帮助进行网络规划,网络管理,流量计费和病毒检测等等。
流记录(flow record)
一段时间内网络的某个观测点所通过的一系列分组(packets)。
通常我们关心的流记录分类依据由一个五元组(即源地址、目的地址、源端口、目的端口和协议类型)所组成。
一条流记录样本
index: 0xc1a21
router:
src IP:
dst IP:
input ifIndex: 8
output ifIndex: 55
src port: 12043
dst port: 80
pkts: 6
bytes: 680
IP nexthop:
start time: 11:29:22 2004-6-9
end time: 11:29:25 2004-6-9
protocol: 6
tos: 0x0
src AS: 0
dst AS: 321
src masklen: 20
dst masklen: 0
TCP flags: 0x1b
engine type: 1
engine id: 0
Netflow体系架构
高性能网络环境面临的问题
大量的流量信息数据导致记录文件巨大;
统计分析无法跟上数据文件生成的速度;
统计什么信息?
面临的问题1-大量的流量信息
北京大学校园网拓扑结构复杂,设备和使用者众多,平均日常在线联网节点约12000台左右,峰值在15000台以上。同时,ftp、p2p以及流媒体等消耗带宽的应用非常普遍。
面临的问题2-无法实时统计分析
面临的问题3-统计何种信息?
记录类型
flows、packets、octets
协议分布
TCP、UDP、ICMP、Multicast、other……
应用分布
ftp、e、、dns……
Top N信息
协议比例、应用分布、流量排名……
……
被动监测(Passive Monitor)
我们的解决思路
实时压缩存储
数据在内存中做cache,写入存储系统之前采用zlib压缩算法进行压缩,加上头信息,再输出到文件。
多CPU并行处理
根据流量数据文件的特点,处理前一时间段的数据进行过程中,可以另起进程处理下一时间段的数据。
快速匹配算法
Patricia Tries算法常常用于路由选择计算,具有很高的效率。
数据库与文件结合
采用高性能的Oracle数据库后台来记录归并统计结果,用RRDTool存储协议分布、流量计费等数据。