数据传递方法、装置、计算机存储介质及电子装置制造方法及图纸

技术编号:37556075 阅读:18 留言:0更新日期:2023-05-15 07:40
本申请公开了一种数据传递方法、装置、计算机存储介质及电子装置,该方法包括:操作系统接收数据平面开发套件发送的第一信息数据包,并对第一信息数据包进行处理,得到第二信息数据包;操作系统将第二信息数据包中的第一结果信息拷贝至结构体中,得到第一结构体数据包,并将第一结构体数据包传递至应用程序的应用进程中;操作系统接收应用进程发送的第二结果信息,并将第二信息数据拷贝至结构体中,得到第二结构体数据包。通过本申请,解决了相关技术中数据平面开发套件与应用进程不能协同处理报文的问题。处理报文的问题。处理报文的问题。

【技术实现步骤摘要】
数据传递方法、装置、计算机存储介质及电子装置


[0001]本申请涉及网络通信
,具体而言,涉及一种数据传递方法、装置、计算机存储介质及电子装置。

技术介绍

[0002]在网络通信领域,不同的网络设备之间的信息请求传递通过报文进行传输,从网络设备中读取报文,通过内核提供的网络接口,将报文传递到内核中处理,报文被转发、丢弃、传送给用户进程。为了提高报文的处理速度,开发人员利用数据平面开发套件进行报文的收发操作,也即在数据平面开发套件接收到报文后,通过虚拟接口发送到操作系统中,使得应用程序的应用进程可以收到报文。
[0003]但应用进程接收到的数据只是报文的相关信息,并没有包括数据平面开发套件对报文的处理结果信息,在没有接收到结果信息的情况下,不能对报文进行更加复杂的处理操作,也会耗费大量的时间成本。
[0004]针对相关技术中数据平面开发套件与应用进程不能协同处理报文的问题,目前尚未提出有效的解决方案。

技术实现思路

