0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

openEuler倡议建立eBPF软件发布标准

openEuler 来源:openEuler 作者:openEuler 2022-12-06 10:29 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

eBPF 是一个能够在内核运行沙箱程序的技术,提供了一种在内核事件和用户程序事件发生时安全注入代码的机制,使得非内核开发人员也可以对内核进行控制。随着内核的发展,eBPF 逐步从最初的数据包过滤扩展到了网络、内核、安全、跟踪等,而且它的功能特性还在快速发展中,早期的 BPF 被称为经典 BPF,简称 cBPF,正是这种功能扩展,使得现在的 BPF 被称为扩展 BPF,简称 eBPF。

如今 eBPF 被广泛应用在云原生、可观测、性能调优、安全、硬件加速等领域,并且其应用场景还在快速扩展,各种场景基于 eBPF 技术的创新 idea 呈现井喷现象,eBPF 的时代已经来临。

eBPF 技术现状

虽然 eBPF 技术应用呈现井喷现象,但是开发、发布、安装等相关的基础技术出现碎片化现象,导致技术成果无法快速平移至行业客户生产环境;相似 eBPF 技术应用在重复实践。这些问题阻碍 eBPF 技术的普及与推广。

如下图所示,总结目前 eBPF 的开发、发布方式基本可以划分成 2 种技术路线:

开发态、运行态分离(典型代表 libbpf)

优点:ELF 文件形式(或者链接进应用程序)发布,运行时轻量化,适合生产环境大规模应用。

缺点:应用技术门槛高,且不具备可移植性(比如高内核版本的 eBPF 程序无法移植至低内核版本中)。

开发态、运行态融合(典型代表 BCC)

优点:源码形式发布天然具备可移植性;封装抽象运行时,提供高级语言 API,降低开发难度。

缺点:运行时重型化,对生产环境要求较高(需要安装开发态一系列工具);高度抽象后,降低使用灵活度,不适合大型应用开发。

03500d2e-7486-11ed-8abf-dac502259ad0.png

这两种技术路线都存在弊端,随着 eBPF 技术的发展,出现 BumbleBee 、eunomia-bpf 等项目致力于综合这两类技术路线的优点,但依旧缺乏对 eBPF 基础技术的整体规划。

eBPF 发展展望

eBPF summit 2022 《The future of eBPF in the Linux Kernel》展望了 eBPF 的发展方向,具体的演进方向包括几个方面:

更完备的编程能力:当前 eBPF 的编程能力存在一些局限性(比如不支持变量边界的循环,指令数量受限等),演进目标提供图灵完备的编程能力。

更强的安全性:支持类型安全,增强运行时 Verifier,演进目标是提供媲美 Rust 的安全编程能力。

更广泛的移植能力:增强 CO-RE,加强 Helper 接口可移植能力,实现跨体系、平台的移植能力。

更强的可编程能力:支持访问/修改内核任意参数、返回值,实现更强的内核编程能力。

概括其演进目标是希望将 eBPF 打造成一款针对内核(包括硬件)运行时的安全编程语言,通过该语言构建 eBPF 软件,用来承载内核(或硬件)的能力。演进结果产生一个有趣现象:按照传统软件类型划分方式,我们很难将 eBPF 软件归类成应用软件或是系统软件。所以,干脆将其定义成一种独立软件形态:内核态服务(eBPF as Service)。

036b4fd0-7486-11ed-8abf-dac502259ad0.png

eBPF Service 形态

建立 eBPF 行业标准的思路

eBPF 软件有别于系统软件、应用软件,从软件自身特点而言,其应具备符合其自身特点的开发、编译、打包、发布、安装、升级等工具系列。

当前 eBPF 的开发框架、发布形式发展迅速,但也存在一些问题,包括跨版本移植能力、多场景支持能力、开发易用性、服务可获得性等问题。openEuler 可编程内核 SIG 希望标准化 eBPF 软件相关基础技术(包括打包、发布、安装、升级等),方便 eBPF 技术在各行业、场景的推广。为此,由多家企业/高校在 openEuler 社区倡议建立行业标准,通过标准化发布将内核定制能力、硬件卸载能力向社区用户提供性能加速、安全加固、智能观测等服务。

预计我们将在 12 月份组织一次线上 meetup,当前参与企业/组织包括天翼云、深信服、华为、西邮、中山大学、中科驭数、信通院、锐捷等,希望国内对 eBPF 技术有诉求、规划的厂商加入本次 meetup,建立 eBPF 技术相关标准,为 eBPF 技术应用、科研提供较好的基础平台。

具体讨论范围划分成三个方向:

eBPF runtime:负责提供具备可移植性的软件安装能力,软件热升级能力,包管理等能力。

eBPF Development Kit:负责提供一站式开发、调试、编译工具,提供具备跨体系、平台移植能力的软件包发布能力。

eBPF Service HUB:负责提供 eBPF Service 集市化管理,提供 eBPF Service 推送、分发等能力。

03901144-7486-11ed-8abf-dac502259ad0.png

openEuler 可编程内核 SIG 目标

openEuler 可编程内核 SIG 目标之一就是推动 eBPF as Service 标准化工作,将内核能力、硬件加速能力服务化、集市化,惠及更多的社区用户。

与此同时,openEuler 社区会将行业标准内的一些基础软件、技术标准推送至 Linux 上游社区,加强 eBPF 技术生态建设,提升国内 eBPF 技术在上游社区影响力。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 编程
    +关注

    关注

    90

    文章

    3707

    浏览量

    96765
  • 云原生
    +关注

    关注

    0

    文章

    265

    浏览量

    8497
  • openEuler
    +关注

    关注

    2

    文章

    335

    浏览量

    6666

