Фильтр пакетов Беркли

Пакетный фильтр Berkeley Обзор BPF BPF — это сетевой фильтр, который позволяет фильтровать пакеты на уровне операционной системы.  Он предоставляет […]

Пакетный фильтр Berkeley

  • Обзор BPF

    • BPF — это сетевой фильтр, который позволяет фильтровать пакеты на уровне операционной системы. 
    • Он предоставляет интерфейс для канальных уровней передачи данных и позволяет процессам пользовательского пространства фильтровать пакеты. 
    • BPF повышает производительность, избегая копирования нежелательных пакетов из ядра в процесс. 
  • Механизм фильтрации

    • Фильтрация реализована в виде интерпретатора машинного языка, который может выполнять арифметические операции и сравнения. 
    • Расширения и оптимизации включают JIT-компиляторы для повышения производительности. 
  • История и реализация

    • Статья была написана Стивеном Маккенной и Ван Джейкобсоном в 1992 году. 
    • BPF предоставляет псевдоустройства для чтения и записи пакетов. 
    • В 2007 году были добавлены расширения буфера нулевого копирования для повышения эффективности. 
  • Расширения и оптимизация

    • Некоторые платформы используют JIT-компиляторы для повышения производительности. 
    • Linux включает JIT-компилятор BPF по умолчанию, который можно отключить. 
  • Программирование и безопасность

    • Классический BPF генерируется на основе текстовых правил высокого уровня. 
    • eBPF позволяет писать программы на языках более высокого уровня, таких как C и Rust. 
    • eBPF может быть скомпилирован в байт-код для использования в ядре Linux. 
  • eBPF и безопасность

    • eBPF включает расширенную виртуальную машину с 64-битными регистрами. 
    • eBPF используется для несетевых целей и для подключения программ к точкам трассировки. 
    • eBPF был обновлен для предотвращения атак типа «отказ в обслуживании» и для поддержки циклов с ограниченным временем выполнения. 
  • Дополнительные ресурсы

    • Ссылки на документацию и руководства по BPF доступны в статье. 

Полный текст статьи:

Фильтр пакетов Беркли — Википедия

Оставьте комментарий

Прокрутить вверх