基于内嵌的对响应内容进行缓存过滤的方法、装置及系统的制作方法

文档序号:7749073阅读:132来源:国知局
专利名称:基于内嵌的对响应内容进行缓存过滤的方法、装置及系统的制作方法
技术领域
本申请涉及网络缓存领域,特别是涉及一种基于内嵌的对响应内容进行缓存过滤 的方法、装置及系统。
背景技术
在基于TOB服务器或应用服务器(以下简称服务器)的网络应用中,需要对服务 器的响应内容进行监控和过滤,即保证用户浏览到的信息不包含非法的或者是敏感的信 息,为了实现这一目的,需要对响应内容进行分析,以确保响应内容的合法性和健康性。现有技术中,对每条响应内容进行关键字或正则表达式进行验证,是否符合验证 规则,或者对图片的阙值进行分析,确认是否合法。该方法的大体实现过程是对用户一次请求的每一个响应进行分析和验证,也就是 在不影响响应的内容的分发方式的前提下,对每个分发的数据包都进行验证。由于现在服 务器分发机制的不断扩展,有一些服务器采用分段分发的机制,有时候一些内容会分两次 响应客户,如果某些非法信息拆分成两段包含在相邻的两个响应包之间,这种传统的机制 将无法做出正确的处理;例如一次响应内容中包含“法轮功”等非法信息,这个内容被分 成两个包,第一个包的末尾包含“法”,第二个包开始包含“轮功”,传统的机制可能会放过这 样的非法信息,所以现有技术中单纯的内容过滤方式不足以完成保证响应内容合法性的要 求。

