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

    文章

    3725

    浏览量

    97487
  • 云原生
    +关注

    关注

    0

    文章

    266

    浏览量

    8650
  • openEuler
    +关注

    关注

    2

    文章

    344

    浏览量

    6769

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

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

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    润和软件亮相openEuler Developer Day 2026

    近日,openEuler Developer Day 2026(ODD 2026)在长沙成功举行。本次大会将汇聚社区技术专家、开发者、贡献者及生态合作伙伴等,围绕操作系统在AI时代面临的新需求
    的头像 发表于 05-07 17:13 831次阅读

    openEuler Developer Day 2026成功举办

    4月25日,openEuler Developer Day 2026(简称“大会”)在长沙成功举办。本次大会由OpenAtom openEuler(简称“openEuler”或“开源欧拉”)社区发起
    的头像 发表于 04-29 16:19 797次阅读

    开源欧拉社区正式发布openEuler Embedded 26.03版本

    近日,开源欧拉社区正式发布openEuler Embedded 26.03版本。新版本基于开源欧拉社区Intelligence BooM开源全栈,成功孵化IB-Robot具身智能机器人软件全栈项目
    的头像 发表于 04-22 10:47 486次阅读

    在VisionFive上安装OpenEuler (By Samuel)的步骤

    --skip-broken -y再次修改软件源: vim /etc/yum.repos.d/openEuler.repo文件修改为如下内容: [standard]name
    发表于 03-31 06:05

    GSMA联合华为等产业伙伴发布大上行网络倡议

    在MWC26 巴塞罗那期间由全球移动通信系统协会(GSMA)主办的移动AI峰会上,面向全球运营商的大上行网络倡议正式发布。该倡议以泛在20Mbps、峰值1Gbps上行网络能力为核心指标,旨在破解移动AI规模化落地的上行瓶颈,标志
    的头像 发表于 03-10 10:48 481次阅读

    润和软件绘就云边端统一操作系统新蓝图

    openEuler”)社区,协同江苏润和软件股份有限公司(以下简称“润和软件”)等数十家产业伙伴共同举办。作为社区核心共建者,润和软件受邀在多个分论坛发表主题演讲,多维度呈现公司在基
    的头像 发表于 11-20 09:42 614次阅读
    润和<b class='flag-5'>软件</b>绘就云边端统一操作系统新蓝图

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

    openEuler,简称“开源欧拉”或“openEuler”)社区,协同江苏润和软件股份有限公司(以下简称“润和软件”)等数十家产业伙伴共同举办,旨在汇聚全球产业界力量,打造极具创新
    的头像 发表于 11-20 09:36 628次阅读
    润和<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 1397次阅读

    天合光能加入供应链ESG管理倡议

    7月31日,由SCSI倡议联合发起方藏格矿业主办的“第二届上市公司可持续发展前沿实践研讨会暨供应链ESG管理倡议扩容仪式”在青海格尔木顺利举行。天合光能作为全球领先的光储智慧能源整体解决方案提供商
    的头像 发表于 08-08 17:46 1658次阅读

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

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

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

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

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

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

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

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

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

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