互联网是当今信息传播的重要媒介,在传播的信息中有大量不良信息,这样就需要对网上的信息进行管理,管理的前提是必须对信息进行分析,通过分析将不良信息辨别出来加以剔除。互联网上的信息大部分是基于、HTTP 、、和协议进行传输,所以,只要TELNET FTP POP3SMTP 将信息截获,通过对以上协议的解析就可以将信息还原,然后通过对还原信息进行智能分析,可以把不良信息辨别出来,这样就可以将其剔除,保证信息的无害性。
互联网上的信息量是很大的,如何将这种大流量的信息实时地进行分析,出不良信息,这是保证信息传播无害性的关键。要保证在大流量下实时分析就要采用先进的技术、高效快速的算法本文着重讨论互联网上大流量信息进行协, 议解析后的信息的实时恢复和智能分析问题。
智能分析系统的总体设计
1 当前端节点机将协议解析后的信息分成多个数据包发送过来时,为了对信息进行实时的智能分析,需要对接收到的数据包恢复形成完整的信息,通过对完整信息的智能分析,判断其是否是不良信息。
本系统设计应该达到的指标:将数据包准确恢复成信息文件;快速高效的信息分析;对不良信息报警或提交。
为了实现这样的系统,关键的设计是保证准确地将数据包恢复成完整信息文件,准确高效地对信息进行
智能分析,保证大流量下的实时性。针对大流量以及实时性的特点,本系统采用表、状态机和技术。整个系统的功能可以Hash CN2分为如下个功能模块。
3接收恢复模块:该模块接收前端节点机协议解析后发送来(1)的数据包,然后对同一连接的数据包恢复成完整的信息。为达到设计指标,在此模块采取表技术实现。
Hash 智能分析模块:该模块对恢复后的信息进行智能分析,辨(2)别出不良信息。为达到对大流量信息实时分析,本处采用状态机技术和技术。
CN2报警提交模块:该模块实现对不良信息的报警或提交。
(3)智能分析系统主要技术原理简介
2 表技术
(1)Hash 链表可以方便地把数据结构绑在一起,但是浏览链表效率很低,如果你想查特定的一个元素,很可能不得不看完全表才到需要的元素。为了达到系统高效运转,防止丢失数据包,保证在大流量下实时恢复信息,本系统使用技Hash 术来规避这个限制。所谓表,是指向数据结构的指针数Hash 组,采用数据结构中的信息作为表的索引。对于已定义Hash 的某种数据结构,以某数据变量作为索引。为了寻某个特定记录的数据,利用索引数据变量,按照指针到含有此记录细节的数据结
构。但是,很可能会有多条索引数据变量值相同的记录,所以表的指针成了指向一个数据结构链的Hash 指针,每个数据结构描述具有相同索引数据变量值的一个记录。然而,搜索这些短链还是比搜索全部数据结构要快。由于表加快了数据的存取,因此可以使用表来实现Hash Hash 快速查。表技术可以保证对连接分片进行快速存取和Hash 恢复,同时可以保证按配置的关键字表或表达式表,构造关键字状态机,对已保存为磁盘文件的已恢复文件的内容用状态机进行过滤,从而保证信息恢复的实时性。
状态机技术
(2)状态机可描述为:输入事件的集合;输出事件的集合;状态集合;把状态和输入事件映射到输出事件的集合;把状态和输入事件映射到状态的集合;对初始状态的描述。
通常一个状态机依附于一个类,并且描述一个类的实例对接收到的事件所发生的反应。状态机也可以依附于操作、用例和协作并描述它们的执行过程。状态机是一个类的对象所有可能的生命历程的模型。对象被孤立地从系统中抽出和考察,任何来自外部的影响被概述为事件。当对象探测到一个事件后,它依照当前的状态作出反应,反应包括执行一个动作和转换到新状态。状态机可以构造成继承转换,也能够
对并发行为建立模型。
大流量互联网信息实时智能分析系统的研究与实现
赵宏峰,李斌
哈尔滨工业大学计算机系,哈尔滨( 150001)
摘要: 讨论如何对大流量互联网上信息进行实时智能分析,准确无遗漏地分辨出不良信息,以便对其进行剔除,保证获取信息的无害性。关键词:表;状态机;技术;智能分析
Hash CN2Research and Implementation of Instantaneous Intelligence
Analysis of a Great Deal of Information on Internet
,ZHAO Hongfeng LI Bin
(Department of Computer,Harbin Institute of Technology,Harbin 150001)
【】Abstract The paper chiefly introduces how to analyze a grat deal of information on Internet intelligently and instantaneously, the aim of analysis is getting the harmless information through tellin
g the harm information from a great deal of information on Internet and weeding them.
【】;;;Key words Hash table State machine CN2Intelligence analysis
第28卷 第12期Vol.28 № 12计 算 机 工 程Computer Engineering
2002年12月 December 2002
・ 网络与通信・
中图分类号: TP393.07
文章编号:1000—3428(2002)12 —0155—03
文献标识码:A
为了达到对互联网上大流量信息实时处理的目的,必须提高过滤文件的效率,本系统中关键字过滤采用状态机,将状态机的实现与一个转移矩阵相对应,如图,将所有关键1字分解成不同的状态构成状态机。该状态机以文件内容字节作为输入,匹配到的关键字作为输出,过滤文件的时间与文件的长短成正比。
图由转移矩阵对应状态机
1 状态机算法:
将关键字按字节分状态,设分为初始态、、。1)a ab abc 根据初始的种状态初始化状态机,状态机用维数组2)32表示,定义维数组中的行表示状态数,列表示state[][]2码的个数值,定义数组为关键字结束标ASCII 256state[][256]识,代表结束,代表未结束。初始化后的如下:
10state[][]在初始状态输入值为的字节跳到状态state[0]['a']=1 ASCII
'a'1;在状态输入值为的字节跳到状态;state[1]['b']=2 1ASCII 'b'2在状态输入值为的字节跳到状态;state[2]['c']=3 2ASCII 'c'3表示这是一个关键字的结束字节;state[3][256]=1 其余数组值置;0初始化结束。
对文件查关键字,查关键字按字节进行。
3)设文件内容的字节表示是则查算法如下"dfabcjkabo",: ;
*file="dfabcjkabo" int i=0;
!= while file NULL {
是;
if state[i][256]1到一个关键字;
else
,跳到下一个状态;
i=state[i][*file]读入下一个字节; }
关键字查结束。状态转移描述见图。
2图状态转移描述
2 基于状态机的关键字查技术,其查复杂度为O(m+,其中为所查的关键字总字符数,为所查的内容的n)m n 总字符数,所以采用状态机技术可以提高系统效率,使系统能够实时处理互联网的大流量信息。
技术
(3)CN2工具全称是CN2"the Turing Institute's implementation of 它作为一个规则生成工具,对用户提供的大量已知属CN2",性的例子进行学习,然后生成规则作为分类依据,以便对用
户输入的属性未知的例子进行按规则分类评估。具体地说,大量例子放在一起进行分类比较,必然有其相同点和用来分类的不同点,而这些相同点和不同点是以例子中的特征取值所导致的,也就是说某几条特征的固定取值组合就可以作为分类的依据。
智能分析系统的实现
3 如上所述,智能分析系统由接收恢复模块、智能分析模块和报警提交模块部分组成,这里着重说明接收恢复模块3和智能分析模块的实现。
接收恢复模块的实现
(1)根据每个连接分片的值连接的源、目的、源Hash (IiP IP 端口、目的端口、分片在连接中的序号计算每个信息文件)的值,用该值唯一标识一个连接并用表跟踪Hash Hash Hash 每个信息文件的恢复。信息文件恢复流程见图。
3图信息文件恢复流程图
3 智能分析模块的实现
(2)在这里提出关键字和敏感度的概念,关键字是指""""""不良信息中一定会出现的必不可少的文字如某些情文(字;文件的敏感度与信息文件中出现的关键字个数、关键)字权值、关键字出现次数成正比,当文件的敏感度超过一定值时认为文件敏感。对已恢复的信息文件需要进行关键字过滤、敏感度计算和分析学习。如图。
4
关键字过滤部分在恢复出来的连接信息中根据用户配 置的权值和阈值以及匹配给用户的关键字逻辑表达式关键(字的与、非操作和关键字进行过滤,过滤出的准敏感信息)需要进行敏感度计算,敏感度超过一定值时,认为是敏感信息,即不良信息。用户根据数据库中已捕获的信息,选择出正例文件,并且根据捕获信息情况,提供反例文件,分析学习模块根据提供的正、反例文件调用算法,生成更加接CN2近用户需求的规则,这些规则加入到配置文件中,关键字过滤模块读取这些规则,根据规则对信息过滤。这种过程的循环执行,可以不断细化、逐渐精确地得到用户需要的不良信
息,达到对大流量互联网中信息实时分析的目的。关键字过滤子模块
1)关键字过滤子模块按照配置的规则组成的关键字表或表达式表,构造关键字状态机,对已保存为磁
盘文件的已恢复文件的内容用状态机进行过滤。过滤方式是用关键字状态机过滤,根据过滤出的关键字列表判断是否存在配置的表达式,如存在表达式,则确定文件敏感;否则,根据过滤出的关键字及事先给定的权值和阈值确定是否敏感。
表达式是一些关键字与、非关系的逻辑组合,当文件中存在表达式时就认为该信息文件敏感,则将信息文件写入数据库。当用关键字的权值和阈值判断信息文件的敏感性时,用到敏感度的概念,当文件的敏感度超过一定值时认为文件
—156—
0 1 2012N-1
当前状态输入字符
255
......
敏感。
敏感度计算模块
2)
计算文件的敏感度,给出一个文本的敏感度分数,用这个分数来确定其是否敏感有两种方法:一种是固定阈值法;另一种是敏感度排序法。所谓固定阈值法就是给定一个阈值,敏感度高于这个阈值的就判定为敏感,否则就不敏感。敏感度排序法就是把一个文本的敏感度在以往捕到的连接内容的敏感度历史记录中进行排序,根据排序来决定其是否敏感。当文件的敏感度超过一定值时认为文件敏感,将敏感文件写入数据库。
分析学习子模块
3)
由于网上连接的内容往往是有噪音的数据,分析学习
""
模块的算法采用了基于规则提取的算法。
CN2
图分析学习子系统原理图
5
分析学习模块见图首先对用户提供的正例文件不良
(5)(
信息文件处理,通过计算文件中出现频率较高的词作为特)
征关键字,频率的设定取决于用户所要获取信息的具体程度;在得到特征关键字后,调用算法生成规则;同样,
CN2
模块在对反例文件非不良信息文件,但含某些不良信息中
(
会出现的关键字处理之后生成特征组合表达式,此时需要
)
用反例文件生成的特征表达式过滤正例文件生成的规则,最终产生新的符合用户要求的规则,更新数据库配置。
结束语
4
本系统在下用开发,并且采用了表技Linux C++Hash
术、状态机技术和技术,所以具有以下特点:
CN2
实时性。本系统可以实时分析互联网上大流量信息。
1)
稳定性好。本系统在校园网投入运行,效果良好,运行稳2)
定。
通用性好。在其他网络如:网吧,企业同样可以实现稳定
3)()
高效运行。
准确率高。及时准确地分析出不良信息。
4)
本文讨论的互联网大流量信息实时智能分析系统,在
系统下用语言实现编程,在版本下编译运Linux C++Linux 6.2
行。
参考文献
计算机网
1 Kurose J F,Ross K W.
络-自顶向下方法与互联网特
影印版北京高等教育出版
().:
社,2001
陈世福陈兆乾人工智能与知识
2 ,.
工程南京南京大学出版社
.:,1997
影印版北京机械工业出版3 Nilsson N J.Artificial Intelligence ().:
社
,1999
详解卷实现北京机械工业出版4 Wright G R,Stevens W R.TCP/IP ,2:.:
社
,2000
林宇郭凌云网络编程北京人民邮电出版社
5 ,.Linux.:,2000
环境高级编程北京机械工业出版社
6 Stevens W R.Unix.:,2001
上接第页
(114)
为限定奇异值范围的给定值PROC paired-compare(f:float); //f
据专家经验对这个实体
(1)n(x1, x2,...,x n进行两两比较,确定相
)
对大小,将比较结果作为矩阵元素输入,表示
a[i][j]a[i][j]x i相对x j的大小
FOR i :=1 TO n DO
{FOR j :=i +1 TO n DO
输入判断矩阵上三角元素
{read(a[i][j]; //
判断矩阵下三角元素为对应上三角 a[j][i ] :=1/a[i][j];} ///元素的倒数
/
判断矩阵对角线元素为
a[i][i]:=1; } // 1
对判断矩阵每行计算元素的几何平均值
(2)v[i]
FOR i :=1 TO n DO
FOR j :=1 TO n DO
公式计算
(1)v[i];
计算矩阵奇异值,如果奇异值超过给定值,转到
(3)ii f1
FOR i :=1 TO n DO
FOR j :=i +1 TO n DO
公式计算
(2)ii;
IF ii>f THEN goto 1;
规格化矩阵行元素的几何平均值,得到实体相对大小比率
(4)
向量[r[1],r[2],...,r[n]]
FOR i :=1 TO n DO
公式计算
(3)r[i];
由参考实体
(5)x reference大小值和比率计算其它个实体的绝对大
n-1小,输出结果
FOR i =1 TO n DO
IF i <>reference THEN
公式计算
(4)Size[i];
小结
5
项目计划的可行性首先在于准确的软件规模评估。进行软件规模评估有助于估算项目开发时间。好的软件规模评估可以获得比较准确的项目开发时间估算。虽然任何有经验的评估者也不可能对软件规模作出最精确的评估,但是按照软件评估的规范,参照历史数据利用两两比较法来改进估算结果,对简化估算的过程,提高估算的科学性与精确度无疑是具有现实意义的。
参考文献
-
1 Pressman R S.Software Engineering A Practitioners Approach. 北京机械工业出版社
:
,2000
2 Miranda E.Improving Subjective Estimates Using Paired
大文件发送Comparisons.
IEEE Software,2001-01
3 Dolado J J.A Validation of the Component-based Method for
Software Size Estimation.IEEE Transactions on Software Engineering, 2000,26 (10)
陈珽决策分析北京:科技出版社,
4 ..1986
5 McPhee C. Software Size Estimation.Winter,1999
—157—
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
发布评论