хочу написать zero-copy сервер. реализовано это следующим образом - ядро через nmap пробрасывает приемный буффер в приложение, после чего приложение может читать данные без копирования их из ядра. к сожалению, в буффер копируются Ethernet кадры целиком, что требует от меня самостоятельно парсить заголовки. (более того, работает это в линуксе только с RAW сокетами) однако, я слышал, что на некоторых сетевых картах есть такая функция как header splitting, которая копирует шапки и содержимое протокола в разные места, что позволяет заносить в непрерывный буффер только содержимое TCP.
кто-нибудь делал это? информации по этой теме очень мало. Есть ли у вас ссылки на более подробное описание функции header splitting, примеры zero-copy сервера, информация по карточкам, которые поддерживают такие функции?