Enabling eBPF on Embedded Systems Through Decoupled Verification

Enabling eBPF on Embedded Systems Through Decoupled Verification
复制标题

通过解耦验证在嵌入式系统上启用 eBPF

DOI:
10.1145/3609021.3609299
复制
发表时间:
2023
期刊:
ACM
影响因子:
--
通讯作者:
Williams, Dan
Williams, Dan
中科院分区:
--
文献类型:
--
作者:
Craun, Milo;Oswald, Adam;Williams, Dan

文献摘要

参考文献

被引文献

相似文献

eBPF(扩展伯克利包过滤器)是一个Linux内核子系统,旨在允许开发人员通过使用内核内验证器和即时编译器(JIT)来编写安全高效的内核扩展。我们发现,对于资源受限的嵌入式系统,验证是非常昂贵的。为了解决这个问题,我们描述了一个允许在嵌入式内核之外和在BPF程序加载时间之前进行验证的系统。内核内验证器和JIT是耦合的,因此它们必须解耦在一起。指定的验证器内核接受BPF程序,然后验证、编译和签名本机预编译的可执行文件。然后可以将可执行文件加载到嵌入式设备上,而不需要嵌入式设备上的验证器和JIT。将验证和JIT从加载时解耦,为在嵌入式设备上运行BPF程序打开了一扇大门。它允许对更大、更具表现力的BPF程序进行验证,提供了一种无需大量修改内核即可使用的新验证方法,并创造了将BPF程序验证作为服务的可能性。
eBPF (Extended Berkeley Packet Filter) is a Linux kernel subsystem that aims to allow developers to write safe and efficient kernel extensions by employing an in-kernel verifier and just-in-time compiler (JIT). We find that verification is prohibitively expensive for resource-constrained embedded systems. To solve this we describe a system that allows for verification to occur outside of the embedded kernel and before BPF program load time. The in-kernel verifier and JIT are coupled so they must be decoupled together. A designated verifier kernel accepts a BPF program, then verifies, compiles, and signs a native precompiled executable. The executable can then be loaded onto an embedded device without needing the verifier and JIT on the embedded device. Decoupling verification and JIT from load-time opens the door to much more than running BPF programs on embedded devices. It allows larger and more expressive BPF programs to be verified, provides a way for new approaches to verification to be used without extensive kernel modification and creates the possibility for BPF program verification as a service.
综合安全高效的内核扩展进行数据包处理
DOI: 10.1145/3452296.3472929
发表时间: 2021
期刊: ACM SIGCOMM'21
影响因子: --
作者:
Xu, Qiongwen;Wong, Michael D.;Wagle, Tanvi;Narayana, Srinivas;Sivaraman, Anirudh
通讯作者: Sivaraman, Anirudh
内核扩展验证站不住脚
DOI: 10.1145/3593856.3595892
发表时间: 2023
期刊: ACM
影响因子: --
作者:
Jia, Jinghao;Sahu, Raj;Oswald, Adam;Williams, Dan;Le, Michael V.;Xu, Tianyin
通讯作者: Xu, Tianyin
Java HotSpot 虚拟机的基于跟踪的编译
DOI: --
发表时间: 2011
期刊: Principles and Practice of Programming in Java
影响因子: --
作者:
Christian Häubl;H. Mössenböck
通讯作者: H. Mössenböck