访问控制列表的实现装置制造方法及图纸

技术编号:3972304 阅读:270 留言:0更新日期:2012-04-11 18:40
本发明专利技术实施例提供了一种访问控制列表的实现装置。该装置主要包括:匹配信息保存模块,包括多个规则保存单元,用于接收用户输入的多个匹配信息,将所述多个匹配信息通过规则保存单元进行保存,并将所述多个匹配信息传输给匹配关键字获取模块;匹配关键字获取模块,用于根据匹配信息保存模块传输过来的匹配信息,从需要进行ACL控制的多条报文中提取出匹配关键字;匹配处理模块,在每个匹配周期内,分别自所述多个匹配信息保存单元中读取匹配信息,从所述匹配关键字获取模块中读取多条报文的匹配关键字,将所述读取到的匹配信息与多条报文的匹配关键字进行匹配,获取所述多条报文的匹配结果。利用本发明专利技术实施例,可以有效地提高了提高报文的ACL匹配性能,降低ACL的面积和功耗。减少硬件资源的消耗,提高匹配性能。

【技术实现步骤摘要】

本专利技术涉及计算机应用领域,尤其涉及一种ACL (access control list,访问控制 列表)实现装置。
技术介绍
ACL是一种定义流的工具。ACL通过一系列的匹配条件对报文进行分类,该匹配条 件可以是数据包的目的MAC地址、源MAC地址、端口号等,有的还包括自定义域。ACL应用 在交换路由设备中,主要用于网络安全、QOS (Quality of Service,服务质量)、包过滤等业 务。根据上述匹配条件可以建立相应的匹配关键字和匹配规则。现有技术中的一种ACL的实现方案为使用寄存器实现。在实现本专利技术过程中,发 明人发现该方案的缺点为ACL支持的匹配关键字较短,匹配规则数目有限,报文的ACL匹 配性能较差。现有技术中的另一种ACL的实现方案为使用CAM (内容定址存储器, Content-Addressable Memories)实现,可以支持较多的规则数目。当CAM价格昂贵,ACL 的功耗较大。
技术实现思路
本专利技术的实施例提供了一种ACL的实现装置,以实现提高报文的ACL匹配性能,降 低ACL的面积和功耗。一种ACL的实现装置,包括匹配信息保存模块、匹配关键字获取模块、匹配处理模 块,其中,所述匹配信息保存模块,包括多个规则保存单元,用于接收用户输入的多个匹配 信息,将所述多个匹配信息通过规则保存单元进行保存,并将所述多个匹配信息传输给匹 配关键字获取模块;所述匹配关键字获取模块,用于根据匹配信息保存模块传输过来的匹配信息,从 需要进行ACL控制的多条报文中提取出匹配关键字;所述匹配处理模块,用于在每个匹配周期内,分别自所述多个规则保存单元中读 取匹配信息,从所述匹配关键字获取模块中读取多条报文的匹配关键字,将所述读取到的 匹配信息与多条报文的匹配关键字进行匹配,获取所述多条报文的匹配结果。由上述本专利技术的实施例提供的技术方案可以看出,本专利技术实施例通过在每个匹配 周期内,将多条报文的匹配关键字与ACL的匹配规则进行匹配,并且,每个报文匹配多条 ACL的匹配规则,同时获取所述多条报文的匹配结果,从而有效地提高了提高报文的ACL匹 配性能,降低ACL的面积和功耗。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本 领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他 的附图。图1为本专利技术实施例一提供的一种访问控制列表的实现装置的具体实现结构图;图2为本专利技术实施例二提供的一种使用SRAM实现ACL的方法的原理示意图;图3为本专利技术实施例二提供的一种使用SRAM实现ACL的方法的具体处理流程图。具体实施例方式为便于对本专利技术实施例的理解,下面将结合附图以几个具体实施例为例做进一步 的解释说明,且各个实施例并不构成对本专利技术实施例的限定。实施例一该实施例提供了一种ACL的实现装置,其具体实现结构图如图1所示,包括如下模 块匹配信息保存模块11,包括多个信息保存单元,用于接收用户输入的多个匹配信 息,将所述多个匹配信息通过多个信息保存单元来保存,并将所述多个匹配信息传输给匹 配关键字获取模块12。上述匹配信息可以包括需要匹配的域信息,以及与所述域信息相对 应的匹配条件。匹配关键字获取模块12,用于根据匹配信息保存模块32传输过来的匹配信息,从 需要进行ACL控制的多条报文中提取出匹配关键字。匹配处理模块13,在每个匹配周期内,分别自所述多个规则保存单元中读取匹配 信息,从所述匹配关键字获取模块12中读取多条报文的匹配关键字,将所述读取到的匹配 信息与多条报文的匹配关键字进行匹配,获取所述多条报文的匹配结果。然后,根据各个报文的匹配结果,对各个报文进行分类,并进行相应的处理。比如, 某个匹配规则对应的处理操作是丢弃报文,则当报文和上述某个匹配规则相匹配后,则丢 弃该报文。匹配信息保存模块11具体可以包括原始关键字保存模块111、匹配规则保存模 块 112。其中,原始关键字保存模块111,用于根据所述匹配信息保存模块传输过来的匹配 信息中包括的域信息和匹配条件,建立用于报文匹配的原始关键字,将所述原始关键字进 行保存。上述原始关键字可以根据各种匹配条件的组合来获取,该原始关键字的长度越长, 对报文的分类就越灵活。比如,产品需求的报文的ACL的匹配条件是需要同时匹配源MAC地址、目的MAC地 址、VLAN(Virtual Local Area Network,虚拟局域网)标签,IP协议段,源IP地址,目的IP 地址,自定义字段和源端口号。则用于报文匹配的原始关键字可以为报文的MAC地址、目的MAC地址、VLAN标签、 IP协议段,源IP地址,目的IP地址,自定义字段和源端口号的串联。上述原始关键字的长 度可以是上述MAC地址的长度(48bit)、目的MAC地址(48bit) .VLAN TAG(16bit),IP协议 段(16bit),源IP地址(32bit),目的IP地址(32bit),自定义4Byte(32bit)和源端口号 (32bit)的相加,即为256bit。其中,匹配规则保存模块112,用于根据所述匹配信息保存模块传输过来的匹配信 息中包括的匹配条件和具体的匹配性能要求,建立多条报文的匹配规则,通过所述多个信 息保存单元将所述多条匹配规则按照一定的排列顺序进行存储。上述匹配规则可以是一种匹配条件的不同的匹配性能要求,也可以是多种匹配条 件的不同的匹配性能要求的组合。该匹配规则越多,对报文的分类就越灵活。每条匹配规 则的长度和上述匹配关键字的长度相同。上述排列顺序可以为根据匹配条件(比如报文的MAC地址、目的MAC地址等)进 行排序。所述匹配规则保存模块可以通过多个SRAM(StaticRAM,静态存储器)实现。所述的匹配关键字获取模块12,还用于根据所述匹配信息保存模块32传输过来 的匹配信息中包括的原始关键字,从需要进行ACL控制的多条报文中提取出匹配关键字。所述匹配处理模块13可以包括匹配周期设置模块131,用于根据匹配带宽和报文长度确定匹配每个报文所需要 的时间,根据每个时钟周期的时间长度和匹配每个报文所需要的时间,确定匹配每个报文 所需要的时钟周期的数量。根据上述匹配每个报文所需要的时钟周期的数量和同时匹配的 报文数量,确定一个匹配周期中包括的时钟周期的数量。比如,匹配一个报文需要8个时钟 周期,同时匹配8个报文,则一个匹配周期包括64个时钟周期。报文解析控制模块132,用于根据需要同时匹配的报文数量N,控制所述匹配关键 字获取模块31提起出N个报文的匹配关键字,并将该N个报文的匹配关键字传输给报文匹 配控制模块。报文匹配控制模块133,用于在一个时钟周期内,按照所述匹配信息保存模块11 中存储的匹配规则的排列顺序,从所述匹配信息保存模块11中读出一定数量的匹配规则, 将所述N个报文中的第一个报文的匹配关键字同时和所述读出的一定数量的匹配规则进 行匹配,再将第二个报文的匹配关键字同时和所述读出的一定数量的匹配规则进行匹配, 直到N个报文的匹配关键字都和所述读出的一定数量的匹配规则匹配完成。然后,在下一个时钟周期内,再次从所述匹配信息保存模块11中读本文档来自技高网...

【技术保护点】
一种ACL的实现装置,其特征在于,包括匹配信息保存模块、匹配关键字获取模块、匹配处理模块,其中,所述匹配信息保存模块,包括多个规则保存单元,用于接收用户输入的多个匹配信息,将所述多个匹配信息通过规则保存单元进行保存,并将所述多个匹配信息传输给匹配关键字获取模块;所述匹配关键字获取模块,用于根据匹配信息保存模块传输过来的匹配信息,从需要进行ACL控制的多条报文中提取出匹配关键字;所述匹配处理模块,用于在每个匹配周期内,分别自所述多个规则保存单元中读取匹配信息,从所述匹配关键字获取模块中读取多条报文的匹配关键字,将所述读取到的匹配信息与多条报文的匹配关键字进行匹配,获取所述多条报文的匹配结果。

【技术特征摘要】

【专利技术属性】
技术研发人员:李中华刘福军刘云谭亚中宋奇刚黄久松
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:94[中国|深圳]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1