一种报文分流的方法及装置制造方法及图纸

技术编号:29757277 阅读:21 留言:0更新日期:2021-08-20 21:10
本申请公开了一种报文分流的方法及装置,该方法包括:当接收到待处理报文时,获取并记录所述待处理报文由转发芯片上传至虚拟CPU时所通过的物理CPU上目标物理接口的标识;当处理完所述待处理报文时,根据已记录的所述目标物理接口的标识,将处理完毕的所述待处理报文通过所述目标物理接口下发至所述转发芯片。鉴于物理接口具有对流量带宽设限的硬件特性,本方案中各虚拟CPU使用报文被上传时所通过的物理接口,沿原路向转发芯片下发其处理完毕的报文,基于报文上传时受限于接口带宽的特性保障其下发时也不会超出接口带宽,因而避免了处理完毕的报文因超出物理接口的带宽限制而不能被转发的问题。

【技术实现步骤摘要】
一种报文分流的方法及装置
本申请涉及通信
,特别是一种报文分流的方法及装置。
技术介绍
一个配置有多个虚拟CPU和转发芯片的网络设备中,虚拟CPU实际运行于物理CPU中,物理CPU和转发芯片上分别存在若干物理接口,这些物理接口一一对应,在物理CPU和转发芯片之间形成若干用于传输数据的物理链路。各虚拟CPU处理完毕的报文将通过物理CPU上的物理接口传输至转发芯片上对应的物理接口,以到达转发芯片进行转发,其中,物理CPU上的若干物理接口为各虚拟CPU所共享。目前的相关技术中,采用虚拟CPU的数量对物理CPU上物理接口的数量取余数的方式,确定各虚拟CPU处理完毕的报文在下发至转发芯片时应当通行的具体物理接口,例如:网络设备中配置有3个虚拟CPU,分别标识为VCPU0、VCPU1和VCPU2,物理CPU上存在两个物理接口,分别标识为物理接口0和物理接口1;则VCPU0和VCPU2处理完毕的报文由物理接口0传输至转发芯片,而VCPU1处理完毕的报文由物理接口1传输至转发芯片。由于虚拟CPU数量并不一定为物理接口数量的整数倍,且各虚拟CPU所处理的报文数量彼此亦不均匀,可能导致虚拟CPU下发报文的流量超出物理CPU上物理接口的带宽限制,处理完毕的报文因而不能被下发至转发芯片进行转发,对报文转发处理产生负面影响。
技术实现思路
本申请提供一种报文分流的方法及装置,以解决相关技术中所存在的问题。根据本申请实施例的第一方面,提供一种报文分流的方法,网络设备中配置有转发芯片和物理CPU,转发芯片和物理CPU上存在对应的若干物理接口,所述对应的若干物理接口在转发芯片和物理CPU之间构成若干用于传输报文的物理链路,所述物理CPU中运行有若干虚拟CPU,所述方法应用于所述虚拟CPU,包括:当接收到待处理报文时,获取并记录所述待处理报文由转发芯片上传至虚拟CPU时所通过的物理CPU上目标物理接口的标识;当处理完所述待处理报文时,根据已记录的所述目标物理接口的标识,将处理完毕的所述待处理报文通过所述目标物理接口下发至所述转发芯片。根据本申请实施例的第二方面,提供一种报文分流的装置,网络设备中配置有转发芯片和物理CPU,转发芯片和物理CPU上存在对应的若干物理接口,所述对应的若干物理接口在转发芯片和物理CPU之间构成若干用于传输报文的物理链路,所述物理CPU中运行有若干虚拟CPU,所述装置应用于所述虚拟CPU,包括记录单元和下发单元:所述记录单元,用于在接收到待处理报文时,获取并记录所述待处理报文由转发芯片上传至虚拟CPU时所通过的物理CPU上目标物理接口的标识;所述下发单元,用于在处理完所述待处理报文时,根据已记录的所述目标物理接口的标识,将处理完毕的所述待处理报文通过所述目标物理接口下发至所述转发芯片。本申请的技术方案中,鉴于物理接口具有对流量带宽设限的硬件特性,由各虚拟CPU使用报文被上传时所通过的物理接口,沿原路向转发芯片下发其处理完毕的报文,基于报文上传时受限于接口带宽的特性保障其下发时也不会超出接口带宽,因而避免了处理完毕的报文因超出物理接口的带宽限制而不能被转发的问题。附图说明图1为本申请所提供的一种报文分流的方法流程图;图2为本申请方案中待处理报文由转发芯片上传至虚拟CPU的示意图;图3为本申请方案中处理完毕的报文由虚拟CPU下发至转发芯片的示意图;图4为本申请所提供的一种报文分流的装置所在网络设备的硬件结构示意图;图5为本申请所提供的一种报文分流的装置的框图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。本申请鉴于相关技术中,存在虚拟CPU使用物理接口不均衡而导致向转发芯片下发报文的流量超出物理CPU上物理接口的带宽限制的问题,提出一种报文分流的方法,网络设备中配置有转发芯片和物理CPU,所述转发芯片和所述物理CPU上存在对应的若干物理接口,所述物理CPU中运行有若干虚拟CPU,所述报文分流的方法应用于所述网络设备中的任一虚拟CPU上。所述转发芯片可以是常见的交换芯片,也可以是FPGA(FieldProgrammableGateArray,可编程逻辑门阵列)芯片;所述虚拟CPU可以是物理CPU中通过超线程技术以软件形式运行的若干虚拟CPU,也可以是多核物理CPU中由多个物理核分别运行的虚拟CPU,可以理解的是,所述若干虚拟CPU可以是位于同一物理CPU上的一或多个VCPU,也可以是分别运行于不同物理CPU上的一或多个VCPU。本申请对于所述转发芯片的具体类型,以及所述虚拟CPU在网络设备物理CPU上的具体分布和具体数量,不做限定。所述转发芯片和所述物理CPU处于同一板卡上,二者上分别存在若干物理接口;所述转发芯片上的物理接口与所述物理CPU上的物理接口具有对应关系,能够在转发芯片和物理CPU之间构成若干用于传输报文的物理链路。可以理解的是,转发芯片和物理CPU上的物理接口一一对应,二者在数量上应当一致,不过物理接口具体的数量则不做限制。图1所示,为本申请所提供的一种报文分流的方法流程图,所述报文分流方法包括如下具体步骤:步骤102,当网络设备中的任一虚拟CPU接收到待处理报文时,获取并记录所述待处理报文由转发芯片上传至虚拟CPU时所通过的物理CPU上目标物理接口的标识。为了更好地理解本申请方案,首先对所述待处理报文在到达所述虚拟CPU前的相关内容进行简单介绍。向网络设备发送的一个待处理报文,首先将通过所述网络设备的网卡或诸如光纤接口的网络接口接收,然后缓存于所述网络设备的转发芯片的收包队列中;当所述待处理报文接收完毕,转发芯片收包队列中的所述待处理报文将先后通过转发芯片上的物理接口及其对应的物理CPU上的物理接口上传至网络设备中某一虚拟CPU的收包队列中,以进行后续处理。转发芯片在将待处理报文上传至虚拟CPU前,需要确定所述待处理报文对应的目标虚本文档来自技高网...

