实现网络报文复制的DPU装置以及网络报文复制系统制造方法及图纸

技术编号:38724048 阅读:17 留言:0更新日期:2023-09-08 23:17
本发明专利技术的实现网络报文复制的DPU装置以及网络报文复制系统,通过首先将CPU上的控制业务预先把需要进行复制的信息通过控制消息下发到DPU装置上,DPU装置再从链路或CPU接收报文并进行解析处理以及查找表项,再判断报文要复制几份以及获取复制后的报文出口以及封装信息,进而实现对网络报文复制。本发明专利技术利用DPU装置可以对报文进行灵活处理,实现报文复制功能,且CPU不需要浪费计算资源进行报文复制,可以将节约出来的计算资源用于处理实际业务,极大地提高了CPU的有效算力使用率。大地提高了CPU的有效算力使用率。大地提高了CPU的有效算力使用率。

【技术实现步骤摘要】
实现网络报文复制的DPU装置以及网络报文复制系统


[0001]本专利技术涉及数据处理领域,特别是涉及一种实现网络报文复制的DPU装置以及网络报文复制系统。

技术介绍

[0002]DPU(Data Processing Unit),又称为数据处理器,作为当前芯片领域热门方向,可以和CPU和GPU协同工作,成为数据中心的三大支柱之一。CPU用于通用性计算任务,GPU用于数据加速计算,DPU则进行基础性数据处理。随着数据中心的数据量和网络带宽不断提升,很多基础性的数据处理极大地占用了CPU算力,通过DPU对入口数据进行基础性处理,例如可以从CPU上卸载网络、存储、安全、虚拟化等业务,可以有效地提升CPU利用率,并降低整体功耗。
[0003]在某些应用场景下,CPU上多个不同的应用层业务分别需要一份原始链路流量或者某个应用层业务需要向多个目标发送相同的报文,传统的做法是在CPU上的应用层业务进行报文复制和分发,这将导致CPU有效算力损失在报文复制功能上,减弱了真实业务处理能力。
[0004]例如传统的报文复制方法如图1所示,由网卡(NIC)接收报文并上送到主机CPU进行报文复制和CPU上应用层业务经过报文复制向网口发送多份报文,具体过程如下描述:网卡从链路接收报文,报文进入网卡芯片处理;网卡芯片将报文通过PCIe互联接口上送到CPU;CPU上的复制分发业务模块收到网卡上送的报文,进行报文复制,然后将复制后的报文分发给不同的业务处理软件模块;CPU上的应用层业务报文需要发送到多个不同的目标主机,此时应用层业务把报文发给复制分发业务模块;CPU上的复制分发模块收到应用层业务交付下来的报文,进行报文复制,然后将复制后的多份报文发送给网卡;网卡收到主机下发的报文后,将报文从网口发送出去。
[0005]上述过程中,网卡仅负责网络报文的转发工作,对于多个不同业务各自需要一份链路原始流量或者某个应用层业务需要想多个目标发送相同的报文,只能由CPU上的软件模块进行报文复制和分发。CPU上的报文复制分发模块将消耗CPU上宝贵的算力资源,影响到实际业务的处理性能。

技术实现思路

