当前位置:首页 > 报告详情

分会场1_王聪_eBPF发展趋势分析_报告PPT.pdf

上传人: 科*** 编号:713373 2025-06-08 21页 385.97KB

1、eBPF 发展趋势分析第三届 eBPF开发者大会中国 西安王聪2025年4月19日年份内核版本主要新功能20143.18引入 eBPF 虚拟机、bpf()系统调用、程序验证器、首批辅助函数(如map_lookup、trace_printk 等)20154.1支持内核跟踪:添加 kprobe、tracepoint、perf_event 等程序类型20164.4/4.8引入 XDP(eXpress Data Path),实现高性能包处理20174.10/4.13/4.14增加对 cgroup 的支持(如 ingress/egress)、sockops(4.13)、sockmap(4.14)2018

2、4.14/4.18支持 sk_msg 用于七层协议解析;引入 BTF(BPF 类型格式)用于类型描述与验证20195.0/5.2支持 LSM(安全模块)钩子;增强 bpf_trace 与原始 tracepoint 支持;扩展辅助函数20205.7/5.8正式引入 LSM 程序类型(BPF_PROG_TYPE_LSM);支持可睡眠程序(BPF_F_SLEEPABLE)20215.10支持 CO-RE(编译一次,多处运行);支持.rodata、.bss 和全局变量20225.16/5.17支持调用内核函数(kfunc),引入动态对象引用与 bpf_obj_new()分配器20236.06.3引入

3、kptr 类型,支持在 map 中存储带引用计数的内核指针20246.6/6.7扩展 BPF 运行时类型系统,增强与 Rust 的集成,改进 XDP 多缓冲区支持eBPF 发展历程回顾第 三 届 e B P F 开 发 者 大 会eBPF 程序类型增长第 三 届 e B P F 开 发 者 大 会内核版本加载类型新引入的类型3.181BPF_PROG_TYPE_SOCKET_FILTER4.96BPF_PROG_TYPE_KPROBE,BPF_PROG_TYPE_TRACEPOINT,BPF_PROG_TYPE_PERF_EVENT,BPF_PROG_TYPE_SCHED_CLS,BPF_PR

4、OG_TYPE_SCHED_ACT4.1913BPF_PROG_TYPE_XDP,BPF_PROG_TYPE_CGROUP_SKB,BPF_PROG_TYPE_CGROUP_SOCK,BPF_PROG_TYPE_CGROUP_DEVICE,BPF_PROG_TYPE_CGROUP_SOCK_ADDR,BPF_PROG_TYPE_CGROUP_SOCKOPT,BPF_PROG_TYPE_CGROUP_SYSCTL5.1020BPF_PROG_TYPE_LSM,BPF_PROG_TYPE_SK_LOOKUP,BPF_PROG_TYPE_SK_REUSEPORT,BPF_PROG_TYPE_FLOW

5、_DISSECTOR,BPF_PROG_TYPE_NETFILTER,BPF_PROG_TYPE_RAW_TRACEPOINT,BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE6.125BPF_PROG_TYPE_TRACING,BPF_PROG_TYPE_EXT,BPF_PROG_TYPE_STRUCT_OPS,BPF_PROG_TYPE_LIRC_MODE2,BPF_PROG_TYPE_SYSCALL6.1226BPF_PROG_TYPE_STRUCT_OPS(enhanced with sched_ext_ops)辅助函数增长第 三 届 e B P F 开 发

6、者 大 会内核版本helper 数量kfunc 数量备注3.1860初始引入 eBPF,仅支持基础功能(map 操作、时间函数等)4.930+0增加调度器、网络分类、跟踪相关的辅助函数4.1960+0引入 BTF,辅助函数类型扩展到 tracing、cgroup 等5.10100+0LSM 支持上线,新增多个类型和 tracing 相关 helper6.1150+70初次引入 kfunc,主要支持struct_ops、RCU 相关函数6.12150+270kfunc 使用范围扩大,支持bpf_obj_new 等动态对象操作Linux 内核社区开发第 三 届 e B P F 开 发 者 大 会内

word格式文档无特别注明外均可编辑修改,预览文件经过压缩,下载原文更清晰!
三个皮匠报告文库所有资源均是客户上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作商用。
本文主要分析了eBPF(扩展Berkeley数据包过滤器)的发展趋势。以下是关键点: 1. eBPF自2014年引入以来,功能不断扩展,如支持内核跟踪、高性能包处理、cgroup等。 2. eBPF程序类型和辅助函数数量逐年增长,如2023年支持的程序类型达25种,辅助函数超过150个。 3. eBPF代码在Linux内核中的比重逐渐上升,验证器代码占比约25%。 4. eBPF相关论文数量和引用次数逐年增加,2023年论文数量达15-18篇,累计引用次数250-350次。 5. eBPF在安全与可观测性、云原生集成、性能优化等方面发挥重要作用,且编程模型不断演进。 6. 未来发展方向包括存储和内存管理扩展、AI/ML集成、异构硬件+标准化以及新的编程模型。 核心数据引用: - eBPF程序类型:从3.18内核的1种增长至6.1内核的25种。 - 辅助函数数量:从3.18内核的6个增长至6.1内核的150+个。 - 验证器占比:从3.18内核的40%降至6.1内核的25%。 - 论文数量和累计引用次数:2016年3-4篇论文,累计引用20-40次;至2023年15-18篇论文,累计引用250-350次。
"eBPF未来将如何改变云原生?" "eBPF编程模型将有哪些新突破?" "eBPF在跨平台支持上有何进展?"
客服
商务合作
小程序
服务号
折叠