BPF for Storage: an Exokernel-Inspired Approach

BPF for Storage: an Exokernel-Inspired Approach
复制标题

用于存储的 BPF:一种受外内核启发的方法

DOI:
10.1145/3458336.3465290
复制
发表时间:
2021
期刊:
Proceedings of the Workshop on Hot Topics in Operating Systems
影响因子:
--
通讯作者:
Yang, Junfeng
Yang, Junfeng
中科院分区:
--
文献类型:
--
作者:
Zhong, Yuhong;Wang, Hongyi;Wu, Yu Jian;Cidon, Asaf;Stutsman, Ryan;Tai, Amy;Yang, Junfeng

文献摘要

相似文献

内核存储路径的开销占新NVMe存储设备访问延迟的一半。我们探索使用BPF来减少这种开销,通过在内核的I/O处理堆栈深处注入用户定义的函数。当发出一系列相关I/O请求时,这种方法可以通过绕过内核层和避免用户-内核边界交叉,将IOPS提高2.5倍以上,并将延迟减少一半。但是,我们必须避免在绕过文件系统和块层时丢失重要属性,例如文件系统的安全保证以及物理块地址和文件偏移之间的转换。我们从90年代后期的exokernel文件系统中获得灵感,勾勒出这些问题的潜在解决方案,我们相信,这个时代终于到来了!愚昧人重复他的愚妄事,好像狗转过来吃他所吐的。“归于所罗门王
The overhead of the kernel storage path accounts for half of the access latency for new NVMe storage devices. We explore using BPF to reduce this overhead, by injecting user-defined functions deep in the kernel's I/O processing stack. When issuing a series of dependent I/O requests, this approach can increase IOPS by over 2.5X and cut latency by half, by bypassing kernel layers and avoiding user-kernel boundary crossings. However, we must avoid losing important properties when bypassing the file system and block layer such as the safety guarantees of the file system and translation between physical blocks addresses and file offsets. We sketch potential solutions to these problems, inspired by exokernel file systems from the late 90s, whose time, we believe, has finally come!"As a dog returns to his vomit, so a fool repeats his folly."Attributed to King Solomon