6.5. Parámetros actualizados de /proc/sys/net

bpf_jit_enable

Este parámetro activa el compilador Berkeley Packet Filter Just-in-Time (BPF JIT).

BPF es una infraestructura flexible y eficiente que permite ejecutar bytecode en varios puntos de enganche. Se utiliza en varios subsistemas del kernel de Linux, como las redes (por ejemplo, XDP, tc), el rastreo (por ejemplo, kprobes, uprobes, tracepoints) y la seguridad (por ejemplo, seccomp).

LLVM tiene un back-end BPF que puede compilar C restringido en una secuencia de instrucciones BPF. Después de cargar el programa a través de la llamada al sistema bpf() y de pasar un verificador en el núcleo, JIT traducirá estos progletos de BPF en instrucciones nativas de la CPU.

Hay dos tipos de JIT, el más nuevo eBPF JIT es actualmente compatible con las siguientes arquitecturas de CPU:

  • x86_64
  • brazo64
  • ppc64 (tanto endians pequeños como grandes)
  • s390x