发明内容
为解决上述技术问题,本申请实施例提供一种基于内嵌的对响应内容进行缓存过 滤的方法、装置及系统,能够在保证不改变传输内容的前提下,对于分段的数据重新组合, 并对组合的整体响应内容进行过滤分析,从而保证了在各种情况下的响应内容的合法性和 健康性。技术方案如下—种基于内嵌的对响应内容进行缓存过滤的方法,包括读取规则库中的规则对象,并对所述规则对象进行初始化操作;根据所述初始化的规则对象,对获取的传送信息的数据响应包进行过滤处理,当 获取的数据响应包为分段发送时,执行如下步骤步骤SlOl 判断所述数据响应包是否为可疑包,若否,执行步骤S102 ;若是,执行 步骤S103 ;步骤S102 判断所述为非可疑包的数据响应包是否怀疑非法,若否,执行步骤 S108,若是,执行步骤S105 ;步骤S103 判断所述为可疑包的数据响应包是否怀疑非法,若否,执行步骤S107 ; 若是,执行步骤S104;步骤S104:判断所述数据响应包是否为传送信息的最末端数据响应包,若否,执行步骤S105,若是,执行步骤S107 ;步骤S105 对所述怀疑非法的数据响应包进行缓存;步骤S106 设置所述怀疑非法的数据响应包的后续数据响应包为可疑数据响应 包,并获取所述可疑数据响应包,返回步骤S103 ;步骤S107 将所有经过缓存后相邻的怀疑非法的数据响应包组合成整体数据包;步骤S108 对数据响应包进行验证过滤,若数据响应包中含有非法信息,对所述 数据响应包进行阻断;否则,正常响应所述数据响应包。上述的方法,优选的,当获取的数据响应包为整体发送时,直接对所述数据响应包 进行验证过滤。上述的方法,优选的,在所述数据响应包验证过滤结束后,还包括对读取的规则对 象进行释放的过程。一种基于内嵌的对响应内容进行缓存过滤的装置,包括规则读取模块和数据包处 理模块;所述规则读取模块用于读取规则库中的规则对象,并对所述规则对象进行初始化 操作;所述数据包处理模块用于获取传送信息的数据响应包,并根据所述规则读取模块 初始化的规则对象对所述数据响应包进行过滤处理。上述的装置,优选的,所述数据包处理模块包括数据响应包获取单元、分段处理单 元和验证过滤单元;所述数据响应包获取单元用于获取传送信息的数据响应包,并对所述数据响应包 进行分析,若所述数据响应包为分段发送,将所述数据响应包发送至所述分段处理单元;所述分段处理单元用于对所述数据响应包进行判断组合处理,并将所述经过组合 的数据响应包发送至所述验证过滤单元;所述验证过滤单元用于对数据响应包进行验证过滤。上述的装置,优选的,所述分段处理单元包括第一判断组件、第二判断组件、第三 判断组件、缓存组件和数据响应包组合组件;所述第一判断组件用于对所述数据响应包获取单元发送的数据响应包进行判断, 判断所述数据响应包是否为可疑包;将经过判断的数据响应包发送至所述第二判断组件;所述第二判断组件用于对所述第一判断组件发送的数据响应包进行判断;若判断 得出所述第一判断组件发送的不是可疑包的数据响应包为非怀疑非法数据响应包,则直接 将所述非怀疑非法数据响应包发送至所述验证过滤单元;否则将判断得出的怀疑非法数据 响应包发送至所述缓存组件;若判断得出所述第一判断组件发送的为可疑包的数据响应包为非怀疑非法数据 响应包,则直接将所述非怀疑非法数据响应包发送至所述数据响应包组合组件;否则将判 断得出的怀疑非法数据响应包发送至所述第三判断组件;所述第三判断组件用于对所述第二判断组件发送的怀疑非法数据包进行判断,若 判断得出所述第二判断组件发送的怀疑非法数据包为传送信息中数据响应包的最末端数 据响应包,将所述怀疑非法数据包发送至所述数据响应包组合组件;否则,将所述怀疑非法 数据包发送至所述缓存组件;
所述缓存组件用于对所述怀疑非法数据包进行缓存,并设置所述怀疑非法数据包 的后续数据响应包为可疑数据响应包;所述数据响应包组合组件用于对所述缓存组件缓存的可疑数据响应包进行组合, 将组合后的整体数据包发送至所述验证过滤单元。上述的装置,优选的,所述数据包处理模块还包括整体处理单元,所述整体处理单 元用于将所述数据响应包获取单元获取的整体发送的数据响应包发送至所述验证过滤单元。一种基于内嵌的对响应内容进行缓存过滤的系统,包括客户端、应用端及基于内 嵌的对响应内容进行缓存过滤的装置。由以上本申请实施例提供的技术方案可见,本发明提供的实现权限项动态调整的 方法、装置及系统,利用规则对象判定一个分散的响应数据包是否可能含有非法信息,对所 有的可能含有非法信息的数据包进行组合验证,很大程度的增加了非法信息过滤的成功 率,并且不会对服务器的响应造成大的性能上的影响。


