【技术实现步骤摘要】
访问控制方法及设备
本申请实施例涉及访问控制
,特别是涉及一种访问控制方法及设备。
技术介绍
访问控制主要用于对不同网络之间流量进行控制,控制放行或者阻断流量。传统的访问控制,由CPU处理转发报文,提取报文五元组信息,根据提取的信息匹配内存当中的访问控制列表(AccessControlLists,ACL),根据匹配到的表项确定对报文是放行还是阻断。随着网络中流量越来越大,单独使用CPU处理访问控制流量,性能上已经无法满足需求。一种ASIC(ApplicationSpecificIntegratedCircuit,专用集成电路)芯片的出现提供了一种解决问题的方法,ASIC芯片可通过硬件描述语言,完成基本的流量转发功能。但是,ASIC芯片包含的资源有限,可加载的ACL表项的数量较少,仍不能满足流量较大的需求。
技术实现思路
本申请实施例提供一种访问控制方法及设备,有助于在提高性能的同时处理较大的流量。为了解决上述问题,第一方面,本申请实施例提供了一种访问控制方法,包括:专用集成电路ASIC芯片接收报文,解析所述报文得到五元组信息,并将所述五元组信息与所述ASIC芯片中的第一访问控制列表ACL的第一表项进行匹配,若匹配到第一表项,则按照所述第一表项对所述报文进行处理,若未匹配到第一表项,则将所述报文发送给CPU;所述CPU解析所述报文得到所述五元组信息,将所述五元组信息与第二ACL的第二表项进行匹配,在匹配到第二表项时,若所述第二表项对应的访问控制策略为丢弃 ...
【技术保护点】
1.一种访问控制方法,其特征在于,包括:/n专用集成电路ASIC芯片接收报文,解析所述报文得到五元组信息,并将所述五元组信息与所述ASIC芯片中的第一访问控制列表ACL的第一表项进行匹配,若匹配到第一表项,则按照所述第一表项对所述报文进行处理,若未匹配到第一表项,则将所述报文发送给CPU;/n所述CPU解析所述报文得到所述五元组信息,将所述五元组信息与第二ACL的第二表项进行匹配,在匹配到第二表项时,若所述第二表项对应的访问控制策略为丢弃,则丢弃所述报文,若所述第二表项对应的访问控制策略为转发,则将所述报文发送给所述ASIC芯片,由所述ASIC芯片根据所述五元组信息对所述报文进行转发。/n
【技术特征摘要】
1.一种访问控制方法,其特征在于,包括:
专用集成电路ASIC芯片接收报文,解析所述报文得到五元组信息,并将所述五元组信息与所述ASIC芯片中的第一访问控制列表ACL的第一表项进行匹配,若匹配到第一表项,则按照所述第一表项对所述报文进行处理,若未匹配到第一表项,则将所述报文发送给CPU;
所述CPU解析所述报文得到所述五元组信息,将所述五元组信息与第二ACL的第二表项进行匹配,在匹配到第二表项时,若所述第二表项对应的访问控制策略为丢弃,则丢弃所述报文,若所述第二表项对应的访问控制策略为转发,则将所述报文发送给所述ASIC芯片,由所述ASIC芯片根据所述五元组信息对所述报文进行转发。
2.根据权利要求1所述的方法,其特征在于,还包括:
所述CPU在接收到管理员对所述第二ACL的修改操作时,将所述修改操作从所述第二ACL映射到第三ACL中,其中,所述第三ACL中的第三表项用于下发到所述ASIC芯片中,所述第一ACL是所述第三ACL的子集,所述第三ACL的表项数量与所述第二ACL的表项数量相等。
3.根据权利要求2所述的方法,其特征在于,所述修改操作为在所述第二ACL的指定位置增加一个第二表项;
所述CPU在接收到管理员对所述第二ACL的修改操作时,将所述修改操作从所述第二ACL映射到第三ACL中,包括:
所述CPU在接收到管理员在所述第二ACL的指定位置增加一个第二表项时,将增加的第二表项依次与所述第三ACL中指定位置之前的第三表项进行匹配,若存在交集,则在增加的第二表项中去除所述交集,并将去除交集之后的第二表项与所述第三ACL中的下一个第三表项进行匹配,并进行上述去除交集的处理,直至到达所述指定位置;
所述CPU将去除交集之后的第二表项插入到所述第三ACL的指定位置;
所述CPU将去除交集之后的第二表项依次与所述第三ACL中指定位置之后的第三表项进行匹配,若存在交集,则从所述第三ACL中指定位置之后的第三表项中去除交集。
4.根据权利要求2所述的方法,其特征在于,所述修改操作为在所述第二ACL的指定位置删除一个第二表项;
所述CPU在接收到管理员对所述第二ACL的修改操作时,将所述修改操作从所述第二ACL映射到第三ACL中,包括:
所述CPU在接收到管理员在所述第二ACL的指定位置删除一个第二表项时,将所述第三ACL中所述指定位置的第三表项作为删除表项,并将所述删除表项从所述第三ACL中删除;
所述CPU将所述删除表项依次与所述第二ACL中所述位置之后的第二表项进行匹配,若存在交集,则从所述删除表项中删除所述交集,并将所述交集添加到所述第三ACL中相应位置的第三表项中,将删除交集之后的删除表项与所述第二ACL中的下一个第二表项进行匹配,并进行上述去除交集的处理,直至匹配完成所述第二ACL中所述位置之后的所有第二表项。
5.根据权利要求2所述的方法,其特征在于,所述修改操作为修改所述第二ACL的指定位置的一个第二表项;
所述CPU在接收到管理员对所述第二ACL的修改操作时,将所述修改操作从所述第二ACL映射到第三ACL中,包括:
所述CPU在接收到管理员修改所述第二ACL中的指定位置的一个第二表项时,将所述第三ACL中所述指定位置的第三表项作为删除表项,并将所述删除表项从所述第三ACL中删除;
所述CPU将所述删除表项依次与所述第二ACL中所述指定位置之后的第二表项进行匹配,若存在交集,则从所述删除表项中删除所述交集,并将所述交集添加到所述第三ACL中相应位置的第三表项中,将删除交集之后的删除表项与所述第二ACL中的下一个第二表项进行匹配,并进行上述去除交集的处理,直至匹配完成所述第二ACL中所述指定位置之后的所有第二表项;
所述CPU将修改的第二表项依次与所述第三ACL中指定位置之前的第三表项进行匹配,若存在交集,则从所述修改的第二表项中去除所述交集,并将去除交集之后的第二表项与所述第三ACL中的下一个第三表项进行匹配,并进行上述去除交集的处理,直至到达所述指定位置;
所述CPU将去除交集之后的第二表项插入到所述第三ACL的指定位置;
所述CPU将去除交集之后的第二表项依次与所述第三ACL中指定位置之后的第三表项进行匹配,若存在交集,则从所述第三ACL中指定位置之后的第三表项中去除交集。
6.根据权利要求2所述的方法,其特征在于,还包括:
所述CPU每隔预设时间间隔确定所述第二ACL中的第二表项在预设时间间隔内的命中次数,若一个第二表项在预设时间间隔内的命中次数大于第一阈值,则将所述第三ACL中与该第二表项对应的第三表项下发到所述ASIC芯片的第一ACL中,并在所述第三ACL中对该第三表项标记下发标识。
7.根据权利要求2所述的方法,其特征在于,还包括:
所述CPU每隔预设时间间隔读取所述ASIC芯片中的第一ACL中的第一表项的命中次数,若一个第一表项在预设时间间隔内的命中次数小于第二阈值,则从所述第一ACL中删除该第一表项,并将第三ACL中与该第一表...
【专利技术属性】
技术研发人员:徐成华,张波,黄淮,
申请(专利权)人:北京三快在线科技有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。