LINUX.ORG.RU
ФорумJob

Linux Kernel Developer

 


0

3

Мы снова разыскиваем талантливого разработчика ядра Linux на постоянную удаленную работу с гибким графиком.

Проект: Tempesta FW – первый и единственный гибрид Web-акселератора и фаервола в открытых исходниках, специально разрабатываемый для стабильной и высокопроизводительной доставки Web-контента вне зависимости от DDoS атак прикладного уровня или наплыва посетителей. Проект реализован в ядре Linux и основная его часть встроена в TCP/IP стек Linux'а. В проекте также используется легкая NUMA-aware cache conscious база данных. Есть небольшая user-space часть, написанная на C++11. Проект публиковался на IBM CASCON'14 и занял 2ое место в конкурсе “Лучший инвестиционный проект” ФаворИТ'14. В общем, будет интересно :)

Требования:

  • Опыт в разработке для Linux kernel (net/, mm/, arch/x86/);
  • Понимание работы сетевых адаптеров и центрального процессора x86-64;
  • Хорошее знание TCP/IP и HTTP;
  • Хорошая алгоритмическая подготовка и опыт в lock-free алгоритмах;
  • Сильные навыки поимки сложных багов (race conditions, memory leaks, memory corruptions etc.)

Желательно:

  • Опыт разработки высокопроизводительных приложений;
  • Опыт с C++11 и Boost;
  • Хороший письменный английский для общения с зарубежными партнерами и заказчиками.

Условия:

  • З/п от $2,000 до $5,000 по контркту с нашим офисом в США;
  • Возможность работы из дома;
  • Гибкий график для работы в комфортное время;
  • Участие в разработке Open Source проекта.

Узнать о больше о проекте Вы можете на https://github.com/natsys/tempesta

Звоните по телефону +7 (916) 717-3899 или пишите на info at natsys-lab dot com.

Крижановский Александр.

Проект реализован в ядре Linux и основная его часть встроена в TCP/IP стек Linux'а.

а в DPDK так не делают. В этом реально есть выигрыш, всё держать в ядре?

active/active пару этих самых tempesta fw можно сделать?

у него лоад балансер по типу NAT, он сам все TCP сессии трекает?

p.s. надеюсь я тут не полную чушь спрашиваю, а то неудобно получится.

dimon555 ★★★★★ ()
Ответ на: комментарий от i82

А реализация IP-стека?

и веб-сервер в ядре? тогда всё ок. Но вообще переход userspace -> ядро должен быть достаточно эффективным, сброса же tlb не происходит. Интересно, как разработчики отлаживают ошибки, когда всё в ядре.

dimon555 ★★★★★ ()
Ответ на: комментарий от dimon555

Не, вы ошибаетесь. Переход KM<->UM всегда затрантый. Кроме того, если говорить про обработку сетевого трафика, то либо в UM получаете фреймы и опять же IP-стек нужен свой, либо получаете уже готовый поток данных и в этом случае вся TCP/IP кухня проходит мимо вас.

i82 ★★ ()
Ответ на: комментарий от dimon555

DPDK/Netmap/etc требуют использования user-space TCP/IP стека - такие есть, но не устроили нас по качеству и/или производительности.

Смотря что Вы подразумеваете под active/active кластером. Если просто воткнуть две машины с виртуальными IP, то, да, можно. Все, как и с обычным Web-акселератором. А если имеется ввиду распределенный Web-кэш, репликация Web-кэша, правил фильтрации и пр., то нет - пока этого нет, но такой кластер есть в списке TODO.

Load balancing работает на уровне HTTP, более подробно можно почитать здесь https://github.com/natsys/tempesta#server-load-balancing

Tempesta-Technologies ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.