百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
R

redbpf

> 编程语言
开源

用于构建和运行 BPF/eBPF 模块的 Rust 库

1.7K stars0 点赞2 次浏览
访问官网GitHub

工具介绍

用于构建和运行 BPF/eBPF 模块的 Rust 库

RedBPF ===== Rust eBPF 工具链。 # 概述 redbpf 项目是使用 Rust 构建 eBPF 程序的工具和库集合。 它包括: - redbpf - 一个用户空间库,可用于加载 eBPF 程序或访问 eBPF 映射。 - redbpf-probes - 一个 idiomatic Rust API,用于编写 eBPF 程序,这些程序可由 Linux 内核加载。 - redbpf-macros - redbpf-probes 的配套库,提供了在编写 eBPF 程序时便利的过程性宏。例如,#[map] 用于定义映射,#[kprobe] 用于定义可附加到内核函数的 BPF 程序。

  • cargo-bpf - 用于创建、构建和调试 eBPF 程序的 cargo 子命令

  • 允许用户在 Rust 中编写 BPF 程序和用户空间程序

  • 提供多种 BPF 映射类型

    1. HashMap, PerCpuHashMap, LruHashMap, LruPerCpuHashMap, Array, PerCpuArray, PerfMap, TcHashMap, StackTrace, ProgramArray, SockMap, DevMap, RingBuf
  • 提供多种 BPF 程序类型

    1. KProbe, KRetProbe, UProbe, URetProbe, SocketFilter, XDP, StreamParser, StreamVerdict, TaskIter, SkLookup, Tracepoint
  • 提供用于声明各种类型的 BPF 程序和 BPF 映射的属性宏

    1. #[kprobe], #[kretprobe], #[uprobe], #[uretprobe], #[xdp], #[tc_action], #[socket_filter], #[stream_parser], #[stream_verdict], #[task_iter], #[tracepoint]
    2. #[map]
  • 可以从 Linux 内核头文件或 vmlinux 的 BTF 生成 Rust 绑定

  • 提供用于 BPF 程序和用户空间程序的 API,帮助用户编写 Rust 语法规范的代码

  • 支持 BTF 映射

  • 支持映射的锚定和从锚定中加载映射

  • 支持 task 的 BPF 迭代器

  • 允许用户编写 tc 操作的 BPF 程序,RedBPF 将这些程序编译成与 tc 命令兼容的 ELF 对象文件

  • 提供 BPF 帮助函数的封装

  • 提供异步 s

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

Rustebpfffi-bindingsrust-ffirust-library

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言