流控方法、交换芯片及网络设备技术

技术编号:20657267 阅读:28 留言:0更新日期:2019-03-23 08:39
本申请实施例提供一种流控方法、交换芯片及网络设备。在本申请实施例中,一方面,通过在交换芯片的入口设置多种协议类型的入口ACL,在交换芯片的入口处实现一定程度的报文流控;另一方面,通过对不同协议类型的协议报文配置不同优先级的硬件队列,并按照多个硬件队列之间的优先级,依次将其中的协议报文送入CPU,进一步实现了对需要送CPU的协议报文的流控。在本申请实施例中,通过在交换芯片的入口设置入口ACL以及对不同协议类型的协议报文配置不同优先级的硬件队列,在交换芯片上实现了对需要送CPU的协议报文的流控,整个过程无需CPU的参与,进而有助于降低CPU的资源消耗,减轻CPU的运行负担。

Flow control method, switching chip and network equipment

The embodiment of the application provides a flow control method, a switching chip and a network device. In the embodiment of this application, on the one hand, by setting various protocol types of access ACL at the entrance of the switch chip, a certain degree of message flow control is achieved at the entrance of the switch chip; on the other hand, by configuring different priority hardware queues for protocol messages of different protocol types, and sending the protocol messages in turn according to the priority among multiple hardware queues. Entering the CPU, further realizes the flow control of protocol messages that need to be sent to the CPU. In the application embodiment, by setting the entry ACL at the entrance of the switch chip and configuring the hardware queues with different priority for protocol messages of different protocol types, the protocol messages that need to be sent to the CPU are controlled on the switch chip. The whole process does not require CPU participation, which helps to reduce the resource consumption of the CPU and reduce the running burden of the CPU.

【技术实现步骤摘要】
流控方法、交换芯片及网络设备
本申请涉及无线通信
,尤其涉及一种流控方法、交换芯片及网络设备。
技术介绍
网络设备在接收到其它设备发送的报文后,可由其交换芯片对该报文进行类型解析,以判断该报文是协议报文或是数据报文。当确定该报文是数据报文时,无需上送中央处理器(CentralProcessingUnit,CPU),交换芯片可对该报文继续进行其它处理。当确定该报文是协议报文,如地址解析协议(AddressResolutionProtocol,ARP)报文时,会将该协议报文上送CPU,由CPU进行相关处理。但是,现有上传协议报文至CPU的方式有可能使CPU的负荷增大,导致CPU崩溃。
技术实现思路
本申请的多个方面提供一种流控方法、交换芯片及网络设备,用以在交换芯片上实现对协议报文的流控处理,减小对CPU资源的消耗,进而减轻CPU的负荷。本申请实施例提供一种流控方法,适用于网络设备中的交换芯片,该方法包括:当接收到协议报文时,确定所述协议报文的协议类型;根据与所述协议类型对应的入口访问控制列表(Accesscontrollist,ACL),判断所述协议报文是否需要送CPU;若判断结果为是,则将所述协议报文送入所述交换芯片包含的多个硬件队列中与所述协议类型绑定的硬件队列中;按照所述多个硬件队列之间的优先级,依次将所述多个硬件队列中的协议报文送入CPU。本申请实施例还提供一种交换芯片,包括:输入端口、输出端口、控制模块、多个硬件队列;所述输入端口,用于接收协议报文;所述控制模块,用于在所述输入端口接收到协议报文时,确定所述接收到的协议报文的协议类型;根据与所述协议类型对应的入口ACL,判断所述接收到的协议报文是否需要送CPU;若判断结果为是,则将所述协议报文送入所述多个硬件队列中与所述协议类型绑定的硬件队列中;按照所述多个硬件队列之间的优先级,通过所述输出端口依次将所述多个硬件队列中的协议报文送入所述CPU。本申请实施例还提供一种网络设备,包括上述交换芯片和CPU;所述交换芯片的输出端口与所述CPU连接。在本申请实施例中,一方面,通过在交换芯片的入口设置多种协议类型的入口ACL,在交换芯片的入口处实现一定程度的报文流控;另一方面,通过对不同协议类型的协议报文配置不同优先级的硬件队列,并按照多个硬件队列之间的优先级,依次将其中的协议报文送入CPU,进一步实现了对需要送CPU的协议报文的流控。在本申请实施例中,通过在交换芯片的入口设置入口ACL以及对不同协议类型的协议报文配置不同优先级的硬件队列,在交换芯片上实现了对需要送CPU的协议报文的流控,整个过程无需CPU的参与,进而有助于降低CPU的资源消耗,减轻CPU的运行负担。附图说明此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:图1a为本申请实施例提供的一种网络设备的结构示意图;图1b为本申请实施例提供的一种交换芯片的结构示意图;图2为本申请实施例提供的一种流控方法的流程示意图。具体实施方式为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。针对现有协议报文的流控方式需要消耗CPU资源而增加CPU的负荷的技术问题,本申请实施例提供一种解决方案,基本思路是:一方面,通过在交换芯片的入口设置多种协议类型的入口ACL,在交换芯片的入口处实现一定程度的报文流控;另一方面,通过对不同协议类型的协议报文配置不同优先级的硬件队列,并按照多个硬件队列之间的优先级,依次将其中的协议报文送入CPU,进一步实现了对需要送CPU的协议报文的流控。在本申请实施例中,通过在交换芯片的入口设置入口ACL以及对不同协议类型的协议报文配置不同优先级的硬件队列,在交换芯片上实现了对需要送CPU的协议报文的流控,整个过程无需CPU的参与,进而有助于降低CPU的资源消耗,减轻CPU的运行负担。以下结合附图,详细说明本申请各实施例提供的技术方案。图1a为本申请实施例提供的一种网络设备的内部结构示意图。在本实施例中网络设备可以为交换机等。如图1a所示,网络设备包括:交换芯片101和CPU102;其中交换芯片101的输出端口101b与CPU102连接。在本实施例中,交换芯片101可采用专门应用的集成电路(ApplicationSpecificIntegratedCircuit,ASIC)芯片,例如现场可编程门阵列(Field-ProgrammableGateArray,FPGA)是在可编程阵列逻辑器件(ProgrammableArrayLogic,PAL)、通用阵列逻辑器件(GeneralArrayLogic,GAL)、复杂可编程逻辑器件(ComplexProgrammableLogicDevice,CPLD)等,但不限于此。如图1a所示,交换芯片101包括:输入端口101a、输出端口101b、控制模块101c以及多个硬件队列101d。其中,输入端口101a配置有通信组件,用于接收协议报文。该通信组件可被配置为便于网络设备和其他设备之间的通信。网络设备可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件还可基于近场通信(NFC)技术,射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。交换芯片101的输入端口101a不仅接收协议报文,还接收数据报文。相应地,控制模块101c在输入端口101a接收到报文时,还用于判断输入端口101a接收到的报文是否为协议报文。可选地,可根据接收到的报文的报文头信息,判断接收到的报文是否为协议报文。如果报文头信息中包含有协议类型字段,则确定接收到的报文为协议报文,进一步可根据该协议类型字段确定出该协议报文所属的协议类型。相应地,如果接收到的报文信息中不含有协议类型字段,则确定接收到的报文不是协议报文,其可以是数据报文等,并将该数据报文进行相关处理。例如将数据报文转发给其他设备等。在本申请实施例中主要针对协议报文进行流控处理,因此对数据报文的处理不进行过多描述。在本实施例中,交换芯片101的输入端口上设置有入口ACL,入口ACL设置有一定的匹配规则,用于检测输入端口101a接收到的协议报文是否为需要送CPU102的报文。进一步,在本实施例中,不同协议类型的协议报文设置有不同的入口ACL,且协议类型之间具有优先级。另一方面,在本实施例中,多个硬件队列101d之间具有优先级,用于与协议类型之间的优先级进行绑定。其中,协议类型的优先级越高,绑定的硬件队列的优先级越高。这样,在同一时刻,优先级越高的硬件队列中的协议报文,越优先送入CPU102。其中,多个硬件队列101d的数量由所采用的交换芯片的类型所决定,在本申请实施例中不进行限定。本文档来自技高网...