【技术保护点】
1.一种报文分流的方法,其特征在于,网络设备中配置有转发芯片和物理CPU,转发芯片和物理CPU上存在对应的若干物理接口,所述对应的若干物理接口在转发芯片和物理CPU之间构成若干用于传输报文的物理链路,所述物理CPU中运行有若干虚拟CPU,所述方法应用于所述虚拟CPU,包括:/n当接收到待处理报文时,获取并记录所述待处理报文由转发芯片上传至虚拟CPU时所通过的物理CPU上目标物理接口的标识;/n当处理完所述待处理报文时,根据已记录的所述目标物理接口的标识,将处理完毕的所述待处理报文通过所述目标物理接口下发至所述转发芯片。/n

【技术特征摘要】
1.一种报文分流的方法,其特征在于,网络设备中配置有转发芯片和物理CPU,转发芯片和物理CPU上存在对应的若干物理接口,所述对应的若干物理接口在转发芯片和物理CPU之间构成若干用于传输报文的物理链路,所述物理CPU中运行有若干虚拟CPU,所述方法应用于所述虚拟CPU,包括:
当接收到待处理报文时,获取并记录所述待处理报文由转发芯片上传至虚拟CPU时所通过的物理CPU上目标物理接口的标识;
当处理完所述待处理报文时,根据已记录的所述目标物理接口的标识,将处理完毕的所述待处理报文通过所述目标物理接口下发至所述转发芯片。


2.根据权利要求1所述的方法,其特征在于,所述获取所述待处理报文由转发芯片上传至虚拟CPU时所通过的物理CPU上目标物理接口的标识,包括:
当所述待处理报文由转发芯片直接上传至本虚拟CPU时,本虚拟CPU根据所述待处理报文所在的本虚拟CPU的收包队列,将所述收包队列对应的物理接口的标识,确定为所述待处理报文由转发芯片上传至本虚拟CPU时所通过的物理CPU上目标物理接口的标识;
当所述待处理报文先由转发芯片上传至其他虚拟CPU,然后又由其他虚拟CPU转至本虚拟CPU时,本虚拟CPU获取其他虚拟CPU已记录的所述待处理报文在由转发芯片上传至其他虚拟CPU时所通过的物理CPU上目标物理接口的标识。


3.根据权利要求1所述的方法,其特征在于,所述目标物理接口的标识被记录于所述待处理报文的管理结构体中。


4.根据权利要求1所述的方法,其特征在于,所述根据已记录的所述目标物理接口的标识,将处理完毕的所述待处理报文通过所述目标物理接口下发至所述转发芯片,包括:
将处理完毕的所述待处理报文转至所述已记录的目标物理接口的标识对应的发包队列,以使所述待处理报文由所述发包队列通过所述目标物理接口下发至所述转发芯片。


5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当检测到处理完毕的所述待处理报文已由所述转发芯片成功转发,则删除已记录的所述目标物理接口的标识。


6.一种报文分流的装置,其特征在于...

【专利技术属性】
技术研发人员:孙军伟秦德楼赵旭东
申请(专利权)人:杭州迪普科技股份有限公司
类型:发明
国别省市:浙江;33

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

1