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

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

3天内不再提示

什么是eBPF,eBPF为何备受追捧?

OSC开源社区 来源:OSC开源社区 2023-05-06 11:41 次阅读

eBPF 的全称是 extended Berkeley Packet Filter,它被称之为 “革命性” 的内核技术,可以在 Linux 内核中运行沙盒程序,而无需更改内核源代码或加载内核模块。它提供了一种通用执行引擎,可以基于系统或程序事件高效安全地执行特定代码,就像在实时 (JIT) 编译器和验证引擎的帮助下进行本机编译一样。如今,eBPF 被广泛用于各种场景:在现代数据中心和云原生环境中提供高性能网络和负载平衡,以低成本提取细粒度的安全可观测性数据,帮助应用程序开发人员跟踪应用程序,为性能故障排除、预防性应用程序和容器运行时安全实施提供见解等等。一些项目如 Facebook 公司的高性能 4 层负载均衡器 Katran,IO Visor 项目开源的 BCC、 BPFTrace 和 Kubectl-Trace,以及 CloudFlare 公司开源的 eBPF Exporter 和 bpf-tools 都使用了该技术。

eBPF 为何备受追捧?

用云杉网络 VP 向阳的话来说:“ eBPF 最重要(没有之一)的特点是安全性” 。他表示,以往必须编写内核模块才能做到的工作现在基本都能做到。但关键性的区别在于,eBPF 代码会经过 Verifier 严格的验证,杜绝了死循环、内存泄露等问题。它会确保内核运行的安全,使得企业愿意在运行关键业务的生产系统中开启此能力,从而释放前所未有的内核可编程性。

eBPF 对可观测性技术的影响更是革命性的,一方面这个场景下 eBPF 的「安全性」体现的更加淋漓尽致,它甚至不会对数据进行任何的修改; 另一方面 eBPF 的「零侵扰」特性使得云原生应用实现全景、全栈的可观测性成为现实。随着云基础设施的迭代和发展、微服务的拆分,业务中的编程语言构成越来越复杂、服务间通信路径涉及到的团队越来越多。与此同时,现有的可观测性方案往往要求打桩插码,为开发者带来了巨大的工作量,因此如何为所有业务支撑团队呈现一个全景、全栈的可观测性视图成为急需解决的一个问题。

eBPF 采集的数据能覆盖系统、网络、应用等多个层面,能回答基础设施的性能瓶颈位置,也能回答应用程序中的代码函数热点,在这方面表现出了得天独厚的优势。云杉网络开源的云原生可观测性平台 DeepFlow 就充分利用了 eBPF 技术。借助 eBPF 的零侵扰性和安全性优势,开发者无需修改任何一行代码、无需改变任何一个运行参数、甚至无需重启任何一个进程,即可实现全景、全栈的分布式追踪、全景应用拓扑、全栈性能指标能力,覆盖各类语言的应用、各类云原生基础设施,为云原生环境下的可观测性带来了革命性的创新。

很多人都在关注 eBPF 介入后,应用程序性能会有所损耗。向阳认为,由于 eBPF 程序会 Hook 至内核函数中执行,它带来的性能开销与应用程序本身的资源消耗相关。如果应用本身逻辑非常简单,例如时延不到 1ms,此时 eBPF 介入带来的耗时占比会比较明显。但对于大量的业务 —— 通常会有复杂的计算逻辑、更长的耗时,在生产环境上的经验是大多只会引入 1%~5% 的性能影响。

另一方面,DeepFlow 也希望通过自身的开源来推进 eBPF 应用的繁荣,这样也能更加促进 eBPF 技术自身的性能优化。而 DeepFlow 自身的持续测试机制也会在每次代码合入之后进行自动化的性能影响评估,让用户清晰的知道影响到底有多大。eBPF 技术还在不断发展,还有什么可能性有待挖掘?2023 年 5 月 28 日, GOTC 2023 eBPF 分论坛将于上海举行,将一览无余地展现 eBPF 技术,并分享如何将其结合到实际工作中。

与此同时,GOTC 2023 很荣幸邀请到向阳成为该分论坛的联合出品人。早在清华大学攻读计算机系博士学位期间,向阳就实现了世界上第一个全球 BGP 路由劫持实时监测系统,获得了网络测量领域国际顶级会议 IMC 颁发的社区贡献奖,这也是该奖项首次颁发给中国大陆科研人员。

毕业后,向阳即加入了云杉网络,如今作为云杉网络的研发 VP,负责 DeepFlow 产品。正是在他的带领下,云杉网络将 eBPF 技术深度应用于 DeepFlow 之中。全球开源技术峰会(Global Open-source Technology Conference),简称 GOTC,是由开放原子开源基金会、 Linux 基金会亚太区、上海浦东软件园和开源中国联合发起的,面向全球开发者的一场盛大开源技术盛宴。5 月 27 日至 28 日,GOTC 2023 将于上海举办为期 2 天的开源行业盛会。大会将以行业展览、主题发言、特别论坛、分论坛的形式展现,与会者将一起探讨元宇宙、3D 与游戏、eBPF、Web3.0、区块链等热门技术主题,以及开源社区、AIGC、汽车软件、开源商业化、开源教育培训、云原生等热门话题,探讨开源未来,助力开源发展。

编辑:黄飞

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

    关注

    16

    文章

    4618

    浏览量

    71874
  • 内核模块
    +关注

    关注

    0

    文章

    10

    浏览量

    3079
  • 负载均衡器
    +关注

    关注

    0

    文章

    18

    浏览量

    2573

原文标题:eBPF,何以称得上是革命性的内核技术?

