|
|
|
|
|
|
|
|
个源地址为10.0.0.0网段的数据包,需要和规则为2和102的进行比较。先比较规则为2的标准规则(标准规则判断的范围比较大)。 规定如下: ; 比较的时候,先比较规则序号小的(在索引指向的域中可以做到这一点)。如先比较2,再比较4,再比较103,再比较104。倘若用户将要判定的源地址属于同一个网段的规则写成了好几个不同规则序号的规则,那么过滤的效率降低也是没有办法的。一般较正常的情况下,一个索引项后跟一个或两个规则序号。如图1中所示。如果在索引中,没有那个网段的话,需要与源地址为any的规则进行比较。 •; 不同序号的规则没有时间上的先后顺序。例如:先配置103,再配102,如果这两个序号的规则序列中都有判断129.9.0.0网络的规则,则过来一个129.9.0.0网络的包,先和102的比较,再和103的比较。(和上面一点有些重合) ; 同一序号的规则的配置也没有时间上的先后顺序。在排列时, 图5 规则的组织 深度最大的那个排在前面。规则的组织图请看图5。 这一点需要加以特别说明,也是程序中应该注意的地方。例如:先配置 2 permit 129.102.1.1 0.0.0.0; 再配置一条同样序号的 2 deny 129.102.0.0 0.0.255.255;前一条直接指定了主机,它的深度最大,还是排在前面。比较时,129.102.0.0网络的数据包会在序号为4的规则中搜索。若是129.102.1.1,则被前一条满足,就不再往后比较了。这是因为规则是按照深度的大小来排的。 可以看出,深度是指通配位而言的。一般来说,深度越大,通配位越小。如 0.0.0. 0比较时的深度要比0.0.255.255的深度大。 此观点来自于:一个数据包页码:[1] [2] [3] [4] [5] [6] [7] 第6页、共7页 |
|
|
|
|
设为首页 | 加入收藏 | 广告服务 | 友情链接 | 版权申明
Copyriht 2007 - 2008 © 科普之友 All right reserved |