一种基于规则的流量分类方法和系统的制作方法

文档序号:9600762阅读:255来源:国知局
一种基于规则的流量分类方法和系统的制作方法
【技术领域】
[0001] 本发明涉及通信技术领域,尤其涉及一种基于规则的流量分类方法和系统。
【背景技术】
[0002] 目前,互联网中新的应用模式与应用不断涌现,网络流量不断增长,并呈现多样 化,给互联网运营与管理带来巨大挑战。实时网络流量分类对帮助互联网服务提供商了解 网络运行状态,优化网络运营与管理具有重要意义。
[0003] 基于规则的流量分类系统中,对于大量的基于语义的规则,通常把所有的规则都 被分到用于确定性有限(DFA)组合的域中,其中,对于大量的基于语义的规则有两种匹配 方法:图1中一个规则构造一个匹配器,通过顺序匹配规则中的每一个协议域完成一个匹 配器的匹配过程;然后按照顺序依次匹配每个匹配器;如果当前的匹配器没有匹配到,则 转到下一个匹配器进行匹配,直到匹配到一个匹配器或者所有的匹配器都检查完为止。匹 配速度受规则/匹配器的数量和具体规则中协议域数量多少的影响。图2中所有的规则首 先可以根据他们的协议域进行划分,然后在同一协议域的规则表达式可以合并到一个基于 DFA的匹配器中;当一个匹配器匹配失败或者所有的匹配器都检查完成后系统就停止匹配 的过程。
[0004] 这两种规则组织的缺点是:
[0005] 规则中的值组合带来的内存激增造成的不确定性风险。
[0006] 要花费额外的空间来保存每一个匹配器进行匹配时的中间匹配结果。同时还要花 费额外的时间来合并中间的匹配结果,从而得到最终匹配到的规则。随着规则和协议域数 量的增多,这个问题会变得越来越严重,极大地增加资源消耗,匹配速度也会降低。

【发明内容】

[0007] 有鉴于此,本发明的目的是针对上述技术问题,提供一种基于规则的流量分类方 法和系统,确保随着规则和协议域数量的增多,系统对资源消耗的稳定性,同时提高流量分 类的速率。
[0008] 本发明提供了一种基于规则的流量分类方法,包括:预先设置规则集,并根据规则 集中的规则构造规则层次匹配树,所述规则层次匹配树包括第一规则层和第二规则层;当 接收到数据包,获取数据包的域名和统一资源标识符,匹配器根据域名在第一规则层中查 找匹配的规则,确定查找到第一规则层匹配规则后,触发下一个匹配器在第一规则层匹配 规则中,根据统一资源标识符在第二规则层中查找匹配的规则。
[0009] 进一步地,所述规则集的规则包括规则ID以及和规则ID对应的域名和统一资源 标识符。
[0010] 进一步地,所述根据规则集中的规则构造规则层次匹配树,具体为:根据域名和统 一资源标识符,将规则集中的规则构造规则层次匹配树。
[0011] 进一步地,所述根据规则集中的规则构造规则层次匹配树,具体为:根据域名将规 则集中的规则分类形成第一规则层,其中相同的域名归为一类,形成第一规则层的子规则 集;根据统一资源标识符,将第一规则层的子规则集分类形成第二规则层。
[0012] 本发明还提供了一种基于规则的流量分类装置,包括:设置模块,用于预先设置规 则集,并根据规则集中的规则构造规则层次匹配树,所述规则层次匹配树包括第一规则层 和第二规则层;获取单元,用于当接收到数据包,获取数据包的域名和统一资源标识符;匹 配器,用于根据域名在第一规则层中查找匹配的规则,确定查找到第一规则层匹配规则后, 触发下一个匹配器在第一规则层匹配规则中,根据统一资源标识符在第二规则层中查找匹 配的规则。
[0013] 进一步地,所述规则集的规则包括规则ID以及和规则ID对应的域名和统一资源 标识符。
[0014] 进一步地,所述设置模块根据规则集中的规则构造规则层次匹配树,具体为:设置 模块根据域名将规则集中的规则分类形成第一规则层,其中相同的域名归为一类,形成第 一规则层的子规则集;根据统一资源标识符,将第一规则层的子规则集分类形成第二规则 层。
[0015] 和现有技术相比,本发明的有益效果在于:本发明在保证基于DFA匹配器的匹配 速度不降低的情况下,移除匹配器之间转换时中间结果的额外开销,提高了系统性能。此 外,采用规则层次匹配树结构,下一个匹配器由当前匹配器的匹配结果决定,这样,每一个 匹配器都构建在一个小的规则集上,从而降低了内存溢出的风险。
【附图说明】
[0016] 图1为现有技术中的一种对于大量的基于语义的规则匹配的示意图。
[0017] 图2为现有技术中的另一种对于大量的基于语义的规则匹配的示意图。
[0018] 图3为本发明所公开的对于大量的基于语义的规则匹配的示意图。
[0019] 图4为本发明所公开的基于规则的流量分类方法的示意图。
[0020] 图5为本发明一个具体实施例的规则集的示意图。
【具体实施方式】
[0021] 以下将结合附图所示的【具体实施方式】对本发明进行详细描述,但这些实施方式并 不限制本发明,本领域的普通技术人员根据这些实施方式所做出的结构、方法、或功能上的 变换均包含在本发明的保护范围内。
[0022] 相比较于现有技术,本发明根据协议域把整个大的规则集划分成小的子规则集, 如图3所示,并将匹配器只需要保存相应的子规则集。
[0023] 图4为本发明所公开的基于规则的流量分类方法的示意图。参照图3,包括:
[0024] 步骤401,预先设置规则集。
[0025] 在本步骤中,规则集中的每一条规则包括规则ID,以及和规则ID对应的域名 (Host)和统一资源标识符(URI,UniformResourceIdentifier) 〇
[0026] 下表1提供了一个规则集的实例,当然还有其他的规则设置,在此不限制。
[0027]表 1
[0028]
[0029] 步骤402,根据规则集中的规则构造规则层次匹配树,该规则层次匹配树包括第一 规则层和第二规则层。
[0030] 在本步骤中,将规则集中的规则根据Host和URI构造规则层次匹配树。具体地, 根据Host,将规则集中的规则分类形成第一规则层,其中相同的Host归为一类,形成子规 则集;根据URI,将第一规
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1