В течение следующего десятилетия EBPF станет «стратегическим выбором платформы для разработчиков инфраструктуры», предсказал, что Cisco отличил инженер -программист Даниэль Боркманн, в разговоре на саммите с открытым исходным кодом Linux о состоянии технологии, которую он помог создать, в том числе некоторые прогнозирование того, как его можно использовать в будущие времена.
EBPF является революционным, потому что он сокращает циклы разработки внедрения новых технологий в ядро, положил Боркманн. До сих пор, добавлено какое -то расширение в ядро Linux, заняло годы, с скудной гарантией успеха. Теперь EBPF позволяет пользователям добавлять свои собственные технологии ядра.
«Мы переходим от долгого инновационного цикла до короткого инновационного цикла»,-сказал Боркманн, который также был 15-летним комитетом Linux Core. И все больше поставщиков инфраструктурных инструментов используют преимущества технологии в клетке.
EBPF хорош в производительности с точной настройкой по всему стеку, от сети до самих процессоров, обеспечивая лучший пользовательский опыт. Это также хорошо реализует политики.
Meta’s Facebook широко использует EBPF в своем балансировщике нагрузки уровня 4, причем 100 различных приложений EBPF выполняют различные задачи. Он используется во всех телефонах Android для политик безопасности и управления трафиком, а также для соединения с сети IPv6.
EBPF для виртуальных машин
В сфере сетевых взаимодействий драйвер NetKit на основе EBPF оказался популярным для определения пространств имен в самом ядре, что раньше была задачей гораздо более медленных сетевых драйверов.
По словам Боркмана, эта работа началась в сообществе Kubernetes, как способ минимизировать задержку коммуникации контейнеров. Боркманн участвовал в проекте Cilium, сетевом процессоре пакета, построенном на EBPF.
«Как только мы приземлились в ядре Linux, гиперсваливы также заинтересовались, и они свернули это в свой флот», — сказал Боркманн. Например, Meta удалось сбрить свою задержку P99 для разрешения пространства имен с 12 секунд до 100 миллисекунд, используя NetKit.
Следующим шагом будет привлечение EBPF в мир виртуальных машин.
Многие организации в настоящее время имеют две платформы, одну, основанную на Kubernetes и более старые устаревшие, основанные на виртуальных машинах (VMS). Каждый имеет свой собственный мониторинг, метрики и журнал.
Боркманн сказал, что EBPF может помочь объединить эти два мира. В настоящее время проводится работа по интеграции NetKit в Kubevirt, который позволяет пользователям управлять виртуальными машинами как капсулы Kubernetes.
Netkit может оптимизировать сеть повсюду.
EBPF для ядра
По словам Боркманна, вы можете думать о EBPF как «универсальном языке ассамблеи», хотя это один из разработчиков, который никогда не увидит, выбирая интерфейс с языком их программирования.
Два основных составных компилятора (LLVM и GCC) поддерживают разнообразные фронтовые языки (C, Rust и т. Д.), Которые они преобразуют в Bytecode EBPF. Набор инструкций был стандартизирован рабочей группой IETF (позволяя версию EBPF для Windows). Существует проверка, чтобы гарантировать, что код пользователя не дестабилизирует систему.
Другим вариантом использования для EBPF был оптимизацию самого ядра.
Планирование процессов является еще одним новым вариантом использования, который выигрывает от новой утилиты Linux Kernel, Shade-Ext, которая позволяет создавать планировщик резьбы на основе EBPF.
Гиперырки, такие как Meta и Google, уже используют планировщиков на основе EBPF. Мелкозернистые политики планирования оптимизировали рабочие нагрузки этих компаний на 10% или около того.
Steamos также использует подход планирования EBPF для оптимизации игр.
EBPF может помочь в балансировке рабочей нагрузки ИИ: какая часть стека ИИ разжевывает ресурсы? FlameGraph на основе EBPF покажет полный график вызовов. Чем дольше бар, тем больше циклов разжевывается.
Наконец, Боркман предположил, что EBPF может подготовить почву для живого исправления ядра, где он обеспечит проверку безопасности для применяемых патчей.
Раскрытие: Фонд Linux заплатил за поездку репортера на саммит с открытым исходным кодом.
Trending Stories youtube.com/thenewstack Tech движется быстро, не пропустите эпизод. Подпишитесь на наш канал YouTube, чтобы транслировать все наши подкасты, интервью, демонстрации и многое другое. Группа подпишитесь с эскизом. Joab Jackson является старшим редактором нового стека, охватывающего облачные нативные вычисления и системы системы. Он сообщил об инфраструктуре и развитии IT более 25 лет, в том числе в IDG и государственных компьютерных новостях. До этого он … читал больше от Джоаба Джексона