Будет ли интеграция с DPDK полезной с точки зрения производительности для сервера DNS/DHCP/DNSSEC?

DPDK, кажется, обеспечивает впечатляющее повышение производительности для определенных приложений, но я не думаю, что серверы выиграют почти так же, как такие вещи, как маршрутизаторы / коммутаторы.

Я не видел никаких упоминаний о том, что это было сделано или работало, поэтому мне просто интересно, стоило ли бы работать над этим.

1 ответ

DPDK сам по себе обеспечивает доступ к устройству только уровня 2 (т. Е. Ethernet). Таким образом, вам сначала нужно будет построить стек Уровня 3 (т.е. IP) и Уровня 4 (т.е. TCP/UDP). Вы можете использовать KNI, чтобы обойти это, но я не думаю, что (несколько небольшие) преимущества в производительности помогут в этом случае.

Даже после получения всех этих уровней это все еще, вероятно, не очень поможет, потому что шансы на то, что пакеты попадают в приложение (большая вещь, которую оптимизирует DPDK), вряд ли будут узким местом в чем-то вроде DNS или DHCP (если, возможно, они не были очень простые, простые реализации).

Некоторые другие предостережения включают необходимость выделять как минимум целое ядро ​​только для DPDK, и в большинстве случаев DPDK берет на себя весь интерфейс, то есть вы не можете использовать его ни для чего другого.

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