为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。图1为本申请实施例实现基于内嵌的对响应内容进行缓存过滤的方法流程图;图2为本申请实施例提供的对整体发送的数据响应包的验证流程图;图3为本申请实施例提供的释放规则对象的流程图;图4为本申请实施例提供的基于内嵌的对响应内容进行缓存过滤的装置结构示 意图;图5为本申请实施例提供的数据包处理模块的结构示意图;图6为本申请实施例提供的数据包处理模块的一详尽示意图;图7为本申请实施例提供的数据包处理模块的又一详尽示意图;图8为本申请实施例提供的基于内嵌的对响应内容进行缓存过滤的系统结构示 意图。
具体实施例方式本申请实施例提供一种基于内嵌的对响应内容进行缓存过滤的方法、装置及系 统,通过内嵌的响应内容的缓存机制,充分应用于服务器响应的各种分发机制,提高过滤响 应数据包的命中率。以上是本申请的核心思想,为了使本技术领域的人员更好地理解本申请方案。下 面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显 然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实 施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应 当属于本申请保护的范围。
本申请实施例实现基于内嵌的对响应内容进行缓存过滤的方法流程图如图1所 示,包括步骤SlO 读取规则库中的规则对象,并对规则对象进行初始化操作;步骤Sll 根据初始化的规则对象,对获取的传送信息中的分段发送数据响应包 进行过滤处理;步骤SlOl 判断数据响应包是否为可疑包,若否,执行步骤S102 ;若是,执行步骤 S103 ;步骤S102 判断为非可疑包的数据响应包是否怀疑非法,若否,执行步骤S108,若 是,执行步骤S105 ;步骤S103 判断为可疑包的数据响应包是否怀疑非法,若否,执行步骤S107 ;若 是,执行步骤S104;步骤S104:判断数据响应包是否为传送信息的最末端数据响应包,若否,执行步 骤S105,若是,执行步骤S107 ;步骤S105 对怀疑非法的数据响应包进行缓存;步骤S106 设置怀疑非法的数据响应包的后续数据响应包为可疑数据响应包,并 获取所述可疑数据响应包,返回步骤S103 ;步骤S107 将所有经过缓存后相邻的怀疑非法的数据响应包组合成整体数据包;步骤S108 对数据响应包进行验证过滤,若数据响应包中含有非法信息,对所述 数据响应包进行阻断;否则,正常响应所述数据响应包。由以上步骤可以得出为了程序的易扩展性于易维护性,将规则信息写入配置文 件中,以方便将规则库中的规则对象读取到内存中。将各种规则对象进行初始化,以方便验证过程的调用,从而避免每次验证时都要 对各种规则对象进行初始化,提高了验证的效率。本申请实施例提供的对整体发送的数据响应包的验证流程图如图2所示,包括步 骤S12 当获取的数据响应包为整体发送时,直接对数据响应包进行验证过滤。本申请实施例提供的释放规则对象的流程图如图3所示,包括步骤S109 对读取的规则对象进行释放。规则对象是在堆上分配的,需要释放所读取的规则对象,释放内存。本申请实施例提供的基于内嵌的对响应内容进行缓存过滤的装置结构示意图如 图4所示,包括规则读取模块401和数据包处理模块402 ;规则读取模块401用于读取规则库中的规则对象,并对规则对象进行初始化操 作;数据包处理模块402用于获取传送信息的数据响应包,并根据规则读取模块401 初始化的规则对象对数据响应包进行过滤处理。本申请实施例提供的数据包处理模块的结构示意图如图5所示,包括数据响应 包获取单元403、分段处理单元404和验证过滤单元405 ;数据响应包获取单元403用于获取传送信息的数据响应包,并对数据响应包进行 分析,若数据响应包为分段发送,将数据响应包发送至分段处理单元404 ;分段处理单元404用于对数据响应包进行判断组合处理,并将经过组合的数据响应包发送至验证过滤单元405 ;验证过滤单元405用于对数据响应包进行验证过滤。本申请实施例提供的数据包处理模块的一详尽示意图如图6所示,分段处理单元 404包括第一判断组件406、第二判断组件407、第三判断组件408、缓存组件409和数据响 应包组合组件410 ;第一判断组件406用于对数据响应包获取单元403发送的数据响应包进行判断, 判断数据响应包是否为可疑包;将经过判断的数据响应包发送至第二判断组件407 ;第二判断组件407用于对第一判断组件406发送的数据响应包进行判断;若判断 得出第一判断组件406发送的不是可疑包的数据响应包为非怀疑非法数据响应包,则直接 将非怀疑非法数据响应包发送至验证过滤单元405 ;否则将判断得出的怀疑非法数据响应 包发送至缓存组件409 ;若判断得出第一判断组件406发送的为可疑包的数据响应包为非怀疑非法数据 响应包,则直接将非怀疑非法数据响应包发送至数据响应包组合组件410 ;否则将判断得 出的怀疑非法数据响应包发送至第三判断组件408 ;第三判断组件408用于对第二判断组件407发送的怀疑非法数据包进行判断,若 判断得出第二判断组件407发送的怀疑非法数据包为传送信息中数据响应包的最末端数 据响应包,将怀疑非法数据包发送至数据响应包组合组件410 ;否则,将怀疑非法数据包发 送至缓存组件409 ;缓存组件409用于对怀疑非法数据包进行缓存,并设置怀疑非法数据包的后续数 据响应包为可疑数据响应包;数据响应包组合组件410用于对缓存组件409缓存的可疑数据响应包进行组合, 将组合后的整体数据包发送至验证过滤单元405。本申请实施例提供的数据包处理模块的又一详尽示意图如图7所示,数据包处理 模块还包括整体处理单元411,整体处理单元411用于将数据响应包获取单元403获取的整 体发送的数据响应包发送至验证过滤单元405。本申请实施例提供的基于内嵌的对响应内容进行缓存过滤的系统结构示意图如 图8所示,包括客户端801、应用端803及基于内嵌的对响应内容进行缓存过滤的装置802 ;所述客户端801用于为客户提供可操作的平台;所述基于内嵌的对响应内容进行缓存过滤装置用于响应内容进行过滤验证;应用端803用于具体实施过滤验证过程。本申请实施例提供的过滤系统不同于代理服务器缓存或者网关缓存等技术,采用 内嵌机制;整个功能在服务器接受请求以及响应请求时触发,对响应内容进行缓存,然后验 证整体的响应内容,对非法信息进行过滤。由于缓存响应内容可能会影响性能以及考虑到非法信息分包发送的概率,首先会 对每一个包的末尾以及起始内容进行验证,如果包含非法信息的一部分则会缓存相邻的几 个数据包,在组合相邻可疑的数据包并进行整体验证后,再进行转发。针对内嵌缓存过滤技术对于服务器性能的影响,第一次的缓存内容可存储成静态 文件,再缓存后的文件的有效期内,对于相同的请求可以直接返回存储的静态文件内容而 不用再经过服务器的描述处理。
本申请实施例的系统,通过内嵌的响应内容的缓存机制,可充分应用于服务器响 应的各种分发机制,相对传统的每个响应包的单独过滤机制,命中率显著提供。对于大文件以及图片内容过滤提供了适用条件。本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部 分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。以上所述仅是本 申请的具体实施方式
,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原 理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
权利要求
一种基于内嵌的对响应内容进行缓存过滤的方法,其特征在于,包括读取规则库中的规则对象,并对所述规则对象进行初始化操作;根据所述初始化的规则对象,对获取的传送信息的数据响应包进行过滤处理,当获取的数据响应包为分段发送时,执行如下步骤步骤S101判断所述数据响应包是否为可疑包,若否,执行步骤S102;若是,执行步骤S103;步骤S102判断所述为非可疑包的数据响应包是否怀疑非法,若否,执行步骤S108,若是,执行步骤S105;步骤S103判断所述为可疑包的数据响应包是否怀疑非法,若否,执行步骤S107;若是,执行步骤S104;步骤S104判断所述数据响应包是否为传送信息的最末端数据响应包,若否,执行步骤S105,若是,执行步骤S107;步骤S105对所述怀疑非法的数据响应包进行缓存;步骤S106设置所述怀疑非法的数据响应包的后续数据响应包为可疑数据响应包,并获取所述可疑数据响应包,返回步骤S103;步骤S107将所有经过缓存后相邻的怀疑非法的数据响应包组合成整体数据包;步骤S108对数据响应包进行验证过滤,若数据响应包中含有非法信息,对所述数据响应包进行阻断;否则,正常响应所述数据响应包。
2.根据权利要求1所述的方法,其特征在于,当获取的数据响应包为整体发送时,直接 对所述数据响应包进行验证过滤。
3.根据权利要求2所述的方法,其特征在于,在所述数据响应包验证过滤结束后,还包 括对读取的规则对象进行释放的过程。
4.一种基于内嵌的对响应内容进行缓存过滤的装置,其特征在于,包括规则读取模块 和数据包处理模块;所述规则读取模块用于读取规则库中的规则对象,并对所述规则对象进行初始化操作;所述数据包处理模块用于获取传送信息的数据响应包,并根据所述规则读取模块初始 化的规则对象对所述数据响应包进行过滤处理。
5.根据权利要求4所述的装置,其特征在于,所述数据包处理模块包括数据响应包获 取单元、分段处理单元和验证过滤单元;所述数据响应包获取单元用于获取传送信息的数据响应包,并对所述数据响应包进行 分析,若所述数据响应包为分段发送,将所述数据响应包发送至所述分段处理单元;所述分段处理单元用于对所述数据响应包进行判断组合处理,并将所述经过组合的数 据响应包发送至所述验证过滤单元;所述验证过滤单元用于对数据响应包进行验证过滤。
6.根据权利要求5所述的装置,其特征在于,所述分段处理单元包括第一判断组件、第 二判断组件、第三判断组件、缓存组件和数据响应包组合组件;所述第一判断组件用于对所述数据响应包获取单元发送的数据响应包进行判断,判断 所述数据响应包是否为可疑包;将经过判断的数据响应包发送至所述第二判断组件;所述第二判断组件用于对所述第一判断组件发送的数据响应包进行判断;若判断得出 所述第一判断组件发送的不是可疑包的数据响应包为非怀疑非法数据响应包,则直接将所 述非怀疑非法数据响应包发送至所述验证过滤单元;否则将判断得出的怀疑非法数据响应 包发送至所述缓存组件;若判断得出所述第一判断组件发送的为可疑包的数据响应包为非怀疑非法数据响应 包,则直接将所述非怀疑非法数据响应包发送至所述数据响应包组合组件;否则将判断得 出的怀疑非法数据响应包发送至所述第三判断组件;所述第三判断组件用于对所述第二判断组件发送的怀疑非法数据包进行判断,若判断 得出所述第二判断组件发送的怀疑非法数据包为传送信息中数据响应包的最末端数据响 应包,将所述怀疑非法数据包发送至所述数据响应包组合组件;否则,将所述怀疑非法数据 包发送至所述缓存组件;所述缓存组件用于对所述怀疑非法数据包进行缓存,并设置所述怀疑非法数据包的后 续数据响应包为可疑数据响应包;所述数据响应包组合组件用于对所述缓存组件缓存的可疑数据响应包进行组合,将组 合后的整体数据包发送至所述验证过滤单元。
7.根据权利要求4所述的装置,其特征在于,所述数据包处理模块还包括整体处理单 元,所述整体处理单元用于将所述数据响应包获取单元获取的整体发送的数据响应包发送 至所述验证过滤单元。
8.一种基于内嵌的对响应内容进行缓存过滤的系统,其特征在于,包括客户端、应用端 及权利要求4 7所述的任一项所述的基于内嵌的对响应内容进行缓存过滤的装置。
全文摘要
本申请公开了一种基于内嵌的对响应内容进行缓存过滤的方法、装置及系统,包括读取规则库中的规则对象,并对所述规则对象进行初始化操作;根据所述初始化的规则对象,对获取的传送信息的数据响应包进行过滤处理。本申请公开的基于内嵌的对响应内容进行缓存过滤的方法、装置及系统,利用规则对象判定一个分散的响应数据包是否可能含有非法信息,对所有的可能含有非法信息的数据包进行组合验证,很大程度的增加了非法信息过滤的成功率,并且不会对服务器的响应造成大的性能上的影响。
文档编号H04L29/06GK101888374SQ20101017608
公开日2010年11月17日 申请日期2010年5月19日 优先权日2010年5月19日
发明者刘江宁, 张晓民 申请人:山东中创软件商用中间件股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1