文章出处:【微信号:OSC开源社区,微信公众号:OSC开源社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    环保又高效:365nm固化灯为何如此受欢迎?

    在追求绿色发展和高效生产的当下,一款产品若能在满足性能需求的同时,还兼具环保与高效两大优势,无疑会受到市场的热烈追捧。而在工业固化领域,365nm固化灯便是这样一款备受瞩目的产品。那么,为何
    的头像 发表于 05-15 11:19 294次阅读
    环保又高效:365nm固化灯<b class='flag-5'>为何</b>如此受欢迎?

    eBPF动手实践系列三:基于原生libbpf库的eBPF编程改进方案简析

    在上一篇文章《eBPF动手实践系列二:构建基于纯C语言的eBPF项目》中,我们初步实现了脱离内核源码进行纯C语言eBPF项目的构建。libbpf库在早期和内核源码结合的比较紧密,如今的libbpf库更加成熟,已经完全脱离内核源码
    的头像 发表于 03-19 14:19 701次阅读
    <b class='flag-5'>eBPF</b>动手实践系列三:基于原生libbpf库的<b class='flag-5'>eBPF</b>编程改进方案简析

    基于原生libbpf库的eBPF编程改进方案

    为了简化 eBPF程序的开发流程,降低开发者在使用 libbpf 库时的入门难度,libbpf-bootstrap 框架应运而生。基于libbpf-bootstrap框架的编程方案是目前网络上看到的最主流编程方案。
    发表于 03-19 14:19 534次阅读
    基于原生libbpf库的<b class='flag-5'>eBPF</b>编程改进方案

    超声波清洗机三大优势受市场追捧

    超声波清洗机的三大清洗优势——高效清洗、节能环保和广泛应用,使得它在市场上备受追捧。随着消费者对产品质量和环保要求的不断提高,超声波清洗机有望在未来市场中占据更大的份额。同时,随着技术的不断创新和进步,超声波清洗机也将在清洗效率、环保性能、应用领域等方面实现更大的突破和提
    的头像 发表于 03-05 11:15 432次阅读
    超声波清洗机三大优势受市场<b class='flag-5'>追捧</b>

    数字孪生城市为何备受追捧?其应用场景有多宽?

    从城市治理的角度来看,数字孪生城市相当于真实世界的“操作系统”,有了它就可以远程对城市的每一个角落进行监测、智慧调度,无论是街道、社区,还是商场、变电站乃至城市排水系统,从而提升城市的治理效率。
    的头像 发表于 02-23 10:29 248次阅读
    数字孪生城市<b class='flag-5'>为何</b><b class='flag-5'>备受</b><b class='flag-5'>追捧</b>?其应用场景有多宽?

    探索aarch64架构上使用ftrace的BPF LSM

    笔者在MacBook M2上搭建Linux虚拟机上开发eBPF程序时,遇到一些LSM eBPF类型程序无法运行的问题,哪怕是5.15内核的ubuntu server,依旧无法正常运行。显然
    的头像 发表于 01-25 09:30 638次阅读

    请问复制BSP的文件为何无法go def跳转是灰色?

    请问复制BSP的文件为何无法go def跳转是灰色 路径并无中文,也无数字开头。。。 请大家看看是为何
    发表于 01-15 07:51

    ​硅光芯片为何备受行业欢迎?

    21世纪初开始,以英特尔和IBM为首的企业与学术机构就开始重点发展硅芯片光学信号传输技术,期望有朝一日能用光通路取代芯片之间的数据电路,以延续摩尔定律。
    的头像 发表于 12-15 12:27 838次阅读

    RISC-V为何备受欢迎?

    要适用于所有实现技术,包括 FPGA(Field-Programmable Gate Array,现场可编程逻辑门阵列)、ASIC(Application-Specific Integrated Circuit,专用集成电路)、全定制芯片,甚至未来的制造元件技术。
    的头像 发表于 12-14 10:51 967次阅读
    RISC-V<b class='flag-5'>为何</b><b class='flag-5'>备受</b>欢迎?

    什么是隔直电容,它们为何重要?(上)

    什么是隔直电容,它们为何重要?(上)
    的头像 发表于 11-23 16:39 1277次阅读
    什么是隔直电容,它们<b class='flag-5'>为何</b>重要?(上)

    什么是隔直电容,它们为何重要?(下)

    什么是隔直电容,它们为何重要?(下)
    的头像 发表于 11-23 15:58 1873次阅读
    什么是隔直电容,它们<b class='flag-5'>为何</b>重要?(下)

    TVS 选型时,为何应尽量选用单向TVS?

    Amazingic晶焱:TVS 选型时,为何应尽量选用单向TVS?
    的头像 发表于 11-22 18:08 661次阅读
    TVS 选型时,<b class='flag-5'>为何</b>应尽量选用单向TVS?

    基于ebpf的性能工具应用

    在实际的软件开发过程中,内存问题常常是耗费大量时间进行分析的挑战之一。为了更有效地定位和解决与内存相关的难题,一系列辅助工具应运而生,其中备受赞誉的Valgrind工具便是其中之一。事实上,笔者本人
    的头像 发表于 11-08 16:19 375次阅读
    基于<b class='flag-5'>ebpf</b>的性能工具应用

    介绍一种基于eBPF的Linux安全防护系统

    针对操作系统、内核安全,联通云操作系统团队开发了的一个基于 eBPF 的 Linux 安全防护系统 safeguard,可以实现安全操作的审计拦截及安全防护功能。项目采用 libbpfgo 库
    的头像 发表于 11-07 17:43 807次阅读
    介绍一种基于<b class='flag-5'>eBPF</b>的Linux安全防护系统

    Arduino开发单片机和传统的IAR、keil最大区别在哪?

    为何Arduino现在这么收追捧? 如何入门Arduino?有STM32 C语音基础,以前基本是IAR和keil
    发表于 11-07 08:14