计算机防火墙论文 第13页
int afterindex[];
int aftercount;/* aftercount 存放数组beforeindex 中的元素数目* / }
结构ruletype 表示一条规则的数据结构,其中:beforeindex数组中存放的是必须位于该规则之前的一些规则的索引序号,而afterindex 数组中存放的是必须位于该规则之后的一些规则的索引序号。如果某规则的beforecount 等于零,表示任何规则都可以位于该规则之前;如果某规则的aftercount 等于零,意味着任何规则都可以位于该规则之后。在排序算法中,如果A(ri)<A(rj)并且i<j (即:ri 位于rj 之前),那么在交换两者位置之前进行下列判断:
(1)如果ri.beforecount==0,则交换ri 和rj 位置;
(2)如果ri.beforecount!= 0,则进行下面的判断:
如果在rj 的beforeindex 数组中找到了i,也就是说rj 不能位于ri 之前,则不交换两者之间的位置;如果没有找到,则交换两者的位置。对排序算法进行上面的改进之后,就可以保证关联规则之间在过滤规则列表中的相对位置不变,从而保证了规则关联的完整性。
<< 上一页 [11] [12] [13] [14] [15] [16] [17] 下一页