新增六大功能解析!eBPF 技术实践白皮书第二版正式发布(附下载链接)

简介: 揭秘eBPF最新技术进展。

自去年龙蜥社区发布 eBPF 技术实践白皮书以来,得到了广大读者的高度评价。这一年,eBPF 技术发展也取得了重要进展,不管是 Linux 内核社区关于 eBPF 调度器的讨论,还是 Elastic 发布其多语言 Continues Profiling 的统一方案,eBPF 的应用也越来越广泛了。龙蜥社区也根据这一年的实际 eBPF 项目开发经验进行了总结,历经数月完成了白皮书第二版的整理工作,并于 2024 云栖大会操作系统开源专场发布了《eBPF 技术实践白皮书(第二版)》,该白皮书梳理了 eBPF 的架构和重要技术原理,接着分析了 eBPF 在多种典型应用场景的使用方案,并进一步对 eBPF 技术的发展趋势做了探讨。

eBPF 技术实践白皮书是由龙蜥社区组织编写,阿里云、浪潮信息、浪潮数据、东南大学等多位老师、专家共同参与贡献的。2023 年发布的《eBPF 技术实践白皮书》内容主要包括 eBPF 指令架构和开发流程、基于 eBPF 的系统诊断实践、IO 和网络的性能优化等内容。本次云栖大会发布的第二版,新增了六大内容,包括基于 eBPF 的软件网络功能库、TCP 网络监控、持续剖析(Continues Profiling)能力,以及容器安全、网络流量镜像、网络访问控制。下面我们来分别介绍一下这六大功能:

  • 软件网络功能库是基于 eBPF 的 kfunc 和 kptr 技术实现的,通过抽象并实现性能受限的/无法实现的公共功能到 eNetSTL 中,实现在不修改 eBPF 基础架构(例如指令集)的前提下,对常见的交换机、路由器、负载均衡、防火墙等功能通过 eBPF 的接口调用进行加速。目前从无到有实现了基于跳表的 K-V 存储功能,在 sketch 和 switch 场景下使用 SIMD 加速,使得性能提升从 27.4% 到 47.9% 不等。

  • TCP 网络监控功能,传统的做法一般是通过系统工具获取网络接口流量、连接状态信息,无法分析一个链接的请求与响应过程及传输时间。TCP-RT 通过在内核 TCP 协议栈中相应的位置设置 eBPF 的 hook 点,可以在单个连接上只有一个并发请求与响应的场景下识别出请求与响应,例如:HTTP/1.1 协议的 Web服务、MySQL 数据库服务、Redis 服务等,进而获取请求在协议栈中接收的时间及服务进程处理过程中的耗时等数据信息。TCP-RT 还支持在内核系统中做统计分析,定期输出指定连接的统计信息。

  • Continues Profiling 持续剖析是近几年云原生可观测性很重要的技术,通过 eBPF 技术能做到持续的非侵入方式进行数据的采集,支持对 Java、python、Luajit 等高级语言进行符号解析,也支持对 C、C++、Golang、Rust 等 Native 语言的应用进行推栈,由于它可以动态进行安装和卸载程序,持续对当前运行的 CPU 热点进行采样分析,不需要重启进程或事先编译埋点,相比传统的 APM 插桩方式带来显著的易用性、安全性,因此它极有可能成为继可观测性的 Trace、Log、Metric 之后的第四大支柱。持续剖析功能基于eBPF 可以分析用户态和内核态的栈,对不同语言的应用统一采用一套架构进行采样和分析,通过火焰图、调用图表的方式进行热点的展现。

  • 基于 eBPF 的容器安全技术聚焦于容器运行时安全检测与防御。将 eBPF 程序挂载至宿主机内核,监控所有容器进程、文件、网络行为,结合容器入侵、逃逸等恶意行为特征,识别并拦截异常操作。

  • 基于 eBPF 实现流量镜像,在内核态实现原始数据的复制并转发至指定网卡实现实时流量安全审计、风险检测、业务分析等,相较于传统实现方式具有成本更低、灵活性高、安全性高等优势。

  • 基于 eBPF 实现网络访问控制,在 XDP 和 TC 挂载点加载特定程序,使访问控制规则在整个网络链路中比较靠前的位置生效,缩短了网络包处理路径,整体性能可提升 20% 以上。

欢迎大家加入钉钉交流群,与我们沟通交流:


白皮书下载链接https://openanolis.cn/assets/static/eBPF_technical_practice_v2.pdf

