一种ARP报文的处理方法技术

技术编号:21205369 阅读:36 留言:0更新日期:2019-05-25 02:54
一种ARP报文的处理方法,可解决ARP报文把CPU资源耗尽的技术问题。包括:S100、创建本地ARP条目表;S200、对ARP报文的分类;S300、根据配置对分类后ARP报文丢弃或上送;S400、上送至ARP协议层前,对ARP报文进行限速处理。本发明专利技术的ARP报文的处理方法在设备的CPU性能较弱的情况下,芯片负责转发ARP报文,CPU只处理本设备需要的ARP报文。本发明专利技术CPU通过ARP过滤和ARP限速的二级保护组合使用,CPU能精确识别有用的ARP报文,并有效阻止了ARP泛洪攻击导致ARP处理效率低的问题,节省了系统的整体开销,提高处理效率和防护效果。

A Processing Method for ARP Messages

An ARP message processing method can solve the technical problem that ARP messages exhaust CPU resources. Including: S100, creating local ARP entry list; S200, classifying ARP messages; S300, discarding or uploading ARP messages after classification according to configuration; S400, before uploading to ARP protocol layer, speed-limiting processing of ARP messages. In the ARP message processing method of the invention, when the CPU performance of the device is weak, the chip is responsible for forwarding the ARP message, and the CPU only processes the ARP message needed by the device. The CPU of the invention is combined with ARP filtering and ARP speed limiting secondary protection. The CPU can accurately identify useful ARP messages, effectively prevent the problem of low ARP processing efficiency caused by ARP flooding attack, save the overall cost of the system, improve processing efficiency and protection effect.

