很长时间没来CU了,最近做了点关于流量分析相关的工作.跟大家交流下
1.在城域网出口,做流量的实时监控,在大数据量的情况下,如何进行流量的采样
现在一般的采样算法是:1,基于抽样理论进行,随机采样
2,固定时间周期采样
3固定包数采样
4,基于HASH的采样
我现在想达到这种目的,基于业务应用的自适应采样,能够基于业务应用的特点进行采样,不知道谁做过这方面的研究没有??主要的想法是能够通过动态调整这个HASH树的大小,并且能保证原来的HASH树调整变化最小.这个就需要对HASH散列值进行仔细的分析,这样能够动态采样到我们需要的包,并且这个包能够在任何地点都能够采样到.
2.快速会聚算法,如何进行快速的流量会聚,在10G流量下,在基于采样的条件下,的高速会聚算法,现在经常使用的是基于五元组的HASH会聚,但是应该如何选择HASH函数,是一个比较重要的选择因素,HASH函数需要散列比较均允,随即性比较好,这样才能HASH桶才比较好,最合理的桶的调整因素是什么??还有的就是这种关于HASH的便里问题,如何按照顺序进行便里,如何对100万以上的HASH表进行便例,是一个比较重要的考虑因素,现在考虑的是HASH红黑树,或者HASH AVL树,大家是否有更好的方法.
以上谈的是关于流量的监控问题,得到这些信息后,我们就能够根据自己的需要进行相关的分析,TOPN等等分析.
而后就是需要将流量的会聚信息能够快速入库,关于快速入库,以后可以做为一个专题进行分析,但是有一条就是直接通过数据库的SQL语句进库,目前看来速度是不足的,但是通过文件方式入库速度是可行的,但是如何进行入库,就需要根据数据库的特点进行,这个是比较的一块.但是最近看了这个RRD,其中对这个基于时间序列的记录入库进行了优化,是否有朋友对其设计进行研究,如果有,能否谈下自己的看法??
快速入库以后就是这个流量的分析与检模了,我们对业务进行测量,不同的测量单位可以得到不同的信息,对流量的测量单位可以按照分,小时,天,周,月,年等单位进行分析,不同的单位可以得到不同的规律信息,这些规律信息就需要根据需要信息的不同进行应用了,但是基本的是,单位长精度不足,但是可以得到长期规律性的东西,精度高,消耗资源多,准确性高,并且容易受到噪音的干扰,长期的由于可以将相关噪音淹没在数据中.
今天就谈到这里了,大家如果感兴趣可以接着发表自己的意见 |