买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
摘要:本发明公开了一种智能网卡的eBPF卸载方法、基于eBPF卸载的可编程RSS方法及装置,其中卸载方法包括采用智能网卡的通用寄存器对待卸载eBPF程序的通用寄存器和栈帧基址寄存器进行映射,采用智能网卡的本地内存为卸载eBPF程序运行时栈提供内存支持,采用智能网卡的transfer寄存器作为卸载eBPF程序处理报文时的超高速缓冲存储器,并提供显示的超高速缓冲存储器读写指令,且智能网卡为卸载eBPF程序提供最大预设位数的内存读写指令;基于对待卸载eBPF程序的模型映射,将待卸载eBPF程序指令集中指令翻译为流处理引擎指令。本发明借助众核网卡的可编程能力,极大增强了用户对网络数据面编程能力,并通过jit编译对用户屏蔽网卡处理器编程的复杂细节,提高可用性。
主权项:1.一种智能网卡的eBPF卸载方法,包括:采用智能网卡的通用寄存器对待卸载eBPF程序的通用寄存器和栈帧基址寄存器进行映射,采用智能网卡的本地内存为卸载eBPF程序运行时栈提供内存支持,采用智能网卡的transfer寄存器作为所述卸载eBPF程序处理报文时的超高速缓冲存储器,并提供显示的超高速缓冲存储器读写指令,且所述智能网卡为所述卸载eBPF程序提供最大预设位数的内存读写指令,以在所述智能网卡上实现所述待卸载eBPF程序的模型映射;基于对所述待卸载eBPF程序的模型映射,将所述待卸载eBPF程序指令集中指令翻译为所述卸载eBPF程序所支持的流处理引擎指令;其中,所述卸载eBPF程序为所述待卸载eBPF程序卸载至所述智能网卡上的eBPF程序;其中,基于对所述待卸载eBPF程序的模型映射,将所述待卸载eBPF程序指令集中指令翻译为所述卸载eBPF程序所支持的流处理引擎指令步骤包括:对所述待卸载eBPF程序指令集进行扫描,基于对所述待卸载eBPF程序的模型映射,将所述待卸载eBPF程序指令集中指令直译为所述智能网卡处理器所支持的原始指令集;对所述原始指令集进行扫描,以基于所述待卸载eBPF程序指令集中代码段链接方式对所述原始指令集中代码段进行重链接;其中,将所述待卸载eBPF程序指令集中指令直译为所述智能网卡处理器所支持的原始指令集过程中:当扫描到call指令时,需扫描对应被调用者子过程的所有指令,以判断所述被调用者子过程是否对R6寄存器-R9寄存器进行修改,若是则将R6寄存器-R9寄存器写进栈中,并将所述被调用者子过程的返回地址保存至预设寄存器中,执行所述被调用者子过程,并在所述被调用者子过程结束后插入指令以调转到保存的返回地址;其中,R6寄存器-R9寄存器为eBPF调用规范规定由被调用者保护。
全文数据:
权利要求:
百度查询: 芯云晟(杭州)电子科技有限公司 智能网卡的eBPF卸载方法、基于eBPF卸载的可编程RSS方法及装置
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。