【技术保护点】
1.一种流控方法,适用于网络设备中的交换芯片,其特征在于,包括:当接收到协议报文时,确定所述协议报文的协议类型;根据与所述协议类型对应的入口访问控制列表ACL,判断所述协议报文是否需要送CPU;若判断结果为是,则将所述协议报文送入所述交换芯片包含的多个硬件队列中与所述协议类型绑定的硬件队列中;按照所述多个硬件队列之间的优先级,依次将所述多个硬件队列中的协议报文送入CPU。

【技术特征摘要】
1.一种流控方法,适用于网络设备中的交换芯片,其特征在于,包括:当接收到协议报文时,确定所述协议报文的协议类型;根据与所述协议类型对应的入口访问控制列表ACL,判断所述协议报文是否需要送CPU;若判断结果为是,则将所述协议报文送入所述交换芯片包含的多个硬件队列中与所述协议类型绑定的硬件队列中;按照所述多个硬件队列之间的优先级,依次将所述多个硬件队列中的协议报文送入CPU。2.根据权利要求1所述的方法,其特征在于,所述入口ACL包括:黑名单,则根据与所述协议类型对应的入口ACL,判断所述协议报文是否需要送CPU,包括:判断所述协议报文是否属于所述黑名单;若所述协议报文不属于所述黑名单,则确定所述协议报文需要送CPU。3.根据权利要求2所述的方法,其特征在于,所述ACL还包括:白名单,则在判断所述协议报文是否属于所述黑名单之前,还包括:判断所述协议报文是否属于白名单;若所述协议报文属于白名单,则确定所述协议报文需要送CPU;若所述协议报文不属于白名单,则执行判断所述协议报文是否属于所述黑名单的操作。4.根据权利要求3所述的方法,其特征在于,将所述协议报文送入所述交换芯片包含的多个硬件队列中与所述协议类型绑定的硬件队列中,包括:若所述协议报文属于白名单,将所述协议报文送入与所述协议类型绑定的硬件队列中的第一硬件队列;若所述协议报文不属于白名单,将所述协议报文送入与所述协议类型绑定的硬件队列中的第二硬件队列;其中,所述第一硬件队列的优先级高于所述第二硬件队列的优先级。5.根据权利要求1-4任一项所述的方法,其特征在于,按照所述多个硬件队列之间的优先级,依次将所述各硬件队列中的协议报文送入CPU,包括:按照所述多个硬件队列之间的优先级,依次将各硬件队列中的协议报文送至所述交换芯片的出口上;结合所...

【专利技术属性】
技术研发人员:施世豪
申请(专利权)人:锐捷网络股份有限公司
类型:发明
国别省市:福建,35

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

1