CN101212314A - 单一芯片实现多项网络安全功能的方法 - Google Patents
单一芯片实现多项网络安全功能的方法 Download PDFInfo
- Publication number
- CN101212314A CN101212314A CNA2006101561672A CN200610156167A CN101212314A CN 101212314 A CN101212314 A CN 101212314A CN A2006101561672 A CNA2006101561672 A CN A2006101561672A CN 200610156167 A CN200610156167 A CN 200610156167A CN 101212314 A CN101212314 A CN 101212314A
- Authority
- CN
- China
- Prior art keywords
- message
- cpu
- chip
- mac
- compartment wall
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种单一芯片实现多项网络安全功能的方法,包括如下步骤:芯片对收到的报文进行解析,得到输入报文的关键域的内容;根据解析的结果,进行二层处理,查找MACtable;如果MACtable查找命中,则用解析得到的报文的源IP、目的IP、源port、目的port、protocol查找防火墙连接表;如果没有命中,则送CPU,由CPU作进一步处理;如果防火墙连接表查找命中,则根据防火墙连接表中的标志对报文做相应的处理;如果没有命中,则送CPU,由CPU作进一步处理。本发明提高了网络的系统性能、降低了系统成本。
Description
技术领域
本发明涉及网络安全和组网技术领域,尤其涉及一种单一芯片实现多项网络安全功能的方法。
背景技术
随着网络技术的不断发展,网络已经成了社会生活中不可或缺的一种工具,小到soho(家庭办公),大到上万人的企业,都建立了自己的网络,但是随之而来的是,网络病毒、黑客的危害也越来越大,一次比一次频繁,影响范围一次比一次大,造成的损失一次比一次严重。面对这种情况,所有拥有网络的企业都不得不认真思考自身网络的安全问题。要解决网络安全,当然离不开网络安全设备。目前市面上的网络安全设备不外乎采用了以下几种方案:
1、基于工控机架构的防火墙
工控机的架构,是CPU+主板+网卡,网卡芯片与CPU通过主板的PCI总线相连,所有的报文从网卡芯片收上来,都通过PCI总线送到CPU,由CPU进行全部处理。基于这种方案的防火墙,性能受限于PCI总线的性能,是没有办法达到很高的性能的。
2、基于NP架构的防火墙
NP的架构,是CPU+若干个微引擎+网卡,一般CPU与微引擎是集成在一个NPU芯片内。报文从网卡收上来,分派到一个指定的微引擎去处理,处理完后微引擎直接转发。由于有若干个微引擎同时处理,处理速度较快。但微引擎的代码需要用微码编写,且直接操作微引擎内部的硬件资源,非常复杂;微引擎可存放的指令空间也非常有限,仅2K~4K(后续升级版本也在此数量级内),不能实现复杂的处理逻辑。基于这种方案的防火墙,价格都比较昂贵,处理简单任务时,能够达到线速,但处理深度过滤等多任务时,性能急剧下降。
3、基于交换、路由芯片架构的防火墙
此架构是CPU+FPGA/ASIC,FPGA/ASIC上直接带有(或外接)网口,申请号为CN200410040052.8的发明专利申请就是采用此架构的技术方案。所述方案的FPGA/ASIC是从交换、路由芯片转过来的,在交换、路由的基础上,加入防火墙、NAT(Network AddressTranslation,网络地址转换)的功能。该方案的缺点是:处理每个报文,都要重新查找路由表中的路由,匹配NAT表中的地址转换规则,因此性能会受到很大的限制;另外,路由表、NAT表的大小不可能太大,也严重限制了其实际的应用范围。
以上几种方案都有不足,要么本身性能不高,要么在复杂应用下的性能不高,无法满足客户日益增长的需求。
发明内容
因此本发明所要解决的技术问题是提供一种单一芯片同时实现二层交换、防火墙连接表的方法,该方法能够提高网络的系统性能、降低系统成本。
本发明具体是这样实现的:
1、一种单一芯片实现多项网络安全功能的方法,包括如下步骤:
1-1、芯片对收到的报文进行解析,得到输入报文的关键域的内容;
1-2、根据解析的结果,进行二层处理,查找MAC table;
1-3、如果MAC table查找命中,则用解析得到的报文的源IP、目的IP、源port、目的port、protocol查找防火墙连接表;如果没有命中,则送CPU,由CPU作进一步处理;
1-4、如果防火墙连接表查找命中,则根据防火墙连接表中的标志对报文做相应的处理;如果没有命中,则送CPU,由CPU作进一步处理。
2、如1所述的单一芯片实现多项网络安全功能的方法,步骤1-2中用解析得到的报文的源MAC、目的MAC、VLAN号查找MAC table,判断在MAC table中是否存在源MAC与VLAN号的组合和目的MAC与VLAN号的组合,如果不存在,则送CPU,由CPU更新MACtable。
3、如1所述的单一芯片实现多项网络安全功能的方法,步骤1-4中根据防火墙连接表中的标志对报文做相应的处理包括如下步骤:判断防火墙连接表中是否有送CPU的标志,如果有,就将此报文送CPU处理;否则根据连接表中标示的出口,把报文转发出去。
4、如3所述的单一芯片实现多项网络安全功能的方法,如果防火墙连接表中没有送CPU的标志,则再判断防火墙连接表中是否有做网络地址转换的标志,如果有,则对报文做网络地址转换,然后根据连接表中标示的出口,把报文转发出去;否则直接根据连接表中标示的出口,把报文转发出去。
5、如1至4中任意一项所述的单一芯片实现多项网络安全功能的方法,所述单一芯片为现场可编程门阵列或者专用集成电路。
由于采用了上述处理过程,本发明与现有技术相比,具有以下优点:
1、本发明在单一芯片上实现了交换、三层转发、防火墙的功能。这样,绝大部分流量芯片都可直接处理,大大降低了系统对CPU、PCI总线带宽的需求,节省了CPU资源,提高了整个系统的性能。
2、本发明克服了基于工控机架构和基于NP架构的防火墙处理速度慢的缺陷,提高了整个系统在网络环境中的高速处理能力。即使在100/1000M的高速网络处于拥塞或繁忙时,也能保证进行线速交换。
3、本发明在单一芯片上同时实现了交换、三层转发、防火墙的功能,使系统成本大大降低。
4、本发明避免了基于交换、路由芯片架构的FPGA/ASIC方案中每个报文都要查一遍路由表的缺点,其路由只需在建立连接时查找一次,建立相应防火墙连接表,后续报文就不用再查,只需依据防火墙连接表进行转发即可;同时也避免了在芯片内部集成路由表时,路由表大小受限的缺点,依据这种方案,路由的数目几乎不受限制。
5、本发明避免了基于交换、路由芯片架构的FPGA/ASIC方案中每个报文要重新匹配NAT规则的缺点,其NAT只需在建立连接时查找,依据NAT规则,建立好防火墙连接表,后续的报文就不用再每次查找NAT规则表,只需依据防火墙连接表,就可完成NAT地址转换功能;同时也避免了在芯片内部集成NAT规则表时,NAT规则表大小受限的缺点,依据这种方案,NAT规则数几乎不受限制。
附图说明
图1是本发明的操作流程图。
具体实施方式
以下结合附图对本发明的具体实施作进一步的说明:
本发明提出了一种单一芯片实现多项网络安全功能的方法,该方法基于FPGA(FieldProgrammable GateArray,现场可编程门阵列)/ASIC(Application Specific Integrated Circuit,专用集成电路)芯片架构的防火墙,以克服CPU(Central Processing Unit,中央处理单元)、PCI(Peripheral Controller Interface,外围控制器接口)总线带宽对网络安全设备的性能限制,实现网络安全设备性能上的突破,降低网络安全解决方案的代价,降低组网成本。
本发明在一个芯片上同时实现二层交换、防火墙连接表,以单一芯片实现多项网络安全功能。二层交换是根据芯片内部的MAC(Media Access Control,媒介接入控制)table进行转发,这是网络设备领域的一项常规技术;防火墙连接表主要包括源IP、目的IP、源port、目的port、protocol等TCP(Transmission Control Protocol,传输控制协议)、UDP(User DatagramProtocol,用户数据报协议)连接的信息。如图1所示,本发明包括如下处理步骤:
1、芯片对收到的报文进行解析,得到输入报文的关键域的内容;
2、根据解析的结果,进行二层处理,查找MAC table;
3、如果MAC table查找命中,则根据解析的结果,取出五元组(源IP、目的IP、源port、目的port、protocol),查找防火墙连接表,如果没有命中,则送CPU,由CPU作进一步处理;
4、如果防火墙连接表查找命中,则根据防火墙连接表中的标志对报文做相应的处理,包括:正常转发报文、做NAT(Network Address Translation,网络地址转换)之后转发报文、送CPU处理,如果没有命中,则送CPU,由CPU作进一步处理。
在第1步中,当芯片收到一个报文,首先解析出报文的源MAC、目的MAC、VLAN(VirtualLocal AreaNetwork,虚拟局域网)号;然后,在第2步中,在MAC table中查找是否存在源MAC与VLAN号的组合和目的MAC与VLAN号的组合,如果不存在,则送CPU,由CPU更新MAC table。
在第4步中,如果防火墙连接表中有送CPU的标志,就将此报文送CPU处理,如果防火墙连接表中有做NAT的标志,就做NAT,然后根据连接表中标示的出口,把报文转发出去,如果没有送CPU或者做NAT的标志,则直接根据连接表中标示的出口,把报文转发出去。
以下是根据上述处理步骤的一个具体实施实例,其具体处理流程如下:
1、芯片对收到的报文进行解析,得到源MAC、目的MAC、VLAN号、源IP、目的IP、源port、目的port、protocol等域的内容;
2、用解析得到的源MAC、目的MAC、VLAN号查找MAC table;
3、如果MAC table查找命中,则用解析得到的源IP、目的IP、源port、目的port、protocol查找防火墙连接表;
4、如果防火墙连接表查找命中,则先判断连接表中是否有送CPU标志,如果有,则报文送CPU处理,否则再判断连接表中是否有做NAT标志,如果有,则对报文做NAT。最后根据连接表中标示的出口,把报文发送出去。
以上所述仅为本发明的示意性实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种单一芯片实现多项网络安全功能的方法,包括如下步骤:
1-1、芯片对收到的报文进行解析,得到输入报文的关键域的内容;
1-2、根据解析的结果,进行二层处理,查找MAC table;
1-3、如果MAC table查找命中,则用解析得到的报文的源IP、目的IP、源port、目的port、protocol查找防火墙连接表;如果没有命中,则送CPU,由CPU作进一步处理;
1-4、如果防火墙连接表查找命中,则根据防火墙连接表中的标志对报文做相应的处理;如果没有命中,则送CPU,由CPU作进一步处理。
2.如权利要求1所述的单一芯片实现多项网络安全功能的方法,其特征在于,步骤1-2中用解析得到的报文的源MAC、目的MAC、VLAN号查找MAC table,判断在MAC table中是否存在源MAC与VLAN号的组合和目的MAC与VLAN号的组合,如果不存在,则送CPU,由CPU更新MAC table。
3.如权利要求1所述的单一芯片实现多项网络安全功能的方法,其特征在于,步骤1-4中根据防火墙连接表中的标志对报文做相应的处理包括如下步骤:判断防火墙连接表中是否有送CPU的标志,如果有,就将此报文送CPU处理;否则根据连接表中标示的出口,把报文转发出去。
4.如权利要求3所述的单一芯片实现多项网络安全功能的方法,其特征在于,如果防火墙连接表中没有送CPU的标志,则再判断防火墙连接表中是否有做网络地址转换的标志,如果有,则对报文做网络地址转换,然后根据连接表中标示的出口,把报文转发出去;否则直接根据连接表中标示的出口,把报文转发出去。
5.如权利要求1至4中任意一项所述的单一芯片实现多项网络安全功能的方法,其特征在于,所述单一芯片为现场可编程门阵列或者专用集成电路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2006101561672A CN101212314A (zh) | 2006-12-30 | 2006-12-30 | 单一芯片实现多项网络安全功能的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2006101561672A CN101212314A (zh) | 2006-12-30 | 2006-12-30 | 单一芯片实现多项网络安全功能的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101212314A true CN101212314A (zh) | 2008-07-02 |
Family
ID=39612021
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2006101561672A Pending CN101212314A (zh) | 2006-12-30 | 2006-12-30 | 单一芯片实现多项网络安全功能的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101212314A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101753426B (zh) * | 2008-12-03 | 2012-03-28 | 北京天融信网络安全技术有限公司 | 防火墙多出口智能选路方法 |
CN101764696B (zh) * | 2009-11-27 | 2012-06-27 | 福建星网锐捷网络有限公司 | 分布式路由交换设备及其实现方法 |
WO2013078824A1 (zh) * | 2011-11-30 | 2013-06-06 | 华为技术有限公司 | 实现网卡卸载功能的方法、网卡、主机系统及网络设备 |
CN106656788A (zh) * | 2016-12-30 | 2017-05-10 | 盛科网络(苏州)有限公司 | 优化mlag孤立口广播流量的芯片实现方法 |
CN107071086A (zh) * | 2011-08-17 | 2017-08-18 | Nicira股份有限公司 | 逻辑l3路由 |
CN110311866A (zh) * | 2019-06-28 | 2019-10-08 | 杭州迪普科技股份有限公司 | 一种快速转发报文的方法及装置 |
CN111756628A (zh) * | 2020-05-14 | 2020-10-09 | 深圳震有科技股份有限公司 | 一种数据包转发处理方法、系统、智能网卡及cpu |
CN113497798A (zh) * | 2020-04-08 | 2021-10-12 | 北京中科网威信息技术有限公司 | 一种用于防火墙的基于fpga的数据转发方法 |
-
2006
- 2006-12-30 CN CNA2006101561672A patent/CN101212314A/zh active Pending
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101753426B (zh) * | 2008-12-03 | 2012-03-28 | 北京天融信网络安全技术有限公司 | 防火墙多出口智能选路方法 |
CN101764696B (zh) * | 2009-11-27 | 2012-06-27 | 福建星网锐捷网络有限公司 | 分布式路由交换设备及其实现方法 |
CN107071086B (zh) * | 2011-08-17 | 2020-06-05 | Nicira股份有限公司 | 逻辑l3路由 |
US11695695B2 (en) | 2011-08-17 | 2023-07-04 | Nicira, Inc. | Logical L3 daemon |
CN107071086A (zh) * | 2011-08-17 | 2017-08-18 | Nicira股份有限公司 | 逻辑l3路由 |
US10868761B2 (en) | 2011-08-17 | 2020-12-15 | Nicira, Inc. | Logical L3 daemon |
WO2013078824A1 (zh) * | 2011-11-30 | 2013-06-06 | 华为技术有限公司 | 实现网卡卸载功能的方法、网卡、主机系统及网络设备 |
US9680690B2 (en) | 2011-11-30 | 2017-06-13 | Huawei Technologies Co., Ltd. | Method, network adapter, host system, and network device for implementing network adapter offload function |
CN106656788B (zh) * | 2016-12-30 | 2019-09-20 | 盛科网络(苏州)有限公司 | 优化mlag孤立口广播流量的芯片实现方法 |
CN106656788A (zh) * | 2016-12-30 | 2017-05-10 | 盛科网络(苏州)有限公司 | 优化mlag孤立口广播流量的芯片实现方法 |
CN110311866A (zh) * | 2019-06-28 | 2019-10-08 | 杭州迪普科技股份有限公司 | 一种快速转发报文的方法及装置 |
CN110311866B (zh) * | 2019-06-28 | 2021-11-02 | 杭州迪普科技股份有限公司 | 一种快速转发报文的方法及装置 |
CN113497798A (zh) * | 2020-04-08 | 2021-10-12 | 北京中科网威信息技术有限公司 | 一种用于防火墙的基于fpga的数据转发方法 |
CN111756628A (zh) * | 2020-05-14 | 2020-10-09 | 深圳震有科技股份有限公司 | 一种数据包转发处理方法、系统、智能网卡及cpu |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101212314A (zh) | 单一芯片实现多项网络安全功能的方法 | |
EP3420487B1 (en) | Hybrid hardware-software distributed threat analysis | |
CN101707617B (zh) | 报文过滤方法、装置及网络设备 | |
US8301771B2 (en) | Methods, systems, and computer program products for transmission control of sensitive application-layer data | |
CN101473598B (zh) | 使用虚拟接口在转发上下文之间传送分组 | |
CN1232080C (zh) | 网络中节省ip地址提供内部服务器的方法 | |
CN101123614B (zh) | 一种处理地址解析协议报文的方法及通信装置 | |
CN104272656A (zh) | 软件定义网络中的网络反馈 | |
DE60229631D1 (de) | Systeme und methode zur bereitstellung von differenzierten diensten innerhalb eines netzwerkkommunikationssystems | |
US10795912B2 (en) | Synchronizing a forwarding database within a high-availability cluster | |
US20150030030A1 (en) | Network Adapter Based Zoning Enforcement | |
KR101472685B1 (ko) | 망 연계 게이트웨이 및 이를 이용한 망 분리 방법과 컴퓨터 네트워크 시스템 | |
US20130188635A1 (en) | Network device and method for processing traffic using multi-network interface card | |
US20100180334A1 (en) | Netwrok apparatus and method for transfering packets | |
CN104486229A (zh) | 一种实现vpn网络报文转发的方法及设备 | |
CN1275443C (zh) | 网络处理器内部实现分布式应用层转换网关的方法 | |
CN101699796B (zh) | 一种基于流信任的数据报文高速转发的方法、系统及路由器 | |
US8259740B2 (en) | Method and an apparatus for processing packets | |
US7688821B2 (en) | Method and apparatus for distributing data packets by using multi-network address translation | |
CN106713260B (zh) | 一种用于虚拟专用拨号网中动态数据注入的方法 | |
Qi et al. | Towards system-level optimization for high performance unified threat management | |
CN100512123C (zh) | 同一芯片上实现交换、路由、数据过滤及防火墙的方法 | |
JP2006033106A (ja) | サービス提供プラットフォームシステム | |
CN113572700A (zh) | 流量检测方法、系统、装置及计算机可读存储介质 | |
JP2009290469A (ja) | ネットワーク通信システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20080702 |