所在的位置: python >> python市场 >> linux跟踪技术之ebpf

linux跟踪技术之ebpf

北京中西湿疹医院 http://m.39.net/pf/a_8839617.html

ebpf简介

eBPF是一项革命性的技术,起源于Linux内核,可以在操作系统内核等特权上下文中运行沙盒程序。它可以安全有效地扩展内核的功能,而无需更改内核源代码或加载内核模块。比如,使用ebpf可以追踪任何内核导出函数的参数,返回值,以实现kernelhook的效果;通过ebpf还可以在网络封包到达内核协议栈之前就进行处理,这可以实现流量控制,甚至隐蔽通信。

ebpf追踪

ebpf本质上只是运行在linux内核中的虚拟机,要发挥其强大的能力还是要跟linuxkernel自带的追踪功能搭配:

kprobe

uprobe

tracepoint

USDT

通常可以通过以下三种工具使用ebpf:

bcc

libbpf

bpftrace

bcc

BCC是一个用于创建高效内核跟踪和操作程序的工具包,包括几个有用的工具和示例。它利用扩展的BPF(BerkeleyPacketFilters),正式名称为eBPF,这是Linux.15中首次添加的新功能。BCC使用的大部分内容都需要Linux4.1及更高版本。

源码安装bccv0.25.0

首先clonebcc源码仓库

gitclone


转载请注明:http://www.aierlanlan.com/rzdk/4988.html