Replies: 1 comment 1 reply
-
надо сделать что-то такое: Ес-но возникает вопрос с чексуммами для iph и tcph, как-то там можно это также низкоуровнево пересчитать с максимальным использованием hardware ускорения. |
Beta Was this translation helpful? Give feedback.
1 reply
# for free
to join this conversation on GitHub.
Already have an account?
# to comment
-
Я сейчас ковыряюсь с примерно этим же самым. У меня модуль ядра туннельного eth интерфейса. Там не выполняется много магии, но определенные манипуляции с данными, которые снова нужно отправлять после изменения. Так вот я столкнулся с той же проблемой - слишком медленно работает.
Дело в использовании kernel_sendmsg
ret = kernel_sendmsg(rawsocket, &msg, &iov, 1, pktlen);
Таким способом выжать из моего туннеля удается не больше 10мбит при ширине канала 1гбит.
Вместо kernel_sendmsg нужно использовать udp_tunnel_xmit_skb в моем случае.
Что-то аналогичное супернизкоуровневое нужно использовать и здесь. Возможно dev_queue_xmit
Если заставить это работать должно стать побыстрее.
Beta Was this translation helpful? Give feedback.
All reactions