[发明专利]一种进程间报文传输的方法、设备及介质在审
| 申请号: | 202011205179.6 | 申请日: | 2020-11-02 |
| 公开(公告)号: | CN112532585A | 公开(公告)日: | 2021-03-19 |
| 发明(设计)人: | 曲博 | 申请(专利权)人: | 杭州迪普科技股份有限公司 |
| 主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L29/08 |
| 代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 王茹 |
| 地址: | 310051 浙江省杭*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 进程 报文 传输 方法 设备 介质 | ||
本说明书提供一种进程间报文传输的方法、设备及介质,所述方法包括:预先分配的物理内存,并将该物理内存分别映射到内核态进程和应用进程,得到两者分别对应的虚拟内存空间,在传输报文时,发送报文的进程确定需要发送的报文在其对应的虚拟内存空间中的缓存地址,并根据发送报文的进程对应的虚拟内存空间的起始地址和该缓存地址,确定报文的地址偏移量,并将该偏移量通过Socket机制,发送给接收报文的进程,接收报文的进程根据接收的偏移量,和接收报文的进程对应的虚拟内存空间的起始地址,通过其对应的虚拟内存空间,从物理内存中获取该报文。在本说明书实施例中,在报文传输过程中,减少了拷贝次数,提升了报文传输效率。
技术领域
本说明书涉及计算机应用技术领域,尤其涉及一种进程间报文传输的方法、设备及介质。
背景技术
在网络设备收发与处理报文的过程中,在操作系统(一般是linux)层面上往往会运行3种进程,分别是用于收发报文的网卡驱动进程、用于对报文进行网络协议层面处理的协议栈进程以及用于对报文进行应用层面处理的应用进程。其中,网卡驱动进程与协议栈进程之间需要进行报文传输,协议栈进程与应用进程之间需要进行报文传输。
在实际应用中,网卡驱动进程与协议栈进程是基于内核态运行的,应用进程是基于用户态运行的。
然而,基于内核态运行的进程与基于用户态运行的进程通常是基于Socket机制进行报文传输的,在进行报文传输时,会涉及到对报文的多次拷贝操作,此操作需要一定的时间开销,会降低报文传输效率。
发明内容
为克服现有技术中存在的报文传输效率低的问题,本说明书提供了一种进程间报文传输的方法、设备及介质。
根据本说明书实施例的第一方面,提供一种进程间报文传输的方法,将网络设备的部分物理内存空间映射到网卡驱动进程与协议栈进程之间共享的地址空间,得到内核态虚拟内存空间,以及将所述部分物理内存空间映射到应用进程的地址空间,得到用户态虚拟内存空间;所述协议栈进程属于内核态进程,所述方法包括:
所述网卡驱动进程接收报文,并将所述报文写入所述内核态虚拟内存空间;
所述协议栈进程对所述报文处理后,基于所述报文在所述内核态虚拟内存空间中的缓存地址与所述内核态虚拟内存空间的起始地址,确定地址偏移量;
所述协议栈进程基于套接字Socket机制,将所述地址偏移量传输给所述应用进程;
所述应用进程基于所述地址偏移量与所述用户态虚拟内存空间的起始地址,确定所述报文在所述用户态虚拟内存空间中的缓存地址,并基于确定的缓存地址获取所述报文。
根据本说明书实施例的第二方面,提供一种进程间报文传输的方法,将网络设备的部分物理内存空间映射到网卡驱动进程与协议栈进程之间共享的地址空间,得到内核态虚拟内存空间,以及将所述部分物理内存空间映射到应用进程的地址空间,得到用户态虚拟内存空间;所述协议栈进程属于内核态进程,所述方法包括:
所述应用进程对报文处理完成后,将所述处理完成后的报文写入所述用户态虚拟内存空间;
所述应用进程基于所述报文在所述用户态虚拟内存空间中的缓存地址与所述用户态虚拟内存空间的起始地址,确定地址偏移量;
所述应用进程基于套接字Socket机制,将所述地址偏移量传输给所述协议栈进程;
所述协议栈程基于所述地址偏移量与所述内核态虚拟内存空间的起始地址,确定所述报文在所述内核态虚拟内存空间中的缓存地址,并基于确定的缓存地址获取所述报文并对所述报文进行处理;
在协议栈进程对所述报文处理完成后,网卡驱动进程通过所述内核态虚拟内存空间,获取并发送所述报文。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州迪普科技股份有限公司,未经杭州迪普科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011205179.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种用本体定位的自动切筋机
- 下一篇:一种多光通道光伏组件