[0006]鉴于以上所述现有技术的缺点,本专利技术的目的在于提供一种实现网络报文复制的DPU装置,用于解决现有技术中出现的以上技术问题。
[0007]为实现上述目的及其他相关目的,本专利技术提供一种实现网络报文复制的DPU装置,包括:第一报文传输模块、报文查表处理模块、报文复制模块以及第二报文传输模块;其中,所述第一报文传输模块分别连接所述报文查表处理模块以及报文复制模块,所述报文查表处理模块连接所述报文复制模块以及第二报文传输模块;所述报文复制模块连接所述第二报文传输模块;通过所述报文查表处理模块将来自CPU装置的控制信息写入到规则表中;由
所述第一报文传输模块从链路接收的报文并储存对应的报文数据,并通过所述报文查表处理模块解析所述报文,并根据规则表确定报文复制信息且向所述报文复制模块发送对应的报文复制命令;由所述报文复制模块基于报文复制命令进行报文复制,并通过第二报文传输模块将复制后的报文上送至所述CPU装置,以供分发到CPU装置上不同的业务处理模块;通过所述第二报文传输模块接收由所述CPU装置下发的报文,并由所述报文查表处理模块解析所述报文,并根据规则表确定报文复制信息且向所述报文复制模块发送对应的报文复制命令;由所述报文复制模块基于报文复制命令进行报文复制,并通过所述第二报文传输模块将复制后的报文发送到不同的目标主机上。
[0008]于本专利技术的一实施例中,所述第一报文传输模块包括:报文接收储存单元,连接所述报文查表处理模块,用于接收来自链路的报文,并将所述报文的报文数据储存到所述DPU装置的报文存储空间中且将所述报文发送至报文查表处理模块;报文发送单元,连接所述报文复制模块,用于将所述报文复制模块复制后的报文发送到不同的目标主机上。
[0009]于本专利技术的一实施例中,所述报文查表处理模块用于解析所述报文,并根据规则表按指定的报文特征字段查找组播转发表,根据查表结果判定报文需要复制的份数和输出目标,并向报文复制模块发送生成的报文复制命令。
[0010]于本专利技术的一实施例中,向报文复制模块发送生成的报文复制命令的方式包括:向报文复制模块发送复制的份数所对应个数的报文组播指令;其中,复制非最后一份对应的报文组播指令为传输不释放指令,用于指示读取储存到所述DPU装置的报文存储空间的报文数据但是不要释放相应的报文存储空间;复制最后一份对应的报文组播指令为传输并释放指令,用于指示读取储存到所述DPU装置的报文存储空间的报文数据并且释放对应的报文存储空间。
[0011]于本专利技术的一实施例中,所述报文复制模块用于接收到报文组播指令后,通过命令总线向所述DPU装置的包存储引擎发起对应的读不释放控制指令或读并释放控制指令,以供所述包存储引擎从所述报文存储空间中找到对应的报文数据,通过数据传输总线将对应的报文数据送到所述报文复制模块,并当包存储引擎将完整报文传输后,根据读不释放控制指令或读并释放控制指令释放或不释放对应的报文储存空间。
[0012]于本专利技术的一实施例中,所述报文复制模块用于每当从所述报文存储空间获取完整的报文数据后,将对应报文数据发送到第一报文传输模块或第二报文传输模块。
[0013]于本专利技术的一实施例中,所述报文复制模块用于当成功发送一份完整的报文数据后,通过信号消息通知所述报文查表处理模块继续进行下一份报文组播指令的传输。
[0014]于本专利技术的一实施例中,所述第二报文传输模块包括:报文上送单元,用于将所述报文查表处理模块复制后的报文上送至所述CPU装置的不同的业务处理模块;报文下发单元,用于接收由所述CPU装置下发的报文,并发送至所述报文查表处理模块。
[0015]于本专利技术的一实施例中,所述第二报文传输模块为pcie处理单元。
[0016]实现上述目的及其他相关目的,本专利技术提供一种基于DPU的网络报文复制系统,包括:CPU装置,包括:控制业务模块、多个业务处理模块以及应用层业务模块;DPU装置,与所述CPU装置通信连接,包括:第一报文传输模块、报文查表处理模块、报文复制模块以及第二报文传输模块;其中,所述第一报文传输模块分别连接所述报文查表处理模块以及报文复制模块,所述报文查表处理模块连接所述报文复制模块以及第二报文传输模块;所述报文
复制模块连接所述第二报文传输模块;通过所述报文查表处理模块将来自CPU装置的控制业务模块下发的控制信息写入到规则表中;由所述第一报文传输模块接收来自链路的报文并储存对应的报文数据,并通过所述报文查表处理模块解析所述报文,并根据规则表确定报文复制信息且向所述报文复制模块发送对应的报文复制命令;由所述报文复制模块基于报文复制命令进行报文复制,并通过第二报文传输模块将复制后的报文上送至所述CPU装置,以供分发到CPU装置上不同的业务处理模块;通过所述第二报文传输模块接收由所述CPU装置的应用层业务模块下发的报文,并由所述报文查表处理模块解析所述报本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种实现网络报文复制的DPU装置,其特征在于,包括:第一报文传输模块、报文查表处理模块、报文复制模块以及第二报文传输模块;其中,所述第一报文传输模块分别连接所述报文查表处理模块以及报文复制模块,所述报文查表处理模块连接所述报文复制模块以及第二报文传输模块;所述报文复制模块连接所述第二报文传输模块;通过所述报文查表处理模块将来自CPU装置的控制信息写入到规则表中;由所述第一报文传输模块从链路接收的报文并储存对应的报文数据,并通过所述报文查表处理模块解析所述报文,并根据规则表确定报文复制信息且向所述报文复制模块发送对应的报文复制命令;由所述报文复制模块基于报文复制命令进行报文复制,并通过第二报文传输模块将复制后的报文上送至所述CPU装置,以供分发到CPU装置上不同的业务处理模块;通过所述第二报文传输模块接收由所述CPU装置下发的报文,并由所述报文查表处理模块解析所述报文,并根据规则表确定报文复制信息且向所述报文复制模块发送对应的报文复制命令;由所述报文复制模块基于报文复制命令进行报文复制,并通过所述第二报文传输模块将复制后的报文发送到不同的目标主机上。2.根据权利要求1中所述的实现网络报文复制的DPU装置,其特征在于,所述第一报文传输模块包括:报文接收储存单元,连接所述报文查表处理模块,用于接收来自链路的报文,并将所述报文的报文数据储存到所述DPU装置的报文存储空间中且将所述报文发送至报文查表处理模块;报文发送单元,连接所述报文复制模块,用于将所述报文复制模块复制后的报文发送到不同的目标主机上。3.根据权利要求1中所述的实现网络报文复制的DPU装置,其特征在于,所述报文查表处理模块用于解析所述报文,并根据规则表按指定的报文特征字段查找组播转发表,根据查表结果判定报文需要复制的份数和输出目标,并向报文复制模块发送生成的报文复制命令。4.根据权利要求3中所述的实现网络报文复制的DPU装置,其特征在于,向报文复制模块发送生成的报文复制命令的方式包括:向报文复制模块发送复制的份数所对应个数的报文组播指令;其中,复制非最后一份对应的报文组播指令为传输不释放指令,用于指示读取储存到所述DPU装置的报文存储空间的报文数据但是不要释放相应的报文存储空间;复制最后一份对应的报文组播指令为传输并释放指令,用于指示读取储存到所述DPU装置的报文存储空间的报文数据并且释放对应的报文存储空间。5.根据权利要求4中所述的实现网络报文复制的DPU装置,其特征在于,所述报文复制模块用于接收到报文组播指令后,通过命令总线向所述DPU装置的包存储引擎发...

【专利技术属性】
技术研发人员:庄文强韩俊杰卢笙
申请(专利权)人:芯云晟杭州电子科技有限公司
类型:发明
国别省市:

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

1