Android linux eBPF网络相关原理分析

一、eBPF相关概述
随着android的版本不断升级,android 9之后,内核版本均为4.X以及更高的5.X,linux的eBPF设计在android系统中应用也越来越多。对于BPF以及eBPF(extended BPF)网上已经有很多的文章介绍,推荐大家先通过公众号中“android平台eBPF初探”等文章先对eBPF的概念、框架和功能有个大概的了解。下面从eBPF设计中网络相关部分大概梳理下eBPF的演变过程。

BPF(Berkeley PacketFilter)最早出现的目的是为了提供一种高性能的网络包过滤方法,所谓的包过滤就是利用一些预定条件,对网络传输的数据包进行筛选、统计等。在BPF出现之前,iptable一直作为linux内核中防火墙和网络数据包过滤的主要方法。

相比之前的iptables过滤方法,BPF存在如下2个优点:
1.BPF过滤的编码实现通过字节码的形式,直接运行在内核态,避免了在包过滤的过程中与用户态的数据交互,而过滤的结果以MAP形式提供给用户态获取。
2.BPF的过滤在代码中判断执

Android linux eBPF网络相关原理分析最先出现在Python成神之路

版权声明:
作者:Zad
链接:https://www.techfm.club/p/18437.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>