Какие-нибудь программы BPF требуются для карты памяти?

Я пишу программу BPF sockmap, и мне было интересно, каковы требования такой программы. К sockmap могут быть прикреплены парсер и программа вердикта, поэтому мой вопрос в том, требуется ли какая-либо из этих программ перед добавлением сокета на карту, и если оба не требуются, то каково поведение, когда любая из этих программ пропущена.

Некоторые запутанные связанные заявления, показывающие, почему у меня есть этот вопрос:

0 ответов

В текущей реализации sockmap для операции требуются как парсер, так и программа вердикта. Есть место для оптимизации: если пропустить программу парсера,skb->len должен быть возвращен по умолчанию, но, к сожалению, это еще не реализовано.

  • Никакого другого способа программного перенаправления кроме программы вердикта. Это обязательно, без этого можно ставить программы в sockmap, но ничего не произойдет, передача данных остановится.

  • Скорее прикрепите программы синтаксического анализа и вердикта к sockmap. Они имеют смысл только в этом причинном порядке.

  • Да, это так. Так что у вас должна быть программа парсера, даже с простойreturn skb->len один.

Другие вопросы по тегам