原文标题:openEuler 倡议建立 eBPF 软件发布标准

文章出处:【微信号:openEulercommunity,微信公众号:openEuler】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    润和软件亮相操作系统大会openEuler Summit 2025

    openEuler,简称“开源欧拉”或“openEuler”)社区,协同江苏润和软件股份有限公司(以下简称“润和软件”)等数十家产业伙伴共同举办,旨在汇聚全球产业界力量,打造极具创新
    的头像 发表于 11-20 09:36 211次阅读
    润和<b class='flag-5'>软件</b>亮相操作系统大会<b class='flag-5'>openEuler</b> Summit 2025

    元服务发布选择待发布软件

    上传软件包并通过基础合法检查后,就可以从上传的版本中选择需要发布软件包。 登录AppGallery Connect,点击“APP与元服务”。 选择要发布的元服务。 左侧导航选择“应用
    发表于 11-03 17:10

    瑞声科技首批签署“创建可持续品牌”愿景倡议

    近日,在联合国日内瓦万国宫成功举办的“创建可持续商业与品牌”高级别对话会上,由中国标准化协会可持续商业与品牌工作委员会(SBBC)等发起的“创建可持续品牌”愿景倡议正式发布。AAC瑞声科技(下文简称:AAC)首批签署该
    的头像 发表于 09-19 11:42 688次阅读

    润和软件出席2025-2026年openEuler技术委员会会议

    近日,由OpenAtom openEuler(以下简称“openEuler”或“开源欧拉”)社区发起、江苏润和软件股份有限公司(以下简称“润和软件”)承办的2025-2026年
    的头像 发表于 08-07 18:01 1480次阅读

    请问在Vision Five2上怎样安装openeuler24.03 LTS SP1?

    在Vision Five2上怎样安装openeuler24.03 LTS SP1?
    发表于 07-29 09:02

    基于eBPF的Kubernetes网络异常检测系统

    作为一名在云原生领域深耕多年的运维工程师,我见过太多因为网络问题导致的生产事故。传统的监控手段往往是事后诸葛亮,当你发现问题时,用户已经在抱怨了。今天,我将分享如何利用 eBPF 这一革命性技术,构建一套能够实时检测 Kubernetes 网络异常的系统。
    的头像 发表于 07-24 14:09 500次阅读

    openEuler 助力 RISC-V 服务器生态建设,以及对 RVA23 的支持进展

    openEuler 挑战和路线图》,围绕 openEuler 介绍、基础设施驱动生产力以及推进 RV32 相关标准工作三方面展开分享。   openEuler 是 2019 年开源
    发表于 07-18 09:45 4449次阅读
    <b class='flag-5'>openEuler</b> 助力 RISC-V 服务器生态建设,以及对 RVA23 的支持进展

    openEuler 22.03为什么无法运行在VisionFive2上?

    (求助)openEuler 22.03无法运行在VisionFive2上
    发表于 06-19 07:13

    openEuler上基于vLLM Ascend部署Qwen3

    近日,阿里巴巴正式发布新一代Qwen大语言模型系列(Qwen3与Qwen3-MoE),在模型规模与性能上实现多方面升级。openEuler社区团队与vLLM社区通力合作,在第一时间完成Qwen3模型
    的头像 发表于 05-07 14:44 1457次阅读
    在<b class='flag-5'>openEuler</b>上基于vLLM Ascend部署Qwen3

    华为联合11家车企发起智能辅助驾驶安全倡议

    4月27日,华为乾崑智能汽车解决方案官方微博发布《智能辅助驾驶安全倡议》。这份倡议是由华为智能汽车解决方案BU、中国汽车技术研究中心以及广汽集团、上汽集团、江汽集团、奥迪中国、东风猛士科技、岚图汽车
    的头像 发表于 04-28 15:47 384次阅读

    软通动力亮相openEuler Developer Day 2025

    近日,openEuler Developer Day 2025(简称ODD 2025)在杭州成功举办,大会全新发布openEuler 25.03创新版本,展示内核开发、多样性计算和全场景协同
    的头像 发表于 04-15 17:21 868次阅读

    openEuler Developer Day 2025成功举办

    近日,由OpenAtom openEuler(简称“openEuler”)社区发起的openEuler Developer Day 2025(简称“大会”)在杭州成功举办。
    的头像 发表于 04-14 16:11 946次阅读

    润和软件亮相openEuler Developer Day 2025

    近日,openEuler Developer Day 2025 (ODD 2025)在杭州成功举行。本次会议由开放原子开源基金会openEuler社区发起,全面解读了全新发布openEule
    的头像 发表于 04-14 11:42 1325次阅读

    回顾2024年度润和软件openEuler的精彩瞬间

    2024年是openEuler开源五周年,回顾这一里程碑时刻,作为openEuler项目群黄金捐赠人,江苏润和软件股份有限公司(以下简称“润和软件”)不仅深度参与并持续贡献,更在驱动
    的头像 发表于 01-07 18:12 1556次阅读

    deepin社区落地开源生态发展合作倡议

    为共同推动做强做优做大创新操作系统生态,积极响应由 deepin(深度)、龙蜥(OpenAnolis)、开源欧拉(openEuler)、鸥栖(OpenCloudOS)及开放麒麟(openKylin
    的头像 发表于 12-17 09:35 1113次阅读