Здравствуйте.
Есть необходимость пересылать UDP-пакеты внутри kernel space, не занимаясь их получением в user space`е и последующей отправкой на сокет. Нужно это для повышения производительности (избавляемся от копирования данных kernel -> user -> kernel).
Как мне представляется, нужно написать драйвер, которому задаются через ioctl параметры сокетов, портов, TOS, что-то ещё при желании. И этот драйвер должен заниматься тем, что будет пересылать пакеты с сокета на сокет внутри ядра.
Предполагаю, что для написания этой радости мне нужно ознакомиться с LDD разделом «Сетевые устройства» и ковырять ядро в части реализации сокетов и всего, что с ними связано. Может что ещё посмотреть присоветуете? Может даже какие-то готовые реализации уже есть?
Спасибо.