CN111277518B - 信息处理方法、以太网交换芯片以及存储介质 - Google Patents

信息处理方法、以太网交换芯片以及存储介质 Download PDF

Info

Publication number
CN111277518B
CN111277518B CN202010075350.XA CN202010075350A CN111277518B CN 111277518 B CN111277518 B CN 111277518B CN 202010075350 A CN202010075350 A CN 202010075350A CN 111277518 B CN111277518 B CN 111277518B
Authority
CN
China
Prior art keywords
module
message
processing
core
information table
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.)
Active
Application number
CN202010075350.XA
Other languages
English (en)
Other versions
CN111277518A (zh
Inventor
蒋震
方沛昱
周伟
崔兴龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Centec Communications Co Ltd
Original Assignee
Suzhou Centec Communications Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Suzhou Centec Communications Co Ltd filed Critical Suzhou Centec Communications Co Ltd
Priority to CN202010075350.XA priority Critical patent/CN111277518B/zh
Publication of CN111277518A publication Critical patent/CN111277518A/zh
Priority to US17/793,426 priority patent/US20230042387A1/en
Priority to PCT/CN2020/113731 priority patent/WO2021147332A1/zh
Application granted granted Critical
Publication of CN111277518B publication Critical patent/CN111277518B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/109Integrated on microchip, e.g. switch-on-chip
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/351Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种信息处理方法、以太网交换芯片以及存储介质。其中,方法包括:以太网交换芯片的主模块接收并响应报文信息学习请求,执行所述报文信息学习请求对应的自学习操作,得到报文信息学习结果;所述主模块根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表;和/或,将所述报文信息学习结果发送给相应从模块,以供所述相应从模块根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表;采用本发明的方案,能够使得双核心或多核心以太网交换芯片中各IP核心的自学习操作不会发生冲突,进一步使得双核心或多核心以太网交换芯片对外的系统行为与单核心以太网交换芯片相同。

Description

信息处理方法、以太网交换芯片以及存储介质
技术领域
本发明涉及以太网数据交换技术,具体涉及一种信息处理方法、以太网交换芯片以及存储介质。
背景技术
随着超大规模云网络、存储网络及高性能计算机群(High PerformanceComputing,HPC)等技术的发展,网络上的数据交换量越来越大,单芯片的数据处理能力也在不断地提升:从千兆(Gbps)数量级提升到了兆兆(Tbps)数量级。但是当前生产工艺制造的单芯片尺寸为14nm/12nm或7nm/6nm,其知识产权核心(Intellectual Property core,IPcore)可以运行的时钟频率最高分别在1.05GHz或1.7GHz。仅具备一个IP核心的单芯片无法满足芯片市场高达25.6Tbps的报文处理带宽的需求。从制造工程的角度来看,为了满足芯片市场对报文处理带宽的需求,在具备单一IP核心的单芯片的时钟频率受限的情况下,设计具备双IP核心或具备多个IP核心的单芯片是很有必要的。
然而,相关技术中,双核心或多核心的单芯片的信息处理方法尚需优化。
发明内容
有鉴于此,本发明实施例提供了一种信息处理方法、以太网交换芯片以及存储介质。
本发明实施例的技术方案是这样实现的:
本发明实施例提供了一种信息处理方法,包括:
以太网交换芯片的主模块接收报文信息学习请求;所述以太网交换芯片包含至少两个IP核心;每个IP核心至少包含第一处理模块和第二处理模块;所述第一处理模块用于根据自身所处IP核心存储的报文处理信息表对接收的报文进行相应处理;所述第二处理模块用于更新所述报文处理信息表;所述主模块为所有第二处理模块中的一个第二处理模块;
所述主模块响应接收的报文信息学习请求,执行所述报文信息学习请求对应的自学习操作,得到报文信息学习结果;
所述主模块根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表;和/或,将所述报文信息学习结果发送给相应从模块,以供所述相应从模块根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表;所述从模块为所有第二处理模块中除作为主模块外的第二处理模块。
上述方案中,所述以太网交换芯片的主模块接收报文信息学习请求,包括:
所述主模块接收自身所处IP核心的第一处理模块发送的报文信息学习请求;
或者,
所述主模块接收从模块发送的报文信息学习请求;所述从模块发送的报文信息学习请求是从自身所处IP核心的第一处理模块接收的。
上述方案中,所述方法还包括:
所述第一处理模块在自身所处IP核心的报文处理信息表中查询与接收的报文相对应的报文处理策略,以根据查询到的报文处理策略对接收的报文进行相应处理;其中,
当满足以下条件之一时,所述第一处理模块发送报文信息学习请求给自身所处IP核心的第二处理模块:
所述第一处理模块未在自身存储的报文处理信息表中查询到与接收的报文相对应的报文处理策略;
所述第一处理模块根据查询到的报文处理策略对接收的报文进行相应处理时处理失败。
上述方案中,在更新报文处理信息表时,相应模块将所述报文信息学习结果对应的报文处理策略添加至自身所处IP核心的报文处理信息表;或者,相应模块根据所述报文信息学习结果对应的报文处理策略修改自身所处IP核心的报文处理信息表中相应的报文处理策略。
上述方案中,所述将所述报文信息学习结果发送给相应从模块,包括:
所述主模块通过自身所处IP核心设置的第一接口以及所述相应从模块自身所处IP核心设置的第二接口将所述报文信息学习结果发送给所述相应从模块。
上述方案中,所述方法还包括:
所述第二处理模块向自身所处IP核心的第一处理模块发送更新请求,以供所述第一处理模块根据所述更新请求更新自身所处IP核心的报文处理信息表;所述更新请求至少包含所述报文信息学习结果。
上述方案中,所述方法还包括:
所述主模块在预设时延后开始根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表;所述预设时延为第一时刻与第二时刻的差值;所述第一时刻为所述主模块将所述报文信息学习结果发送给所述相应从模块的时刻;所述第二时刻为所述相应从模块接收到所述报文信息学习结果的时刻。
本发明实施例还提供了一种以太网交换芯片,所述以太网交换芯片包含至少两个IP核心;每个IP核心至少包含第一处理模块和第二处理模块;所述第一处理模块用于根据自身所处IP核心存储的报文处理信息表对接收的报文进行相应处理;所述第二处理模块用于更新所述报文处理信息表;所有第二处理模块中的一个第二处理模块为主模块;所有第二处理模块中除作为主模块外的第二处理模块为从模块;其中,
所述主模块,用于:
接收报文信息学习请求;
响应接收的报文信息学习请求,执行所述报文信息学习请求对应的自学习操作,得到报文信息学习结果;
根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表;和/或,将所述报文信息学习结果发送给相应从模块,以供所述相应从模块根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表。
本发明实施例还提供了一种以太网交换芯片,包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器;
其中,所述处理器用于运行所述计算机程序时,执行上述任一方法的步骤。
本发明实施例还提供了一种存储介质,所述介质存储有计算机程序,所述计算机程序被处理器执行时实现上述任一方法的步骤。
本发明实施例提供的技术方案,以太网交换芯片的主模块接收报文信息学习请求;所述以太网交换芯片包含至少两个IP核心;每个IP核心至少包含第一处理模块和第二处理模块;所述第一处理模块用于根据自身所处IP核心存储的报文处理信息表对接收的报文进行相应处理;所述第二处理模块用于更新所述报文处理信息表;所述主模块为所有第二处理模块中的一个第二处理模块;所述主模块响应接收的报文信息学习请求,执行所述报文信息学习请求对应的自学习操作,得到报文信息学习结果;所述主模块根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表;和/或,将所述报文信息学习结果发送给相应从模块,以供所述相应从模块根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表;所述从模块为所有第二处理模块中除作为主模块外的第二处理模块。本发明实施例的方案,以太网交换芯片的至少两个IP核心的报文处理信息表都是基于主模块的报文信息学习结果更新的,如此,使得双核心或多核心以太网交换芯片中各IP核心的自学习操作不会发生冲突,进一步使得双核心或多核心以太网交换芯片对外的系统行为与单核心以太网交换芯片相同。
附图说明
图1为双核心以太网交换芯片的结构示意图;
图2为本发明实施例信息处理方法的流程示意图;
图3为本发明应用实施例交换机的结构示意图;
图4为本发明应用实施例主IP核心触发学习请求的应用场景下信息处理方法的流程示意图;
图5为本发明应用实施例从IP核心触发学习请求的应用场景下信息处理方法的流程示意图;
图6为本发明实施例以太网交换芯片的结构示意图;
图7为本发明实施例以太网交换芯片的硬件结构示意图。
具体实施方式
以下结合说明书附图及具体实施例对本发明的技术方案作进一步的详细阐述。
随着芯片生产工艺的进步,流片(Tape out)费用越来越高。为了在节省成本的前提下丰富产品线,需要在一次Tape out中同时设计并生产出高带宽(单核心)和超高带宽(双核心或多核心)的以太网交换芯片。由于每个裸晶(Die)上可以封装一个IP核心,因此,通过使用裸晶互联(Die to Die,D2D)技术,能够实现一次Tape out覆盖多个产品线:单核心以太网交换芯片使用一个Die封装;双核心或多核心以太网交换芯片使用两个或多个Die封装。这里,为了支持双核心或多核心以太网交换芯片包含的各IP核心既能够分离封装成两块或多块不同的以太网交换芯片独立工作,也能够合并封装成一个芯片,各IP核心的结构是完全一致的。对于具备双核心或多核心的以太网交换芯片,从芯片的应用角度来说,芯片在工作时所展现出来的系统行为不应当使其它终端或服务器感知到芯片架构是单核心还是双核心或多核心设计(比如其它终端或服务器感知到芯片的各IP核心转发报文有冲突或时延不一致的情况)。因此,各IP核心间的信息同步是非常必要的。具体地,以太网交换芯片在处理报文时,需要维护报文处理信息表(即更新IP核心中储存的报文处理信息表),所述报文处理信息表存储于IP核心,用于供所述IP核心查询接收的报文对应的报文处理策略,并利用查询到的报文处理策略对接收的报文进行相应处理(例如转发、丢弃等)。对于单核心以太网交换芯片的IP核心,报文处理信息表是公共资源,即所述IP核心的所有接口在接收报文后查询接收的报文对应的报文转发策略时查询的是相同的报文处理信息表,所述IP核心可以维护自身存储的报文处理信息表。但对于双核心或多核心以太网交换芯片的至少两个IP核心中的每个IP核心,所述IP核心中不仅存储有接口属性信息表等与IP核心的接口强相关的报文处理信息表,还存储有以太网二层网桥报文转发信息表(ForwardDatabase,FDB)等与IP核心的接口弱相关的报文处理信息表;这里,所述与IP核心的接口强相关的报文处理信息表仅存储在相应的IP核心中,而所述与IP核心的接口弱相关的报文处理信息表存储在每个IP核心中;因此,所述与IP核心的接口强相关的报文处理信息表可以由相应的IP核心进行内部维护,无需告知其它IP核心;而所述与IP核心的接口弱相关的报文处理信息表需要所有IP核心同步维护,各IP核心存储的需要同步维护的报文处理信息表必须保持一致。然而,由于以太网交换芯片是一次Tape out覆盖多个产品线生产的,各IP核心分别独立封装,即各IP核心之间无法存在共享公共资源区域来支持为了同步维护报文处理信息表进行的互操作。
以图1所示的双核心以太网交换芯片为例,以太网交换芯片100包含IP核心110和IP核心120,报文处理流水线111和报文处理流水线121用于根据自身所处IP核心存储的报文处理信息表对接收的报文进行相应处理;处理引擎112和处理引擎122用于更新自身所处IP核心的报文处理信息表(实际应用时,报文处理信息表也可以是由报文处理流水线或设置有所述以太网交换芯片的交换机的中央处理器(Central Processing Unit,CPU)更新的,这里仅针对处理引擎更新报文处理信息表的情况进行举例说明)。在以太网交换芯片100需要对以太网二层的一个报文进行转发时,如果以太网交换芯片100仅包含IP核心110,报文处理流水线111会在IP核心110存储的FDB中查询待转发报文的报文转发策略;如果报文处理流水线111没有在FDB中找到待转发报文的报文转发策略,则发送待转发报文的报文信息学习请求给处理引擎112,触发处理引擎112的自学习操作,使处理引擎112得到待转发报文的报文信息学习结果;处理引擎112基于得到的报文信息学习结果确定待转发报文的报文转发策略,并添加到IP核心110存储的FDB中,供报文处理流水线111后续对其它接收的报文进行转发处理。但是,以太网交换芯片100还包含IP核心120,由于FDB是需要IP核心110和IP核心120同步维护的报文处理信息表,处理引擎112基于得到的报文信息学习结果确定待转发报文的报文转发策略,并添加到IP核心110存储的FDB中的同时,还需将得到的报文信息学习结果发送到处理引擎122,以供处理引擎122将相应的报文转发策略添加到IP核心120存储的FDB;此时,如果处理引擎122接收了报文处理流水线121的报文学习请求进行自学习操作,也需要将确定的另一个待转发报文的转发策略添加到报文处理流水线121中,报文处理流水线121需要同时更新两次FDB,这两次更新可能会有冲突(例如当FDB使用哈希(Hash)方式存储,则可能出现报文处理流水线121的FDB的两个待转发报文的转发策略写位置冲突)。
基于此,在本发明的各种实施例中,将以太网交换芯片的一个IP核心的处理引擎设置为主模块,并将其它IP核心的处理引擎设置为从模块,由主模块完成所有IP核心的报文处理流水线触发的自学习操作,得到报文信息学习结果,并使以太网交换芯片的至少两个IP核心的报文处理信息表都是基于主模块的报文信息学习结果更新的,如此,可以使得双核心或多核心以太网交换芯片中各IP核心的自学习操作不会发生冲突,进一步使得双核心或多核心以太网交换芯片对外的系统行为与单核心以太网交换芯片相同。
本发明实施例提供一种信息处理方法,如图2所示,所述方法包括以下步骤:
步骤201:以太网交换芯片的主模块接收报文信息学习请求;
这里,所述以太网交换芯片包含至少两个IP核心;每个IP核心至少包含第一处理模块和第二处理模块;所述第一处理模块用于根据自身所处IP核心存储的报文处理信息表对接收的报文进行相应处理;所述第二处理模块用于更新所述报文处理信息表;所述主模块为所有第二处理模块中的一个第二处理模块。
步骤202:所述主模块响应接收的报文信息学习请求,执行所述报文信息学习请求对应的自学习操作,得到报文信息学习结果;
步骤203:所述主模块根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表;和/或,将所述报文信息学习结果发送给相应从模块,以供所述相应从模块根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表。
这里,所述从模块为所有第二处理模块中除作为主模块外的第二处理模块。
在步骤201中,实际应用时,所述第一处理模块可以是图1所示的以太网交换芯片的报文处理流水线111和报文处理流水线121;所述第二处理模块可以是图1所示的以太网交换芯片的处理引擎112和处理引擎122。
实际应用时,在所述主模块接收报文处理请求前,需要在所有第二处理模块中确定主模块。
基于此,在一实施例中,所述方法还可以包括:
将所述以太网交换芯片的一个IP核心的第二处理模块配置为主模块,并将其它IP核心的第二处理模块配置为从模块,得到一个主模块和至少一个从模块。
实际应用时,可以由用户根据需要将所述以太网交换芯片的任意一个IP核心的第二处理模块配置为主模块;并可以将主模块所处的IP核心确定为主IP核心,将从模块所处的IP核心确定为从IP核心。
实际应用时,针对所述以太网交换芯片的每个IP核心,相应IP核心还可以包括第三处理模块;将所述以太网交换芯片的一个IP核心的第二处理模块配置为主模块后,即确定了主IP核心后,主IP核心的第三处理模块用于通过高速串行计算机扩展总线标准(Peripheral Component Interconnect express,PCIe)总线和设置有所述以太网交换芯片的交换机的CPU进行信息交互;在用户重新确定主模块后,可以将原主IP核心的第三处理模块与所述CPU之间的PCIe总线断开,并将重新确定的主IP核心的第三处理模块通过PCIe总线与所述CPU建立连接。
实际应用时,所述报文处理信息表存储有报文处理策略;所述第一处理模块可以在自身所处IP核心的报文处理信息表中查询与接收的报文相对应的报文处理策略,以根据查询到的报文处理策略对接收的报文进行相应处理,例如转发处理、丢弃处理或修改报文优先级字段等处理。每个IP核心存储的报文处理信息表可以是与相应IP核心的接口强相关的报文处理信息表(后续的描述中记作专项信息表),也可以是与所述相应IP核心的接口弱相关的报文处理信息表(后续的描述中记作全局信息表);具体地,所述专项信息表用于存储与所述以太网交换芯片的一个IP核心相关联的报文处理策略,并仅存储在相应IP核心中,例如接口属性信息表,所述接口属性信息表包含的索引ID即为接口ID,而对于一个指定的接口一定属于一个固定的IP核心;而所述全局信息表用于存储与所述以太网交换芯片的所有IP核心相关联的报文处理策略,并存储在所述以太网交换芯片的每个IP核心中,例如FDB、以太网三层路由交换信息表(Routing Information Base,RIB)、多协议标签交换表(Multi-Protocol Label Switching,MPLS)、标签映射表(Incoming Label Map,ILM)等报文转发信息表,再例如时间同步计数器信息表、带宽评估信息表等公共资源信息表,以及与FDB对应的老化状态信息表(Aging State Table,AST)等有状态报文处理信息表。所述全局信息表需要各IP核心同步维护,即每个IP核心存储的所述全局信息表需要保持一致,这样,无论所述以太网交换芯片的哪一个接口接收了报文,相应的IP核心查询接收的报文对应的报文处理策略时查询的是相同的全局信息表。
实际应用时,所述主模块自身所处IP核心的第一处理模块(即所述主IP核心的第一处理模块)在无法根据报文处理信息表对接收的报文进行相应处理时,可以发送报文信息学习请求给所述主模块,以触发所述主模块的自学习操作;各从模块自身所处IP核心的第一处理模块(即各从IP核心的第一处理模块)在无法根据报文处理信息表对接收的报文进行相应处理处理时,可以发送报文信息学习请求给自身所处IP核心的从模块,再由各从模块将所述报文信息学习请求发送给主模块,以触发所述主模块的自学习操作;这样,由所述主模块完成所有IP核心触发的自学习操作,得到报文信息学习结果,并使各IP核心的报文处理信息表都是基于主模块的报文信息学习结果更新的,如此,可以使得双核心或多核心以太网交换芯片中各IP核心的自学习操作不会发生冲突,进一步使得双核心或多核心以太网交换芯片对外的系统行为与单核心以太网交换芯片相同。
基于此,在一实施例中,所述方法还可以包括:
所述第一处理模块在自身所处IP核心的报文处理信息表中查询与接收的报文相对应的报文处理策略,以根据查询到的报文处理策略对接收的报文进行相应处理;其中,
当满足以下条件之一时,所述第一处理模块可以发送报文信息学习请求给自身所处IP核心的第二处理模块:
所述第一处理模块未在自身存储的报文处理信息表中查询到与接收的报文相对应的报文处理策略;
所述第一处理模块根据查询到的报文处理策略对接收的报文进行相应处理时处理失败。
相应地,所述以太网交换芯片的主模块接收报文信息学习请求,可以包括:
所述主模块接收自身所处IP核心的第一处理模块发送的报文信息学习请求;
或者,
所述主模块接收从模块发送的报文信息学习请求;所述从模块发送的报文信息学习请求是从自身所处IP核心的第一处理模块接收的。
在步骤202中,实际应用时,所述报文信息学习请求对应的自学习操作,可以是源IP地址、源端口、目的IP地址、目的端口以及传输层协议等信息的自学习操作;相应地,所述报文信息学习结果可以包括所述主模块自学习操作得到的源IP地址、源端口、目的IP地址、目的端口以及传输层协议等信息以及相应信息在所述报文处理信息表中的存储位置。
在步骤203中,实际应用时,在所述主模块接收自身所处IP核心的第一处理模块发送的报文信息学习请求的情况下,所述主模块可以根据第一预设策略(用户可以根据需要在设置有所述以太网交换芯片的交换机的系统软件中进行配置)判断所述报文信息学习请求对应的报文处理信息表是所述主IP核心的专项信息表还是各IP核心同步维护的全局信息表;如果所述主模块确定所述报文信息学习请求对应的报文处理信息表是所述主IP核心的专项信息表,所述主模块可以根据所述报文信息学习结果更新自身所处IP核心的专项信息表;如果所述主模块确定所述报文信息学习请求对应的报文处理信息表是各IP核心同步维护的全局信息表,那么在所述主模块根据所述报文信息学习结果更新自身所处IP核心的全局信息表的同时,还需要将所述报文信息学习结果发送给所述以太网交换芯片的每个从模块,以供各从模块根据所述报文信息学习结果更新自身所处IP核心的全局信息表;也就是说,如果所述主模块确定所述报文信息学习请求对应的报文处理信息表是各IP核心同步维护的全局信息表,那么所述以太网交换芯片的每个从模块都是所述相应从模块。在所述主模块接收从模块发送的报文信息学习请求的情况下,所述主模块同样可以根据所述第一预设策略对所述报文信息学习请求进行判断,以确定所述报文信息学习请求对应的报文处理信息表是某一个从IP核心(后续的描述中记作目标从IP核心)的专项信息表还是各IP核心同步维护的全局信息表;如果所述主模块确定所述报文信息学习请求对应的报文处理信息表是所述目标从IP核心的专项信息表,所述主模块可以将所述报文信息学习结果发送给所述目标从IP核心的从模块,以供所述目标从IP核心的从模块根据所述报文信息学习结果更新自身所处IP核心的专项信息表;如果所述主模块确定所述报文信息学习请求对应的报文处理信息表是各IP核心同步维护的全局信息表,所述主模块可以根据所述报文信息学习结果更新自身所处IP核心的全局信息表,同时,将所述报文信息学习结果发送给所述以太网交换芯片的每个从模块,以供各从模块根据所述报文信息学习结果更新自身所处IP核心的全局信息表。
实际应用时,针对所述以太网交换芯片的每个IP核心,可以由所述第二处理模块直接根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表;也可以由所述第二处理模块向自身所处IP核心的第一处理模块发送包含所述报文信息学习结果的更新请求,以供所述第一处理模块根据所述更新请求更新自身所处IP核心的报文处理信息表;上述两种方式可以由用户根据芯片设计需求自行选择。
基于此,在一实施例中,所述方法还可以包括:
所述第二处理模块向自身所处IP核心的第一处理模块发送更新请求,以供所述第一处理模块根据所述更新请求更新自身所处IP核心的报文处理信息表;所述更新请求至少包含所述报文信息学习结果。
实际应用时,为了优化所述以太网交换芯片的报文处理性能,针对需要各IP核心同步维护的全局信息表,需要实现各IP核心同步更新自身的全局信息表。
基于此,在一实施例中,所述主模块根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表,并将所述报文信息学习结果发送给相应从模块,以供所述相应从模块根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表时,所述方法还可以包括:
所述主模块在预设时延后开始根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表;所述预设时延为第一时刻与第二时刻的差值;所述第一时刻为所述主模块将所述报文信息学习结果发送给所述相应从模块的时刻;所述第二时刻为所述相应从模块接收到所述报文信息学习结果的时刻。
实际应用时,用户可以在每个IP核心的第二处理模块中配置一个预设级数的流水线,所述预设级数的流水线用于实现所述预设时延;具体地,当所述第二处理模块被配置为主模块,且所述主模块需要根据所述报文信息学习结果更新自身所处IP核心的全局信息表时,所述主模块可以通过所述预设级数的流水线更新自身所处IP核心的全局信息表,即实现在预设时延后开始更新自身所处IP核心的全局信息表;当所述第二处理模块被配置为从模块,且所述从模块需要接收所述主模块发送的报文信息学习结果来更新自身所处IP核心的全局信息表时,所述从模块可以跳过自身配置的预设级数的流水线,直接更新自身所处IP核心的全局信息表。这里,用户可以基于芯片设计需求确定预设时延的大小;例如,用户可以设置每个第二处理模块配置的流水线的预设级数为2,即每个第二处理模块配置了一个2级流水线,则可以确定所述预设时延为2个时钟周期,所述时钟周期为所述以太网交换芯片的时钟模块的时钟周期。也就是说,所述主模块在2个时钟周期后开始根据报文信息学习结果更新自身所处IP核心的全局信息表,同时,所述主模块将所述报文信息学习结果发送给相应从模块也需要2个时钟周期,即所述相应从模块在2个时钟周期后接收到所述报文信息学习结果并直接开始更新自身所处IP核心的全局信息表;如此,可以实现各IP核心同步更新自身的全局信息表。
实际应用时,为了优化所述以太网交换芯片的报文处理性能,所述以太网交换芯片需要在合理的时间范围内完成各IP核心的报文处理信息表的更新,即相应从模块接收到所述主模块发送的报文信息学习结果所需的时长需在合理的时间范围内(例如20个时钟周期);用户可以基于芯片设计需求确定相应从模块接收到所述主模块发送的报文信息学习结果所需的时长,并通过控制各模块间的数据传输线的长度等方式设置所述时长。
实际应用时,在更新报文处理信息表的过程中,相应模块可以将所述报文信息学习结果对应的报文处理策略添加至自身所处IP核心的报文处理信息表;或者,相应模块可以根据所述报文信息学习结果对应的报文处理策略修改自身所处IP核心的报文处理信息表中相应的报文处理策略。具体地,如果所述主模块接收的是相应的第一处理模块未在自身存储的报文处理信息表中查询到与接收的报文相对应的报文处理策略的情况下发送的报文信息学习请求,则相应模块可以将所述报文信息学习结果对应的报文处理策略添加至自身所处IP核心的报文处理信息表;如果所述主模块接收的是相应的第一处理模块根据查询到的报文处理策略对接收的报文进行相应处理时处理失败的情况下发送的报文信息学习请求,则相应模块可以根据所述报文信息学习结果对应的报文处理策略修改自身所处IP核心的报文处理信息表中相应的报文处理策略。
实际应用时,所述以太网交换芯片的各个IP核心上需要设置IP核心之间的通信接口,以使所述主模块和各从模块可以通过所述通信接口进行信息交互。
基于此,在一实施例中,所述将所述报文信息学习结果发送给相应从模块,包括:
所述主模块通过自身所处IP核心设置的第一接口以及所述相应从模块自身所处IP核心设置的第二接口将所述报文信息学习结果发送给所述相应从模块。
实际应用时,为了保证所述以太网交换芯片的工作效率,用户可以根据需要对所述第一接口和所述第二接口在每个时钟周期支持的信息交互次数进行设置;例如,可以使得所述第一接口能够在每一个时钟周期将主模块发送的一份信息传递给相应从模块,以及接收所述相应从模块发送的一份信息;并使得所述第二接口能够在每一个时钟周期将相应从模块发送的一份信息传递给主模块,以及接收主模块发送的一份信息。
实际应用时,用户可以根据所述主模块和所述各从模块在信息交互时需要传递的信息的大小来设置所述第一接口和所述第二接口允许通过的最大数据量为nbit,n为正整数。
实际应用时,为了确保所述以太网交换芯片的报文转发的正确率,可以通过错误检查和纠正(Error Correcting Code,ECC)技术或其它纠错技术使得通过所述第一接口和所述第二接口进行的信息交互为无错误通信。
实际应用时,针对所述以太网交换芯片的每个IP核心,考虑到所述第二处理模块从所述第一处理模块接收报文信息学习请求需要一定的时延,在这段时延内自身所处IP核心的报文处理信息表可能已经更新完毕,即没有必要再一次执行所述报文信息学习请求对应的自学习操作;为了判断是否有必要执行接收的报文信息学习请求对应的自学习操作,所述第二处理模块在从所述第一处理模块接收所述报文信息学习请求后,可以在自身所处IP核心的报文处理信息表进行查询,以判断所述报文信息学习请求对应的报文处理策略是否已经更新完毕;如果是,所述第二处理模块结束当前进程(即如果所述第二处理模块为主模块,则停止执行所述报文信息学习请求对应的自学习操作;如果所述第二处理模块为从模块,则不将所述报文信息学习请求发送给主模块);如果否,所述第二处理模块继续执行下一步操作(如果所述第二处理模块是主模块,则执行所述报文信息学习请求对应的自学习操作;如果所述第二处理模块是从模块,则将所述报文信息学习请求发送给主模块)。
本发明实施例提供的信息处理方法,以太网交换芯片的主模块接收报文信息学习请求;所述以太网交换芯片包含至少两个IP核心;每个IP核心至少包含第一处理模块和第二处理模块;所述第一处理模块用于根据自身所处IP核心存储的报文处理信息表对接收的报文进行相应处理;所述第二处理模块用于更新所述报文处理信息表;所述主模块为所有第二处理模块中的一个第二处理模块;所述主模块响应接收的报文信息学习请求,执行所述报文信息学习请求对应的自学习操作,得到报文信息学习结果;所述主模块根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表;和/或,将所述报文信息学习结果发送给相应从模块,以供所述相应从模块根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表;所述从模块为所有第二处理模块中除作为主模块外的第二处理模块;如此,使得双核心或多核心以太网交换芯片中各IP核心的自学习操作不会发生冲突,进一步使得双核心或多核心以太网交换芯片对外的系统行为与单核心以太网交换芯片相同。
下面结合应用实施例对本发明再作进一步详细的描述。
在本应用实施例中,如图3所示,交换机300包括双核心以太网交换芯片310和CPU320;所述以太网交换芯片310包括IP核心311和IP核心312;每个IP核心包括一个报文处理流水线(即上述第一处理模块,可称为模块一)、一个处理引擎(即上述第二处理模块,可称为模块二)、一个CPU交互模块(即上述第三处理模块,可称为模块三)、一个接口(即上述第一接口或第二接口)和一个报文处理信息表库;即IP核心311包括模块一3111、模块二3112、模块三3113、接口3114和报文处理信息表库3115;IP核心312包括模块一3121、模块二3122、模块三3123、接口3124和报文处理信息表库3125;其中,
所述模块一3111和所述模块一3121,用于根据自身所处IP核心的报文处理信息表对接收的报文进行相应处理;
所述模块二3112和所述模块二3122,用于更新自身所处IP核心的报文处理信息表;所述更新包括增加报文处理策略、修改报文处理策略和删除报文处理策略;
所述模块三3113和所述模块三3123,用于通过PCIe总线330或PCIe总线340和CPU320进行信息交互;
所述接口3114和所述接口3124,用于实现各模块二之间的信息交互,即实现各IP核心之间的信息交互;
所述报文处理信息表库3115和所述报文处理信息表库3125,用于存储自身所处IP核心的报文处理信息表。
实际应用时,也可以由所述模块一3111或所述模块一3121或CPU 320发起报文处理信息表的更新。
在本应用实施例中,模块二3112为主模块,模块二3122为从模块;相应地,IP核心311为主IP核心,IP核心312为从IP核心;IP核心311通过PCIe总线330与CPU 320进行信息交互,IP核心312连接的PCIe总线340不连接CPU 320;在需要切换主从模块,即将模块二3122配置为主模块,并将模块二3112配置为从模块时,需要断开PCIe总线330与CPU 320之间的连接,并连接PCIe总线340到CPU 320,使得IP核心312能够作为主IP核心与CPU 320进行信息交互。
这里,“IP核心311通过PCIe总线330和CPU 320进行信息交互,IP核心312连接的PCIe总线340不连接CPU 320(即模块二3112为主模块,模块二3122为从模块,IP核心311为主IP核心,IP核心312为从IP核心)”和“IP核心312通过PCIe总线340和CPU 320进行信息交互,IP核心311连接的PCIe总线330不连接CPU 320(即模块二3122为主模块,模块二3112为从模块,IP核心312为主IP核心,IP核心311为从IP核心)”并没有实质区别,本应用实施例仅以“IP核心311通过PCIe总线330和CPU 320进行信息交互,IP核心312连接的PCIe总线340不连接CPU 320(即模块二3112为主模块,模块二3122为从模块,IP核心311为主IP核心,IP核心312为从IP核心)”作为举例说明。
另外,需要说明的是,本应用实施例中的报文处理信息表为全局信息表。
基于所述以太网交换芯片310,本应用实施例的信息处理方法包括两种应用场景:主IP核心311触发学习请求(即上述报文信息学习请求)的应用场景以及从IP核心312触发学习请求的应用场景。以下再结合附图对每种应用场景的步骤进行详细说明。
场景一:主IP核心311触发学习请求的应用场景。
具体地,如图4所示,在主IP核心311触发学习请求的应用场景中,本应用实施例的信息处理方法包括以下步骤:
步骤401:模块一3111接收第一报文,对第一报文进行解析,得到第一来源地址;之后执行步骤402。
步骤402:模块一3111向报文处理信息表库3115发送第一查询请求;所述第一查询请求包含第一来源地址;所述第一查询请求用于获取与第一来源地址对应的第一接收端口,以供模块一3111将第一报文转发到第一接收端口;之后执行步骤403。
步骤403:报文处理信息表库3115接收到第一查询请求,确定自身的报文处理信息表中不存在第一来源地址对应的记录,并向模块一3111返回第一查询结果;所述第一查询结果用于告知模块一3111报文处理信息表中不存在第一来源地址对应的记录;之后执行步骤404。
步骤404:模块一3111接收到第一查询结果,确定报文处理信息表库3115中不存在第一来源地址对应的记录,并向模块二3112发送第一学习请求;所述第一学习请求包含第一来源地址;所述第一学习请求用于触发模块二3112的自学习操作,以确定与第一来源地址对应的第一接收端口;之后执行步骤405。
步骤405:模块二3112接收到第一学习请求,向报文处理信息表库3115发送第二查询请求;所述第二查询请求包含第一来源地址;所述第二查询请求用于确认报文处理信息表库3115是否确实不存在第一来源地址对应的记录;之后执行步骤406。
步骤406:报文处理信息表库3115接收到第二查询请求,判断自身的报文处理信息表中是否存在第一来源地址对应的记录;并向模块二3112返回第二查询结果;所述第二查询结果用于告知模块二3112报文处理信息表中是否存在第一来源地址对应的记录。
步骤407:模块二3112接收到第二查询结果,根据第二查询结果,确定报文处理信息表库3115中是否存在第一来源地址对应的记录;如果存在,结束当前进程;如果不存在,进行自学习操作,确定第一来源地址对应的第一接收端口,得到包含第一来源地址和第一接收端口的第一学习结果;之后同步执行步骤408和步骤409。
步骤408:模块二3112将包含第一学习结果的第一更新指令在X个时钟周期后发送给报文处理信息表库3115;所述第一更新指令用于指示报文处理信息表库3115将第一学习结果写入自身的报文处理信息表中。
这里,X为用户为模块二3112配置的流水线级数,模块二3112可以通过配置的X级流水线实现将第一更新指令在X个时钟周期后发送给报文处理信息表库3115;所述时钟周期为以太网交换芯片310包含的时钟模块的时钟周期。
步骤409:模块二3112将第一学习结果发送给接口3114;之后执行步骤410。
步骤410:接口3114将第一学习结果发送给接口3124;之后执行步骤411。
步骤411:接口3124将第一学习结果发送给模块二3122;之后执行步骤412。
步骤412:模块二3122将包含第一学习结果的第二更新指令发送给报文处理信息表库3125;所述第二更新指令用于指示报文处理信息表库3125将第一学习结果写入自身的报文处理信息表中。
这里,需要说明的是,执行步骤409至步骤411所需的时间为X个时钟周期,即模块二3112和模块二3122同步发送更新指令给各自对应的报文处理信息表库,以实现报文处理信息表库3115和报文处理信息表库3125等延时写入第一学习结果(同时将第一学习结果写入自身的报文处理信息表)。
场景二:从IP核心312触发学习请求的应用场景。
具体地,如图5所示,在从IP核心312触发学习请求的应用场景中,本应用实施例的信息处理方法包括以下步骤:
步骤501:模块一3121接收第二报文,对第二报文进行解析,得到第二来源地址;之后执行步骤502。
步骤502:模块一3121向报文处理信息表库3125发送第三查询请求;所述第三查询请求包含第二来源地址;所述第三查询请求用于获取与第二来源地址对应的第二接收端口,以供模块一3121将第二报文转发到第二接收端口;之后执行步骤503。
步骤503:报文处理信息表库3125接收到第三查询请求,确定自身的报文处理信息表中不存在第二来源地址对应的记录,并向模块一3121返回第三查询结果;所述第三查询结果用于告知模块一3121报文处理信息表中不存在第二来源地址对应的记录;之后执行步骤504。
步骤504:模块一3121接收到第三查询结果,确定报文处理信息表库3125中不存在第二来源地址对应的记录,并向模块二3122发送第二学习请求;所述第二学习请求包含第二来源地址;所述第二学习请求用于触发主模块(模块二3112)的自学习操作,以确定与第二来源地址对应的第二接收端口;之后执行步骤505。
步骤505:模块二3122接收到第二学习请求,向报文处理信息表库3125发送第四查询请求;所述第四查询请求包含第二来源地址;所述第四查询请求用于确认报文处理信息表库3125是否确实不存在第二来源地址对应的记录;之后执行步骤506。
步骤506:报文处理信息表库3125接收到第四查询请求,判断自身的报文处理信息表中是否存在第二来源地址对应的记录;并向模块二3122返回第四查询结果;所述第四查询结果用于告知模块二3122报文处理信息表中是否存在第二来源地址对应的记录。
步骤507:模块二3122接收到第四查询结果,根据第四查询结果,确定报文处理信息表库3125中是否存在第二来源地址对应的记录;如果存在,结束当前进程;如果不存在,执行步骤508。
步骤508:模块二3122将第二学习请求发送给接口3124;之后执行步骤509。
步骤509:接口3124将第二学习请求发送给接口3114;之后执行步骤510。
步骤510:接口3114将第二学习请求发送给模块二3112;之后执行步骤511。
步骤511:模块二3112接收到第二学习请求,向报文处理信息表库3115发送第五查询请求;所述第五查询请求包含第二来源地址;所述第五查询请求用于确认报文处理信息表库3115是否存在第二来源地址对应的记录;之后执行步骤512。
步骤512:报文处理信息表库3115接收到第五查询请求,判断自身的报文处理信息表中是否存在第二来源地址对应的记录;并向模块二3112返回第五查询结果;所述第五查询结果用于告知模块二3112报文处理信息表中是否存在第二来源地址对应的记录。
步骤513:模块二3112接收到第五查询结果,根据第五查询结果,确定报文处理信息表库3115中是否存在第二来源地址对应的记录;如果存在,结束当前进程;如果不存在,进行自学习操作,确定第二来源地址对应的第二接收端口,得到包含第二来源地址和第二接收端口的第二学习结果;之后同步执行步骤514和步骤515。
步骤514:模块二3112将包含第二学习结果的第三更新指令在X个时钟周期后发送给报文处理信息表库3115;所述第三更新指令用于指示报文处理信息表库3115将第二学习结果写入自身的报文处理信息表中。
步骤515:模块二3112将第二学习结果发送给接口3114;之后执行步骤516。
步骤516:接口3114将第二学习结果发送给接口3124;之后执行步骤517。
步骤517:接口3124将第二学习结果发送给模块二3122;之后执行步骤518。
步骤518:模块二3122将包含第二学习结果的第四更新指令发送给报文处理信息表库3125;所述第四更新指令用于指示报文处理信息表库3125将第二学习结果写入自身的报文处理信息表中。
这里,需要说明的是,执行步骤515至步骤517所需的时间为X个时钟周期,即模块二3112和模块二3122同步发送更新指令给各自对应的报文处理信息表库,以实现报文处理信息表库3115和报文处理信息表库3125等延时写入第二学习结果(同时将第二学习结果写入自身的报文处理信息表)。
在本应用实施例中,针对来源地址进行的自学习操作仅作为举例说明;实际应用时,还可以是针对来源端口、目的地址、目的端口以及传输层协议等信息的自学习操作;并且,图3、图4和图5所示的IP核心311、IP核心312的设置位置以及IP核心311包含的各个模块和IP核心312包含的各个模块的设置位置仅作为举例展示,实际应用时,IP核心311、IP核心312的设置位置以及IP核心311包含的各个模块和IP核心312包含的各个模块的设置位置可以由用户根据芯片设计需求自行设置;例如,可以使IP核心311、IP核心312对称设置;并使IP核心311包含的各个模块和IP核心312包含的各个模块也一一对称设置。
另外,本应用实施例提供的信息处理方法的具体实现过程与图2所示的信息处理方法中步骤201至步骤203的具体实现过程相同,这里不多赘述。
本应用实施例的信息处理方法,提供了在双核心或多核心以太网交换芯片中报文处理信息表的加速学习机制,利用各IP核心上设置的核心间通信接口实现IP核心之间的通信,并进一步实现了各IP核心之间的状态同步(即全局信息表的同步);如此,解决了两个IP核心或多个IP核心封装在一个以太网交换芯片上的互操作问题,使得双核心或多核心以太网交换芯片对外的系统行为与单核心以太网交换芯片相同,进一步避免了因两个IP核心或多个IP核心封装在一个以太网交换芯片上的互操作冲突导致的对网络部署的影响。
为了实现本发明实施例的方法,本发明实施例还提供了一种以太网交换芯片,如图6所示,以太网交换芯片600包含至少两个IP核心;每个IP核心至少包含第一处理模块和第二处理模块;所述第一处理模块用于根据自身所处IP核心存储的报文处理信息表对接收的报文进行相应处理;所述第二处理模块用于更新所述报文处理信息表;所有第二处理模块中的一个第二处理模块为主模块601;所有第二处理模块中除作为主模块外的第二处理模块为从模块602;其中,
所述主模块601,用于:
接收报文信息学习请求;
响应接收的报文信息学习请求,执行所述报文信息学习请求对应的自学习操作,得到报文信息学习结果;
根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表;和/或,将所述报文信息学习结果发送给相应从模块601,以供所述相应从模块601根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表。
在一实施例中,所述主模块601,具体用于:
接收自身所处IP核心的第一处理模块发送的报文信息学习请求;
或者,
接收从模块602发送的报文信息学习请求;所述从模块602发送的报文信息学习请求是从自身所处IP核心的第一处理模块接收的。
在一实施例中,所述第一处理模块,具体用于:
在自身所处IP核心的报文处理信息表中查询与接收的报文相对应的报文处理策略,以根据查询到的报文处理策略对接收的报文进行相应处理;其中,
当满足以下条件之一时,发送报文信息学习请求给自身所处IP核心的第二处理模块:
未在自身存储的报文处理信息表中查询到与接收的报文相对应的报文处理策略;
根据查询到的报文处理策略对接收的报文进行相应处理时处理失败。
在一实施例中,在更新报文处理信息表时,相应模块用于:
将所述报文信息学习结果对应的报文处理策略添加至自身所处IP核心的报文处理信息表;或者,相应模块根据所述报文信息学习结果对应的报文处理策略修改自身所处IP核心的报文处理信息表中相应的报文处理策略。
在一实施例中,所述主模块601,具体用于:
通过自身所处IP核心的第一接口以及所述相应从模块602自身所处IP核心的第二接口将所述报文信息学习结果发送给所述相应从模块602。
在一实施例中,所述第二处理模块,还用于:
向自身所处IP核心的第一处理模块发送更新请求,以供所述第一处理模块根据所述更新请求更新自身所处IP核心的报文处理信息表;所述更新请求至少包含所述报文信息学习结果。
在一实施例中,所述主模块601,还用于:
在预设时延后开始根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表;所述预设时延为第一时刻与第二时刻的差值;所述第一时刻为所述主模块601将所述报文信息学习结果发送给所述相应从模块602的时刻;所述第二时刻为所述相应从模块602接收到所述报文信息学习结果的时刻。
实际应用时,所述主模块601和所述从模块602可由以太网交换芯片600中的处理器实现。
需要说明的是:上述实施例提供的以太网交换芯片600中的各个模块,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的以太网交换芯片600与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
基于上述程序模块的硬件实现,且为了实现本发明实施例的方法,本发明实施例还提供了一种以太网交换芯片,如图7所示,以太网交换芯片70包括存储器72、处理器71及存储在存储器72上并可在处理器71上运行的计算机程序;所述处理器71执行所述程序时实现上述一个或多个技术方案提供的方法。
具体地,所述以太网交换芯片70的主模块通过所述处理器71执行以下操作:接收报文信息学习请求;响应接收的报文信息学习请求,执行所述报文信息学习请求对应的自学习操作,得到报文信息学习结果;根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表;和/或,将所述报文信息学习结果发送给相应从模块,以供所述相应从模块根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表;其中,以太网交换芯片70还包含至少两个IP核心;每个IP核心至少包含第一处理模块和第二处理模块;所述第一处理模块用于根据自身所处IP核心存储的报文处理信息表对接收的报文进行相应处理;所述第二处理模块用于更新所述报文处理信息表;所述主模块为所有第二处理模块中的一个第二处理模块;所述从模块为所有第二处理模块中除作为主模块外的第二处理模块。
需要说明的是,所述处理器71具体的执行操作的过程详见方法实施例,这里不再赘述。
当然,实际应用时,所述以太网交换芯片70中的各个组件通过总线系统73耦合在一起。可理解,总线系统73用于实现这些组件之间的连接通信。总线系统73除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图7中将各种总线都标为总线系统73;同时,所述以太网交换芯片70还可以包括通信接口74,所述通信接口74用于和其它设备进行信息交互。
本发明实施例中的存储器72用于存储各种类型的数据以支持所述以太网交换芯片70的操作。这些数据的示例包括:用于在所述以太网交换芯片70上操作的任何计算机程序。
上述本发明实施例揭示的方法可以应用于所述处理器71中,或者由所述处理器71实现。所述处理器71可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过所述处理器71中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器71可以是通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。所述处理器71可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器72,所述处理器71读取存储器72中的信息,结合其硬件完成前述方法的步骤。
在示例性实施例中,所述以太网交换芯片70可以被一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable LogicDevice)、现场可编程门阵列(FPGA,Field-Programmable Gate Array)、通用处理器、控制器、微控制器(MCU,Micro Controller Unit)、微处理器(Microprocessor)、或者其他电子元件实现,用于执行前述方法。
可以理解,本发明实施例的存储器(存储器72)可以是易失性存储器或者非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable Read-Only Memory)、磁性随机存取存储器(FRAM,ferromagnetic random access memory)、快闪存储器(FlashMemory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,Random Access Memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,Synchronous Static Random Access Memory)、动态随机存取存储器(DRAM,Dynamic Random Access Memory)、同步动态随机存取存储器(SDRAM,Synchronous Dynamic Random Access Memory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data Rate Synchronous Dynamic Random Access Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced Synchronous Dynamic Random AccessMemory)、同步连接动态随机存取存储器(SLDRAM,SyncLink Dynamic Random AccessMemory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本发明实施例描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
在示例性实施例中,本发明实施例还提供了一种存储介质,即计算机存储介质,具体为计算机可读存储介质,例如包括存储计算机程序的存储器72,上述计算机程序可由所述以太网交换芯片70的处理器71执行,以完成前述方法所述步骤。计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、Flash Memory、磁表面存储器、光盘、或CD-ROM等存储器。
需要说明的是:“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
另外,本发明实施例所记载的技术方案之间,在不冲突的情况下,可以任意组合。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

Claims (10)

1.一种信息处理方法,其特征在于,包括:
以太网交换芯片的主模块接收报文信息学习请求;所述以太网交换芯片包含至少两个知识产权IP核心;每个IP核心至少包含第一处理模块和第二处理模块;所述第一处理模块用于根据自身所处IP核心存储的报文处理信息表对接收的报文进行相应处理;所述第二处理模块用于更新所述报文处理信息表;所述主模块为所有第二处理模块中的一个第二处理模块;
所述主模块响应接收的报文信息学习请求,执行所述报文信息学习请求对应的自学习操作,得到报文信息学习结果;
所述主模块根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表;和/或,将所述报文信息学习结果发送给相应从模块,以供所述相应从模块根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表;所述从模块为所有第二处理模块中除作为主模块外的第二处理模块。
2.根据权利要求1所述的方法,其特征在于,所述以太网交换芯片的主模块接收报文信息学习请求,包括:
所述主模块接收自身所处IP核心的第一处理模块发送的报文信息学习请求;
或者,
所述主模块接收从模块发送的报文信息学习请求;所述从模块发送的报文信息学习请求是从自身所处IP核心的第一处理模块接收的。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
所述第一处理模块在自身所处IP核心的报文处理信息表中查询与接收的报文相对应的报文处理策略,以根据查询到的报文处理策略对接收的报文进行相应处理;其中,
当满足以下条件之一时,所述第一处理模块发送报文信息学习请求给自身所处IP核心的第二处理模块:
所述第一处理模块未在自身存储的报文处理信息表中查询到与接收的报文相对应的报文处理策略;
所述第一处理模块根据查询到的报文处理策略对接收的报文进行相应处理时处理失败。
4.根据权利要求1所述的方法,其特征在于,在更新报文处理信息表时,相应模块将所述报文信息学习结果对应的报文处理策略添加至自身所处IP核心的报文处理信息表;或者,相应模块根据所述报文信息学习结果对应的报文处理策略修改自身所处IP核心的报文处理信息表中相应的报文处理策略。
5.根据权利要求1所述的方法,其特征在于,所述将所述报文信息学习结果发送给相应从模块,包括:
所述主模块通过自身所处IP核心设置的第一接口以及所述相应从模块自身所处IP核心设置的第二接口将所述报文信息学习结果发送给所述相应从模块。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述第二处理模块向自身所处IP核心的第一处理模块发送更新请求,以供所述第一处理模块根据所述更新请求更新自身所处IP核心的报文处理信息表;所述更新请求至少包含所述报文信息学习结果。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述主模块在预设时延后开始根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表;所述预设时延为第一时刻与第二时刻的差值;所述第一时刻为所述主模块将所述报文信息学习结果发送给所述相应从模块的时刻;所述第二时刻为所述相应从模块接收到所述报文信息学习结果的时刻。
8.一种以太网交换芯片,其特征在于,所述以太网交换芯片包含至少两个IP核心;每个IP核心至少包含第一处理模块和第二处理模块;所述第一处理模块用于根据自身所处IP核心存储的报文处理信息表对接收的报文进行相应处理;所述第二处理模块用于更新所述报文处理信息表;所有第二处理模块中的一个第二处理模块为主模块;所有第二处理模块中除作为主模块外的第二处理模块为从模块;其中,
所述主模块,用于:
接收报文信息学习请求;
响应接收的报文信息学习请求,执行所述报文信息学习请求对应的自学习操作,得到报文信息学习结果;
根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表;和/或,将所述报文信息学习结果发送给相应从模块,以供所述相应从模块根据所述报文信息学习结果更新自身所处IP核心的报文处理信息表。
9.一种以太网交换芯片,其特征在于,包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器;
其中,所述处理器用于运行所述计算机程序时,执行权利要求1至7任一项所述方法的步骤。
10.一种存储介质,所述介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7任一项所述方法的步骤。
CN202010075350.XA 2020-01-22 2020-01-22 信息处理方法、以太网交换芯片以及存储介质 Active CN111277518B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202010075350.XA CN111277518B (zh) 2020-01-22 2020-01-22 信息处理方法、以太网交换芯片以及存储介质
US17/793,426 US20230042387A1 (en) 2020-01-22 2020-09-07 Information Processing Method, Ethernet Switching Chip and Storage Medium
PCT/CN2020/113731 WO2021147332A1 (zh) 2020-01-22 2020-09-07 信息处理方法、以太网交换芯片以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010075350.XA CN111277518B (zh) 2020-01-22 2020-01-22 信息处理方法、以太网交换芯片以及存储介质

Publications (2)

Publication Number Publication Date
CN111277518A CN111277518A (zh) 2020-06-12
CN111277518B true CN111277518B (zh) 2022-04-01

Family

ID=71001968

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010075350.XA Active CN111277518B (zh) 2020-01-22 2020-01-22 信息处理方法、以太网交换芯片以及存储介质

Country Status (3)

Country Link
US (1) US20230042387A1 (zh)
CN (1) CN111277518B (zh)
WO (1) WO2021147332A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111277518B (zh) * 2020-01-22 2022-04-01 苏州盛科通信股份有限公司 信息处理方法、以太网交换芯片以及存储介质
CN113364685B (zh) * 2021-05-17 2023-03-14 中国人民解放军国防科技大学 一种分布式mac表项处理装置和方法
CN114268670B (zh) * 2021-12-31 2024-03-29 上海创时汽车科技有限公司 基于时间触发的以太网异步消息处理系统及方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7369557B1 (en) * 2004-06-03 2008-05-06 Cisco Technology, Inc. Distribution of flows in a flow-based multi-processor system
CN104244305A (zh) * 2014-09-02 2014-12-24 福建三元达通讯股份有限公司 基于atca硬件的多板卡lte网关处理方法及系统
CN108134855A (zh) * 2017-12-18 2018-06-08 东软集团股份有限公司 Arp表管理方法、处理器核心、存储介质、电子设备

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020058364A (ko) * 2000-12-29 2002-07-12 엘지전자 주식회사 패킷 이원화 처리를 위한 라우터
US8438320B2 (en) * 2007-06-25 2013-05-07 Sonics, Inc. Various methods and apparatus for address tiling and channel interleaving throughout the integrated system
CN102611519B (zh) * 2010-11-25 2015-03-25 上海贝尔股份有限公司 一种对无源光网络进行链路保护的方法和装置
US10263916B2 (en) * 2012-12-03 2019-04-16 Hewlett Packard Enterprise Development Lp System and method for message handling in a network device
CN104079488B (zh) * 2014-07-22 2017-03-29 武汉虹信通信技术有限责任公司 基于以太网二层头压缩的传输设备及方法
CN111277518B (zh) * 2020-01-22 2022-04-01 苏州盛科通信股份有限公司 信息处理方法、以太网交换芯片以及存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7369557B1 (en) * 2004-06-03 2008-05-06 Cisco Technology, Inc. Distribution of flows in a flow-based multi-processor system
CN104244305A (zh) * 2014-09-02 2014-12-24 福建三元达通讯股份有限公司 基于atca硬件的多板卡lte网关处理方法及系统
CN108134855A (zh) * 2017-12-18 2018-06-08 东软集团股份有限公司 Arp表管理方法、处理器核心、存储介质、电子设备

Also Published As

Publication number Publication date
US20230042387A1 (en) 2023-02-09
WO2021147332A1 (zh) 2021-07-29
CN111277518A (zh) 2020-06-12

Similar Documents

Publication Publication Date Title
CN111277518B (zh) 信息处理方法、以太网交换芯片以及存储介质
US10592162B2 (en) Distributed storage location hinting for non-volatile memories
US9952975B2 (en) Memory network to route memory traffic and I/O traffic
US20180239726A1 (en) Data transmission method, device, and system
US20200192696A1 (en) Guest-initiated announcement of virtual machine migration
JP2021190123A (ja) キャッシュコヒーレントインターコネクトを使用するシステム及び方法
CN106533992B (zh) 用于全连接网格拓扑结构的高速pci架构路由
US10282293B2 (en) Method, switch, and multiprocessor system using computations and local memory operations
CN108319623A (zh) 一种数据重分布方法、装置及数据库集群
CN110119304B (zh) 一种中断处理方法、装置及服务器
KR20140133603A (ko) 데이터 저장 방법 및 장치
KR20190112626A (ko) 어레이 내에서 솔리드 스테이트 드라이브들을 자율적으로 관리하는 메커니즘
CN111464447B (zh) 一种超带宽多核心以太网交换芯片转发表同步的方法及装置
JP2019531563A (ja) データ処理方法、記憶システムおよび切り換え装置
CN116049085A (zh) 一种数据处理系统及方法
US20220137864A1 (en) Memory expander, host device using memory expander, and operation method of sever system including memory expander
CN111343107B (zh) 信息处理方法、以太网交换芯片以及存储介质
US9705978B1 (en) Dependency graph management
JP6174101B2 (ja) ネットワークファブリックノードにおけるコマンドの同期実行のための技術
CN112015595B (zh) 主从数据库的切换方法、计算设备及存储介质
WO2023185454A1 (zh) 一种数据访问方法及相关装置
JP2022510803A (ja) バス上のメモリ要求チェーン
WO2023036085A1 (zh) 一种路由管理的方法、装置、电子设备和存储介质
CN109995678B (zh) 报文传输方法及装置
WO2015035891A1 (zh) 补丁方法、设备及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: Unit 13 / 16, 4th floor, building B, Xinghan 5, Suzhou Industrial Park, Suzhou, Jiangsu 215021

Applicant after: Suzhou Shengke Communication Co.,Ltd.

Address before: Unit 13 / 16, 4th floor, building B, Xinghan 5, Suzhou Industrial Park, Suzhou, Jiangsu 215021

Applicant before: CENTEC NETWORKS (SU ZHOU) Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant