如何解决如何防止线程读取 DPDK RX 和 TX 缓冲区?
我正在实施基于 dpdk 的网络功能,目的是将它们部署在 docker 容器中。
容器通过ovs-dpdk连接。
在网络功能中,我需要一个(A) shim layer,它将在将RX 数据包传输到网络功能之前执行(1) 一些验证(B) 核心逻辑 strong>、(2) 以及每个 TX 数据包在将它们传输到 NIC 之前的一些验证。 (A) 填充层在线程 1 上运行,(B) 核心逻辑在线程 2 上运行。
重要的是,(B) 核心逻辑不应该能够直接访问 RX 缓冲区,因为 (A) 垫片层必须首先处理传入的数据包。换句话说,我想防止攻击者破坏(B) 核心逻辑代码并获取 RX 缓冲区的地址来阻止这种控制。
我可以建立哪些机制来实现该规范?
下面,我提供了网络功能的高级架构。 The Network function architecture
此外,这是我的系统设置{
操作系统:Ubuntu 服务器 18.04
内核 (uname -r) : 5.4.0-77-generic
CPU 型号名称:Intel(R) Core(TM) i7-7567U CPU @ 3.50GHz
OVS : 2.15.0(容器通过 ovs-dpdk 与 vhostuser 端口连接)。
DPDK:20.11.1 }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。