当前位置:首页 > 报告详情

利用 eBPF 释放内核潜能.pdf

上传人: 竿*** 编号:981458 2025-11-29 63页 3.72MB

1、Unleashing the kernelwith eBPFLiz Rice|lizriceChief Open Source Officer,IsovalentEmeritus Chair,CNCF Technical Oversight Committee|CNCF&OpenUK boards lizriceWhat is?extended Berkeley PacketFilterlizriceWhat is?eBPF is a kernel technology enabling high-performance,low overhead tools for networking,se

2、curity and observabilitylizriceWhat is?Makes the kernel programmablelizriceuserspacekernelappeventsystem callseBPF programRun custom code in the kernellizriceSEC(kprobe/sys_execve)int hello(void*ctx)bpf_printk(Hello!);return 0;$sudo./hello bash-20241 004 d.84210.752785:0:Im alive!bash-20242 004 d.84

3、216.321993:0:Im alive!bash-20243 004 d.84225.858880:0:Im alive!Info about process that called execve syscall+userspace code to load eBPF programeBPF Hello WorldlizricePacket of Death mitigationlizricehosteth0Packet of Deathlizricehosteth0Packet of DeathDiscard?lizriceSEC(xdp/bye)int goodbye_ping(str

4、uct xdp_md*ctx).if(iph-protocol=IPPROTO_ICMP)return XDP_DROP;return XDP_PASS;eBPF Packet DroplizriceDynamically change kernel behaviourlizricelizricelizriceeBPF code has to be safeuserspacekernelappeventsystem callseBPF programverifierlizriceeBPF code runs as native instructionsuserspacekernelappeve

5、ntsystem callseBPF program JIT compilerlizriceCustom behaviour without transitionslizriceuserspacekernelappXDP eventsystem callseBPF programeXpress Data path-ingress,before network stacknetwork packetXDP_DROPnetwork stackXDP_TXXDP_PASSlizriceuserspacekernelappeventsystem callseBPF programRun custom

6、code on network packetsnetwork packetProgram triggered by packetNo polling from user spacePacket in kernel memoryPer CPU eBPF mapslizriceImproved network performance(eBPF)(eBPF)(eBPF)(not eBPF)Miano et al:A Framework for eBPF-Based Network Functions in an Era of Microserviceslizricecilium.io/blog/20

word格式文档无特别注明外均可编辑修改,预览文件经过压缩,下载原文更清晰!
三个皮匠报告文库所有资源均是客户上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作商用。
根据报告的内容,全文主要内容概括如下: - **eBPF(Extended Berkeley Packet Filter)**:一种内核技术,允许在内核中运行高效、低开销的工具,用于网络、安全和可观察性。 - **eBPF功能**:使内核可编程,允许在用户空间编写代码,然后在内核中执行,无需系统调用。 - **eBPF应用**:包括网络性能提升、容器网络优化、安全工具增强、性能追踪和运行时安全。 - **eBPF在Kubernetes中的应用**:在Kubernetes中,eBPF可以监控和优化容器网络,无需修改应用程序。 - **eBPF安全**:通过eBPF可以实现高效的运行时安全策略,如文件访问控制和网络访问控制。 - **eBPF优势**:提高性能、减少资源使用、简化操作,并支持无sidecar服务网格。 核心数据: - eBPF可以减少资源使用,避免在每个Pod中配置sidecar。 - eBPF可以减少操作成本,提高性能,简化操作。 - eBPF对于快速的生产分析至关重要。
内核编程新革命?" "eBPF如何提升网络性能?" "eBPF在安全监控中的应用?"
客服
商务合作
小程序
服务号
折叠