【技术实现步骤摘要】
一种ARP报文的处理方法
本专利技术涉及数据通讯
,具体涉及一种ARP报文的处理方法。
技术介绍
ARP(AddressResolutionProtocol),即地址解析协议,是根据IP地址获取物理地址的一个TCP/IP协议,主机设备通过发送一个包含目标IP地址的ARP请求,广播到网络上的其他设备,并接收返回消息,以此确定目标设备的物理地址,有了这个物理地址,主机就可以与目标设备进行数据通信了。在实际网络环境中,当某个设备接入较多的用户,比如PC、交换机等其他网络设备。那么必然会有较多ARP报文经过该设备,对于ARP协议报文,设备通常不判断该ARP报文是否本设备需要的,就全部在CPU进行相关协议处理。这样就容易导致CPU运行较忙,甚至资源耗尽,从而影响设备的正常的工作。
技术实现思路
本专利技术提出的一种ARP报文的处理方法,可解决ARP报文把CPU资源耗尽的技术问题。为实现上述目的,本专利技术采用了以下技术方案:一种ARP报文的处理方法,包括:S100、创建本地ARP条目表;S200、对ARP报文的分类;S300、根据配置对分类后ARP报文丢弃或上送;S400、上送至ARP协议层前,对ARP报文进行限速处理。具体如下:S101、当设备创建接口并设置IP地址时,建立一张本地ARP的软件表,该ARP表包括IP地址和接口信息。S201、根据本专利技术需要,本专利技术对ARP报文类型主要分为三种,本地ARP报文,免费ARP报文,其他ARP报文。其中本地ARP报文是严格匹配本地ARP条目信息的ARP报文。免费ARP报文即ARP报文的目的和源的IP地址是一样的。剩下的ARP报文归为其他ARP报文。S301、设备收到报文,通过芯片区分出ARP报文,将ARP报文上送CPU同时往芯片其他的接口转发。S302、CPU收到ARP报文后,根据S201所述,CPU将对ARP报文进行分类,如果是本地ARP报文和免费ARP报文,将继续后面流程处理。其他ARP报文根据配置要求,丢弃或者继续后面流程的处理。S401、在ARP协议层处理ARP前,ARP报文需要进行速率限制,默认按速率500PPS,可以根据用户对设备的性能进行设置相应的默认速率。也可以在设备运行过程中调整具体的限速值。由上述技术方案可知,本专利技术的ARP报文的处理方法在设备的CPU性能较弱的情况下,芯片负责转发ARP报文,CPU只处理本设备需要的ARP报文。本专利技术CPU通过ARP过滤和ARP限速的二级保护组合使用,CPU能精确识别有用的ARP报文,并有效阻止了ARP泛洪攻击导致ARP处理效率低的问题,节省了系统的整体开销,提高处理效率和防护效果。附图说明图1本专利技术方法步骤流程图;图2本专利技术设备主要装置示意图;图3本专利技术ARP报文在switch的处理示意图;图4本专利技术转发面ARP报文处理模块示意图;图5本专利技术ARP条目信息表示意图;图6本专利技术ARP报文格式示意图;图7本专利技术ARP报文分类示意图;图8本专利技术ARP在CPU的处理流程图;图9是本专利技术具体实例图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。如图1所示,本实施例所述的ARP报文的处理方法,包括:S100、创建本地ARP条目表;S200、对ARP报文的分类;S300、根据配置对分类后ARP报文丢弃或上送;S400、上送至ARP协议层前,对ARP报文进行限速处理。下面结合附图对本专利技术做详细说明:本方法对ARP报文处理主要是交换芯片和CPU,如图2所示,交换芯片负责转发并上送ARP报文到CPU,如图3所示。CPU负责对ARP报文分类,并进行相关处理。这里CPU处理主要由三块构成,分别是控制面建立本地ARP条目表、转发面ARP报文接收模块处理和ARP报文协议模块处理,如图4所示。本地ARP表是根据设备接口配置的IP地址自动生成一张ARP条目表,该ARP条目表项信息由接口、IP组成,如图5所示,当接口的IP地址或者接口被删除,该ARP本地条目也相应删除,ARP条目表是提供给ARP接收模块查表使用。ARP接收模块特点对报文处理效率高,在这个阶段可以简单解析报文内容进行相关处理。ARP协议模块的处理是标准协议处理流程,特点是报文处理全面但效率低。本实施例主要在ARP接收模块阶段挑出设备需要的ARP报文进行优先处理,非本设备需要的报文根据配置要求处理,从而提高处理ARP报文的效率,最后通过ARP报文限速,最终达到减少CPU的负担。因此本实施例处理ARP报文首先需对ARP种类进行分类,本专利技术将ARP分为2类:本设备需要的和本设备不需要的。ARP报文格式如图6所示,本设备需要的包含2种ARP报文:1、免费ARP报文,即目标IP地址与发送者IP地址字段一致。2、目标IP字段与本设备配置的IP地址相同的ARP报文,即ARP接收模块收到的ARP报文中目的IP字段与本地ARP条目信息能够匹配的。除去这2种ARP报文,其他的可以归类为本设备不需要的ARP报文,ARP报文分类如图7所示。当CPU的ARP接收模块收到ARP报文,首先对收到ARP报文的接口信息、目标IP字段与本地的ARP条目的接口信息、IP字段进行匹配,接口信息匹配主要是接口编号及vlan属性的匹配,如果匹配则认为本设备需要的,否则继续判断是否为免费ARP报文,如果是免费ARP报文则认为本设备需要的,否则认为是本设备不不需要的报文,根据设备配置丢弃或者继续处理。在上送ARP协议模块处理前,ARP接收模块需要对ARP报文进行一个限速处理过程发,防止同一类的ARP报文过多,最后送至ARP协议模块处理,其ARP报文在CPU具体处理流程图如图8所示。这样就解决了网络中ARP报文泛洪冲击CPU而导致CPU负担过重的问题。具体案例如下:图9为本实例构造的组网场景,具体实施如下:1、将R1设备的接口gei-1/1、gei-1/2、gei-1/3加入到vlanid值为100的域内,同时配置一个vlan100的接口,其IP地址:10.1.1.1地址,这时生成一个本地ARP条目表,该ARP条目表项信息由接口vlan100和IP地址10.1.1.1组成。当接口的IP地址或者接口被删除,该ARP本地条目也相应删除。同时对R2设备的gei-1/1、gei-1/2也加入到vlanid为100的域内,其接口vlan100的IP地址:11.1.1.1地址,该设备生成一个本地ARP条目,接口为vlan100,IP:11.1.1.1。2、测试仪设备构造3种不同的ARP报文,免费ARP报文、目标IP与R1设备配置的IP一致的ARP请求报文、目标IP与R2设备配置的IP一致的ARP请求报文,三种不同ARP报文同时进入到设备R1。3、R1设备交换芯片收到这三种ARP报文,交换芯片识别出ARP报文后,根据vlan转发原理,ARP报文会备转发到其他vlan100的端口,但由于是ARP报文,需上送CPU处理。此时免费ARP报文、目标IP字段分别为10.1.1.1和11.1.1.1的请求ARP报文会从gei-1/2、gei-1/3发送出去,但不管怎样要拷贝一份到CPU,因为芯片不确定本文档来自技高网...

【技术保护点】
1.一种ARP报文的处理方法,基于交换芯片和CPU,交换芯片负责转发并上送ARP报文到CPU,其特征在于:包括以下步骤,S100、创建本地ARP条目表;S200、对ARP报文的分类;S300、根据配置对分类后ARP报文丢弃或上送;S400、上送至ARP协议层前,对ARP报文进行限速处理。

【技术特征摘要】
1.一种ARP报文的处理方法,基于交换芯片和CPU,交换芯片负责转发并上送ARP报文到CPU,其特征在于:包括以下步骤,S100、创建本地ARP条目表;S200、对ARP报文的分类;S300、根据配置对分类后ARP报文丢弃或上送;S400、上送至ARP协议层前,对ARP报文进行限速处理。2.根据权利要求1所述的ARP报文的处理方法,其特征在于:所述步骤S100具体包括:当设备创建接口并设置IP地址时,建立一张本地ARP的软件表,该ARP表包括IP地址和接口信息。3.根据权利要求2所述的ARP报文的处理方法,其特征在于:所述步骤S200中对ARP报文的分类,包括三种:本地ARP报文,免费ARP报文,其他ARP报文;其中,本地ARP报文匹配本地ARP条目信息的ARP报文;免费ARP报文即A...

【专利技术属性】
技术研发人员:付艳柳
申请(专利权)人:安徽皖通邮电股份有限公司
类型:发明
国别省市:安徽,34

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

1