Проведена оценка способности сетевого стека Linux обрабатывать миллион пакетов в секунду

Опубликовано: 26 июня 2015 г., пятница

Марек Майковски (Marek Majkowski), разработчик ядра Linux, работающий в компании CloudFlare, провёл заслуживающий внимания эксперимент, пытаясь разобраться насколько быстр сетевой стек ядра Linux и возможно ли в Linux обеспечить работу пользовательского приложения, способного обработать миллион UDP–пакетов в секунду на обычном сервере с шестиядерным CPU Xeon (2GHz) и сетевой картой 10G.

В эксперименте применялась связка из программы для отправки данных, использующая вызов sendmmsg для отправки информации порциями по 1024 пакета за раз, и программы для приема данных, использующая системный вызов recvmmsg, более эффективный чем recv благодаря пакетной обработке данных.

Первый вариант приложения продемонстрировал производительность отправки данных в диапазоне от 197 до 350 тысяч пакетов в секунду. Непостоянство производительности объяснялось миграцией обработчиков между ядрами CPU. После жесткого закрепления программы за одним ядром CPU возросла эффективность кэша и производительность стабилизировалась на отметке в 350 тысяч пакетов в секунду. Следующим шагом стало распараллеливание отправки в несколько нитей, генерация пакетов значительно возросла, но принимающая программа не смогла обработать больше чем при первой попытке, уперевшись в производительность ядра CPU, выполняющего код приложения.

Данное ограничение удалось преодолеть при помощи задействования нескольких принимающих очередей (RX queue), привязанных к разным CPU и закреплённых за разными IP–адресами. Распределение запросов по двум принимающим очередям увеличил производительность до 650 тысяч пакетов в секунду. Попытка дальнейшего увеличения числа RX–очередей привела к очередному узкому месту – несмотря на то, что сетевая карта справлялась с доставкой пакетов ядру, ядро оказалось не способно доставить их приложению, которое не успевало их принимать. Увеличение числа принимающих нитей, из–за ограниченного размера буфера UDP, не улучшило положение.

Источник: opennet.ru
Копировать, распространять, публиковать информацию портала News.lt без письменного согласия редакции запрещено.

Комментарии Facebook

Новый комментарий


Captcha

статьи по схожей тематике

Gemalto представила универсальный модуль IoT «все в одном» с поддержкой LTE

Представленный компанией универсальный модуль IoT «все в одном» с поддержкой LTE существенно упрощает логистику и распределение, а также снижает стоимость повсеместного внедрения технологии IoT. дальше »

В Бундестаге Германии запретили гаджеты во время заседаний

Новый председатель парламента ФРГ 75-летний Вольфганг Шойбле разослал всем депутатам нового созыва письмо с запретом на использование гаджетов во время пленарных заседаний. дальше »

HTC заявила о расширении функционала Edge Sense в U11

Функция Edge Sense в смартфоне HTC U11 вскоре обзаведется рядом новых областей применения. Об этом представители HTC заявили в своем микроблоге в Twitter. дальше »

Киберпреступники активизируются в «Черную пятницу»

Праздничный сезон для покупок, который охватывает "День Благодарения", "Черную пятницу" и "Киберпонедельник" в конце ноября, а также Рождество в декабре, теперь составляет значительную долю годовых продаж для розничных торговцев, особенно в США, Европе и Азиатско-Тихоокеанском регионе. дальше »

В Швейцарии введут единую систему онлайн-идентификации

В будущем году в Швейцарии будет принят закон о единой системе цифровой идентификации граждан, благодаря чему граждане страны могут использовать один логин для всего — от покупок до банковских операций. дальше »

Intel представила первые 5G-модемы собственного производства

Компания Intel объявила о создании своих первых 5G-модемов серии Intel XMM 8000. Эта серия включает многорежимные модемы, работающие в диапазоне до 6 ГГц и в диапазоне миллиметровых волн. дальше »

Xiaomi España выставит на продажу мобильные телефоны за 1 евро

Чем ближе Black Friday («Черная пятница»), тем больше компаний присоединяется к «скидочной лихорадке», предлагая покупателям свои товары и услуги по беспрецедентно низким ценам. дальше »

Италия расписала план перехода на DVB-T2

В Италии местный регулятор обнародовал план перевода эфирных телевизионных сетей на новый стандарт вещания. дальше »

Еще один троянец-загрузчик сумел обойти механизм защиты Google Play

Специалисты ESET выявили новое семейство троянцев-загрузчиков, проникших в Google Play под видом легитимных приложений. Чтобы избежать обнаружения, вредоносные программы используют многоступенчатую архитектуру, шифрование и продвинутые механизмы маскировки. дальше »

Италия тоже введет «налог на Google»

В Италии введут налог на онлайн-операции иностранных корпораций, включая Google и Facebook. дальше »