Solarflare OpenOnload — высокопроизводительный сетевой стек, радикально уменьшающий задержки, нагрузку на процессор и увеличивающий скорость передачи пакетов. Достигается это без изменений в самом вашем приложении, будь то C/C++/Java или что либо, использующее BSD Sockets API). Хотя идея стеков, работающих частично или полностью в userland, не нова, радикальное отличие Onload — в предоставлении BSD Sockets API.
Доклад затронет техническую сторону реализации:
- разделение ресурсов между ядром и процессом;
- маршрутизация пакетов;
- механизмы поллинга (poll, epoll и т.п.);
- кэширование сокетов.
Константин покажет, почему простая идея, лежащая в основе, не так проста в реализации (с примерами «неуспешных» попыток). Будут цифры и будут детали того, как ядро Linux пытается достичь схожей производительности (включая DPDK).
Участие бесплатное. Регистрация тут.
О докладчике
Константин Ушаков — CEO OKTET Labs, Россия, Санкт-Петербург. Более 10 лет работает в OKTET Labs на проектах с Solarflare (и Level5). Участвует в разработке и валидации стека Onload и других продуктов компании.
Начинал младшим разработчиком, сейчас — ген. директор, при этом продолжает принимать активное участие в техническом менеджменте, оптимизации производительности, переносе стека на новые платформы /архитектуры (например, Power) и сопровождении фреймворка, использующегося для валидации Onload Socket API относительно Linux-реализации.
Комментарии (18)
pavelodintsov
11.05.2016 12:58+1Сижу и деру себе волосы, что ну никак не могу присутствовать на данном мероприятии! :( А так можно было бы замутить историю успеха в продолжение моей публикации про Linux и захват 10MPPS https://habrahabr.ru/post/261161/ но на open onload :)
23derevo
11.05.2016 13:00pavelodintsov так давайте с вами тоже встречу сделаем! Напишите мне в личку.
insekt
11.05.2016 14:27+1А будет сравнение с другими аналогичными проектами кроме DPDK?
Еще вопрос, а как у вас с поддержкой не х86 архитектур? В частности, ARM.pavelodintsov
11.05.2016 14:48+1А по какому критерию сравнение интересует? Open Onload — это набор тулз. Тут и захват и парсинг и кастомный стек. Со стеками — плохо, хороших открытых почти нету. Все прочее — netmap, PF_RING, AF_PACKET, SnabbSwitch, PFQ.
k_ushakov
11.05.2016 16:31+2С какими интересует?
Сравнение с DPDK — это больше про то, почему оно совсем разное. И что в иерархии SF соответсвует DPDK.
ARM — нет. 10G/40G платы там не сильно популярны.
atd
OpenOnload это конечно хорошо. Но что там на встрече про него говорить?
$ ./onload_install.sh && onload your program args…
и вперёд, всё работает из коробки (любые ядра, конфигурации итд...), не то, что vma у мелланокса…
UPD: пардон, прочитал внимательнее, да, реализация — уже интереснее. А это всё на основе того, что они в опенсорс выложили, или есть ещё немного инсайда? )
23derevo
Костя, как человек, имеющий прямое отношение к разработке (львиная доля OpenOnload пишется в Питере) наверняка что-то интересное расскажет. Вряд ли совсем инсайдерское, но все же. Плюс на встрече будут инженеры, которые этот самый онлоад делают своими руками и головами.
Так что приходите.
atd
Круто, был бы в Питере — обязательно. С «гастролями» в Москву не планируется в ближайшие годы?
> львиная доля OpenOnload пишется в Питере
Передайте им спасибо от всей души за kernel-bypass без головной боли )
k_ushakov
Пожалуйста :)
Может быть будет доклад в Москве на SECR.
mrHobbY
Кому как, кто-то и вручную собирает драйвера.
А новые SFN8522 вообще сказка.
atd
А вы уже пощупать успели? Насколько велика разница между 8522 и 7122 например в sfnt-pingpong или sockperf?
mrHobbY
pingpong ~700ns
k_ushakov
Чудесно. В четверг/пятницу все сильно бегали, чтоб отправить новое железо на тест.
mrHobbY
Я уже решаю вопрос один. Альфа с оверклоком показывает на ~100ms one-way лучше результат, чем последняя бета. (С последними драйверами тоже)
LANavern
Если правильно понимаю, то похожий доклад был на Linux Piter и было достаточно интересно. В особенности часть про реализацию.
В связи с этим вопрос: стоит ли идти тем, кто уже был на этом докладе во время LinuxPiter?
23derevo
У нас будет расширенная версия. Если вы на Linux Piter удовлетворились услышанным, то, наверное, смысла приходить нет. Если же вас заинтересовало, если вы хотите больше подробностей или если у вас есть вопросы к команде разработки — приходите.
phprus
А планируется ли запись и/или трансляция доклада?
23derevo
Трансляции не будет, а запись будет выложена на нашем Youtube-канале: https://www.youtube.com/user/CodeFreezeRU