[0005]本申请提供一种数据传递方法、装置、计算机存储介质及电子装置,以解决相关技术中数据平面开发套件与应用进程不能协同处理报文的问题。
[0006]根据本申请的一个方面,提供了一种数据传递方法。该方法包括:操作系统接收数据平面开发套件发送的第一信息数据包,并对第一信息数据包进行处理,得到第二信息数据包,其中,第一信息数据包是数据平面开发套件对第一结果信息进行处理得到的数据包,第一结果信息是由数据平面开发套件对目标报文进行处理得到信息,目标报文是由操作系统的内核创建得到;操作系统将第二信息数据包中的第一结果信息拷贝至结构体中,得到第一结构体数据包,并将第一结构体数据包传递至应用程序的应用进程中;操作系统接收应用进程发送的第二结果信息,并将第二信息数据拷贝至结构体中,得到第二结构体数据包,其中,第二结果信息是由应用进程对第一结构体数据包中的目标报文进行处理得到的信息;操作系统将第二结构体数据包传递至数据平面开发套件。
[0007]可选地,数据平面开发套件用于从内核获取目标报文,对目标报文的报文信息进行组装得到第一结果信息,并将第一结果信息写入预设数据包的尾部,得到第一信息数据包,其中,报文信息至少包含以下之一信息:报文类型、报文版本、报文长度以及报文实体信息。
[0008]可选地,数据平面开发套件调用虚拟接口与操作系统建立传递通道,操作系统接收数据平面开发套件发送的第一信息数据包包含:操作系统从传递通道中接收由数据平面开发套件发送的第一信息数据包。
[0009]可选地,操作系统将第二信息数据包中的第一结果信息拷贝至结构体中,得到第
一结构体数据包包括:通过操作系统的协议栈对第一信息数据包进行处理,得到第三信息数据包,其中,操作系统包含:应用层、传输层、网络层以及数据链路层,协议栈是应用层、传输层、网络层以及数据链路层的协议的集合;将第三信息数据包传递至操作系统中的传输层,并将第三信息数据包中的第一结果信息拷贝到结构体中,封装得到第一结构体数据包。
[0010]可选地,应用进程用于接收第一修改指令,响应第一修改指令,对应用进程中的预设获取函数的参数进行修改,得到目标获取函数,并通过获取函数将第一结构体数据包中的第一结果信息拷贝至应用进程。
[0011]可选地,应用进程用于接收第二修改指令,响应第二修改指令,对应用进程中的预设设置函数的参数进行修改,得到目标设置函数,并通过目标设置函数将第二结果信息拷贝至结构体中。
[0012]可选地,操作系统将第二结构体数据包传递至数据平面开发套件包括:操作系统将第二结构体数据包中的第二结果信息拷贝至预设数据包的尾部进行封装,得到第四信息数据包;通过操作系统的协议栈对第四信息数据包进行处理,将处理后的第四信息数据包中的第二结果信息传递至数据平面开发套件中。
[0013]根据本申请的另一方面,提供了一种数据传递装置。该装置包括:接收单元,用于操作系统接收数据平面开发套件发送的第一信息数据包,并对第一信息数据包进行处理,得到第二信息数据包,其中,第一信息数据包是数据平面开发套件对第一结果信息进行处理得到的数据包,第一结果信息是由数据平面开发套件对目标报文进行处理得到信息,目标报文是由操作系统的内核创建得到;拷贝单元,用于操作系统将第二信息数据包中的第一结果信息拷贝至结构体中,得到第一结构体数据包,并将第一结构体数据包传递至应用程序的应用进程中;发送单元,用于操作系统接收应用进程发送的第二结果信息,并将第二信息数据拷贝至结构体中,得到第二结构体数据包,其中,第二结果信息是由应用进程对第一结构体数据包中的目标报文进行处理得到的信息;传递单元,用于操作系统将第二结构体数据包传递至数据平面开发套件。
[0014]根据本专利技术实施例的另一方面,还提供了一种计算机存储介质,计算机存储介质用于存储程序,其中,程序运行时控制非易失性存储介质所在的设备执行一种数据传递方法。
[0015]根据本专利技术实施例的另一方面,还提供了一种电子装置,包含处理器和存储器;存储器中存储有计算机可读指令,处理器用于运行计算机可读指令,其中,计算机可读指令运行时执行一种数据传递方法。
[0016]通过本申请,采用以下步骤:操作系统接收数据平面开发套件发送的第一信息数据包,并对第一信息数据包进行处理,得到第二信息数据包,其中,第一信息数据包是数据平面开发套件对第一结果信息进行处理得到的数据包,第一结果信息是由数据平面开发套件对目标报文进行处理得到信息,目标报文是由操作系统的内核创建得到;操作系统将第二信息数据包中的第一结果信息拷贝至结构体中,得到第一结构体数据包,并将第一结构体数据包传递至应用程序的应用进程中;操作系统接收应用进程发送的第二结果信息,并将第二信息数据拷贝至结构体中,得到第二结构体数据包,其中,第二结果信息是由应用进程对第一结构体数据包中的目标报文进行处理得到的信息;操作系统将第二结构体数据包传递至数据平面开发套件,解决了相关技术中数据平面开发套件与应用进程不能协同处理
报文的问题,通过在传递过程中的数据包以及结构体中封装设备对报文的结果信息,利用数据包以及结构体的传递过程实现对结果信息的传递,进而达到了数据平面开发套件与应用进程能够对同一报文进行协同处理的效果。
附图说明
[0017]构成本申请的一部分的附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0018]图1是根据本申请实施例提供的数据传递方法的流程图;
[0019]图2是根据本申请实施例提供的可选的数据传递方法的示意图一;
[0020]图3是根据本申请实施例提供的可选的数据传递方法的示意图二;
[0021]图4是根据本申请实施例提供的数据传递装置的示意图;
[0022]图5是根据本申请实施例提供的电子装置的示意图。
具体实施方式
[0023]需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据传递方法,其特征在于,包括:操作系统接收数据平面开发套件发送的第一信息数据包,并对所述第一信息数据包进行处理,得到第二信息数据包,其中,所述第一信息数据包是所述数据平面开发套件对第一结果信息进行处理得到的数据包,所述第一结果信息是由所述数据平面开发套件对目标报文进行处理得到信息,所述目标报文是由所述操作系统的内核创建得到;所述操作系统将所述第二信息数据包中的所述第一结果信息拷贝至结构体中,得到第一结构体数据包,并将所述第一结构体数据包传递至应用程序的应用进程中;所述操作系统接收所述应用进程发送的第二结果信息,并将所述第二信息数据拷贝至所述结构体中,得到第二结构体数据包,其中,所述第二结果信息是由所述应用进程对所述第一结构体数据包中的所述目标报文进行处理得到的信息;所述操作系统将所述第二结构体数据包传递至所述数据平面开发套件。2.根据权利要求1所述的方法,其特征在于,所述数据平面开发套件用于从所述内核获取所述目标报文,对所述目标报文的报文信息进行组装得到所述第一结果信息,并将所述第一结果信息写入预设数据包的尾部,得到所述第一信息数据包,其中,所述报文信息至少包含以下之一信息:报文类型、报文版本、报文长度以及报文实体信息。3.根据权利要求1所述的方法,其特征在于,所述数据平面开发套件调用虚拟接口与所述操作系统建立传递通道,操作系统接收数据平面开发套件发送的第一信息数据包包含:所述操作系统从所述传递通道中接收由所述数据平面开发套件发送的所述第一信息数据包。4.根据权利要求1所述的方法,其特征在于,所述操作系统将所述第二信息数据包中的所述第一结果信息拷贝至结构体中,得到第一结构体数据包包括:通过所述操作系统的协议栈对所述第一信息数据包进行处理,得到第三信息数据包,其中,所述操作系统包含:应用层、传输层、网络层以及数据链路层,所述协议栈是所述应用层、所述传输层、所述网络层以及所述数据链路层的协议的集合;将所述第三信息数据包传递至所述操作系统中的所述传输层,并将所述第三信息数据包中的所述第一结果信息拷贝到所述结构体中,封装得到所述第一结构体数据包。5.根据权利要求1所述的方法,其特征在于,所述应用进程用于接收第一修改指令,响应所述第一修改指令,对所述应用进程中...

【专利技术属性】
技术研发人员:赵健张作涛李亮王铭铖
申请(专利权)人:山石网科通信技术股份有限公司
类型:发明
国别省市:

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

1