相关文章
|
6天前
|
机器学习/深度学习 人工智能 自然语言处理
AI技术深度解析:从基础到应用的全面介绍
人工智能(AI)技术的迅猛发展,正在深刻改变着我们的生活和工作方式。从自然语言处理(NLP)到机器学习,从神经网络到大型语言模型(LLM),AI技术的每一次进步都带来了前所未有的机遇和挑战。本文将从背景、历史、业务场景、Python代码示例、流程图以及如何上手等多个方面,对AI技术中的关键组件进行深度解析,为读者呈现一个全面而深入的AI技术世界。
54 10
|
6天前
|
数据可视化 数据挖掘 BI
团队管理者必读:高效看板类协同软件的功能解析
在现代职场中,团队协作的效率直接影响项目成败。看板类协同软件通过可视化界面,帮助团队清晰规划任务、追踪进度,提高协作效率。本文介绍看板类软件的优势,并推荐五款优质工具:板栗看板、Trello、Monday.com、ClickUp 和 Asana,助力团队实现高效管理。
28 2
|
16天前
|
机器学习/深度学习 人工智能 算法
深入解析图神经网络:Graph Transformer的算法基础与工程实践
Graph Transformer是一种结合了Transformer自注意力机制与图神经网络(GNNs)特点的神经网络模型,专为处理图结构数据而设计。它通过改进的数据表示方法、自注意力机制、拉普拉斯位置编码、消息传递与聚合机制等核心技术,实现了对图中节点间关系信息的高效处理及长程依赖关系的捕捉,显著提升了图相关任务的性能。本文详细解析了Graph Transformer的技术原理、实现细节及应用场景,并通过图书推荐系统的实例,展示了其在实际问题解决中的强大能力。
106 30
|
9天前
|
存储 Java 开发者
浅析JVM方法解析、创建和链接
上一篇文章《你知道Java类是如何被加载的吗?》分析了HotSpot是如何加载Java类的,本文再来分析下Hotspot又是如何解析、创建和链接类方法的。
|
16天前
|
存储 网络协议 编译器
【C语言】深入解析C语言结构体:定义、声明与高级应用实践
通过根据需求合理选择结构体定义和声明的放置位置,并灵活结合动态内存分配、内存优化和数据结构设计,可以显著提高代码的可维护性和运行效率。在实际开发中,建议遵循以下原则: - **模块化设计**:尽可能封装实现细节,减少模块间的耦合。 - **内存管理**:明确动态分配与释放的责任,防止资源泄漏。 - **优化顺序**:合理排列结构体成员以减少内存占用。
86 14
|
13天前
|
机器学习/深度学习 人工智能 自然语言处理
秒级响应 + 99.9%准确率:法律行业文本比对技术解析
本工具基于先进AI技术,采用自然语言处理和语义匹配算法,支持PDF、Word等格式,实现法律文本的智能化比对。具备高精度语义匹配、多格式兼容、高性能架构及智能化标注与可视化等特点,有效解决文本复杂性和法规更新难题,提升法律行业工作效率。
|
10天前
|
数据采集 存储 JavaScript
网页爬虫技术全解析:从基础到实战
在信息爆炸的时代,网页爬虫作为数据采集的重要工具,已成为数据科学家、研究人员和开发者不可或缺的技术。本文全面解析网页爬虫的基础概念、工作原理、技术栈与工具,以及实战案例,探讨其合法性与道德问题,分享爬虫设计与实现的详细步骤,介绍优化与维护的方法,应对反爬虫机制、动态内容加载等挑战,旨在帮助读者深入理解并合理运用网页爬虫技术。
|
16天前
|
机器学习/深度学习 自然语言处理 监控
智能客服系统集成技术解析和价值点梳理
在 2024 年的智能客服系统领域,合力亿捷等服务商凭借其卓越的技术实力引领潮流,它们均积极应用最新的大模型技术,推动智能客服的进步。
50 7
|
2天前
|
小程序 安全 搜索推荐
陪玩小程序的搭建解析与功能需求
陪玩小程序是为玩家提供专业陪玩服务的应用,嵌入社交或游戏平台,具备智能匹配、实时聊天、预约服务等功能,支持便捷高效的游戏体验。源码交付时需提供详细文档、技术支持及定制开发服务,确保客户能顺利维护和升级。选择陪玩小程序时应关注功能需求、用户体验、安全性和成本效益,以确保最佳使用效果。
19 0
|
16天前
|
监控 搜索推荐 测试技术
电商API的测试与用途:深度解析与实践
在电子商务蓬勃发展的今天,电商API成为连接电商平台、商家、消费者和第三方开发者的重要桥梁。本文深入探讨了电商API的核心功能,包括订单管理、商品管理、用户管理、支付管理和物流管理,并介绍了有效的测试技巧,如理解API文档、设计测试用例、搭建测试环境、自动化测试、压力测试、安全性测试等。文章还详细阐述了电商API的多样化用途,如商品信息获取、订单管理自动化、用户数据管理、库存同步、物流跟踪、支付处理、促销活动管理、评价管理、数据报告和分析、扩展平台功能及跨境电商等,旨在为开发者和电商平台提供有益的参考。
23 0

推荐镜像

更多
下一篇
DataWorks