新增六大功能解析!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

相关文章
|
3天前
|
网络协议 网络安全 网络虚拟化
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算。通过这些术语的详细解释,帮助读者更好地理解和应用网络技术,应对数字化时代的挑战和机遇。
20 3
|
3天前
|
存储 网络协议 安全
30 道初级网络工程师面试题,涵盖 OSI 模型、TCP/IP 协议栈、IP 地址、子网掩码、VLAN、STP、DHCP、DNS、防火墙、NAT、VPN 等基础知识和技术,帮助小白们充分准备面试,顺利踏入职场
本文精选了 30 道初级网络工程师面试题,涵盖 OSI 模型、TCP/IP 协议栈、IP 地址、子网掩码、VLAN、STP、DHCP、DNS、防火墙、NAT、VPN 等基础知识和技术,帮助小白们充分准备面试,顺利踏入职场。
13 2
|
6天前
|
监控 关系型数据库 MySQL
MySQL自增ID耗尽应对策略:技术解决方案全解析
在数据库管理中,MySQL的自增ID(AUTO_INCREMENT)属性为表中的每一行提供了一个唯一的标识符。然而,当自增ID达到其最大值时,如何处理这一情况成为了数据库管理员和开发者必须面对的问题。本文将探讨MySQL自增ID耗尽的原因、影响以及有效的应对策略。
20 3
|
8天前
|
Kubernetes Cloud Native 云计算
云原生技术深度解析:重塑企业IT架构的未来####
本文深入探讨了云原生技术的核心理念、关键技术组件及其对企业IT架构转型的深远影响。通过剖析Kubernetes、微服务、容器化等核心技术,本文揭示了云原生如何提升应用的灵活性、可扩展性和可维护性,助力企业在数字化转型中保持领先地位。 ####
|
9天前
|
自然语言处理 并行计算 数据可视化
免费开源法律文档比对工具:技术解析与应用
这款免费开源的法律文档比对工具,利用先进的文本分析和自然语言处理技术,实现高效、精准的文档比对。核心功能包括文本差异检测、多格式支持、语义分析、批量处理及用户友好的可视化界面,广泛适用于法律行业的各类场景。
|
3天前
|
存储 供应链 物联网
深入解析区块链技术的核心原理与应用前景
深入解析区块链技术的核心原理与应用前景
|
3天前
|
存储 供应链 安全
深度解析区块链技术的核心原理与应用前景
深度解析区块链技术的核心原理与应用前景
10 0
|
2天前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
14 2
|
1月前
|
缓存 Java 程序员
Map - LinkedHashSet&Map源码解析
Map - LinkedHashSet&Map源码解析
66 0
|
1月前
|
算法 Java 容器
Map - HashSet & HashMap 源码解析
Map - HashSet & HashMap 源码解析
52 0

推荐镜像

更多